Flannel网络插件公认为是最简单的一个插件了,它是一个overlay网络,相对性能和灵活性方面,比Calico要差一些。此外,Calico还可以与服务网格Istio集成,以便在服务网格层和网络基础架构层中解释和实施集群内工作负载的策略。今天我们就装一个Calico网络插件。
在《Centos7.9 yum形式安装kubernetes1.19.9(K8s)系统》的基础上,我们先删除Flannel插件,然后重新初始化主节点
1.主节点安装
kubectl delete -f kube-flannel.yml
kubeadm reset
kubeadm init --kubernetes-version=1.19.9 --apiserver-advertise-address=10.10.52.138 --image-repository registry.aliyuncs.com/google_containers --service-cidr=10.1.0.0/16 --pod-network-cidr=192.168.0.0/16
然后下载Calicov3.13.3版本,去这里下载https://github.com/projectcalico/calico/releases?page=9
解压下载包,然后用kubectl安装Calico
tar -xzvf release-v3.13.3.tgz
kubectl apply -f release-v3.13.3/k8s-manifests/calico.yaml
安装完毕后,可以看到主节点calico的插件全部是running状态,这样主节点就安装完毕了
2.从节点node安装
重新初始化从节点
kubeadm reset
systemctl stop kubelet
systemctl stop docker
rm -rf /var/lib/cni/
rm -rf /var/lib/kubelet/*
rm -rf /etc/cni/
ifconfig cni0 down
ifconfig flannel.1 down
ifconfig docker0 down
ip link delete cni0
ip link delete flannel.1
systemctl restart docker
systemctl restart kubelet
然后加入主节点即可
kubeadm join 10.10.52.138:6443 --token arsai5.9vrwgp8fwyeuxzoh --discovery-token-ca-cert-hash sha256:790f320e58048aba70662cea76d2c0720171429
成功后就会出现这样的状态
文章来源:https://www.toymoban.com/news/detail-671804.html
有时候,calico默认采用first-found方法,选择第一个接口的第一个有效IP地址,如果你有多个有效网卡的时候,要选择一个有效的的网卡。比如文章来源地址https://www.toymoban.com/news/detail-671804.html
kubectl set env daemonset.apps/calico-node -n kube-system IP_AUTODETECTION_METHOD=interface=ens1
或者
kubectl set env daemonset.apps/calico-node -n kube-system IP_AUTODETECTION_METHOD=interface=ens.*
到了这里,关于K8s 安装Calico网络插件的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!