I have two application servers running in a active/active cluster within a VMWare ESXi (5.5, upgrade to 6.5 in near future) virtual host running VSphere. The application needs a shared, high performance storage.

ESXi utilizes an EMC storage using LUNs.

Is there a way to create an additional storage (disk device) that is mapped via VSphere to both VMs?

I personally would go with GlusterFS which introduces additional VMs, but my infrastructure administrators tend to reject it (VM limits reached). So the GlusterFS approach would not be possible for me.

  • What is the application? Details matter. – ewwhite May 17 '18 at 13:21

The general scheme is to create a new vmdk using 1:0 as SCSI ID to create a separate virtual controller. This controller can then be set to shared virtual (sharing on a single host) or shared physical (shared across hosts).

On the other VM you add the existing disk using a separate controller as well and you're set.

Obviously, the accessing VMs need to coordinate access to the disk between them. Using a normal filesystem without clustering option will not work.

Check out https://communities.vmware.com/blogs/Abhilash_hb/2013/08/25/clustering-using-sharing-of-vmdks-between-virtual-machines for details.

  • I'm pretty sure I've come across some clustering solutions where you have to use shared RDMs because they don't support shared VMDKs. For example Microsoft clustering iirc. – Mario Lenz May 17 '18 at 18:55
  • Yes, this is also possible. It's also possible to grant the guest direct access to your SAN and let it work on a LUN directly - the latter might minimize latency and overhead but is not desirable from a security POV. – Zac67 May 17 '18 at 20:39

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.