栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 系统运维 > 运维 > Linux

k8s初始化过程中,failed with error: Get “http://localhost:10248/healthz“

Linux 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

k8s初始化过程中,failed with error: Get “http://localhost:10248/healthz“

环境说明

服务器:Centos 7
Docker :20.10.12
kubeadm:v1.23.1
Kubernetes:v1.23.1

异常说明

Docker 和 k8s 相关组件都安装完毕后,执行 kubeadm init 初始化主节点时出现问题
执行语句

kubeadm init 
--apiserver-advertise-address=服务器IP 
--image-repository registry.aliyuncs.com/google_containers 
--kubernetes-version=v1.23.1 
--pod-network-cidr=10.244.0.0/16 
--service-cidr=10.96.0.0/12 
报错异常
[kubelet-check] The HTTP call equal to 'curl -sSL http://localhost:10248/healthz' failed with error: Get "http://localhost:10248/healthz": dial tcp 127.0.0.1:10248: connect: connection refused.

根据报错后续的提示,可使用 journalctl -xeu kubelet 或者 journalctl -xeu kubelet -l 查看详细错误信息,如果看得不全,可以直接用方向键左右调整错误信息。

这是

[root@k8s-node01 ~]# journalctl -xeu kubelet
Dec 24 20:24:13 k8s-node01 kubelet[9127]: I1224 20:24:13.456712    9127 cni.go:240] "Unable to update cni config" err="no 
Dec 24 20:24:13 k8s-node01 kubelet[9127]: I1224 20:24:13.476156    9127 docker_service.go:264] "Docker Info" dockerInfo=&{
Dec 24 20:24:13 k8s-node01 kubelet[9127]: E1224 20:24:13.476236    9127 server.go:302] "Failed to run kubelet" err="failed
Dec 24 20:24:13 k8s-node01 systemd[1]: kubelet.service: main process exited, code=exited, status=1/FAILURE
Dec 24 20:24:13 k8s-node01 systemd[1]: Unit kubelet.service entered failed state.
Dec 24 20:24:13 k8s-node01 systemd[1]: kubelet.service failed.

向右移动方向键,查看第四行详情,可得

ID:ZYIL:OO24:BWLY:DTTB:TDKT:D3MZ:YGJ4:3ZOU:7DDY:YYPQ:DPWM:ERFV Containers:0 ContainersRunning:0 ContainersPaused:0 Contain
 to run Kubelet: misconfiguration: kubelet cgroup driver: "systemd" is different from docker cgroup driver: "cgroupfs"
报错原因

其实根据上面的错误信息可知,是因为 k8s 和docker 的 cgroup driver 不一致导致的。
k8s 的是 systemd ,而 docker 是cgroupfs。
可以通过

docker info

查看其中的 Cgroup Driver: 显示的是 systemd 或者 cgroupfs。k8s 默认就是cgroupfs。
具体作用详情,可以参考 linux(centos):配置docker的cgroup driver为systemd

解决方法

修改docker的cgroup driver为systemd
编辑docker的配置文件,如果不存在就创建

vi /etc/docker/daemon.json

修改为内容如下:

{

“exec-opts”: [“native.cgroupdriver=systemd”]

}

然后重启 docker

systemctl restart docker 

重新 kubeadm init …

备注1:以上只是我个人在安装过程中遇到的问题,可能其他情况的原因不大相同,主要是需要查看报错日志详情,仅供参考。也有其他很优秀的文章,可供一并参考。
报错信息相似,但是原因不同的:

  • swap异常导致

备注2:文章内引用内容,链接,如果有侵权,请联系删除

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/679761.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号