Configuring Disk Mirroring (RAID 1) on Windows Server 2008

From Techotopia
Revision as of 20:08, 22 July 2008 by Neil (Talk | contribs) (An Overview of Disk Mirroring (RAID 1))

Jump to: navigation, search

The focus of this chapter of Windows Server 2008 Essentials is the configuration of disk mirroring (RAID 1) on a Windows Server 2008 system. It is assumed in this chapter that the reader has a basic understanding of the difference between basic and dynamic disks within the context of Windows Server 2008. For information on this subject the chapter entitled Creating and Managing Simple and Spanned Volumes on Windows Server 2008 is recommended.

Note that the focus of this chapter is the mirroring of data disks. For details of mirroring system disks refer to Mirroring Windows Server 2008 System Disks.


Contents


An Overview of Disk Mirroring (RAID 1)

Disk mirroring consists of two identical volumes on two different physical disk drives. Any data is written to the mirrored volume is, in fact, written to both disk drives such that if one disk drive fails the data will still be available on the other disk. Unlike striping, which increases I/O performance, mirroring will actually reduce performance for the simple reason that all data write transactions have to be performed twice - once on each drive in the mirrored set.

Creating a Mirrored (RAID 1) Set using Disk Management

The remainder of this chapter assumes that the disks in question have been converted from basic disks to dynamic disks. For details on performing this task refer to the initial sections of the Creating and Managing Simple and Spanned Volumes on Windows Server 2008 chapter of this book.

In this section a mirrored set will be created using two similarly sized disk drives connected to a Windows Server 2008 system (note that if the disks are of different sizes Windows will base the available volume size on the smallest disk drive in the striped set).

Begin the process by invoking the Disk Management snap-in. This can be achieved by typing compmgmt.msc at a command prompt window or Run dialog and selecting Storage -> Disk Management. The system used in this example contains three disks numbered 0, 1 and 2 respectively. Disk 0 is the system disk and disks 1 and 2 will be used to created a striped set.

Within the Disk Management tool right click on the unallocated space in the graphical view of the first disk to be used in the stripe set and select New Mirrored Volume... to invoke the New Striped Volume wizard. Click Next on the welcome screen to proceed to the disk selection screen. As mentioned previously, a mirrored set must be comprised of two disk drives. Initially, the wizard only lists the currently selected disk in the 'Selected column. In order to proceed, one more disk is required. To add a disk to the mirrored set, select a suitable disk from the available disks in the right hand column and click on Add to add it to the selected disks list:


Selecting disks for a Windows Server 2008 Mirrored (RAID 1) volume


With the necessary disks selected click Next to proceed and assign a drive letter or mount point for the volume. The Next button will then proceed to the Format Volume screen where the file system type and compression options may be selected. To view the summary screen, press the Next button. Assuming the summary is acceptable the Finish button will format the volumes and create the striped volume ready for use.


Creating a Mirrored (RAID 1) Volume from the Command Prompt

Windows Server 2008 Mirrored (RAID 1) volumes may also be created from the command prompt using the diskpart tool. This may be launched either from a command prompt window, or from the Run dialog simply by entering diskpart at the prompt. Once invoked the DISKPART> prompt will displayed, ready to recieve commands.

The first step in creating a mirrored set using diskpart is to identify the disks to be used. This can be achieved using the list disk command:

DISKPART> list disk

  Disk ###  Status      Size     Free     Dyn  Gpt
  --------  ----------  -------  -------  ---  ---
  Disk 0    Online        30 GB      0 B
  Disk 1    Online         8 GB  8189 MB
  Disk 2    Online         8 GB  8189 MB

For the purposes of this tutorial we will be creating a mirrored volume based on a set consisting of disks 1 and 2. The mirrored volume is created by first creating a simple volume on the first disk and then adding a second disk to the mirrored set.

The first volume is created using the create volume command combined with the disk= directive. The size of the volume may also be specified using the size= directive. Omission of the size= option will cause diskpart to create volume such that it is the size of the smallest disk in the mirrored set. For example:

Having created the first volume on disk 1 the next step is to add the mirror volume on disk 2. this is achieved using the add command as follows:

add disk=2

The list volume command may be used to verify the new configuration:

DISKPART> list volume

  Volume ###  Ltr  Label        Fs     Type        Size     Status     Info
  ----------  ---  -----------  -----  ----------  -------  ---------  --------
  Volume 0     D                       DVD-ROM         0 B  No Media
  Volume 1     C                NTFS   Partition     30 GB  Healthy    System
* Volume 2                      RAW    Mirror      8189 MB  Healthy

As shown above the new volume is listed as volume 2 and shown as Mirror. The volume is also listed as RAW because it has not yet been formatted with a file system. This, too, can be achieved within the diskpart tool:

