软件架构
SR-IOV设备直通插件运行在K8s集群中的计算节点上,采用DaemonSet形式的Pod进行部署。
- SRIOV-KAE设备直通插件的软件架构图如图 SRIOV-KAE设备直通插件架构图所示。
- SRIOV-CNI网络直通插件的软件架构图如图2所示。
- Bond-CNI插件的软件架构图如图3所示。
- 架构图中各模块功能如表1所示。
名称 |
功能 |
---|---|
Kubelet |
Kubelet会在Pod启动前请求这些网络插件来配置网络接口。 |
Device Plugin Manager |
Kubelet的一个子组件,负责管理设备插件的生命周期和状态。它通过与SR-IOV Device Plugin等设备插件交互,确保设备在节点上可用,并且在Pod调度时将设备分配给相应的容器。 |
Multus-CNI |
一个多网络插件管理工具,允许一个Pod同时连接多个网络。它充当CNI插件的管理器,根据Pod的配置,调用不同的网络插件(如SRIOV-CNI网络直通插件、Flannel等)来配置网络接口。 |
SR-IOV Devices |
支持SR-IOV设备,可以将单个设备直通给多个容器使用。 |
SR-IOV Device Plugin |
K8s SRIOV-KAE设备直通插件,负责识别与纳管SR-IOV设备。当分配请求到来时,负责决定分配哪一个设备。 |
SRIOV-CNI网络直通插件 |
由Multus CNI管理并由Kubelet调用,用于为Pod配置SR-IOV网络接口。它直接与节点的物理网卡进行交互,从物理网卡分配虚拟功能(VF)并将其分配给容器。 |
Bond-CNI插件 |
由Multus CNI管理并由Kubelet调用,在Pod的SR-IOV网络接口的基础之上,构建新的Bond网络接口。 |
父主题: 特性描述