1、下载metrics-server配置文件

在有网机器上从网站https://github.com/kubernetes-incubator/metrics-server下载
拷贝其到离线机器K8S的master节点。

2、下载推送metrics-server镜像

以下操作中:192.168.100.202为docker registry的地址

在麒麟V10机器下载镜像

docker pull rancher/metrics-server:v0.3.4-arm64

保存镜像

docker save -o metrics-server.tar rancher/metrics-server:v0.3.4-arm64

打标签,IP替换为registry的IP

docker tag rancher/metrics-server:v0.3.4-arm64 192.168.100.202:80/metrics-server:v0.3.4-arm64

推送

docker push 192.168.100.202:80/metrics-server:v0.3.4-arm64

3、修改metrics-server配置

拷贝metrics-server-master.zip至主节点(如果机器没有unzip,解压后再拷贝)
解压

unzip metrics-server-master.zip\
cd metrics-server-master/deploy/1.8+
vi metrics-server-deployment.yaml

搜索image
修改为推送至registry中的镜像名:192.168.100.202:80/metrics-server:v0.3.4-arm64

搜索imagePullPolicy
修改为IfNotPresent

在imagePullPolicy后添加command:
image: 192.168.100.202:80/metrics-server:v0.3.4-arm64
imagePullPolicy: IfNotPresent
command:
- /metrics-server
- --metric-resolution=30s
- --kubelet-preferred-address-types=InternalIP,Hostname,InternalDNS,ExternalDNS,ExternalIP
- --kubelet-insecure-tls

参数说明如下:

image修改后主要作用是拉取自己的镜像
iamgePullPolicy修改镜像拉取策略
command添加命令和相关参数:

/metrics-server选择目录
–metric-resolution=30s 从 kubelet 采集数据的周期 30s
–kubelet-preferred-address-types优先使用 InternalIP 来访问 kubelet,这样可以避免节点名称没有 DNS 解析记录时,通过节点名称调用节点 kubelet API 失败的情况(未配置时默认的情况)
–kubelet-insecure-tls不验证客户端证书

4、启动metrics-server

主节点上运行如下命令

cd metrics-server-master/deploy/1.8+
kubectl apply -f .

查看metrics-server是否运行成功

cd metrics-server-master/deploy/1.8+

在这里插入图片描述
使用kubectl top命令测试

kubectl top node

在这里插入图片描述

kubectl top pods -n kube-system

在这里插入图片描述

Logo

K8S/Kubernetes社区为您提供最前沿的新闻资讯和知识内容

更多推荐