DISKPART> select volume 2
DISKPART> format fs=ntfs label="Mirrored Volume"

  100 percent completed

DiskPart successfully formatted the volume.

Once formatted, the last task is to assign either a drive letter or mount point to the volume by which it will accessed:

To assign a drive letter:

DISKPART> assign letter=E:

DiskPart successfully assigned the drive letter or mount point.

To assign a mount point:

DISKPART> assign mount=\bigvol

DiskPart successfully assigned the drive letter or mount point.

Once assigned a drive letter or mount point, the new mirrored volume is ready for use.

Adding a Mirror to an Existing Volume

A mirror may be added to an existing volume using either the Disk Managament snap-in, or from the command-prompt using the diskpart tool. When a mirror is added to an existing volume Windows creates a second volume equal is size and file system type on a second disk of your choice and copies (known as resynching) the data on the existing volume to the mirror.

To a mirror to an existing volume using Disk management, right click on the existing volume in the graphical view and select Add Mirror to invoke the Add Mirror dialog shown below:


[Image:windows_server_2008_add_mirror.jpg|Adding a mirror to an existing volume]]


The above dialog will list disks eligable to act as a mirror for the existing volume. Select the desired disk and click on Next. A warning dialog may appear notifying you of any additional changes that may be made as a result of the addition (such as converting basic disks to dynamic disks). Click Yes to proceed. The resynching process will now begin, the progress of which will be displayed in the graphical view.

To add a mirror to an existing volume from the command prompt, start diskpart and identify the existing volume using the list volume command:

DISKPART> list volume

  Volume ###  Ltr  Label        Fs     Type        Size     Status     Info
  ----------  ---  -----------  -----  ----------  -------  ---------  --------
  Volume 0     D                       DVD-ROM         0 B  No Media
  Volume 1     C                NTFS   Partition     30 GB  Healthy    System
  Volume 2     E   My Volume    NTFS   Partition   8189 MB  Healthy

The volume to be mirrored in this example is Volume 2. Having identified the volume, a disk to contain the mirror needs to be found using the list disk command:

DISKPART> list disk

  Disk ###  Status      Size     Free     Dyn  Gpt
  --------  ----------  -------  -------  ---  ---
  Disk 0    Online        30 GB      0 B
* Disk 1    Online         8 GB      0 B
  Disk 2    Online         8 GB  8189 MB

From the above information it is clear that Volume 2 is 8189 Mb in size. In order to be able to mirror this volume, a disk with at least 8189 Mb is required. Clearly, disk 2 meets this requirement. Therefore, all that needs to be done is to add disk 2 as the mirror disk for our volume using the add disk command. Note that if the disks are not dynamic disks they will need to be converted with the convert dynamic command:

select disk 1
convert dynamic
select disk 2
convert dynamic

The next step is to select the existing volume on disk 1:

DISKPART> select disk 1
DISKPART> select volume 2

Volume 2 is the selected volume.

Finally, the mirrored set can be created using the add= command, passing through the number of the disk to be used as the mirror (in this case disk 2):


DISKPART> add disk=2

DiskPart succeeded in adding a mirror to the volume.

At this point Windows Server 2008 will begin the resync process which, depending on the size of the volume being mirrored may take some time. This fact is reported by the show volume command which lists the volume as being of type Mirror with a status of Rebuild. On the resynching process is complete the status will be displayed as Healthy.

Breaking and Removing Mirrored Sets

A Windows Server 2008 mirror may be broken (which creates two separate and independent volumes containing identical data) or removed which removes the data on the mirror leaving free space on the designated mirror disk.

To break a mirror from the Disk Management snap-in right click on one of the volumes in the set in graphical view and select Break Mirrored Volume from the pop-up menu.

To break a mirror set from the command line use the break command, specifying one of the two disks in the mirrored set:

DISKPART>break disk=2

To remove a mirror from a mirrored set, removing all mirrored data and leaving free space on the disk right click on the mirror volume to be removed in the Disk Management graphical view and select Remove Mirror. Alternatively, use the diskpart break command with the NOKEEP option:

DISKPART>break nokeep disk=2

Recovering a Mirrored Set

If one of the disks in a mirrored set fails the good news is that, unlike striped volumes, all the data is still present on the remaining healthy disk (this, after all is the whole point of disk mirroring). In this situation, however, it is important to replace the faulty disk and rebuild the mirror before the healthy drive also fails.

To achieve this, install the new drive and restart the system. Right click on the failed volume and select Remove Mirror Next, identify a suitable alternate or newly installed drive with sufficient space to act as a mirror. Right click on the existing volume from the original mirrored set, select Add Mirror from the resulting menu, select the new disk and click on Add Mirror. Windows will now rebuild the mirror using space on the new disk. As noted above this process can take some time depending on the size of the volume in question.