首页 新闻 会员 周边

kubectl top nodes 报错

0
悬赏园豆:50 [已解决问题] 解决于 2022-02-08 20:12

通过 helm 成功部署了 prometheus

$ helm install prometheus bitnami/kube-prometheus

但运行 kubectl top nodes 命令时却报错

$ kubectl top nodes            
Error from server (ServiceUnavailable): the server is currently unable to handle the request (get nodes.metrics.k8s.io)

请问如何解决?

问题补充:

发现2个 apiservice 出现 404 错误

$ kubectl get apiservice -n monitoring | grep False
v1beta1.custom.metrics.k8s.io          monitoring/custom-metrics-apiserver   False (ServiceNotFound) 
v1beta1.metrics.k8s.io                 monitoring/prometheus-adapter         False (ServiceNotFound) 

删除这2个 apiservice 之后,kubectl top nodes 报错变成:

error: Metrics API not available
dudu的主页 dudu | 高人七级 | 园豆:30994
提问于:2022-02-08 17:30

通过 Kubernetes metrics | Error from server (ServiceUnavailable) | Quick 2 fixes 知道需要安装 metrics-server

dudu 2年前
< >
分享
最佳答案
0

这个具体得看用装完metrics相关的资源具体报错了,第一个报错是因为metrics服务有问题NotFound,第二个自然是因为prometheus需要metrics来收集指标才能生效。

收获园豆:50
北方姆Q | 小虾三级 |园豆:1118 | 2022-02-08 18:16

还是先helm全都装上,看下Metrics的svc跟pod是否正常吧,helm装的一般估计是少了点权限啥问题可能

北方姆Q | 园豆:1118 (小虾三级) | 2022-02-08 18:17

@北方姆Q: 另外部署了 metrics-server,但是 metrics-server pod 启动不了,错误是

"Failed to scrape node" err="Get \"https://kube-n7-4c8g:10250/stats/summary?only_cpu_and_memory=true\": ...
"Failed probe" probe="metric-storage-ready" err="not metrics to serve"
dudu | 园豆:30994 (高人七级) | 2022-02-08 19:08

@北方姆Q: 提供的博文很管用,command 中加入 --kubelet-preferred-address-types=InternalIP--kubelet-insecure-tls 参数,metrics-server pod 就成功启动了,然后 kubectl top nodes 就正常输出了。

containers:
- args:
  - --secure-port=8443
  command:
  - metrics-server
  - --kubelet-preferred-address-types=InternalIP
  - --kubelet-insecure-tls
dudu | 园豆:30994 (高人七级) | 2022-02-08 19:45

最终采用的 helm 部署 metrics-server 的姿势

helm install metrics-server bitnami/metrics-server -n monitoring -f metrics-server-values.yaml

metrics-server-values.yaml

fullnameOverride: "metrics-server"

apiService:
  create: true
extraArgs:
  kubelet-preferred-address-types: InternalIP
  kubelet-insecure-tls: true
dudu | 园豆:30994 (高人七级) | 2022-02-08 20:12
清除回答草稿
   您需要登录以后才能回答,未注册用户请先注册