This documentation is for a release that is no longer maintained
See documentation for the latest supported version 3 or the latest supported version 4.13.9. 为 VRF 分配从属网络
CNI VRF 插件只是一个技术预览功能。技术预览功能不被红帽产品服务等级协议 (SLA) 支持,且可能在功能方面有缺陷。红帽不推荐在生产环境中使用它们。这些技术预览功能可以使用户提早试用新的功能,并有机会在开发阶段提供反馈意见。
有关红帽技术预览功能支持范围的详情,请参阅 https://access.redhat.com/support/offerings/techpreview/。
13.9.1. 为 VRF 分配从属网络 复制链接链接已复制到粘贴板!
作为集群管理员,您可以使用 CNI VRF 插件为 VRF 域配置额外网络。此插件创建的虚拟网络与您指定的物理接口关联。
使用 VRF 的应用程序需要绑定到特定设备。通常的用法是在套接字中使用 SO_BINDTODEVICE
选项。SO_BINDTODEVICE
将套接字绑定到在传递接口名称中指定的设备,例如 eth1
。要使用 SO_BINDTODEVICE
,应用程序必须具有 CAP_NET_RAW
功能。
13.9.1.1. 使用 CNI VRF 插件创建额外网络附加 复制链接链接已复制到粘贴板!
Cluster Network Operator (CNO) 管理额外网络定义。当您指定要创建的额外网络时,CNO 会自动创建 NetworkAttachmentDefinition
自定义资源(CR)。
请勿编辑 Cluster Network Operator 所管理的 NetworkAttachmentDefinition
CR。这样做可能会破坏额外网络上的网络流量。
要使用 CNI VRF 插件创建额外网络附加,请执行以下步骤。
先决条件
- 安装 OpenShift Container Platform CLI(oc)。
- 以具有 cluster-admin 权限的用户身份登录 OpenShift 集群。
流程
为额外网络附加创建
Network
自定义资源 (CR),并为额外网络插入rawCNIConfig
配置,如下例所示。将 YAML 保存为文件additional-network-attachment.yaml
。Copy to Clipboard Copied! Toggle word wrap Toggle overflow 注意只有在资源类型为
netdevice
时,VRF 才能正常工作。创建
Network
资源:oc create -f additional-network-attachment.yaml
$ oc create -f additional-network-attachment.yaml
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 通过运行以下命令确认 CNO 创建了
NetworkAttachmentDefinition
CR。将<namespace>
替换为您在配置网络附加时指定的命名空间,如additional-network-1
。oc get network-attachment-definitions -n <namespace>
$ oc get network-attachment-definitions -n <namespace>
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 输出示例
NAME AGE additional-network-1 14m
NAME AGE additional-network-1 14m
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 注意CNO 创建 CR 之前可能会有延迟。
验证额外的 VRF 网络附加是否成功
要验证 VRF CNI 是否已正确配置并附加额外网络附加,请执行以下操作:
- 创建使用 VRF CNI 的网络。
- 将网络分配给 pod。
验证 Pod 网络附加是否已连接到 VRF 额外网络。远程 shell 到 pod 并运行以下命令:
ip vrf show
$ ip vrf show
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 输出示例
Name Table ----------------------- red 10
Name Table ----------------------- red 10
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 确认 VRF 接口是从属接口的主接口:
ip link
$ ip link
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 输出示例
5: net1: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc noqueue master red state UP mode
5: net1: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc noqueue master red state UP mode
Copy to Clipboard Copied! Toggle word wrap Toggle overflow