5.2.2. 在 Master 上设计
在 OpenShift Container Platform master 上,OpenShift SDN 维护一个节点 registry,存储在 etcd 中。当系统管理员注册节点时,OpenShift SDN 从集群网络分配未使用的子网,并将该子网存储在 registry 中。删除节点时,OpenShift SDN 将从 registry 中删除子网,并考虑重新分配的子网。
在默认配置中,集群网络是 10.128.0.0/14 网络(i.e. 10.128.0.0 - 10.131.255.255),节点将被分配 /23 子网(如 10.128.0.0/23、10.128.2.0/23、10.128.4.0/23 等)。这意味着集群网络有 512 个子网可用于分配给节点,给定节点分配 510 地址,可分配给其上运行的容器。集群网络的大小和地址范围可以配置,因为 是主机子网大小。
如果子网扩展到下一个较高的八进制数,它将轮转,以便首先为共享八进制数中带有 0 的子网位。例如,如果网络为 10.1.0.0/16(带有 hostsubnetlength=6
,则子网为 10.1.0.0/26 和 10.1.1.0/26)到 10.1.255.0/26,则在填充 10.1.0.64/26 之前分配 10.0.64/26、10.1.1.64/26。这样可保证子网更容易被使用。
请注意,master 上的 OpenShift SDN 不会配置本地(master)主机来访问任何集群网络。因此,master 主机无法通过集群网络访问 pod,除非它也作为节点运行。
当使用 ovs-multitenant 插件时,OpenShift SDN master 还监视项目的创建和删除,并为它们分配 VXLAN VNID,稍后节点会正确隔离流量。