1

Our organization runs ESXi 5.5 on three hosts, 8x1Gb NICs, and a 6Gbps DAS using shared SAS to each host. All Windows VMs (2008R2+).

We have a proprietary in-house application that was designed to run on local disk storage, but recent architectural changes forced us to load the application via network share (SMB - Windows Server 2012R2) -- and as a result, our performance is suffering.

My goal is to mount a shared local disk to each VM so each sees the same data.

My research shows that Hyper-V supports this scenario, however, altering our entire hypervisor infrastructure isn't an option at this point.

Is there any other combination of technologies that allow a Windows 2008 R2 VM to share an NTFS disk with both read/write access?

Jeremy Smith
  • 123
  • 7
  • There's some 'gotchas' about this because NTFS as default isn't a cluster-aware filesystem but that might be fixable - but firstly how are you sharing this 6Gbps DAS - DAS suggests shared-SAS but I'm unaware of that being workable in a >2-host setup - how EXACTLY is your storage configured? – Chopper3 Jan 26 '16 at 17:15
  • @Chopper3 we run an MD3220 with redundant controllers that support 4 HBAs. Each of our hosts is cross-linked between each card. [This configuration](http://en.community.dell.com/techcenter/enterprise-solutions/w/oracle_solutions/3242.how-to-cable-an-md3200-or-md3220-sas-array) – Jeremy Smith Jan 26 '16 at 17:23
  • Huh - didn't know you could do that, I'm an FC/FCoE kinda guy, never use SAS for shared storage normally so excuse my ignorance. Anyway all you need to do is create a new LUN/Logical Disk of whatever size, expose it to each host, then RDM-map it to the various VMs in physical mode. This will make the shared LUN appear to each host but you will have to use some form of cluster-management to ensure you don't immediately corrupt the volume as by default each VM will assume it has exclusive access to the volume. Google for how to do MSSQL in VMs, the method is the same. – Chopper3 Jan 26 '16 at 17:30
  • @Chopper3 See my answer; with WS2008R2 VMs you *can* build a cluster this way, but it will be limited to the standard active/passive model of Windows clusters. With WS2012R2, you can use CSV to effectively achieve concurrent access. – Massimo Jan 26 '16 at 17:36
  • @Massimo - or you could use a non-MS clustering solution like Veritas Storage Foundation of course – Chopper3 Jan 26 '16 at 17:59

1 Answers1

2

In Windows Server 2008 R2, Cluster Shared Volumes were only supported for Hyper-V workloads; in Windows Server 2012 and Windows Server 2012 R2, CSV support has been extended to several other clustered roles. This applies to the servers which are actually sharing the volume(s), not to the hypervisor on which they are running (if any).

What this means is: with WS2012R2 you could find a way to share a NTFS volume between multiple systems with concurrent read/write access, regadless of what's actually stored on the volume; with Windows Server 2008 R2, this is not possible unless they are Hyper-V hosts using that volume to store virtual machines.

If you can deploy WS2012R2 VMs and attach a shared disk to them, then you could build a cluster and use a CSV for your needs (although the underlying VMware hypervisor would definitely add some complexities to the mix).

Massimo
  • 70,200
  • 57
  • 200
  • 323
  • I was going to post this exact thing as a comment. The fact that the guest OS is Windows Server 2008 R2 makes this a tricky one. The OP could deploy a File Server failover cluster with the virtual machines, but that leaves him in the same position he's in now with his file share performance problems. – joeqwerty Jan 26 '16 at 17:44
  • 1
    As an aside, I've done this in my home lab with Windows Server 2012 R2 Hyper-V hosts nested in vSphere 5.1 accessing a shared VMDK and using that for the CSV. The performance was surprisingly good. – joeqwerty Jan 26 '16 at 17:48
  • Great explanation @Massimo, that just the info we needed to make a decision. – Jeremy Smith Jan 26 '16 at 19:46