Kubernetes集群安装metrics-server

搭建好k8s集群后(如何搭建k8s集群),首先想到的是查看集群的运行情况

[root@k8s-master ~]# kubectl get nodes
NAME         STATUS   ROLES    AGE     VERSION
k8s-master   Ready    master   7d1h    v1.16.3
k8s-n1       Ready    <none>   7d      v1.16.3
k8s-n2       Ready    <none>   5d19h   v1.16.3
k8s-n3       Ready    <none>   5d18h   v1.16.3

很好,所有节点都是ready状态。
如果想要查看个节点甚至pod的资源使用情况呢,这时候需要为集群安装metrics-server。
安装办法也很简单,参考GitHub

执行安装命令如下:

 git clone https://github.com/kubernetes-incubator/metrics-server.git
 cd metrics-server
 kubectl apply -f deploy/1.8+/

apply之后,metrics server 还不能很好的工作,主要发现了以下两个问题:
一是镜像“k8s.gcr.io/metrics-server-amd64:v0.3.6”在国内无法拉取。
二是kubelet使用了未被认可的证书,不能被metrics-server所调用。

第一个问题的解决办法,还是使用安装集群时候的老办法,先从国内镜像库中拉取,再打上tag(搭建k8s集群的文章中有提到)。这里面有地方要注意一下,就是“metrics-server-service.yaml”文件中拉取镜像是策略是“Always”,这里需要改成“IfNotPresent”。

第二个问题的解决办法有两种,一种是给kubelet指定“被认可”的证书,另一种比较简单粗暴,是直接跳过kubelet证书检查,这里选择第二种办法。

具体操作流程:

  1. 拉取“k8s.gcr.io/metrics-server-amd64:v0.3.6”。
  2. 修改metrics-server的deployment
 kubectl edit deploy -n kube-system metrics-server

将“Always”改成“IfNotPresent”,添加 --kubelet-insecure-tls参数,来跳过kubelet证书检查。如下图,之后保存退出即可。
在这里插入图片描述

最后,执行kubectl top命令

[root@k8s-master ~]# kubectl top nodes
NAME         CPU(cores)   CPU%   MEMORY(bytes)   MEMORY%
k8s-master   150m         7%     1517Mi          41%
k8s-n1       38m          3%     1023Mi          59%
k8s-n2       61m          6%     2094Mi          56%
k8s-n3       47m          4%     840Mi           22%

返回结果,安装成功。

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值