vSphere Metro Storage Cluster (vMSC) is a certified (you should always check/verify compatibility on VMware Storage Compatibility Guide) configuration for stretched storage (synchronized replication) cluster architectures.

As I already described, there are possible two vMSC configurations based on how the hosts are connected to the storage arrays. The below figure presents uniform host access configuration (the most often seen), hosts in DC A and DC B have access to the storage systems in both data centers.

Recently, I was asked by my customer to build a stretched cluster using no identical ESXi hosts. My customer did not want to replicate all datastores (LUNs) between data centers and ESXi hosts are partially connected to datastores. They also wanted to avoid installing dedicate ESXi hosts for "local" clusters. I understand it as they needed to protect some VMs and they had only four servers. The below figure presents a scenario:

The are some additional points to mention:

vSphere DRS affinity rules are configured to keep VMs running on a host in the same data center as the array that is configured as the primary (=read/write) node for a datastore (LUN).

Stetched cluster is a standard vSphere cluster so a vm-host compatibility list is generated for each virtual machine. This list determines which ESXi host in the cluster have network (= the same name of port group) and storage configurations that allow the virtual machine to successfully be restarted. In our case, VMs running on not replicated storage will be mapped to hosts in the same datacenter.

Formally, we should configure the Admission Control policy : 50% CPU, 50% Memory.

Four datastore heartbeats on replicated LUNs (two in each data center).

vSphere Metro Storage Cluster built on partially connected hosts is possible, works but is not recommended because:

