Configure VPX instances to use single root I/O virtualization (SR-IOV) network interfaces
After you have installed and configured a Citrix ADC VPX instance on Citrix Hypervisor, you can configure the virtual appliance to use SR-IOV network interfaces.
Limitations
Citrix Hypervisor does not support the following features on SRIOV interfaces:
- L2 mode switching
- Clustering
- Admin partitioning [Shared VLAN mode]
- High Availability [Active - Active mode]
- Jumbo frames
- IPv6 protocol in Cluster environment
Prerequisites
On the Citrix Hypervisor host, ensure that you:
- Add the Intel 82599 Network Interface Card (NIC) to the host.
- Blacklist the ixgbevf driver by adding the following entry to the /etc/modprobe.d/blacklist.conf file:
blacklist ixgbevf - Enable SR-IOV Virtual Functions (VFs) by adding the following entry to the /etc/modprobe.d/ixgbe file:
options ixgbe max_vfs=<number_of_VFs> where <number_VFs> is the number of SR-IOV VFs that you want to create. - Verify that SR-IOV is enabled in BIOS.
Note:
IXGBE driver version 3.22.3 is recommended.
Assign SR-IOV VFs to the VPX instance by using the Citrix Hypervisor host
To assign SR-IOV network interfaces to Citrix ADC VPX instance, follow these steps:
1. On the Citrix Hypervisor host, use the following command to assign the SR-IOV VFs to the Citrix ADC VPX instance:
xe host-call-plugin plugin=iovirt host-uuid=<Xen host UUID\> fn=assign\_free\_vf args:uuid=<Netscalar VM UUID\> args:ethdev=<interface name\> args:mac=<mac addr\>
Where:
- <Xen host UUID\> is the UUID of the Citrix Hypervisor host.
- <Netscalar VM UUID\> is the UUID of the Citrix ADC VPX instance.
- <interface name\> is the interface for the SR-IOV VFs.
- <mac addr \> is the mac address of the SR-IOV VF.
Note:
Specify the mac address that you want use in the args:mac= parameter, if not specified, the iovirt script randomly generates and assigns a mac address. Also, if you want use the SR-IOV VFs in Link Aggregation mode, make sure that you specify the mac address as 00:00:00:00:00:00.
2. Boot the Citrix ADC VPX instance.
Unassign SR-IOV VFs to the VPX instance by using the Citrix Hypervisor host
If you have assigned an incorrect SR-IOV VFs or if you want modify the a assigned SR-IOV VFs, you need to unassign and reassign the SR-IOV VFs to the Citrix ADC VPX instance.
To unassign SR-IOV network interface assigned to a Citrix ADC VPX instance, follow these steps:
1. On the Citrix Hypervisor host, use the following command to assign the SR-IOV VFs to the Citrix ADC VPX instance and reboot the Citrix ADC VPX instance:
xe host-call-plugin plugin=iovirt host-uuid=<Xen\_host\_UUID\> fn=unassign\_all **args:uuid=<Netscalar\_VM\_UUID\>
Where:
- <Xen\_host\_UUID\> - The UUID of the Citrix Hypervisor host.
- <Netscalar\_VM\_UUID\> - The UUID of the Citrix ADC VPX instance
2. Boot the Citrix ADC VPX instance.
Configure link aggregation on the SR-IOV interface
To use the SR-IOV virtual functions in link aggregation mode, you need to disable spoof checking for virtual functions that you have created. On the Citrix Hypervisor host, use the following command to disable spoof checking:
ip link set <interface\_name\> vf <VF\_id\> spoofchk off
Where:
- <interface_name> is the interface name.
- <VF_id> is the virtual function ID.
After disabling spoof checking for all the virtual functions that you have created, restart the Citrix ADC VPX instance and configure link aggregation. For instructions, see Configure link aggregation.
Important:
While you are assigning the SR-IOV VFs to the Citrix ADC VPX instance, make sure that you specify MAC address 00:00:00:00:00:00 for the VFs.
Configure VLAN on the SR-IOV interface
You can configure VLAN on the SR-IOV Virtual Functions, for instructions, see Configuring a VLAN.
Important:
Make sure that the Citrix Hypervisor host does not contain VLAN settings for the VF interface.