SR-IOV Operator

SR-IOV (Single Root I/O Virtualization) is a technology that allows you to divide a physical I/O device into many virtual ones.

The SR-IOV operator uses Kubernetes CRDs and Operator SDK to manage SriovNetwork resources and SriovNetworkNodePolicy. The SR-IOV operator is responsible for automatically deploying and configuring the SR-IOV CNI plugin and device plugin on Worker nodes in the cluster, initializing supported SR-IOV network card (NIC) types on the nodes, generating a CR NetworkAttachmentDefinition for the SR-IOV CNI plugin, maintaining operation in a virtualized Kubernetes deployment, detecting VFs connected to the virtual machine (VM), as well as the ability to associate VF with SriovNetworks by selecting the corresponding PciAddress as RootDevice in SriovNetworkNodePolicy.

Before installing shturval-sriov, you must install shturval-sriov-crds, shturval-metacni. It is important to follow the installation sequence:

  1. shturval-metacni-crds
  2. shturval-metacni
  3. shturval-sriov-crds
  4. shturval-sriov

To install the SR-IOV Operator, go to the client cluster, open the Services and repositories section in the side menu and go to the Available charts page. Find shturval-sriov, click “Install”.

To configure the SR-IOV Operator, go to the client cluster/in the side menu, open the Services and repositories section and go to the Installed services page.

Please note! Installation of “kube-system” in the namespace is required.

After the installation of the operator is completed, an SR-IOV Network Node Policy called default will be automatically created to apply the service configuration on the Worker nodes of the cluster.

More details about SR-IOV resources.

To tailor the network operator deployment to the needs of the cluster, use parameters.

Parameters
No.Parameter nameParameter descriptionParameter value
1imagePullSecretsAn optional list of secrets references that can be used to obtain any SR-IOV network operator image.[]
1iresourcePrefixPlugin resource prefixopenshift.io
1enableAdmissionControllerEnable SR-IOV Network Resource Injector and Operator Webhookfalse
1cniBinPathPath to CNI binary/opt/cni/bin
1clusterTypeCluster environment typifiers.kubernetes

Additional information can be found at github.