error: Metrics not available for pod 解决方案

Posted 爆浆大鸡排

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了error: Metrics not available for pod 解决方案相关的知识,希望对你有一定的参考价值。

环境

win10系统,开启了WSL2
docker for windows,开启了WSL集成
minikube for windows
kubectl for windows

缘由

kubectl top po 查看pod的资源使用情况时报错:

error: Metrics not available for pod

解决方案

在metrics-server的启动参数里添加以下两个命令:

--kubelet-insecure-tls
--kubelet-preferred-address-types=InternalIP,Hostname,InternalDNS,ExternalDNS,ExternalIP

但是 minikube addons enable metrics-server 启动的metrics-server版本是v0.2.1,这个版本没有上述两个启动命令。所以我们选择手动部署metrics-server。

先关闭minikube的metrics-server:

minikube addons disable metrics-server

下载metrics-server官方提供的yaml配置:

wget https://github.com/kubernetes-sigs/metrics-server/releases/download/v0.3.6/components.yaml

修改配置文件的image为国内源,否则拉取不到镜像:
将配置文件里的:

image: k8s.gcr.io/metrics-server-amd64:v0.3.6

修改为:

image: registry.cn-hangzhou.aliyuncs.com/google_containers/metrics-server-amd64:v0.3.6

接着加入metrics-server的启动args:

args:
- --cert-dir=/tmp
- --secure-port=4443
- --kubelet-insecure-tls
- --kubelet-preferred-address-types=InternalIP,Hostname,InternalDNS,ExternalDNS,ExternalIP

再运行:

kubectl apply -f components.yaml

启动成功后就可以看到pods的资源使用情况啦~~~

kubectl top po -n kube-system
# outputs:
NAME                               CPU(cores)   MEMORY(bytes)
coredns-6c76c8bb89-2gdql           4m           12Mi
etcd-minikube                      25m          32Mi
kube-apiserver-minikube            67m          291Mi
kube-controller-manager-minikube   21m          46Mi
kube-proxy-mwvbk                   8m           19Mi
kube-scheduler-minikube            3m           19Mi
metrics-server-666566b66d-kzdc4    1m           13Mi
storage-provisioner                2m           14Mi
kubectl top po -n default
# outputs:
NAME                     CPU(cores)   MEMORY(bytes)
nginx-6586c878b5-2pmdx   1m           3Mi
nginx-6586c878b5-7kf5s   1m           3Mi

备注:貌似运行一段时间后,kubectl top po -n default又会失败。。

以上是关于error: Metrics not available for pod 解决方案的主要内容,如果未能解决你的问题,请参考以下文章

error: Metrics not available for pod 解决方案

Spring Boot中报错org.apache.ibatis.binding.BindingException: Parameter 'XXXX' not found. Availa

Error from server (NotFound): the server could not find the requested resource (get services http:he

sklearn.metrics.mean_squared_error 越大越好(否定)吗?

三维网格精简算法(Quadric Error Metrics)附源码

Machine learning system design---Error metrics for skewed(偏斜的) classes