5.2.5. 网络隔离
您可以使用 ovs-multitenant 插件来实现网络隔离。当数据包退出分配给非默认项目的 pod 时,OVS 网桥 br0 标签与项目分配的 VNID 的数据包。如果数据包定向到节点集群子网中的另一 IP 地址,OVS 网桥仅允许在 VNID 匹配时将数据包传送到目的地 pod。
如果通过 VXLAN 隧道从另一节点收到数据包,则 Tunnel ID 用作 VNID,并且 OVS 网桥仅允许将数据包传送到本地 pod(如果隧道 ID 与目标 pod 的 VNID 匹配)。
目标为其他集群子网的数据包使用其 VNID 标记,并传送到 VXLAN 隧道上,后者具有拥有集群子网的节点的隧道目标地址。
如前文所述,VNID 0 在那个流量中具有特权,但允许任何 VNID 0 的流量输入任何分配了 VNID 0 的容器集,并且允许 VNID 0 的流量进入任何 pod。只有 default OpenShift Container Platform 项目被分配一个 VNID 0;所有其他项目都被分配了一个唯一的、启用了隔离的 VNID。集群管理员可以选择使用管理员 CLI 控制项目的 pod 网络。