Clustered VMDK support

User Guides for VMware Solutions

Audience
Public
Content Type
User Guides
Source Type
Documentation

vSphere Clustered VMDK is a feature that allows multiple Virtual Machines (VMs) to share a common virtual disk (VMDK) while supporting Windows Server Failover Clustering (WSFC) instead of using RDMs.

Standard VMFS datastores use a "distributed locking" mechanism to prevent multiple VMs from writing to the same file simultaneously (which would cause data corruption). Clustered VMDKs bypass this restriction by using SCSI-3 Persistent Reservations. This allows the VMs themselves to manage who has "ownership" of the disk at any given time, which is exactly how a cluster heartbeat functions.

ActiveCluster datastores over NVMe-TCP or NVMe-FC are supported with the Clustered VMDK feature.

To enable the Clustered VMDK capability on the datastore:

  1. Select the datastore → ConfigureGeneralDatastore Capabilities.

  2. Click Enable for Clustered VMDK. You can later Disable it, but only if no WSFC VMs are using clustered VMDKs on that datastore.

Configure shared VM Disk for WSFC

Prepare first WSFC Node (VM1)

  1. Power off both VMs (safest when changing controllers & bus sharing).

  2. Edit settings of VM1:

    Add New SCSI Controller → type VMware Paravirtual → set Bus sharing = Physical.

  3. Still on VM1, Add New Hard Disk:

    ○ Disk type: New Hard Disk

    ○ Datastore: your Clustered VMDK VMFS6 datastore

    ○ Disk format: Thick Provision Eager Zeroed (EZT) (required)

    ○ Controller: attach this disk to the new PVSCSI controller (for example SCSI 1:0).

    ○ Leave disk sharing = No sharing; the “clustered” behavior is provided by the datastore + bus sharing, not the multi-writer flag.

VM1 now owns the backing VMDK that will become the shared disk.

Attach the same VMDK to WSFC Node 2 (VM2)

  1. Edit settings of VM2:

    Add New SCSI ControllerVMware ParavirtualBus sharing = Physical (same as VM1).

  2. On VM2, Add Existing Hard Disk:

    ○ Choose Add existing disk Browse to the same VMDK file you created for VM1 on the clustered-VMDK datastore.

    ○ Attach it to the same controller and SCSI ID as on VM1 (e.g. SCSI 1:0). This must match across all WSFC nodes.

Power on your VMs and initialize the disk in Windows (VM1 first). You should see the new disk as Offline / Uninitialized. Bring it Online, Initialize (GPT), create one or more NTFS/ReFS volumes as needed for data or quorum.

On VM2 rescan disks only; you should see the same disk but leave it Offline at the OS level (WSFC will control ownership)