Change Paravirtual to NVMe virtual storage controller in vSphere 6.5

0

With each new release of vSphere we have had storage performance improvements. The virtual storage controllers that are presented to a virtual machine can impact the performance of those VMs greatly. New to vSphere 6.5, we have the availability of NVMe virtual storage controllers. NVMe as a storage technology is a great leap forward for performance. With NVMe the storage has direct access to the PCIe bus. With the required virtual machine hardware version 13, you can utilize the new NVMe controller on your virtual machine. Let’s take a look at a few of the additional requirements as well as look at how to change paravirtual to NVMe virtual storage controller in vSphere 6.5.

NVMe virtual storage controller requirements

The requirements of the NVMe virtual storage controller include the above mentioned Virtual machine hardware version 13.  Additionally, the guest operating system must include one of the following operating systems as taken from VMware KB 2147714.

  • Windows 7 and 2008 R2 (hot fix required: https://support.microsoft.com/en-us/kb/2990941)
  • Windows 8.1, 2012 R2, 10, 2016
  • RHEL, CentOS, NeoKylin 6.5 and later
  • Oracle Linux 6.5 and later
  • Ubuntu 13.10 and later
  • SLE 11 SP4 and later
  • Solaris 11.3 and later
  • FreeBSD 10.1 and later
  • Mac OS X 10.10.3 and later
  • Debian 8.0 and later

Change Paravirtual to NVMe virtual storage controller in vSphere 6.5

We can in an order of operations change over to the NVMe virtual storage controller on a compatible OS by:

  • Adding the new NVMe Controller
  • Adding a new temporary hard drive attached to the NVMe controller
  • Allowing the operating system to install the storage controller driver for the new NVMe virtual storage controller
  • Powering down the VM
  • Changing the boot drive controller to the new NVMe controller
  • Then delete the temporary hard drive we added.

First, on a powered on virtual machine, we add the New NVMe Controller

nvmecon02 Change Paravirtual to NVMe virtual storage controller in vSphere 6.5

Next, we add a temporary hard drive and attach the new hard drive to the new NVMe controller.

nvmecon03 Change Paravirtual to NVMe virtual storage controller in vSphere 6.5

Check Device manager in the powered on virtual machine as you should see the Standard NVM Express Controller show up under Storage controllers.

nvmecon04 Change Paravirtual to NVMe virtual storage controller in vSphere 6.5

Now, we can power down the virtual machine and get rid of the temporary hard drive.

nvmecon05 Change Paravirtual to NVMe virtual storage controller in vSphere 6.5

Finally, we change the boot drive to the new NVMe Controller.

nvmecon06 Change Paravirtual to NVMe virtual storage controller in vSphere 6.5

The virtual machine should boot normally after the change to the new NVMe virtual controller.

nvmecon07-1024x769 Change Paravirtual to NVMe virtual storage controller in vSphere 6.5

Thoughts

Certainly, performance benefits if you have an all flash SAN or actually using an NVMe drive as the underlay device to your VMFS datastore.  To go along with the performance potential of the underlay storage device, with vSphere 6.5, the addition of the NVMe virtual storage controller allows the virtual machine performance to take advantage of the even faster flash storage available in today’s storage solutions.  Hopefully, this quick walk through on how to change Paravirtual to NVMe virtual storage controller in vSphere 6.5 shows how to quickly and easily do this in a fairly non disruptive way.