安装k8s遇到的问题
参考资料:文档:https://www.yuque.com/leifengyang/oncloud/ctiwgo安装环境:阿里云服务器,三台系统版本:cenos 7.9-64位kubernetes版本是v1.20.9第一个坑: 用错calico的版本我获取calico的yaml文件用:wget https://docs.projectcalico.org/manifests/calico.yaml
参考资料:文档:https://www.yuque.com/leifengyang/oncloud/ctiwgo
安装环境:
阿里云服务器,三台
系统版本:cenos 7.9-64位
kubernetes版本是v1.20.9
第一个坑: 用错calico的版本
我获取calico的yaml文件用:
wget https://docs.projectcalico.org/manifests/calico.yaml
导致我获取到的是最新版的calico版本的yaml(v3.23), 该版本已经不支持k8s-v1.20
k8s-v1.20支持的最新版calico是v3.20
故正确获取calico的yaml文件应该用:
https://docs.projectcalico.org/archive/v3.20/manifests/calico.yaml
另外, 查看calico支持的k8s对应版本可以在calico官网查看
https://projectcalico.docs.tigera.io/archive/v3.20/getting-started/kubernetes/requirements
最后, 由于k8s和其插件都迭代很快, 安装k8s的所有插件都要注意版本是否匹配!!!
第二个坑:配置NetworkManager
NetworkManager 操作默认网络中接口的路由表 命名空间,其中 Calico veth 对被锚定以连接到容器。 这会干扰 Calico 代理正确路由的能力。
在以下位置创建配置文件 /etc/NetworkManager/conf.d/calico.conf阻止 NetworkManager 干扰接口:
[keyfile]
unmanaged-devices=interface-name:cali*;interface-name:tunl*;interface-name:vxlan.calico
第三个坑:配置多网卡,导致calico连接不通,默认选择第一张网卡
指定网卡1
修改calico.yaml的内容,在- name: IP下面添加以下参数
- name: IP_AUTODETECTION_METHOD
value: "interface=你自己的网卡名称"(使用ip a查看你的网卡配置)
如果其他想操作calico可以安装calicoctl插件
第四个坑:部署Dashboard只有部署节点可以访问但是其他两个节点无法访问(可能是网络负载均衡出现问题,所以最后决定弃用calico使用flannel)
第一部:删除calico
在master上执行
# kubectl delete -f calico.yaml
移除Calico配置文件
查看 /etc/cni/net.d/ 目录下是否存在相关文件,如:10-calico.conflist, calico-kubeconfig,calico-tls等,需要删除。
重启每个节点的kubelet
systemctl restart kybelet.service
删除coredns的pod
master上删除coredns的pod,重启的coredns的pod重新变成Pending状态。
如果不重启kubelet ,coredns的pod不会重新变成Pending状态。
查看所有namespace下的pod
kubectl get pods --all-namespaces -o wide
删除coredns
kubectl delete pod corednspod的名称 -n namespace名称
安装flannel
下载yaml
curl
https://raw.githubusercontent.com/flannel-io/flannel/master/Documentation/kube-flannel.yml -O
然后修改pod网络范围
默认的网络范围是:10.244.0.0/16
yaml搜索 10.244.0.0/16 然后改成192.168.0.0/16
kubectl apply -f kube-flannel.yaml
查看节点是否正常,然后删除Dashboard的namespace重新安装
kubectl delete namespace Dashboard名称空间
或者使用yaml删除
最后附赠官网地址,方便大家查找问题
部署Dashboard
官方参考文档:
https://kubernetes.io/docs/tasks/access-application-cluster/web-ui-dashboard/
github项目地址:
https://github.com/kubernetes/dashboard
calico官网地址
https://projectcalico.docs.tigera.io/about/about-calico
flannel github地址
更多推荐
所有评论(0)