Pages

Tuesday 4 January 2011

XenServer SR-IOV Support for Provisioning Services Virtual Machines

Overview
As companies virtualize more and more of their server infrastructure they are increasingly interested in virtualizing Provisioning Services hosts. However, the significant level of network IO that occurs on a Provisioning Services host can be challenging for the virtualization platform. This article describes how to virtualize Provisioning Services hosts with maximum performance and scalability by leveraging Single Route I/O Virtualization (SR-IOV) capabilities of Intel Niantic NICs with XenServer (versions 5.6 and later).
Requirements
To make use of this capability, you must have a host server in which a SR-IOV capable network device is installed. The device tested for this article is the Intel® 82599 10 Gigabit Ethernet Controller. Note: The setup procedure below requires that the 10 GigE NIC not be used as the management interface for the host. A second physical NIC must be installed on the system for that purpose.
Process
The following procedure is a detailed step-by-step guide for configuring an SR-IOV-enabled Provisioning Services virtual machine on XenServer 5.6, provided that your system meets the hardware and firmware requirements described above.
1.     Enable iommu on the host by running the following command within the domain 0 console:
/opt/xensource/libexec/xen-cmdline --set-xen iommu=1
2.     Reboot the host.
3.     Assign one or more VFs to a virtual machine. Obtain a list of VFs in the system by executing the lspci command in the XenServer console. You should see many (such as 120) devices like this:

07:10.0 Ethernet controller: Intel Corporation 82559 Ethernet Controller Virtual Function (rev 01)

4.     Assign one of these VFs to the target virtual machine executing the following command:
xe vm-param-set other-config:pci=0/0000:07:10.0 uuid=uuid_of_the_VM


Substitute 07:10.0 in the example above with the pci bus address of the VF you want to assign.

5.     Boot the virtual machine and install the correct VF driver in it.
Once the driver is installed, Provisioning Services should be installed and configured as normal
This information is available at the following link:

1 comment:

  1. If you want more information on SR-IOV check out Patrick Kutch's training video. Patrick and I work in the LAN Access Division at Intel and focus on I/O Virtualization technologies. We work with Citrix and server OEMs to enable SR-IOV support in both the Hypervisor and Server Platforms. Check out the Intel(R) 82599 10Gb and 82576 1Gb Ethernet Controllers, both have SR-IOV support and drivers available in Citrix XenServer.

    http://www.youtube.com/watch?v=hRHsk8Nycdg

    Mark Vinokur from Citrix has also posted a blog on some of the results we see using SR-IOV in Citrix XenServer.

    http://community.citrix.com/display/ocb/2010/09/14/Citrix+Provisioning+Server+Gets+Virtual+with+SR-IOV

    Brian Johnson
    Intel Corp

    ReplyDelete