Archive for the ‘Computers and Internet’ Category

RAID and Data Replication

Posted: November 23, 2010 in Computers and Internet

In today’s computing society more and more people are requiring their data to be available at a moments notice and to have all of that data protected in case of a disaster.  Anyone wanting to work in the IT field will have to know how to deal with this issue with the use of RAID and Data Replication.  RAID stands for Redundant Array of Independent Disks which is really just the idea of taking a group of hard drives and using a controller to turn them into one large logical hard drive.  By doing this you can achieve greater performance with your hard drives. This is possible because with RAID you are spreading the data to multiple disks and thus when retrieving the data you are recovering data from multiple disks vs. one.

There are multiple configurations for a RAID implementation, with the first and most basic being RAID0.  With RAID0 there is no redundancy in the data but because the data is passed through a controller and is separated to a group of hard drives this still is considered RAID.  This is a configuration that is used in a situation where redundancy of the data is not required but you are looking for high performance with the data.  The next configuration is RAID 1.  RAID 1 is often referred to as mirroring because it creates an exact copy, or mirror, of the data on one hard drive on another hard drive.  One of the downfalls of RAID1 is the need for a lot of hard drive space because each hard drive requires its own mirror drive which doubles the hard drive requirement.  RAID2 is not well known because there are no commercial implementations of it as it is very complex and the process that it uses for redundancy on independent hard disks is able to be done cheaper in other configurations.  RAID3 uses data bit parity to create data redundancy and disaster recovery.  In a RAID3 configuration the data is separated among the available hard drives and then one drive is reserved as the parity drive that keeps track of the parity bit that is equivalent for the data it is related to.  By creating this parity bit, you are able to recreate the data on a failed hard drive by comparing the parity bit with what is still remaining to come up with the missing data.  A RAID4 configuration follows the same setup as RAID3 except it creates the parity on the block level.  This is achieved by a set block size that the data is separated into and then the parity block is created based on value of the blocks it relates to.  The next configuration is RAID5.  RAID5 builds on RAID4 but instead of having a dedicated parity drive, the parity block is stored along side the other data.  It is considered one of the most versatile configurations but at the same time is the most complex controller design and is very hard to rebuild a failed disk as there is more data to sort through.  RAID6 configurations require a minimum of 4 disks to implement but has the benefit of protection against a double disk failure.  This is achieved by using two different parity blocks so that you have more parity bits to go off of and to allow the rebuild process to happen.  RAID10 is a combination of RAID0 and RAID1 as it takes the data and separates the data among a group of hard drives.  Then the first group of hard drives is mirrored to another group of hard drives which creates an exact replica of the data.

Resources:
“Basic RAID Organizations.” University of Massachusetts, n.d. Web. 23 Nov 2010. <http://www.ecs.umass.edu/ece/koren/architecture/Raid/basicRAID.html&gt;.
“RAID Tutorial.” RAID.edu. AC&NC, 2010. Web. 23 Nov 2010. <http://www.raid.com/04_00.html&gt;.

Terminal Services

Posted: September 30, 2010 in Computers and Internet

Windows Terminal Services are a role that come with the Windows Server O/S.  These services are meant so that multiple workstations can access one program in one location.  Also terminal services can allow a company to buy cheaper client computers because if they are strictly using terminal services for employee production, then all of the operational burden is placed on the server.  In order for a client to use terminal services all they needed was a program on their computer called Remote Desktop Access.  Remote Desktop would ask the user for the name of the server and then once entered the client would use rdp, remote desktop protocol, to connect to the terminal server.  Once connected, the client would be able to see their desktop on the server and be able to work with what they are allowed to use per security rights and permissions.  Starting with Windows Server 2008, terminal services have been taken to a whole new level because of a new feature called RemoteApp.  RemoteApp will allow an administrator to create a shared drive on the server that has applications published to it.  Once in the share, the administrator can decide who has access to the share and those that have it may connect and run those applications inside of the share.  The major benefit to this is that the users will be using less bandwidth in connecting to the terminal server but they will still have the exact same functionality as if they had used remote desktop to connect to the terminal server.  For more information on Windows Server 2008 RemoteApp here is a video that I found on YouTube.

Then when you start to use RemoteApp in a Windows 7 environment the applications can be accessed from the start menu just like any other program would be.  This is a feature that has become even more popular with a program from Citrix called XenApp which is in direct competition with Windows Terminal Services RemoteApp.  Here is a video that shows how RemoteApp works in Windows 7.

When a IT professional is working for a company as a server admin and manages multiple servers daily, then terminal services comes in very handy because the server admin can access all of the servers directly from their own computer vs. going to the physical machine and plugging into it.  Finally there is another feature that is a part of terminal services that allows for clustering of multiple terminal servers for load balancing purposes.  When a company has a lot of users using terminal services to conduct their work it can be very hard to keep up with which group is connected to which server, also what happens if one server has a hardware failure and may be down for a few hours?  Well this is where clustering and server farms come into play.  By creating a cluster you are able to create a generic name that everyone uses to access terminal services, but when the host server receives the request to use terminal services it can decided which physical box to use based on many different settings with the main one being load balancing.  If one of the physical servers were to go down the host server would then be able to route users to the remaining servers in the farm.  Also since the users are using the host server’s name, the IT workers will not have to spend their time going around changing everyone’s settings while the server is down.

Disclaimer: I have worked with terminal services in my job and all of the information I have used in this article are from personal experiences that I have had while dealing  with terminal services.

Owls Workgroup Diagram

Posted: September 15, 2010 in Computers and Internet

OWLS Workgroup Diagram

Created using Microsoft Visio 2010