Rate This Document
Findability
Accuracy
Completeness
Readability

Software Architecture

The SR-IOV device plugin runs on compute nodes in a Kubernetes cluster and is deployed in the Pods defined by DaemonSet.

  • Figure 1 shows the software architecture of the SR-IOV device plugin.
  • Figure 2 shows the software architecture of the SR-IOV-CNI network plugin.
  • Figure 3 shows the software architecture of the Bond-CNI plugin.
  • Table 1 describes the functions of each module in the architecture.
Figure 1 Software architecture of the SR-IOV device plugin
Figure 2 Software architecture of the SR-IOV-CNI network plugin
Figure 3 Software architecture of the Bond-CNI plugin
Table 1 Module functions

Module

Function

kubelet

The kubelet requests these network plugins to configure network interfaces before Pods are started.

Device plugin manager

A subcomponent of the kubelet, which manages the lifecycle and status of device plugins. It interacts with device plugins such as SR-IOV device plugin to ensure that devices are available on nodes and allocates devices to corresponding containers during Pod scheduling.

Multus CNI

A multi-network plugin management tool that allows a Pod to connect to multiple networks at the same time. It functions as the manager of CNI plugins and calls different network plugins (such as SR-IOV-CNI network plugin and Flannel) to configure network interfaces based on Pod configurations.

SR-IOV devices

Passes through a single SR-IOV device to multiple containers.

SR-IOV device plugin

Kubernetes SR-IOV device plugin, which is used to identify and manage SR-IOV devices. When an allocation request arrives, it is responsible for determining which device is allocated.

SR-IOV-CNI network plugin

Managed by Multus CNI and called by the kubelet, it configures SR-IOV network interfaces for Pods. It interacts with the physical NICs of a node and allocates VFs from the physical NICs to containers.

Bond-CNI plugin

Managed by Multus CNI and called by the kubelet, it builds bond network interfaces based on SR-IOV network interfaces of Pods.