February 2000

Understanding and Implementing RAID

by Brian Hartman

Your data is the most important part of your network. But how well is it protected from hardware failure? Is it protected at all? Windows NT provides support for both hardware and software based RAID. In this article, we'll describe the similarities and differences between the two types of RAID, how to implement software based RAID, and how to recover form a disk failure.

Understanding RAID

You can implement RAID (redundant array of inexpensive disks) in several ways. There are five levels of RAID:

Windows NT only supports RAID levels 1 and 5. Another disk technique known as striping without parity is sometimes called RAID level 0. This technique, however, doesn't offer any protection for data and won't be discussed here.

Hardware based RAID

Companies such as Compaq (http://www.compaq.com/), Adaptec (http://www.adaptec.com/), and Mylex (http://www.mylex.com/) among others, offer hardware based RAID solutions for Windows NT. Any hardware based RAID solution will bypass the NT disk drivers, so five 9 GB disks in a RAID array will appear as a 45 GB disk to NT's Disk Administrator program. Other features of hardware based RAID include the ability to hot swap failed disks, power supplies, or both. These companies also offer superior reporting, diagnostic, and preventative maintenance capabilities. All this comes at a price, however. Entry level hardware RAID products can cost several thousands of dollars. As with any other component of your network, you must sit down and do a thorough cost benefit analysis of the alternatives.

Configure mirroring (RAID level 1)

Let's take a look first at how to configure a mirror set for Windows NT. Software based RAID can only be configured on a Windows NT Server. As you see in Figure A, Disk Administrator shows two disks, and we want to mirror the C partition on disk 0 with disk 1.

Figure A: Here you can see how to create a mirror of the C: partition on disk 0 with disk 1.
 Figure A

After selecting the partition you wish to mirror, hold down the [Ctrl] key to select an area of equal free space on disk 1. The area selected must be equal or greater in size or the mirror won't be created. After selecting the space on disk 1, select the Establish Mirror option under the fault tolerance menu choice in disk administrator. Figure B shows the newly created mirror.

Figure B: Here you can see the mirroring of the C: drive on disk 0 with disk 1.
 Figure B

After the mirror has been created, the area on disk 1 takes on the same drive letter as the partition on disk 0. When implementing mirroring on your system, you need to be aware of the following advantages and disadvantages:

Configuring striping with parity (RAID level 5)

Striping with parity (RAID level 5) requires a minimum of three disks. You can have as many as 32 in a stripe set with parity. Like a mirror set, the amounts of space used to create the stripe set on the disks must be equal. If not, NT will automatically calculate the smallest amount of space available, and use that amount as the basis for the stripe set. The space on each disk must be free space as well. Figure C shows three disks selected in disk administrator, which are ready to create the stripe set.

Figure C: Disks 0 and 1 have over 1 GB of free space, but disk 2 only has 750 MB of free space, thus the largest stripe set we can create is 3 x 750 or 2.25 GB.
 Figure C

The fault tolerance menu in disk administrator is also used to select the creation of the stripe set. Figure D shows the created stripe set appearing as a single drive letter.

Figure D: Any space not used by the creation of the stripe set is left as free space.
 Figure D

Striping with parity offers a lower cost per disk. Since the parity information is written equally over each disk, the equivalent of one disk in the set is used for parity. Since the minimum number of disks in a stripe set is three, you achieve a lower cost per disk. When choosing to implement RAID level 5, you need to be aware of the following advantages and disadvantages:

Recovering from disk failure

What a wonderful world it would be if hardware never failed. Since that isn't a practical line of thinking, let's take a look at how to recover from disk failure. If either a mirror set or stripe set with parity fails, the system will still function, albeit more slowly than before. Since we're looking at software based RAID, we'll need to replace the failed disk and reboot the machine. Hardware detection of new disks is dynamic in NT, so you can go into disk administrator and either re-create the mirror set, or regenerate the stripe set with parity.

However, if the mirrored system/boot partition fails, the system won't boot, since the necessary boot files will reside on the failed mirror disk. To remedy this, you need to have a fault tolerant boot disk available. To create a fault tolerant boot disk, you must perform the following steps:

The following files are needed for the floppy disk:

Understanding ARC paths

We think of the ARC path as the roadmap to the WINNT directory. To get to that directory, the roadmap takes us through the controller, disk, and partition that NT is loaded on. Here's an example of an ARC path:

Multi(0)disk(0)rdisk(0)partition(1)

The first value can be either multi or scsi. Multi refers to IDE or SCSI disks that boot from the on board BIOS. SCSI refers to SCSI disks that aren't using their BIOS, and would boot using the ntbootdd.sys file mentioned earlier. The next two items make for some redundancy. If the first item is multi, the value we look to is rdisk. If it is scsi, we look to disk. It's redundant because both exist in every boot.ini file, even though if it's a multi drive, the disk value will read 0.

Finally we get to the partition value. Unlike the disk parameters, which show 0 as the first instance of that particular type, the partition value will start at 1 for the C: drive. You'll need to modify this text file to point to the secondary member of the mirror set in order to boot NT and re-create the mirror set.

Your data is important, so protect it

Estimates vary, but it isn't hard to say that between wages, lost productivity, potential customer inconvenience, etc. that every hour of server downtime can cost your company several thousand dollars. While not as flashy or full featured as hardware based RAID solutions, NT Server has the ability to effectively protect your disks and data from the inevitable systems failure. In this article, we compared the two types of software based RAID, how to configure them, and how to use them to recover form disk failure.


Copyright © 2000, ZD Inc. All rights reserved. ZD Journals and the ZD Journals logo are trademarks of ZD Inc. Reproduction in whole or in part in any form or medium without express written permission of ZD Inc. is prohibited. All other product names and logos are trademarks or registered trademarks of their respective owners.