-
问题现象
部署完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 版权协议,转载请附上原文出处链接和本声明。