VMWARE Guest Storage VMDK vs RDM-V vs RMD-P

When is it best to use VMDK, RDM-V or RDM-P?

I have always defaulted to using the standard VMFS5 Datastores with VMDK files for each server. However I typically use RDM-V when I need an excessive amount of storage on a VM for something like archive data storage or backup servers. On these systems I would give the server a OS Partition, and then a Raw mapped Data partition. Is there a reason not to do this?


Solution 1:

There's no much point in using RDM these days unless your VM is sort of a "controller" VM and it uses ZFS or similar to aggregate multiple individual physical disks into single unified namespace. Think about Nutanix for example. For all other cases VMDK is just as well I/O performing as RDM but RDM-x doesn't support at least some nice features and has issues with backup applications.

http://houseofbrick.com/vmfs-vs-rdm-part-i/

https://www.reddit.com/r/vmware/comments/3wghbf/do_you_use_rdms_anymore/

The only exception is multi-PB volumes of course but in such a case you simply don't have a choice with VMDK.

Solution 2:

VMDKs are performing very good and I haven’t seen almost any difference between VMDK and RDM. Of course, you have to pay attention to the type of provisioning since Eager Zero vs Lazy Zero VMDKs performance differs a lot https://communities.vmware.com/thread/436685?start=0

If you need some virtualized storage shared or mirrored between hosts you can use an additional software storage controller, so-called “controller VM” like Starwind https://www.starwindsoftware.com/starwind-virtual-san that has nice additional features like caching/deduplication that native VMDK does not.