1、下载文件并进行部署
wget https://github.com/kubernetes-sigs/metrics-server/releases/latest/download/components.yaml
2、进行部署
kubectl apply -f components.yaml
3、发现问题
pod容器已经启动但是健康检查没有通过
kubectl get pod -n kube-system metrics-server-566c79d6df-q9j5xkube-system metrics-server-566c79d6df-q9j5x 0/1 Running 0 6m49s
4、进行排查
存活探针检查失败,接下来去看pod的日志
root@master-1:~# kubectl describe pod -n kube-system metrics-server-566c79d6df-q9j5x
root@master-1:~# kubectl logs -n kube-system metrics-server-566c79d6df-q9j5x
这里说x509的证书认证失败
5、经过排查后知道问题所在,需要修改其部署的yaml文件来解决
root@master-1:~# vim components.yaml#修改一下内容不一定一样我添加了一行解决了问题(跳过认证)spec:containers:- args:- --cert-dir=/tmp- --secure-port=10250- --kubelet-preferred-address-types=InternalIP,ExternalIP,Hostname- --kubelet-use-node-status-port- --metric-resolution=15s- --kubelet-insecure-tls #添加此行启用不安全的tlsimage: registry.k8s.io/metrics-server/metrics-server:v0.7.2imagePullPolicy: IfNotPresentlivenessProbe:failureThreshold: 3
6、重新部署后验证
#重新应用一下
root@master-1:~# kubectl apply -f components.yaml#检查其状态
root@master-1:~# kubectl get pod -n kube-system metrics-server-598746d78d-gw5vh
NAME READY STATUS RESTARTS AGE
metrics-server-598746d78d-gw5vh 1/1 Running 0 28m#进行使用
root@master-1:~# kubectl top node
NAME CPU(cores) CPU% MEMORY(bytes) MEMORY%
node-2 61m 1% 908Mi 11%
master-1 173m 2% 1607Mi 20%
master-2 178m 2% 1434Mi 18%
master-3 158m 2% 1164Mi 14%
node-1 44m 0% 830Mi 10%
至此完成部署