如果一个项目或命名空间被分配了多个子网,将会随机从其中一个子网中选择一个 IP 地址。
项目分配:
命名空间分配:
在 Calico 网络中创建子网,以实现集群内资源的更细粒度的网络隔离。
在 IPv6 集群环境中,默认情况下,在 Calico 网络中创建的子网使用 VXLAN 封装。所需的 VXLAN 封装端口与 IPIP 封装的端口不同。您需要确保 UDP 端口 4789 是开放的。
default
为 true 时,使用 VXLAN 封装。转到 平台管理。
在左侧导航栏中,单击 网络管理 > 子网。
单击 创建子网。
根据以下说明配置相关参数。
参数 | 描述 |
---|---|
CIDR | 在将子网分配给项目或命名空间后,命名空间内的容器组将随机使用此 CIDR 内的 IP 地址进行通信。 注意:有关 CIDR 和 BlockSize 之间的对应关系,请参见 参考内容。 |
封装协议 | 选择封装协议。IPIP 在双栈模式下不受支持。
|
封装模式 | 当封装协议为 IPIP 或 VXLAN 时,必须设置封装模式,默认为 Always。
|
出站流量 NAT | 选择是否启用出站流量 NAT(网络地址转换),默认启用。 主要用于设置子网容器组访问外部网络时暴露给外部网络的访问地址。 当启用出站流量 NAT 时,主机 IP 将作为当前子网容器组的访问地址;当未启用时,子网内容器组的 IP 将直接暴露给外部网络。 |
单击 确认。
在子网详细信息页面,选择 操作 > 分配项目 / 分配命名空间。
完成配置并单击 分配。
CIDR 和 blockSize 之间的动态匹配关系如下表所示。
CIDR | blockSize 大小 | 主机数量 | 单个 IP 池的大小 |
---|---|---|---|
prefix<=16 | 26 | 1024+ | 64 |
16<prefix<=19 | 27 | 256~1024 | 32 |
prefix=20 | 28 | 256 | 16 |
prefix=21 | 29 | 256 | 8 |
prefix=22 | 30 | 256 | 4 |
prefix=23 | 30 | 128 | 4 |
prefix=24 | 30 | 64 | 4 |
prefix=25 | 30 | 32 | 4 |
prefix=26 | 31 | 32 | 2 |
prefix=27 | 31 | 16 | 2 |
prefix=28 | 31 | 8 | 2 |
prefix=29 | 31 | 4 | 2 |
prefix=30 | 31 | 2 | 2 |
prefix=31 | 31 | 1 | 2 |
不支持前缀大于 31 的子网配置。
在 Kube-OVN Overlay 网络中创建子网,以实现集群内资源的更细粒度的网络隔离。
平台内置了 join 子网,用于节点和 Pods 之间的通信;请避免 join 和新创建的子网之间的网络段冲突。
distributed
或 centralized
。转到 平台管理。
在左侧导航栏中,单击 网络管理 > 子网。
单击 创建子网。
根据以下说明配置相关参数。
参数 | 描述 |
---|---|
网络段 | 在将子网分配给项目或命名空间后,该段内的 IP 将随机分配给 Pods 使用。 |
保留 IP | 设置的保留 IP 将不会被自动分配。例如,可以用作计算组件的 固定 IP 地址。 |
网关类型 | 选择子网的网关类型以控制出站流量。 - 分布式:集群中的每个主机都可以作为当前主机上 Pods 的出站节点,实现分布式出站。 - 集中式:集群中的所有 Pods 使用一个或多个特定主机作为出站节点,便于外部审计和防火墙控制。设置多个集中式 网关节点 可以实现高可用性。 |
ECMP (Alpha) | 选择 集中式 网关时,可以使用 ECMP 功能。默认情况下,网关以主从模式运行,只有主网关处理流量。启用 ECMP(等成本多路径路由)后,出站流量将通过多个等成本路径路由到所有可用的网关节点,从而增加网关的总吞吐量。 注意:请提前启用与 ECMP 相关的功能。 |
网关节点 | 使用 集中式 网关时,选择一个或多个特定主机作为网关节点。 |
出站流量 NAT | 选择是否启用出站流量 NAT(网络地址转换)。默认情况下启用。 主要用于设置 Pods 访问互联网时暴露给外部网络的访问地址。 当启用出站流量 NAT 时,主机 IP 将作为当前子网内 Pods 的访问地址;当未启用时,子网内 Pods 的 IP 将直接暴露给外部网络。在这种情况下,建议使用集中式网关。 |
单击 确认。
在子网详细信息页面,选择 操作 > 分配项目 / 命名空间。
完成配置并单击 分配。
在 Kube-OVN 下层网络中创建子网,不仅可以实现资源的更细粒度网络隔离,还可以提供更好的性能体验。
Kube-OVN 下层的容器网络需要物理网络的支持。请参阅最佳实践 准备 Kube-OVN 下层物理网络 以确保网络连接。
在 Kube-OVN 下层网络中创建子网的一般流程为:添加桥接网络 > 添加 VLAN > 创建子网。
桥接网络是指一个桥接,在将网络卡绑定到桥接后,可以转发容器网络流量,实现与物理网络的互通。
操作步骤:
转到 平台管理。
在左侧导航栏中,单击 网络管理 > 桥接网络。
单击 添加桥接网络。
根据以下说明配置相关参数。
注意:
目标 Pod 是指调度在当前节点上的所有 Pods 或调度到当前节点的绑定到特定子网的命名空间中的 Pods。这取决于桥接网络下子网的范围。
下层子网中的节点必须具有多个网络卡,桥接网络使用的网络卡必须专门分配给下层,不能承载其他流量,例如 SSH。例如,如果桥接网络有三个节点计划使用 eth0、eth0、eth1 专门用于下层,则默认网络卡可以设置为 eth0,节点三的网络卡可以设置为 eth1。
参数 | 描述 |
---|---|
默认网络卡名称 | 默认情况下,目标 Pod 将使用此作为与物理网络互通的桥接网络卡。 |
按节点配置网络卡 | 在配置的节点上,目标 Pods 将桥接到指定的网络卡,而不是默认网络卡。 |
排除节点 | 当排除节点时,所有调度到这些节点的 Pods 将不会桥接到这些节点上的任何网络卡。 注意:排除节点上的 Pods 将无法与物理网络或跨节点容器网络进行通信,需注意避免将相关 Pods 调度到这些节点。 |
单击 添加。
平台预配置了 ovn-vlan 虚拟局域网,将连接到 provider 桥接网络。您还可以配置新的 VLAN 连接到其他桥接网络,从而实现 VLAN 之间的网络隔离。
操作步骤:
转到 平台管理。
在左侧导航栏中,单击 网络管理 > VLAN。
单击 添加 VLAN。
根据以下说明配置相关参数。
参数 | 描述 |
---|---|
VLAN ID | 此 VLAN 的唯一标识符,用于区分不同的虚拟局域网。 |
桥接网络 | VLAN 将连接到此桥接网络,以便与物理网络进行互通。 |
单击 添加。
平台还预配置了 join 子网,用于在 Overlay 传输模式下节点和 Pods 之间的通信。此子网在下层传输模式下将不被使用,因此必须避免 join 和其他子网之间的 IP 段冲突。
操作步骤:
转到 平台管理。
在左侧导航栏中,单击 网络管理 > 子网。
单击 创建子网。
根据以下说明配置相关参数。
参数 | 描述 |
---|---|
VLAN | 子网所属的 VLAN。 |
子网 | 在将子网分配给项目或命名空间后,物理子网内的 IP 将随机分配给 Pods 使用。 |
网关 | 上述子网内的物理网关。 |
保留 IP | 指定的保留 IP 将不会被自动分配。例如,可以用作计算组件的 固定 IP 地址。 |
单击 确认。
在子网详细信息页面,选择 操作 > 分配项目 / 命名空间。
完成配置并单击 分配。
当集群中同时存在下层和 Overlay 子网时,您可以根据需要配置 下层和 Overlay 子网之间的自动互通。
这包括更改出站流量方式、网关节点和 NAT 配置。
转到 平台管理。
在左侧边栏中,单击 网络管理 > 子网。
单击子网的名称。
选择 操作 > 更新网关。
更新参数配置;有关详细信息,请参见 参数描述。
单击 确定。
网关 IP 不能从保留 IP 中删除,而其他保留 IP 可以自由编辑、删除或添加。
转到 平台管理。
在左侧边栏中,单击 网络管理 > 子网。
单击子网的名称。
选择 操作 > 更新保留 IP。
更新完成后,单击 更新。
将子网分配给特定项目有助于团队更好地管理和隔离不同项目的网络流量,确保每个项目有足够的网络资源。
转到 平台管理。
在左侧边栏中,单击 网络管理 > 子网。
单击子网的名称。
选择 操作 > 分配项目。
添加或移除项目后,单击 分配。
将子网分配给特定命名空间可以实现更细粒度的网络隔离。
注意:分配过程将重建网关,出站数据包将被丢弃!请确保当前没有业务应用程序正在访问外部集群。
转到 平台管理。
在左侧边栏中,单击 网络管理 > 子网。
单击子网的名称。
选择 操作 > 分配命名空间。
添加或移除命名空间后,单击 分配。
当子网的保留 IP 范围达到使用限制或即将耗尽时,可以根据原子网范围进行扩展,而不会影响现有服务的正常运行。
转到 平台管理。
在左侧边栏中,单击 网络管理 > 子网。
单击子网的名称。
选择 操作 > 扩展子网。
完成配置并单击 更新。
支持分配项目和命名空间;有关详细信息,请参见 项目分配 和 命名空间分配。
当子网被删除时,如果仍有容器组使用子网内的 IP,容器组可以继续运行,IP 地址将保持不变,但它们将无法通过网络进行通信。容器组可以重建以使用默认子网内的 IP,或为容器组所在的命名空间分配新的子网以供使用。
默认子网无法删除。
转到 平台管理。
在左侧导航栏中,单击 网络管理 > 子网。
单击 ⋮ > 删除,并继续进行删除。