因为客户pc网段和cilium的冲突,需要修改cilium的网段,这里记录和分享相关操作,注意,操作期间集群不可使用

卸载cilium

1
helm uninstall cilium -n kube-system

原先我使用helm upgrade cilium的相关配置,结果发现没有生效,有可能是因为没有重新创建cilium的网卡,也有可能是cilium创建的自定义资源CiliumNode没有重新创建的关系,这里不深究了,直接卸载重装。

删除CR CiliumNode

卸载cilium并不会删除cilium创建的资源,其他会在pod重启后重新创建,CiliumNode需要手动删除

1
2
3
4
5
6
7
[root@master10 ~]# kubectl get CiliumNode -n kube-system
NAME AGE
master10.0.20.51 5d9h
master10.0.20.52 5d9h
master10.0.20.53 5d9h

[root@master10 ~]# kubectl delete CiliumNode master10.0.20.51 -n kube-system

删除cilium相关网卡

1
for link_name in $(ip link | grep -Ei "lxc|cilium|cali|dumm|ipvs|veth" | awk -F ':' '{print $2}' | awk -F '@' '{print $1}' | xargs );do echo $link_name;ip link delete $link_name;done

重新创建cilium

这里只是给个helm安装的参考,重点是配置ipam.operator.clusterPoolIPv4PodCIDR和ipv4NativeRoutingCIDR这两个参数

1
helm install cilium  --version 1.11.1 -n kube-system  -f values.yaml  .  --set ipam.operator.clusterPoolIPv4PodCIDR=10.20.0.0/16   --set ipv4NativeRoutingCIDR=10.20.0.0/16

重启pod

所有的pod都得重启才能获取到新的ip,否则无法通讯