使用kubeadm、kubelet、kubectl、containerd搭建k8s集群 初始化init时出现Initial timeout of 40s passed
这个问题在搭建K8S集群时卡了很久,使用了网上各种方法,今天查看日志很快就解决了,记录一下
- 在执行命令,初始化时:
kubeadm init --kubernetes-version=v1.27.3 --pod-network-cidr=10.244.0.0/16 --apiserver-advertise-address=192.168.229.130 --cri-socket unix:///var/run/containerd/containerd.sock --image-repository=registry.aliyuncs.com/google_containers
一直报:Initial timeout of 40s passed
- 通过查看最近日志命令:
journalctl -xeu kubelet
显示如下关键信息:
"Failed to create sandbox for pod" err="rpc error: code = Unknown desc = failed to get sandbox image \"registry.k8s.io/pause:3.9\": Nov 09 20:51:04 k8s-master01 kubelet[2419]: E1109 20:51:04.758537 2419 kuberuntime_manager.go:1122] "CreatePodSandbox for pod failed" err="rpc error: code = Unknown desc = failed to get sandbox image \"registry.k8s.io/pause:3.9\": Nov 09 20:51:04 k8s-master01 kubelet[2419]: E1109 20:51:04.758676 2419 pod_workers.go:1294] "Error syncing pod, skipping" err="failed to \"CreatePodSandbox\" for \"etcd-k8s-master01_kube-system(f8a4e376478b3967dd37cff6e30cd610)\" Nov 09 20:51:04 k8s-master01 kubelet[2419]: E1109 20:51:04.759457 2419 remote_runtime.go:176] "RunPodSandbox from runtime service failed" err="rpc error: code = Unknown desc
- 问题分析:pause容器还是用的k8s.gcr.io/pause:3.9,该镜像在国内服务器下载不成功。
所以在初始化前修改/etc/containerd/config.toml 的镜像地址参数为国内aliyun地址:
vi /etc/containerd/config.toml
sandbox_image = "registry.aliyuncs.com/k8sxio/pause:3.9"
- 然后重启containerd:
systemctl restart containerd
再次执行k8s初始化命令就成功了
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 震惊!C++程序真的从main开始吗?99%的程序员都答错了
· 【硬核科普】Trae如何「偷看」你的代码?零基础破解AI编程运行原理
· 单元测试从入门到精通
· 上周热点回顾(3.3-3.9)
· winform 绘制太阳,地球,月球 运作规律
2020-11-09 Tomcat9.0 安装与配置
2020-11-09 IDEA 使用Tomcat Server output输出中文乱码问题
2020-11-09 springboot +mybatis 使用PageHelper实现分页,并带条件模糊查询