3.5. 将 pod 添加到二级网络
您可以将 pod 添加到二级网络。pod 继续通过默认网络发送与集群相关的普通网络流量。
创建 pod 时,二级网络会附加到 pod。但是,如果 pod 已存在,则无法将二级网络附加到其中。
pod 必须与二级网络位于同一个命名空间中。
先决条件
-
安装 OpenShift CLI(
oc
)。 - 登录到集群。
流程
为
Pod
对象添加注解。只能使用以下注解格式之一:要在不自定义的情况下附加二级网络,请使用以下格式添加注解。将
<network>
替换为要与 pod 关联的二级网络的名称:metadata: annotations: k8s.v1.cni.cncf.io/networks: <network>[,<network>,...]
metadata: annotations: k8s.v1.cni.cncf.io/networks: <network>[,<network>,...]
1 Copy to Clipboard Copied! Toggle word wrap Toggle overflow - 1
- 要指定多个二级网络,请使用逗号分隔每个网络。逗号之间不可包括空格。如果您多次指定相同的二级网络,则该 pod 会将多个网络接口附加到该网络。
要通过自定义来附加二级网络,请添加具有以下格式的注解:
Copy to Clipboard Copied! Toggle word wrap Toggle overflow
运行以下命令来创建 pod。将
<name>
替换为 pod 的名称。oc create -f <name>.yaml
$ oc create -f <name>.yaml
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 可选: 要确认
Pod
CR 中是否存在注解,请输入以下命令将<name>
替换为 pod 的名称。oc get pod <name> -o yaml
$ oc get pod <name> -o yaml
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 在以下示例中,
example-pod
pod 附加到net1
二级网络:Copy to Clipboard Copied! Toggle word wrap Toggle overflow - 1
k8s.v1.cni.cncf.io/network-status
参数是对象的 JSON 数组。每个对象描述附加到 pod 的二级网络的状态。注解值保存为纯文本值。
3.5.1. 向 pod 公开 vfio-pci SR-IOV 设备的 MTU 复制链接链接已复制到粘贴板!
将 pod 添加到额外网络后,您可以检查 MTU 可供 SR-IOV 网络使用。
流程
运行以下命令,检查 pod 注解是否包含 MTU:
oc describe pod example-pod
$ oc describe pod example-pod
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 以下示例显示了输出示例:
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 运行以下命令,验证 pod 中的
/etc/podnetinfo/
中是否有 MTU:oc exec example-pod -n sriov-tests -- cat /etc/podnetinfo/annotations | grep mtu
$ oc exec example-pod -n sriov-tests -- cat /etc/podnetinfo/annotations | grep mtu
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 以下示例显示了输出示例:
Copy to Clipboard Copied! Toggle word wrap Toggle overflow