In a cluster setting we have a set way to configure our shared storage whether it resides on a SOFS (Scale-Out File Server) cluster or some sort of network based storage.
First, the process to set up the storage itself:
- Configure the LUN
- LUN ID must be identical for all Hyper-V nodes for SAN/NAS
- iSCSI Target for SAN/NAS
- This step is optional depending on the setup
When it comes to the storage we configure the following LUNs for all of our cluster setups;
- 1.5GB LUN
- Set up for the Witness Disk
- Add to Cluster Storage but NOT CSV
- Sum of all physical RAM on the nodes plus 150GB
- Add to Cluster Shared Volumes
- All Hyper-V nodes set to deliver VM settings files to this location
- Don’t forget that Hyper-V writes a file that is equivalent in size for _all_ VMs running on the cluster or standalone host!
- Divide the remaining storage into two or more LUNs depending on workload and storage requirements
- A minimum of 2 LUNs allows for storage load to be shared across the SAN’s two storage controllers, the two iSCSI networks, and the two or more Hyper-V nodes
In a SOFS setting we set up a File Share Witness for our Hyper-V compute clusters and deliver the HA shares via SMB Multichannel and a minimum of 10GbE for the VHDX files.
The PowerShell steps for any of the above are here to avoid copy and paste issues.
Set Default Paths:
Set-VMHost -VirtualHardDiskPath “C:\ClusterStorage” –VirtualMachinePath “C:\ClusterStorage\Volume1”
We point the VHDX setting to the CSV root just in case. Our PowerShell scripts for setting up VMs put the VHDX files into the right storage location.
Set Quorum Up:
Set-ClusterQuorum -NodeAndDiskMajority "Cluster Virtual Disk (Witness Disk)"
Microsoft High Availability MVP
Co-Author: SBS 2008 Blueprint Book