1、下载部署文件
wget https://github.com/kubernetes-sigs/metrics-server/releases/download/v0.6.3/components.yaml
2、下载镜像
docker pull registry.cn-hangzhou.aliyuncs.com/google_containers/metrics-server:v0.6.3
docker tag registry.cn-hangzhou.aliyuncs.com/google_containers/metrics-server:v0.6.3 registry.k8s.io/metrics-server/metrics-server:v0.6.3
3、上传同步并导入镜像
ansible all -m synchronize -a "src=/root/metrics-server-amd64.tar dest=/root/"
ansible all -m shell -a "docker load -i /root/metrics-server-amd64.tar"
4、处理证书问题

在国内环境部署时,很可能会因为证书问题导致 metrics-server 无法正常工作。你需要在 components.yaml 文件中的 Metrics Server 部署参数里添加 - --kubelet-insecure-tls 参数来跳过证书验证,找到 Deployment 中的 args 部分,添加该参数:

spec:
  containers:
  - args:
    - --cert-dir=/tmp
    - --secure-port=4443
    - --kubelet-preferred-address-types=InternalIP,ExternalIP,Hostname
    - --kubelet-insecure-tls  # 添加这一行
5、部署到集群
kubectl apply -f components.yaml
6、验证安装
kubectl get pods -n kube-system | grep metrics-server
7、测试使用
kubectl top nodes