ESXi

 View Only
  • 1.  Shared RDM for Cluster Node

    Posted Jul 10, 2014 05:51 PM

    How to configure shared RDM between 2 node windows/Linux fail-over cluster.



  • 2.  RE: Shared RDM for Cluster Node

    Posted Jul 10, 2014 06:13 PM

    Please take a look at the MSCS documentation for the vSphere version you are using (http://kb.vmware.com/kb/1004617).

    André



  • 3.  RE: Shared RDM for Cluster Node

    Posted Jul 10, 2014 06:31 PM

    Liek A.P Said take a good look at the KB article as there is lots of little gotch'as however with that said it will be a good idea to always keep both nodes of the cluster on one side of the fence if you use SRM.  We had a cluster setup across a sctretch network one time and when we had to failover one of the nodes with SRM it worked but it was a pain.  If you use SRM keep both nodes on one side on one SAN.



  • 4.  RE: Shared RDM for Cluster Node

    Posted Jul 11, 2014 10:02 AM

    - Make sure to have the RDM in physical mode

         - For VMDK's the disk must be "Thick provision Eager Zeroed"  and "Independent - Persistent"

    Tip: for the sharing SCSI node I use SCSI1:X so I know that everything from SCSI controller 1 are sharing disks.

    - Change the .ctkEnabled setting from the corresponding SCSI controller to false (this will disable change block tracking; so all changes are directly written to the disk. This prevents that the CBT file is locked and the other VM can't access that.)

    Add a new row with the option SCSI1:0 (or whatever SCSI ID your shared RDM will be) and give it the value "multi-writer" so it is possible for multiple VM's to connect to the disk. It removes the write protection

    VMware KB: Disabling simultaneous write protection provided by VMFS using the multi-writer flag

    If you don't do this, the first powered on VM protects the disk, and the second VM will not properly start and give errors about file locks etc.

    - Make sure you set these settings on BOTH VM's because these are VM settings. Also make sure you document it properly and test it before using it in production. Try things like extending disks etc.

    You also could use powerCLI to set the settings above for example

    $vm = "LINTST"

    new-advancedsetting -entity $vm -name "scsi1:$X.sharing" -value "multi-writer" -confirm:$false

    new-advancedsetting -entity $vm -name "scsi1:$X.ctkEnabled" -value "false" -confirm:$false

    Or set the setting for the whole SCSI1: node with a simple loop

    $vm = "LINTST"

    foreach($x in (0..15)) {

    new-advancedsetting -entity $vm -name "scsi1:$X.sharing" -value "multi-writer" -confirm:$false

    new-advancedsetting -entity $vm -name "scsi1:$X.ctkEnabled" -value "false" -confirm:$false

    }

    - DRS rules: Don't forget to make a DRS rule to seperate both VM's when using it in the same cluster. (In my case I have a cluster with hosts across 2 datacenters)

    - Linux fencing :  I created a separate fencing user, the only privileges the Fence user need are "Interaction - PowerOff / PowerOn"

    Hope this will get you going a bit