Intended Audience :
This blog is for system administrators, software developers / testers, supoort engineers who are familiar with VMware technology and Microsoft failover cluster. Please make a note that this is not a guide to using failover clustering. Use your Microsoft documentation for information about installation and configuration of Microsoft failover clustering.
Overview :
VMware vSphere 4 on the performance front has introduced a new virtual storage adapter VMware Paravirtualized SCSI (PVSCSI). PVSCSI is a high-performance storage adapter that provides better throughput and lower CPU utilization for virtual machines. It is best suited for environments where guest applications are very I/O intensive. A new core-offload I/O system to utilize processors on multicore systems, processor scheduler enhancements to improve the efficiency of interrupt delivery and associated processing, and advanced I/O concurrency updates, all of which significantly optimize storage throughput.
Objective :
Leverage VMware Paravirtualized SCSI (PVSCSI) for clustering using Microsoft failover cluster (Windows 2008 / 2008 R2) across VMware virtual machines.
Facts and Findings :
Procedure :
Limitations :
Conclusion :
Though VMware officially do not claim support for Microsoft Failover Cluster (Windows 2008 / 2008 R2) with VMware Paravirtualized SCSI (PVSCSI), it is very much feasible solution which I have deployed in my test environment and played around it.
PVSCSI improves the throughput when the workload drives very high I/O rates and greatly improves the CPU efficiency which dramatically brings the host CPU utilization down. It can deliver better disk performance across VMware virtualization platform and that too at no extra cost. It is a technology really worth to look forward.
Just been playing with this myself, and then found your article on it 🙂
Any idea if this combination of PVSCSI with Windows Failover Cluster is likely to be supported soon?
Also, it'd be really handy to remove the restriction on not being able to vMotion a VM that has a SCSI controller (PVSCSI or LSI Logic) configured for bus sharing. There's probably some very good technical reason why it's not possible at the moment, but that makes for a good technical challenge to be addressed. The ability to change the host that a cluster node is running on without having to "fail over" the cluster would be really handy - the cluster fail over time is usually somewhat longer than the few seconds of no connectivity caused by a vMotion.
Perhaps some of this is already addressed in vSphere 5.0?
Thanks!
Yes Robin,
It seems that when we are using VMware as MSCS nodes with Physical compatibility RDM we are just utilizing the compute resource on top of the Hypervisor because the benefits of VM like VMotion, HA and Snapshot is no longer available to the nodes associated.
But a for using Paravirtual SCSI controller and VMXNet3 vNIC it is all supported, Alex Fontana book "Virtualizing Microsoft Tier 1 Applications with VMware vSphere 4" always use those Paravirtual virtual hardware in the step by steps instruction so it is supported by VMware and recommended for the best performance.
My next question is:
Is it possible to use VCenter deployed Thick VMDK disk as HardDisk for VM with MSCS feature enabled ? because it requires SCSI bus sharing "Physical" compatibility mode, by default it will cause in the VM failed to turn on http://kb.vmware.com/selfservice/microsites/search.do?language=en_US&cmd=displayKC&externalId=103357...
it seems it is yes it can be done but with this way: http://kb.vmware.com/selfservice/microsites/search.do?language=en_US&cmd=displayKC&externalId=100349...
You can deploy Thick VMDK from vCenter.If you select "Support clustering features such as Fault tolerance" for the VMDK,a eagerzeroedthick disk will be deployed.If not, zeroedthick disk will be deployed.But you cannot share the SCSI bus with "Physical" compatibility.Because clustering using VMDK disk is supported only if both the MSCS VM's resides on a single host i.e Cluster in a box.So you need to share the SCSI bus with "Virtual" compatibility mode if you are planning to deploy Microsoft clustering with VMDK's.
For more details refer to pages 15 to 18 in the pdf uploaded.