安装metric-server,运行kubectl top nodes报错 Error from server (ServiceUnavailable)
程序员文章站
2022-07-13 21:12:23
...
安装metric-server,运行kubectl top nodes报错 Error from server (ServiceUnavailable): the server is currently unable to handle the request
安装metric-server,pod可以正常运行,但是运行kubectl top nodes会报错 :Error from server (ServiceUnavailable): the server is currently unable to handle the request
查了很多博客,解决方案基本雷同,最终都不能解决此问题。好在锲而不舍,找到了问题的根源,是个容易被忽略的小问题。排查与解决方法如下:
运行:
kubectl top node
发现失败:
第一个提示是版本的更新问题,意思是下一个版本将切换到协议缓冲区,通过传递–use protocol buffers标志提前切换。
第二个提示说明服务异常。排查问题:
kubectl get --raw "/apis/metrics.k8s.io/v1beta1"
输出为:
Error from server (ServiceUnavailable): the server is currently unable to handle the request
再执行:
kubectl get apiservice | grep metrics.k8s.io
输出为:
执行:
kubectl describe apiservice v1beta1.metrics.k8s.io
可以看到:
https请求无法访问,是不是和代理有关系?打开/etc/kubernetes/manifests/kube-apiserver.yaml,原来是之前添加了代理,添加no_proxy(黄色标出,metric server的pod ip):
问题解决!kubectl top XXX已可以正常使用: