K8s的Pod出现Init:ImagePullBackOff问题的解决,(以calico网络插件为例)

问题描述:

对于这类问题的解决思路应该都差不多,本文以calico插件安装为例,发现有个Pod的镜像没有pull成功

第一步:查看这个pod的描述信息

复制代码
kubectl describe pod calico-node-t9rql  -n kube-system

从上图发现是docker拉取"docker.io/calico/cni:v3.19.4"失败,那么我们手动拉取一下

Note:我们需要知道这个pod是部署在哪个node上,然后才能在具体的Node上拉取镜像

第二步:查看Pod所在Node

复制代码
kubectl get pods -n kube-system -o wide

发现是在node35主机上,那么我们去相应主机拉取镜像

第三步:在主机上pull image:

复制代码
sudo docker pull docker.io/calico/cni:v3.19.4

检查daemon.json 文件

可额外添加网易163的镜像加速

复制代码
cat /etc/docker/daemon.json

{"registry-mirrors": ["https://registry.docker-cn.com","http://hub-mirror.c.163.com"]}

重启服务

复制代码
systemctl daemon-reload
systemctl restart docker

查看dns解析

复制代码
dig @114.114.114.114 registry-1.docker.io

安装dig

复制代码
sudo dnf install bind-utils

执行脚本

shell 复制代码
[root@node135 ~]# dig @114.114.114.114 registry-1.docker.io

; <<>> DiG 9.11.4-P2-RedHat-9.11.4-26.P2.el7_9.15 <<>> @114.114.114.114 registry-1.docker.io
; (1 server found)
;; global options: +cmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 38270
;; flags: qr rd ra; QUERY: 1, ANSWER: 3, AUTHORITY: 0, ADDITIONAL: 1

;; OPT PSEUDOSECTION:
; EDNS: version: 0, flags:; udp: 512
;; QUESTION SECTION:
;registry-1.docker.io.          IN      A

;; ANSWER SECTION:
registry-1.docker.io.   32      IN      A       54.198.86.24
registry-1.docker.io.   32      IN      A       54.236.113.205
registry-1.docker.io.   32      IN      A       54.227.20.253

;; Query time: 4 msec
;; SERVER: 114.114.114.114#53(114.114.114.114)
;; WHEN: 二 3月 19 18:33:04 CST 2024
;; MSG SIZE  rcvd: 97

添加host解析

复制代码
[root@node135 ~]# vim /etc/hosts
相关推荐
sbjdhjd37 分钟前
02 (中)| K8s Pod 生产化落地:从配置到优化全流程
linux·运维·云原生·kubernetes·开源·podman·kubelet
皓月盈江37 分钟前
Linux Ubuntu系统如何编辑Docker容器内的文件
linux·ubuntu·docker·容器·靶场·vulhub·编辑docker内文件
China_Yanhy1 小时前
【云原生实战】从零构建无节点 EKS:Karpenter 极简注入与全自动算力接管指南
linux·运维·云原生
蜀道山老天师1 小时前
从零搭建 Prometheus 监控 MySQL:含二进制安装、授权、exporter 配置全流程
运维·数据库·mysql·adb·云原生·prometheus
珂玥c1 小时前
添加node节点到k8s集群+配置网络插件flannel
云原生·容器·kubernetes
努力搬砖的咸鱼2 小时前
PersistentVolume与PersistentVolumeClaim:K8s 存储绑定机制完全解析
云原生·容器·kubernetes
xingfujie2 小时前
第3章 安装 kubeadm/kubelet/kubectl
linux·云原生·容器·kubernetes·kubelet
代码讲故事2 小时前
mac电脑上docker突然无法运行,不停的出现弹框,“com.docker.vmnetd”将对你的电脑造成伤害。附国内不同芯片高速下载地址,下载直接运行。
macos·docker·容器·arm·mac·intel·下载
员宇宙3 小时前
k8s学习笔记
笔记·学习·kubernetes
运维全栈笔记3 小时前
Harbor生产级部署实战:PostgreSQL+Redis+MinIO全解耦架构详解
linux·运维·服务器·笔记·架构·kubernetes·k8s