下载metrics-service组件yaml配置文件到本地
wget https://github.com/kubernetes-sigs/metrics-server/releases/download/v0.6.3/components.yaml
在k8s中启用此组件
kubectl apply -f components.yaml
遇到报错
Readiness probe failed: HTTP probe failed with statuscode: 500
报错是由于,k8s的配置默认要求进行tls验证,所以可以添加以下参数,来规避验证
添加 - --kubelet-insecure-tls
参数
...
spec:
containers:
- args:
- --cert-dir=/tmp
- --secure-port=4443
- --kubelet-preferred-address-types=InternalIP,ExternalIP,Hostname
- --kubelet-use-node-status-port
- --metric-resolution=15s
- --kubelet-insecure-tls
image: k8s.gcr.io/metrics-server/metrics-server:v0.6.3
imagePullPolicy: IfNotPresent livenessProbe: failureThreshold: 3
...
再次执行kubectl apply -f components.yaml即可
于是我们可以使用top命令查看node和pod的资源使用情况
hj@ubuntu-master:~$ kubectl top node
NAME CPU(cores) CPU% MEMORY(bytes) MEMORY%
huangji-ubuntu2004-k8s-subnode1 18m 0% 1388Mi 36%
huangji-ubuntu2004-k8s-subnode2 21m 1% 1337Mi 35%
ubuntu-master 152m 7% 2304Mi 61%
hj@ubuntu-master:~/Desktop$ kubectl top pod
NAME CPU(cores) MEMORY(bytes)
nginx-deploy-54844bd945-pg674 3m 4Mi