VMware has introduced some serious innovation with VMware vSphere 7 across the board. One of the new features that I think is extremely powerful that isn’t getting the same attention as some of the other fetaures is the new VMware vSphere 7 assignable hardware. This is a really great new feature for hardware acclerated VM workloads running in your environment. What is VMware vSphere 7 assignable hardware? Let’s take a look at what this is, why it is needed, and a closer look at how assignable hardware is implemented in VMware vSphere 7.
What are the challenges with Directpath I/O?
Hardware acceleration is a good thing in most contexts. Previously in VMware vSphere you can map a PCI-e device to a specific virtual machine to give it all the benefits of hardware acceleration such as with a hardware GPU.
From a performance perspective, this reaps awesome benefits as the VM workload can have near bare metal performance from the one-to-one mapping that was done from the VM to the PCI-e device.
When implemented in vSphere versions prior to vSphere 7, the hardware address of the PCI-e device was hard coded inside the VMX file for the virtual machine. This was known as directpath I/O. What challenges does this present?
With the directpath I/O configuration in vSphere versions prior to vSphere 7, there was no option for HA and also DRS could not be used for initial placement of a VM workload, due to the way the hardware address of the device was hardcoded.
VMware vSphere 7 Assignable Hardware
With vSphere 7, VMware has evolved how directpath I/O works. They are calling this dynamic directpath I/O. The new dynamic directpath I/O is a new abstraction layer between the virtual machine workload and the PCI-e device. The abstraction layer contains the information about the capabilities of the PCI-e device.
Rather than the hardware address setup in the VMX, the abstraction layer now contains this information. Assignable hardware with DRS, will lookup the capabilities of the cluster in terms of assignable hardware. DRS can now perform the initial placement.
This is a capability mapping layer. Exposed to the VM is the request for a PCI-e device or specific model such as a an Nvidia graphics card. Now with the dynamic mapping layer, using assignable hardware, it will look up a host in the cluster that possesses the requested hardware, and DRS will use this inforation for the initial placement of the VM.
At this time, vMotion capability is not supported for moving a VM, even with the dynamic capability mapping layer. However, this is no doubt something that is coming in future releases.
Aside from the new capability for using DRS and initial placement with assignable hardware, this also opens up the capability for vSphere HA now to work as expected with dynamic direct I/O.
Since previously with direct path I/O, the PCI-e device is hard coded to the virtual machine, vSphere HA could not restart the VM on another host, even if that host had the same hardware.
With the new vSphere 7 assignable hardware, powered by dynamic directpath I/O, this capability is now added back to VMs that are running assigned hardware. Dynamic directpath I/O looks for a surviving ESXi host that has the same hardware and restarts the VM on the surviving host using the new capability.
Support for NVIDIA vGPU
The same type of process happens with the Nvidia vGPU. Basically now, a PCI-e device (a vGPU device) which is connected. The same capability mapping will look for the same profile among the vSphere cluster hosts.
When you have a specific profile setup for a specific VM, DRS will look and see if the profile is available for all the hosts and sees where the VM can be powered on.
Custom labels can also be used. You can introduce custom labels for custom networks or other requirements which can come in handy for identifying various types of requirements.
Video Overview of the technology
Below is a great video from Niels Hagoort describing the new assignable hardware technology and demonstrating how this is configured in vSphere 7.
VMware vSphere 7 assignable hardware is yet another great feature of the new vSphere 7 release that helps to solve many of the business challenges facing organizations running various VM/hardware configurations.
Take a look at the following additional vSphere 7 related posts:
- What are VMware vSphere 7 Scalable Shares in DRS?
- VMware vSphere 7 vVols New Features
- Apply New ESXi 7.0 updates with vSphere Lifecycle Manager vLCM
- What is vSphere Lifecycle Manager vLCM?
- Upgrade to ESXi 7 with vSphere Lifecycle Manager