k8s踩坑记录之修改podSubnet

  1. 修改podSubnet
  2. 查看kubam-confi
  3. 查看防火墙规则
  4. 查看flannel配置
  5. 解决方法

修改podSubnet

1
2
3
4
5
6
7
8
9
vim /etc/kubernetes/kubeadm.yaml

apiVersion: kubeadm.k8s.io/v1beta2
kind: ClusterConfiguration
kubernetesVersion: v1.16.2
networking:
podSubnet: 10.144.0.0/16 <---添加podSubnet配置
serviceSubnet: 10.86.0.0/12
imageRepository: harbor.devops.kaishustory.com/k8s.gcr.io

查看kubam-confi

通过查看kubeadm-config中的podSubnet已经应用新配置

1
kubectl -n kube-system get cm kubeadm-config -oyam

查看防火墙规则

通过查看IPtable的外网转发规则发现匹配条件的原地址仍然是”10.244.0.0/16”,

1
2
3
4
5
6
7
8
9
iptables -t nat -vnL
Chain POSTROUTING (policy ACCEPT 8 packets, 480 bytes)
pkts bytes target prot opt in out source destination
394 24409 KUBE-POSTROUTING all -- * * 0.0.0.0/0 0.0.0.0/0 /* kubernetes postrouting rules */
0 0 MASQUERADE all -- * !docker0 192.168.161.0/24 0.0.0.0/0
44 2640 RETURN all -- * * 10.244.0.0/16 10.144.0.0/16
1 85 MASQUERADE all -- * * 10.244.0.0/16 !224.0.0.0/4 <--有问题
0 0 RETURN all -- * * !10.244.0.0/16 10.144.0.0/24
0 0 MASQUERADE all -- * * !10.244.0.0/16 10.144.0.0/16

查看flannel配置

1
kubectl get cm/kube-flannel-cfg -n kube-system -o yaml

看到配置里网段”Network”: “10.244.0.0/16”,这就是原因

解决方法

  • kubectl get cm/kube-flannel-cfg -n kube-system -o yaml > kube-flannel-cfg.yaml
  • 修改kube-flannel-cfg.yaml配置中的网段,并重新应用
  • 重启node节点

转载请注明来源,欢迎对文章中的引用来源进行考证,欢迎指出任何有错误或不够清晰的表达。可以在下面评论区评论,也可以邮件至 jaytp@qq.com

文章标题:k8s踩坑记录之修改podSubnet

文章字数:293

本文作者:Aaron

发布时间:2020-01-30, 00:51:34

最后更新:2020-02-03, 17:14:33

原始链接:http://blog.linuxerbulo.com/2020/01/30/k8s%E8%B8%A9%E5%9D%91%E8%AE%B0%E5%BD%95%E4%B9%8B%E4%BF%AE%E6%94%B9podSubnet/

版权声明: "署名-非商用-相同方式共享 4.0" 转载请保留原文链接及作者。

目录
×

喜欢就点赞,疼爱就打赏