部署Metrics Server
OS: Ubuntu Server 22.04 LTS
一: 在K8S Master节点部署Metrics Server
1) 因网络问题,请单独*载下**metrics-server:master镜像并导入
root@srv1:~# ctr -n=k8s.io image import metrics.tar
root@srv2:~# ctr -n=k8s.io image import metrics.tar
root@srv3:~# ctr -n=k8s.io image import metrics.tar
2) Git Metrics-Server
root@srv1:~# git clone https://github.com/kubernetes-sigs/metrics-server
root@srv1:~# vim ./metrics-server/manifests/base/deployment.yaml
......
......
......
......
......
......
image: gcr.io/k8s-staging-metrics-server/metrics-server:master
imagePullPolicy: IfNotPresent
# 23行添加如下内容[command行至- --kubelet-preferred-address-types=InternalIP行]
command:
- /metrics-server
- --kubelet-insecure-tls
- --kubelet-preferred-address-types=InternalIP
......
......
......
......
......
......
root@srv1:~# kubectl apply -k ./metrics-server/manifests/base/
serviceaccount/metrics-server created
clusterrole.rbac.authorization.k8s.io/system:aggregated-metrics-reader created
clusterrole.rbac.authorization.k8s.io/system:metrics-server created
rolebinding.rbac.authorization.k8s.io/metrics-server-auth-reader created
clusterrolebinding.rbac.authorization.k8s.io/metrics-server:system:auth-delegator created
clusterrolebinding.rbac.authorization.k8s.io/system:metrics-server created
service/metrics-server created
deployment.apps/metrics-server created
apiservice.apiregistration.k8s.io/v1beta1.metrics.k8s.io created
root@srv1:~# kubectl get pods -n kube-system
NAME READY STATUS RESTARTS AGE
coredns-74586cf9b6-bnx4v 1/1 Running 3 (79m ago) 4d23h
coredns-74586cf9b6-qdk4w 1/1 Running 3 (79m ago) 4d23h
etcd-srv1.1000y.cloud 1/1 Running 3 (79m ago) 4d23h
kube-apiserver-srv1.1000y.cloud 1/1 Running 3 (79m ago) 4d23h
kube-controller-manager-srv1.1000y.cloud 1/1 Running 3 (79m ago) 4d23h
kube-flannel-ds-knbd8 1/1 Running 3 (77m ago) 4d23h
kube-flannel-ds-qbkzk 1/1 Running 3 (79m ago) 4d23h
kube-flannel-ds-x5dng 1/1 Running 7 (77m ago) 4d23h
kube-proxy-5vl9c 1/1 Running 2 (79m ago) 4d23h
kube-proxy-jlhmh 1/1 Running 2 (79m ago) 4d23h
kube-proxy-tm2l6 1/1 Running 3 (79m ago) 4d23h
kube-scheduler-srv1.1000y.cloud 1/1 Running 3 (79m ago) 4d23h
metrics-server-954c5986-pmdqz 1/1 Running 0 27m
二: 使用Metrics服务
1) 显示Node所占用的CPU及MEM资源
root@srv1:~# kubectl top node
NAME CPU(cores) CPU% MEMORY(bytes) MEMORY%
srv1.1000y.cloud 177m 4% 1206Mi 15%
srv2.1000y.cloud 43m 1% 604Mi 7%
srv3.1000y.cloud 34m 0% 558Mi 7%
2) 显示Pods所占用的CPU及MEM资源
root@srv1:~# kubectl top pod
NAME CPU(cores) MEMORY(bytes)
private-nginx 8m 3Mi