kubeadm-1.19.0版本controller-manager及scheduler组件Unhealthy问题

  • Post author:
  • Post category:其他



  • 问题现象

部署完master节点以后,执行kubectl get cs命令来检测组件的运行状态时,报如下错误:

Get “http://127.0.0.1:10251/healthz”: dial tcp 127.0.0.1:10251: connect: connection refused

在这里插入图片描述


  • 原因分析

确认kube-scheduler和kube-controller-manager组件配置是否禁用了非安全端口


  • 解决方法

出现这种情况,是/etc/kubernetes/manifests/下的kube-controller-manager.yaml和kube-scheduler.yaml设置的默认端口是0导致的,解决方式是注释掉对应的port即可,操作如下:

[root@k8s-master ~]# cd /etc/kubernetes/manifests/
[root@k8s-master manifests]# ls
kube-apiserver.yaml  kube-controller-manager.yaml  kube-scheduler.yaml

修改kube-controller-manager.yaml文件:注释掉27行

[root@k8s-master manifests]# vim kube-controller-manager.yaml 
  27 #    - --port=0

修改kube-scheduler.yaml文件:注释掉19行,- –port=0

[root@k8s-master manifests]# vim kube-scheduler.yaml 
 19 #    - --port=0

在master节点上重启kubelet

[root@k8s-master manifests]# systemctl restart kubelet.service

再次查看master组件状态,状态正常

在这里插入图片描述



版权声明:本文为cljdsc原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。