


如果创建集群时指定了该参数,那么 kube-controller-manager 的 cluster-cidr 启动参数就会被设置成该值。对于 kube-controller-manager,cluster-cidr 需要在 allocate-node-cidrs 参数设置为 true 时才能联合发挥作用,主要用于为没有设置 Spec.PodCIDR 的 Node 节点配置 PodCIDR 地址,这个属性在某些场景下能帮助节点完成网络相关的设置工作。
kube-proxy 对访问 Service 的流量执行 SNAT(MASQ) 的目的,引用原文如下:
The idea is that you can establish a static route for your Service range, routing to any node, and that node will bridge into the Service for you.
Since that might bounce off-node, we masquerade here.
简单理解就是,如果有这个 SNAT(MASQ) 功能,那集群外的 Node 就可以通过设置静态路由的方式,将访问 Service 网络的数据包路由到集群内的任何一台机器上,即可从集群外轻松访问集群内的 Service,类似于集群内机器可以充当跳板 Router。否则,在集群外访问 Service 服务就没那么容易了。从这点来看,如果有从集群外访问 Service 的需求,还是应该设置 pod-network-cidr,开启 SNAT(MASQ) 功能的。如果没有这种需求,那就设不设置均可。
原文:https://blog.csdn.net/shida_csdn/article/details/104334372
欢迎加群讨论技术,1群:677373950(满了,可以加,但通过不了),2群:656732739。有需要软件开发,或者学习软件技术的朋友可以和我联系~(Q:815170684)