安装metrics-server会踩无数的坑,网上搜出来的教程要么看不懂,要么没用,要么复杂,只看博主这一个就可以了。
1.在安装之前最好先镜像一下,防止手残,回滚是最方便的。
2.首先查看自己是否安装过git如果有,请yum remove git 卸载掉重新安装,保证是新版
yum remove git
yum install git -y
3.获取metrics-server, 注意使用的版本,我这里使用的是3.6版本的
git clone -b v0.3.6 https://github.com/kubernetes-incubator/metrics-server
完成只会会自动创建这些文件和目录
[root@master ~]# ls metrics-server/
cmd Gopkg.lock Makefile README.md
code-of-conduct.md Gopkg.toml OWNERS SECURITY_CONTACTS
CONTRIBUTING.md hack OWNERS_ALIASES vendor
deploy LICENSE pkg version
4.修改deployment, 注意修改的是镜像和初始化参数
[root@k8s-master01 ~]# cd /root/metrics-server/deploy/1.8+/
[root@k8s-master01 1.8+]# vim metrics-server-deployment.yaml
5.按图中添加下面选项
hostNetwork: true
image: registry.cn-hangzhou.aliyuncs.com/google_containers/metrics-server-amd64:v0.3.6
args:
- --kubelet-insecure-tls
- --kubelet-preferred-address-types=InternalIP,Hostname,InternalDNS,ExternalDNS,ExternalIP
6.安装metrics-server
[root@k8s-master01 1.8+]# kubectl apply -f ./
7.查看pod运行情况,如果成功的话会自动在kube-system下面创建一个pod,需要注意的是,启动需要一定时间,看情况。
[root@k8s-master01 1.8+]# kubectl get pod -n kube-system
metrics-server-6b976979db-2xwbj 1/1 Running 0 90s
8.使用kubectl top node 查看资源使用情况,
#报错没关系,是因为pod还没完全创建成功,需要等一段时间。
[root@master 1.8+]# kubectl top node
error: metrics not available yet
[root@master 1.8+]# kubectl top node
error: metrics not available yet
[root@master 1.8+]# kubectl top node
error: metrics not available yet
[root@master 1.8+]# kubectl top node
NAME CPU(cores) CPU% MEMORY(bytes) MEMORY%
192.168.159.11 384m 19% 1587Mi 55%
192.168.159.12 99m 4% 221Mi 11%
192.168.159.13 94m 4% 264Mi 14%
[root@master 1.8+]# kubectl top pod -n kube-system
NAME CPU(cores) MEMORY(bytes)
coredns-59748948d4-2kjtk 7m 31Mi
metrics-server-5f55b696bd-s92pl 2m 10Mi
9.到此安装成功。