文章目录

  • 背景
  • 排查思路
  • 解决方式
    • docker 配置文件
    • kublete 配置文件
  • 参考

背景

通过 kubeadm 安装k8s集群报错
操作系统环境信息

root@controlplane:~# cat /etc/os-release
NAME="Ubuntu"
VERSION="18.04.5 LTS (Bionic Beaver)"
ID=ubuntu
ID_LIKE=debian
PRETTY_NAME="Ubuntu 18.04.5 LTS"
VERSION_ID="18.04"
HOME_URL="https://www.ubuntu.com/"
SUPPORT_URL="https://help.ubuntu.com/"
BUG_REPORT_URL="https://bugs.launchpad.net/ubuntu/"
PRIVACY_POLICY_URL="https://www.ubuntu.com/legal/terms-and-policies/privacy-policy"
VERSION_CODENAME=bionic
UBUNTU_CODENAME=bionic

kubeadm init 安装报错信息

[kubelet-check] It seems like the kubelet isn't running or healthy.
[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.
[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.Unfortunately, an error has occurred:timed out waiting for the conditionThis error is likely caused by:- The kubelet is not running- The kubelet is unhealthy due to a misconfiguration of the node in some way (required cgroups disabled)If you are on a systemd-powered system, you can try to troubleshoot the error with the following commands:- 'systemctl status kubelet'- 'journalctl -xeu kubelet'Additionally, a control plane component may have crashed or exited when started by the container runtime.To troubleshoot, list all containers using your preferred container runtimes CLI.Here is one example how you may list all Kubernetes containers running in docker:- 'docker ps -a | grep kube | grep -v pause'Once you have found the failing container, you can inspect its logs with:- 'docker logs CONTAINERID'

排查思路

查看官网介绍为 docker 和 kubelet 服务中的 cgroup 驱动不一致,有两种方法
方式一:驱动向 docker 看齐
方式二:驱动为向 kubelet 看齐
如果docker 不方便重启则统一向 kubelet看齐,并重启对应的服务即可

解决方式

docker 配置文件

这里采取的是方式二,docker 默认驱动为 cgroupfs ,只需要添加

 "exec-opts": ["native.cgroupdriver=systemd"],

修改后配置文件

root@controlplane:~# cat /etc/docker/daemon.json
{"exec-opts": ["native.cgroupdriver=systemd"],"bip":"172.12.0.1/24","registry-mirrors": ["http://docker-registry-mirror.kodekloud.com"]
}

重启docker
systemctl restart docker

kublete 配置文件

grep 截取一下,可以看得出来kubelet默认 cgoup 驱动为systemd

root@controlplane:~# cat /var/lib/kubelet/config.yaml |grep group
cgroupDriver: systemd

重启kubelet (optional)
systemctl restart kubelet

参考

配置cgroup驱动
Docker中的Cgroup Driver:Cgroupfs 与 Systemd
为什么要修改docker的cgroup driver

It seems like the kubelet isn‘t running or healthy相关推荐

  1. 初始化k8s时,报错[kubelet-check] It seems like the kubelet isn‘t running or healthy.

    1.初始化k8s时出现以下错误 [kubelet-check] It seems like the kubelet isn't running or healthy. [kubelet-check] ...

  2. Linux下minikube启动失败(It seems like the kubelet isn't running or healthy)

    先说明一下安装minikube的环境信息: 操作系统:CentOS Linux release 7.6.1810 Docker:1.13.1 在执行minikube start启动的时候,提示如下错误 ...

  3. Kubernetes K8s 结合国内外文章解决 The kubelet is not running

    初学K8s,好好教程不跟着来,非要全部安装最新的docker 和 k8s,经过4小时奋战终于解决! 先说明下docker是最新版的安装,又安装K8s cat > /etc/yum.repos.d ...

  4. kubeadm初始化集群报错:kubelet driver: “cgroupfs“ is different from docker cgroup driver: “systemd“

    kubeadm初始化集群报错:   报错信息如下: [kubelet-check] It seems like the kubelet isn't running or healthy. [kubel ...

  5. 解决 kubesphere安装时 kubelet 启动异常问题

    执行kubesphere安装时卡到了最后环节如下: fs.inotify.max_user_instances = 524288 kernel.pid_max = 65535 16:49:40 CST ...

  6. CentOS7系统上Kubernetes集群搭建

    虚拟机创建 在自己的Mac系统里面利用Parallels Desktop创建3台虚拟机,具体信息如下: CentOS7-Node1: 10.211.55.7 parallels/centos-test ...

  7. 使用Kubeadm来搭建k8s-v1.18.2(包含所有错误集锦分析)

    k8s的搭建 使用 Kubeadm来搭建master集群,⽬前所安装的版本是 v1.18.2 欢迎运维萌新大佬等进群,涵盖业务运维.应用运维.系统运维.网络运维.数据库运维.桌面运维.运维开发等,地区 ...

  8. 【k8s-5】kubeadm init过程的错误

    可以看到执行了 kubeadm init 之后,貌似一直卡住 kubelet 这个进程的健康检查上,日志如下. [etcd] Creating static Pod manifest for loca ...

  9. 从0到1搭建kubernetes集群

    环境准备 笔者是在阿里云租了三台ecs服务器,系统选用的ubuntu16.04(2核4G,建议CPU核数不少于2, 配置过低preflight checks阶段可能会报错). 使用几个虚拟机也可,有条 ...

  10. 云原生|kubernetes|minikube的部署安装完全手册(修订版)

    前言: 学习一个新平台首先当然是能够有这么一个平台了,而kubernetes的部署安装无疑是提高了这一学习的门槛,不管是二进制安装还是kubeadm安装都还是需要比较多的运维技巧的,并且在搭建学习的时 ...

最新文章

  1. 42所双一流大学校长情况简介(2019年)
  2. 翻译下 golang package time
  3. 马斯克的火箭,这次没!爆!炸!
  4. 抓个Firefox的小辫子,围观群众有:Chrome、Edge、IE8-11
  5. 记录些实用的linux指令串
  6. mysql update n_mysql修改记录时update操作 字段=字段+字符串
  7. 在java中使用SPI创建可扩展的应用程序
  8. JavaWeb -- Struts2 ResultType细化, 国际化
  9. 【今日CV 计算机视觉论文速览 第146期】Mon, 22 Jul 2019
  10. Python扩展库psutil用法精要
  11. 在cmd命令行运行一个python脚本
  12. 快速突破面试算法之数学运算篇
  13. 如何利用c语言写九九乘法表
  14. Epub,Mobi,Azw3电子书格式的区别,有什么好用的IOS手机epub阅读器
  15. 现代地图和古代地图下载收集
  16. mysql 身份证 年龄_mysql 中通过身份证号码计算年龄
  17. 10php1c,很急的一個問題,請幫幫忙
  18. VMware16.0如何装win7和win10
  19. SCA连载GDPR罚单 | 瑞典高中人脸识别被罚,为我们敲响了哪些警钟?
  20. 玩转Kubernetes—尝试以不同方式初始化集群

热门文章

  1. 安装gentoo折腾
  2. 胡小胖:微商创业必备的软件工具
  3. 单机征途mysql步骤不对_征途单机版架设中场景服务器启动失败?这是为什么? 你怎么解决的啊?告诉我 谢谢...
  4. 快速使用easy rule
  5. Maya模型导入到Unity3d 的秘诀
  6. java开源项目jeecgboot全解析
  7. 解决ecshop模板兼容jquery问题
  8. 学习并掌握结构化写作方法,提高写作能力 ——结构化写作学习笔记(1)
  9. 中考英语听说计算机考试成绩查询,中考英语听说考试成绩查询
  10. 提升思考力的8种日常训练法