You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Kubernetes如何为节点分配podCIDR?是否固定分配/24子网?

Kubernetes节点podCIDR的分配逻辑与子网大小说明

一、Kubernetes如何计算节点的CIDR范围?

Kubernetes中负责分配节点podCIDR的是kube-controller-manager组件内的CIDRAllocator模块,具体计算逻辑如下:

  • 当你通过kubeadm init --pod-network-cidr=xxx指定集群级的Pod网络大网段后,这个网段会作为CIDRAllocator的总分配池。
  • 新节点加入集群时,CIDRAllocator会从总网段中,按照预设的子网大小(比如默认的/24),依次划分出未被占用的子网段分配给节点。
  • 分配顺序遵循网段的自然递增规则,比如你用的192.168.0.0/16,第一个节点会拿到192.168.0.0/24,第二个是192.168.1.0/24,第三个就是你看到的192.168.2.0/24,以此类推。

二、是否始终为每个节点分配/24子网?

不是的,/24只是默认的子网大小,这个值支持自定义配置:

  • 控制该参数的是kube-controller-manager的--node-cidr-mask-size选项。比如你可以设置--node-cidr-mask-size=23,这样每个节点的podCIDR就是/23网段,能提供512个可用IP(比/24多一倍),适合需要运行大量Pod的节点。
  • 不同Kubernetes版本的默认值可能略有差异,但在1.24版本中默认确实是/24。如果没有手动修改这个参数,集群会按默认值分配子网。

如果用kubeadm搭建集群时要自定义子网大小,可在初始化时通过--controller-manager-extra-args传递参数,示例命令:

kubeadm init --pod-network-cidr=192.168.0.0/16 --kubernetes-version=1.24.0 --controller-manager-extra-args="node-cidr-mask-size=23"

内容的提问来源于stack exchange,提问作者YoavKlein

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.09 18:50:44