搜索

5.2.3. 在节点上设计

download PDF

在节点上,OpenShift SDN 首先在上述 registry 中注册带有 SDN master 的本地主机,以便主节点将子网分配给节点。

接下来,OpenShift SDN 会创建和配置三个网络设备:

  • br0 :将 pod 容器附加到的 OVS 网桥设备。OpenShift SDN 还在这个网桥上配置一组特定于非子网的流规则。
  • Tun0 :OVS 内部端口( br0上的端口 2)。这会分配集群子网网关地址,用于外部网络访问。OpenShift SDN 配置 netfilter 和路由规则,以启用通过 NAT 从集群子网到外部网络的访问。
  • vxlan_sys_4789:OVS VXLAN 设备( br0上的端口 1),提供对远程节点上容器的访问。在 OVS 规则中称为 vxlan0

每次在主机上启动 pod 时,OpenShift SDN:

  1. 从节点的集群子网分配 pod 的一个可用 IP 地址。
  2. 将 pod 的 veth 接口对的主机一侧连接到 OVS 网桥 br0
  3. 为 OVS 数据库添加 OpenFlow 规则,将寻址到新 pod 的流量路由到正确的 OVS 端口。
  4. 对于 ovs-multitenant 插件,添加 OpenFlow 规则来标记来自带有 pod 的 VNID 的 pod 的流量,并允许流量与 pod 的 VNID 匹配(或是特权 VNID 0)。非匹配流量通过通用规则过滤。

OpenShift SDN 节点也从 SDN 主控机监控子网更新。当添加新子网时,节点在 br0 上添加 OpenFlow 规则,以便远程子网中具有目的地 IP 地址的数据包进入 vxlan0br0上的端口 1),然后传输到网络上。ovs-subnet 插件通过 VNID 0 在 VXLAN 间发送所有数据包,但是 ovs-multitenant 插件将适当的 VNID 用于源容器。

Red Hat logoGithubRedditYoutubeTwitter

学习

尝试、购买和销售

社区

关于红帽文档

通过我们的产品和服务,以及可以信赖的内容,帮助红帽用户创新并实现他们的目标。

让开源更具包容性

红帽致力于替换我们的代码、文档和 Web 属性中存在问题的语言。欲了解更多详情,请参阅红帽博客.

關於紅帽

我们提供强化的解决方案,使企业能够更轻松地跨平台和环境(从核心数据中心到网络边缘)工作。

© 2024 Red Hat, Inc.