新时期下k8s 网络插件calico 安装

1、k8s master节点初始化完毕以后一直处于notreadey状态,一直怀疑是安装有问题或者是初始化有问题(当然,如果真有问题要先解决这些问题),经过不断探索才发现是网络插件没有安装导致的,根据建议安装calico插件。

2、安装过程一如既往的不顺利,当然,还是喜闻乐见的网络环境导致的。

3、最后成功了,下面是步骤。

(1)首先,需要下载calico.yaml

root@master \~wget https://docs.projectcalico.org/manifests/calico.yaml

(2)其次,这个文件中默认使用的网络是192.168.0.0/16,这个要根据初始化中--pod-network-cidr=参数进行修改,默认是10.244.0.0/16

root@master \~# sed -i 's/192.168.0.0/10.244.0.0/g' calico.yaml

(3)最重要的一步来了,前几次安装完成之后,运行命令(root@master \~# kubectl get pods --all-namespaces | grep calico)查看发现以calico开头的pods始终是Init:ErrImagePull,判断是镜像拉取错误,查阅资料发现,calico.yaml中默认使用的镜像为docker.io/calico/cni:v3.25.0,所以懂的都懂,处理方法就是替换为docker可以访问的镜像源

root@master \~# sed -i 's/docker.io/docker.lmirror.top/g' calico.yaml

(4)最后运行命令进行安装即可

root@master \~# kubectl apply -f calico.yaml

(5)运行命令查看calico开头的pod为running状态

root@master \~# kubectl get pods --all-namespaces | grep calico

(6)查看master节点状态变为Ready

root@master \~# kubectl get nodes

(7)新发现的问题,master重启之后运行kubectl命令报错无法连接到API server,重新进行kubeadm rest ,再初始化就正常,但是再次重启又报错,后来查阅资料发现需要增加一个配置

cat <<EOF >> /root/.bashrc

export KUBECONFIG=/etc/kubernetes/admin.conf

EOF

source /root/.bashrc

相关推荐
阿里云云原生13 小时前
深入内核:拆解 OpenTelemetry eBPF 探针如何优雅地“透视”多语言微服务?
云原生
2601_9618752417 小时前
决战申论100题2026|最新|范文
linux·容器·centos·debian·ssh·fabric·vagrant
java_cj18 小时前
深入kube-apiserver认证机制:从Bearer Token到mTLS的完整认证链解析
linux·运维·服务器·云原生·容器·kubernetes
程序员老赵18 小时前
服务器没有桌面?Docker 跑个 Chrome,浏览器就能远程用
docker·容器·devops
正经教主18 小时前
【docker基础】 第八周:容器监控与应用更新策略
运维·docker·容器
kiros_wang19 小时前
Docker 使用完整指南
运维·docker·容器
正经教主19 小时前
【docker基础】第九周:Docker安全与镜像优化
运维·docker·容器
qq_4523962320 小时前
第十三篇:《K8s 安全基础:RBAC、ServiceAccount、Pod Security》
java·安全·kubernetes
睡不醒男孩0308231 天前
云原生运维实战:高并发架构下的云原生可观测性、韧性降级与自动化干预体系
数据库·kubernetes·高并发·prometheus·devops·sre·缓存调优
qq_452396231 天前
第十四篇:《K8s 网络模型与 CNI 插件(Calico、Flannel、Cilium)》
网络·kubernetes·php