Enable SRIOV - Kernel Driver
SR-IOV WorkerNode Prerequisites
In order for the cni-sriov-plugin to start reading Virtual Functions resources as well HostNetworkTemplate objects can configure virtual functions you need to perform the following steps.
Enable VT-D at BIOS level.
Enable SRIOV feature globally and/or per nic according to the nic you are working with, for example Intel x710 should be enabled per nic at BIOS level.
Upgrade Kernel boot line to enable intel_iommu=on and iommu=pt
$ grubby --update-kernel=ALL --args="iommu=pt intel_iommu=on"
$ rebootHuge page Support
Most network applications use huge pages, so you may want to enable that. Please edit /etc/default/grub and add huge-pages
GRUB_CMDLINE_LINUX="nofb nomodeset vga=normal iommu=pt intel_iommu=on default_hugepagesz=1G hugepagesz=1G hugepages=16"
#Rebuild grub.cfg
grub2-mkconfig -o /boot/grub2/grub.cfg && rebootCreate SR-IOV ConfigMap
SR-IOV ConfigMap
Please copy paste the following definition update the values of your Physical Functions and ranges or Virtual Functions as well as Drivers and apply it to our cluster, in case that you have multiple nics, that each one uses different kernels drivers please omit the drivers section and just mentioned pfName within the selectors section.
SR-IOV - Kernel Driver ConfigMap
Create Network Attach Definition SR-IOV type
Please copy paste the following definition update the values of your subnet and apply it to our cluster:
The master key value is the reference to the *_second nic *_in our worker nodes.
Network Attach Definition Validation SR-IOV type
Let’s validate our work by listing and describing our new Network Attach Definition
Create Pods with SR-IOV interfaces (Kernel-Driver)
Deploy the new pods
Validate Pods Creation with SR-IOV interfaces (Kernel Driver)
Let’s validate your work by confirming that the pods got created with an additional interface by doing the following commands:
SR-IOV VF Testing
SR-IOV Kernel Driver Validation
Last updated
Was this helpful?
