解决kubelet报failed to get imageFs info: non-existent label \“docker-images\“

问题:

一环境主机重启后,查看kubelet日志经常有大量无法回收镜像文件报错,会导致kubelet的pleg不健康,从而导致kubelet发生重启。报错如下:

解决办法

解决方法一:

systemctl stop docker

systemctl stop kubelet

systemctl start docker

systemctl start kubelet

解决方法二:

在kubelet的kubelet.service文件中,添加如下参数:

Unit

After=docker.service

原因总结: 主机重启后,kubelet比docker先启动,会对不健康的pod进行一个资源回收的过程,这个时候docker还没正常启动,kubelet无法调用docker的socket接口对镜像回收,会导致每五分钟一次的循环检查,默认到100次就会触发gc,会导致kubelet的pleg不健康,这个启动顺序还是很重要的。

相关推荐
时迁2471 小时前
【k8s】k8s是怎么实现自动扩缩的
云原生·容器·kubernetes·k8s
编程一生2 小时前
微服务相比传统服务的优势
微服务·云原生·架构
诡异森林。4 小时前
Docker--Docker网络原理
网络·docker·容器
ALex_zry4 小时前
Docker Macvlan网络配置实战:解决“network already exists“错误
网络·docker·php
IT小辉同学5 小时前
Docker如何更换镜像源提高拉取速度
spring cloud·docker·eureka
matrixlzp5 小时前
K8S Service 原理、案例
云原生·容器·kubernetes
GnixAij6 小时前
Docker SSH端口转发
docker·ssh
angushine7 小时前
让Docker端口映射受Firewall管理而非iptables
运维·docker·容器
孔令飞8 小时前
Go:终于有了处理未定义字段的实用方案
人工智能·云原生·go
玄明Hanko8 小时前
生产环境到底能用Docker部署MySQL吗?
后端·mysql·docker