突然kubelet起不来,查看日志只有一条报错,主要还是
kubelet
验证与 containerd
的 CRI v1 运行时 API 连接失败的问题,错误信息为 validate CRI v1 runtime API for endpoint "unix:///var/run/containerd/containerd.sock": rpc error: code = Unimplemented desc = unknown service runtime.v1.RuntimeService
- 检查
containerd
配置:再次确认/etc/containerd/config.toml
文件中[plugins."io.containerd.grpc.v1.cri"]
部分的配置完整且正确。特别是runtime
、snapshotter
等关键配置项,确保其值符合预期(例如runtime = "runc"
,snapshotter = "overlayfs"
)。 - 验证
containerd
服务状态:使用systemctl status containerd
命令检查containerd
服务是否正常运行,有无报错。如果服务存在问题,尝试重启containerd
:systemctl restart containerd
,然后再次尝试启动kubelet,但是并没有用
- 检查权限和网络通信:
- 确保
/var/run/containerd/containerd.sock
套接字文件的权限设置正确,kubelet
进程具有访问该文件的权限。
- 确保
- 最后再次检查containerd配置文件发现,加速地址配置了两个,可能发生了冲突,删除一个,kubelet正常启动