我正在从头开始设置Kubernetes集群。我希望安装法兰绒作为安装过程的一部分。当我查看在线指南/示例时,我可以看到有必要配置Flannel子网。
我可以看到一些指南(deploying-kubernetes-using-ansible.html)像这样建立法兰绒网络:
{
"Network": "172.16.0.0/12",
"SubnetLen": 24,
"Backend": {
"Type": "vxlan"
}
}
而另一个指南(Kubernetes – simple install on CentOS 7)设置网络如下:
{"Network":"172.17.0.0/16"}
我还在学习CIDR表示法,所以我可以看到第一种方法可用的IP地址多于第二种方法。第二个URL指出:
您的所有kubernetes节点将同时位于3个不同的子网中 时间:
外部接口子网:10.0.1.0/24
法兰绒子网:172.17.0.0/16#不要使用现有子网
服务群集子网:10.10.10.0/24#不使用现有子网
我可以从维基百科(Private IPv4 address spaces)看到172范围是一个高达/ 12的私有地址空间。
我看到报价的含义是:
将Flannel配置更改为/ 12(或12..31中的任何其他数字)有什么实际意义?
service-cluster-ip-range
的相同问题以及如何从pod的IP中消除服务IP的冲突?
答案 0 :(得分:1)
实际上,法兰绒配置Network
(/ 12)必须小于SubnetLen
(/ 24)。外部接口子网是主机的子网。 service-cluster-ip-range
是clusterIP
的范围,它是虚拟的(iptables在kubernetes中的默认实现)。当ip具有相同的ip范围时,将出现iptables和路由冲突。所以我们应该为他们指定不同的IP范围。