配置子网
目录
IP 分配规则
如果一个项目或命名空间被分配了多个子网,IP 地址将从其中一个子网中随机选择。
-
项目分配:
- 如果项目未绑定子网,则该项目下所有命名空间中的 Pod 只能使用默认子网的 IP 地址。如果默认子网的 IP 地址不足,Pod 将无法启动。
- 如果项目绑定了子网,则该项目下所有命名空间中的 Pod 只能使用该特定子网的 IP 地址。
-
命名空间分配:
- 如果命名空间未绑定子网,则该命名空间中的 Pod 只能使用默认子网的 IP 地址。如果默认子网的 IP 地址不足,Pod 将无法启动。
- 如果命名空间绑定了子网,则该命名空间中的 Pod 只能使用该特定子网的 IP 地址。
Calico 网络
在 Calico 网络中创建子网,实现集群内资源更细粒度的网络隔离。
约束与限制
在 IPv6 集群环境中,Calico 网络内创建的子网默认使用 VXLAN 封装。VXLAN 封装所需端口与 IPIP 封装不同,需要确保 UDP 端口 4789 已开放。
Calico 网络子网示例自定义资源(CR)
- 当
default为 true 时,使用 VXLAN 封装。 - 参见封装模式参数和封装协议参数。
- 参见出站流量 NAT 参数。
通过 Web 控制台创建 Calico 网络子网
-
进入 Administrator。
-
在左侧导航栏点击 Network Management > Subnets。
-
点击 Create Subnet。
-
按照以下说明配置相关参数。
-
点击 Confirm。
-
在子网详情页,选择 Actions > Allocate Project / Allocate Namespace。
-
完成配置后点击 Allocate。
通过 CLI 创建 Calico 网络子网
参考内容
CIDR 与 blockSize 的动态匹配关系如下表所示。
不支持前缀大于 31 的子网配置。
Kube-OVN 网络
在 Kube-OVN Overlay 网络中创建子网,实现集群内资源更细粒度的网络隔离。
平台内置了用于节点与 Pod 通信的 join 子网,请避免 join 与新建子网之间的网段冲突。
Kube-OVN Overlay 网络子网示例自定义资源(CR)
- 参见出站流量 NAT 参数。
- 参见保留 IP 参数。
- 参见网关类型参数。可选值为
distributed或centralized。 - 参见网关节点参数。
- 参见 ECMP 参数。需联系管理员开启功能门控。
通过 Web 控制台创建 Kube-OVN Overlay 网络子网
-
进入 Administrator。
-
在左侧导航栏点击 Network Management > Subnet。
-
点击 Create Subnet。
-
按照以下说明配置相关参数。
-
点击 Confirm。
-
在子网详情页,选择 Actions > Allocate Project / Namespace。
-
完成配置后点击 Allocate。
通过 CLI 创建 Kube-OVN Overlay 网络子网
Underlay 网络
在 Kube-OVN Underlay 网络中创建子网,不仅实现资源更细粒度的网络隔离,还能提供更好的性能体验。
Kube-OVN Underlay 中的容器网络需要物理网络支持。请参考最佳实践 准备 Kube-OVN Underlay 物理网络 以确保网络连通性。
使用说明
在 Kube-OVN Underlay 网络中创建子网的一般流程为:添加桥接网络 > 添加 VLAN > 创建子网。
- 默认网卡名称。
- 按节点配置网卡。
通过 Web 控制台添加桥接网络(可选)
- 默认网卡名称。
- 按节点配置网卡。
桥接网络指桥接设备,绑定网卡后可转发容器网络流量,实现与物理网络的互通。
操作步骤:
-
进入 Administrator。
-
在左侧导航栏点击 Network Management > Bridge Network。
-
点击 Add Bridge Network。
-
根据以下说明配置相关参数。
注意:
-
目标 Pod 指当前节点上调度的所有 Pod,或绑定特定子网的命名空间中调度到当前节点的 Pod,具体取决于桥接网络下子网的作用范围。
-
Underlay 子网中的节点必须有多块网卡,桥接网络使用的网卡必须专属分配给 Underlay,不能承载其他流量(如 SSH)。例如,若桥接网络有三个节点计划分别为 eth0、eth0、eth1 专属给 Underlay,则默认网卡可设置为 eth0,第三个节点的网卡为 eth1。
-
-
点击 Add。
通过 CLI 添加桥接网络
通过 Web 控制台添加 VLAN(可选)
- VLAN ID。
- 桥接网络引用。
平台预配置了 ovn-vlan 虚拟局域网,连接到 provider 桥接网络。也可配置新的 VLAN 连接其他桥接网络,实现 VLAN 之间的网络隔离。
操作步骤:
-
进入 Administrator。
-
在左侧导航栏点击 Network Management > VLAN。
-
点击 Add VLAN。
-
根据以下说明配置相关参数。
-
点击 Add。
通过 CLI 添加 VLAN
Kube-OVN Underlay 网络子网示例自定义资源(CR)
- VLAN 引用。
通过 Web 控制台创建 Kube-OVN Underlay 网络子网
平台还预配置了用于 Overlay 传输模式下节点与 Pod 通信的 join 子网,该子网不会用于 Underlay 传输模式,务必避免 join 与其他子网的 IP 段冲突。
操作步骤:
-
进入 Administrator。
-
在左侧导航栏点击 Network Management > Subnet。
-
点击 Create Subnet。
-
根据以下说明配置相关参数。
-
点击 Confirm。
-
在子网详情页,选择 Action > Assign Project / Namespace。
-
完成配置后点击 Assign。
通过 CLI 创建 Kube-OVN Underlay 网络子网
相关操作
当集群中同时存在 Underlay 和 Overlay 子网时,可根据需要配置Underlay 与 Overlay 子网自动互通。
子网管理
通过 Web 控制台更新网关
包括更改出站流量方式、网关节点和 NAT 配置。
-
进入 Administrator。
-
在左侧边栏点击 Network Management > Subnets。
-
点击子网名称。
-
选择 Action > Update Gateway。
-
更新参数配置,详情请参考参数说明。
-
点击 OK。
通过 CLI 更新网关
通过 Web 控制台更新保留 IP
网关 IP 不能从保留 IP 中移除,其他保留 IP 可自由编辑、删除或添加。
-
进入 Administrator。
-
在左侧边栏点击 Network Management > Subnets。
-
点击子网名称。
-
选择 Action > Update Reserved IP。
-
更新完成后点击 Update。
通过 CLI 更新保留 IP
通过 Web 控制台分配项目
将子网分配给特定项目,帮助团队更好地管理和隔离不同项目的网络流量,确保每个项目拥有充足的网络资源。
-
进入 Administrator。
-
在左侧边栏点击 Network Management > Subnets。
-
点击子网名称。
-
选择 Action > Assign Project。
-
添加或移除项目后,点击 Assign。
通过 CLI 分配项目
通过 Web 控制台分配命名空间
将子网分配给特定命名空间,实现更细粒度的网络隔离。
注意:分配过程中会重建网关,出站数据包将被丢弃!请确保当前无业务应用访问外部集群。
-
进入 Administrator。
-
在左侧边栏点击 Network Management > Subnets。
-
点击子网名称。
-
选择 Action > Assign Namespace。
-
添加或移除命名空间后,点击 Assign。
通过 CLI 分配命名空间
通过 Web 控制台扩容子网
当子网保留 IP 范围达到使用上限或即将耗尽时,可基于原子网范围进行扩容,不影响现有服务正常运行。
-
进入 Administrator。
-
在左侧边栏点击 Network Management > Subnets。
-
点击子网名称。
-
选择 Action > Expand Subnet。
-
完成配置后点击 Update。
通过 CLI 扩容子网
管理 Calico 网络
通过 Web 控制台删除子网
-
删除子网时,如果仍有容器组使用该子网内的 IP,容器组可继续运行且 IP 不变,但无法进行网络通信。可重建容器组以使用默认子网 IP,或为容器组所在命名空间分配新的子网使用。
-
默认子网不可删除。
-
进入 Administrator。
-
在左侧导航栏点击 Network Management > Subnets。
-
点击 ⋮ > Delete,执行删除操作。