扩展VPC网络集群的容器网段
操作场景
当创建CCE集群时设置的容器网段太小,无法满足业务扩容需求时,您可以通过扩展集群容器网段的方法来解决。本文介绍如何为集群添加容器网段。
约束与限制
- 仅支持v1.19.16-r0及以上版本的“VPC网络”模型集群。
为CCE Standard集群添加容器网段
- 登录CCE控制台,单击集群名称进入集群。
- 在“概览”页面,找到“网络信息”版块,并单击“添加”。
图1 添加容器网段
- 设置需要添加的容器网段,您可一次性添加多个容器网段。
新增的容器网段不能与服务网段、VPC网段及已有的容器网段冲突。
图2 设置网段
- 单击“确定”。
新增容器网段的额外注意点
新增容器网段后,建议您继续完成全链路的网络连通性排查,优先确保集群内通信正常,再验证外部服务访问,确保无业务中断风险:
- 跨网段Pod双向连通性测试:建议覆盖同节点跨网段和跨节点跨网段两种场景。
- 在同一节点上,分别创建旧网段Pod(pod-old)和新网段Pod(pod-new),互相执行ping和端口连通性测试。
# 在 pod-old 中 ping pod-new 的 IP kubectl exec -it pod-old -- ping <pod-new-ip> # 测试业务端口(如 8080) kubectl exec -it pod-old -- curl <pod-new-ip>:8080
- 选择两台不同节点,分别部署旧网段Pod和新网段Pod,重复上述ping和端口测试,确保跨节点路由可达。
- 在同一节点上,分别创建旧网段Pod(pod-old)和新网段Pod(pod-new),互相执行ping和端口连通性测试。
- 网络策略(NetworkPolicy)与防火墙、安全组检查:新增网段后极其容易出现的问题是网络策略、防火墙、安全组未同步放通新网段,导致新网段中的Pod被拦截。
- 检查NetworkPolicy规则,确认规则中是否包含新网段的cidr。
kubectl get networkpolicy --all-namespaces # 查看具体策略详情 kubectl describe networkpolicy <policy-name> -n <namespace>
- 防火墙/安全组检查:检查集群的安全组、VPC网络ACL,确认放行新网段的入站/出站流量(包括Pod间通信的端口、Service的NodePort/ClusterIP端口等)。
- 检查NetworkPolicy规则,确认规则中是否包含新网段的cidr。
- 服务发现与Service连通性检查:验证新网段Pod能否正常访问集群Service,以及外部能否通过Service访问新网段Pod。
- 验证并更新外部云服务的安全组/访问控制策略:因为外部云服务的安全组/白名单默认只放行原有容器网段的流量,新增网段的Pod发出的请求会被直接拦截,属于新增网段后极易被忽略的关键环节。
需要验证和调整的核心场景包括但不限于数据库(如RDS)、缓存/中间件(如Kafka)、对象存储、API网关、VPC对等连接/专线等外部云服务。