kubernetes - 如何解决 Kubernetes 中的调度程序和控制器管理器不健康状态
问题描述
症状:
当我们安装新的 Kubernetes 集群时。当我们执行以下命令时:
$ kubectl get cs / kubectl get componentstatuses
我们得到这个错误:
Warning: v1 ComponentStatus is deprecated in v1.19+
NAME STATUS MESSAGE ERROR
controller-manager Unhealthy Get "http://127.0.0.1:10252/healthz": dial tcp 127.0.0.1:10252: connect: connection refused
scheduler Unhealthy Get "http://127.0.0.1:10251/healthz": dial tcp 127.0.0.1:10251: connect: connection refused
etcd-0 Healthy {"health":"true"}
解决方案
解决方案:
在所有主节点上修改以下文件:
$ sudo vi /etc/kubernetes/manifests/kube-scheduler.yaml
清除包含此短语的行 (spec->containers->command):---port=0
$ sudo vi /etc/kubernetes/manifests/kube-controller-manager.yaml
清除包含此短语的行 (spec->containers->command):---port=0
$ sudo systemctl restart kubelet.service
这个问题的另一个原因:
您可能在 docker 设置中使用了 http_proxy。在这种情况下,您必须在 no_proxy 中设置主节点地址
推荐阅读
- python - python显示字符串索引超出范围
- java - Java如何获取完全参数化的GenericType的类引用
- botframework - 如何在消息扩展中打开 url?
- mysql - 在 HR 应用程序 Laravel 上保留 System Balance
- php - 如何在一个 JSON 中获取两个查询以显示在 Chart.js 折线图上?
- python - Deap 运行时间给出了关键错误的错误
- c++ - 使用新运算符 c ++ 的静态绑定
- html - 如何在css中获取元素
- c - 实时嵌入式c代码中3个变量之间的依赖关系
- php - 使用 php-ews 获取 ms 交换服务器版本