Microsoft Enterprise Platforms Support: Windows Server Core Team
EPS Team Blogs
Product Team Blogs
In prior versions of Windows Server Cluster (NT, 2000, 2003), adding a new disk to an existing cluster was often a cumbersome process. Sometimes the OS would not recognize the new disk. Sometimes the Cluster would not be able to add a new disk resource. Sometimes it took a reboot of the OS to detect the new disk. All those issues have been eliminated with Windows 2008 Failover Clustering. Adding new storage is a simple, reliable process that I thought I would show everyone. In this walk through, I already have a 2 node cluster. I am going to walk through adding a 1GB LUN as a new disk to an existing cluster. The first step is to present my new disk. This would normally be done via the SAN management software or the iSCSI initiator/target software. Here is what I see in Disk Management once I’ve presented my new disk to the cluster.
Note how Disk 4 shows as ‘Offline’. This behavior is the whole key to the improvements in cluster storage made in Windows 2008. In Windows 2008, we let Partition Manager handle the ‘online’/‘offline’ of a disk rather than relying on the cluster disk driver to “fence” off the disks like in previous OS versions. In Windows 2008, when a new disk or LUN is presented to an OS, the default behavior is to leave the drive ‘Offline’. By doing this, we avoid getting into a scenario where both nodes of a cluster could potentially see and access the same disks. If this happens, we are in a potential data corruption/loss scenario. The fact that prior operating system versions brought a disk online by default was the reason we recommended you have all but one node powered down when adding a new disk to a cluster. This was not always an easy task and inevitably, resulted in more complications and downtime than necessary.
So, now that we’ve presented the new disk to all nodes of the cluster, we should see the same view in Disk Manager of (Figure 1) across all nodes of the cluster. Meaning the new disk should show as ‘Basic’ and ‘Offline’ on every node of the cluster.
Our next step is to bring the disk online. We only need to do this on one of the nodes in the cluster. It does not matter which node. Right click in the gray area to the left of the volume bar, and then select ‘Online’.
The new disk should now show as ‘Online’ but still ‘Unallocated’.
Now we want to create the volume as a ‘New Simple Volume’. Note, we don’t want to select any of the other options (‘New Spanned Volume’, ‘New Striped Volume’, etc.) because in doing so would convert the disks to ‘Dynamic’ which are not supported in a clustered environment. Right-click the white area of the volume itself and choose ‘New Simple Volume’.
This will launch the ‘New Simple Volume Wizard’.
Select the size of the new volume, then [Next].
At this point, you can either assign the new disk a drive letter, create it as a mount point on an existing clustered disk, or you don’t even have to assign a drive letter. Cluster has no requirement on a disk needing a drive letter to be a clustered resource. Click [Next].
Format the volume as NTFS, select [Next].
Now we should see our newly formatted disk as online in Disk Management. Note that if you went to any other node in the cluster, we’d still show this disk as ‘offline’. This is good because we don’t want more than one node to be able to see or access a disk until it’s under the control of the cluster. That’s the step we do next.
Open Failover Cluster Manager and select ‘Storage’.
In the ‘Actions’ pane at the far right in Failover Cluster Manager, select ‘Add a disk’.
Now we should see the disk available as a resource we can add into the cluster. If we were adding multiple disks, we could add one, some, or all of the disks at this time. Make sure there’s a check in the checkbox for the disks you are adding. Click [OK].
Now, note how our new disk has been added to our pool of disks called ‘Available Storage’. These are disks that are under the control of the cluster but have not yet been added to any ‘Services and Application’ group. Basically think of ‘Available Disks’ as your repository of unused cluster disks that you can use for clustered applications.
That’s all there is to it. This process can be done without any disruption of services being provided by the cluster.
As a troubleshooting footnote, if you present a LUN to a server and you have difficulties adding it to the cluster, failing over, etc., the best way to dive deeper into the problem is run the cluster validation on the storage. The validation can often detect problems with shared storage and give you a direction to head for resolution.
Jeff Hughes Senior Support Escalation Engineer Microsoft Enterprise Platforms Support
Good stuff, Jeff, though there are situations where 2008 clusters will not add valid cluster disks into the cluster. These clusters also are not required to pass the cluster validation storage tests...multi-site clusters.
I just posted on my blog (http://msmvps.com/blogs/jtoner) how to add disks using cluster.exe commands in 2008 for those situations where the GUI doesn't work.
Does this process require a re-boot of the cluster or any amount of downtime. What if PowerPath from EMC is being used on each member of the cluster.
Really good piece of advice, thanks a lot!
Please clarify the conditions i get the following dialog box with the following text in it:
"You need to format the disk in drive G: before you can use it.
Do you want to format it?"
I see that dialog when a Storage Area Network (SAN) attached volume arrives at the system (Windows 2008 and above.)
What would be necessary to code to prevent that dialog pop-up? Any IOCTL instruction?
How can we configure Windows 2008 to bring any new disks which will be added to OS(SAN) online? Looks like by default is offline.
Good stuff, Jeff in a 2008 R2 cluster environment can you add an available disk to the cluster core that already has the Quorum. Because I have a cluter with 2 cluster services all have their disk assigned but I have another available disk I want to make available to the cluster core and I can't seem to find the option to do that.
I would like to know if it's possible to extend the existing logical drive by adding more disk into existing disk cluster,.. Please advise if this is possible on Windows 2003 as well.
A very good article
Excellent article with details explanation. I have a quick question - When we add the new storage to the cluster is it always required to run the cluster validation?
I don't believe the process described here is sufficient, for disks that use drive letters. You need to take the disk offline from the first cluster node, bring it online on the next node, and assign the SAME drive letter to it that was assigned on the first node. Otherwise your cluster will no longer failover properly as the disk will have a different drive letter on different nodes.
Hi Jeff: this is really nice post. But I have the same query as Agus, I want to how to expand or add new SAN storage to existing logical drive which not currently dynamic and is been already used. Little help or feedback will be appreciated.
Thanks , a great notes