20 k8sMetric 简介



一. Metric 简介

  metrics-server 可实现 Kubernetes 的 Resource Metrics API(metrics.k8s.io),通过此 API 可以查询 Pod 与 Node 的部分监控指标,Pod 的监控指标用于 HPA、VPA 与 kubectl top pods -n ns 命令,而 Node 指标目前只用于 kubectl top nodes 命令。容器服务某些 k8s 发行版自带 Resource Metrics API 的实现,指向 hpa-metrics-server,且目前提供 Pod 的监控指标。

  将 metrics-server 安装到集群后,可以通过 kubectl top nodes 获取节点的监控概览,以替换 Resource Metrics API 的实现。容器服务控制台创建的 HPA 不会用到 Resource Metrics,仅使用 Custom Metrics,因此安装 metrics-server 不会影响在 Kubernetes 控制台创建的 HPA。本文将介绍如何在 Kubernetes 上安装 metrics-server。

二. 下载 yaml 部署文件

下载 metrics-server 官方的部署 yaml:

wget https://github.com/kubernetes-sigs/metrics-server/releases/download/v0.5.0/components.yaml
1

修改 metrics-server 启动参数:

1️⃣metrics-server 会请求每台节点的 kubelet 接口来获取监控数据,接口通过 HTTPS 暴露,但 Kubernetes 节点的 kubelet 使用的是自签证书,若 metrics-server 直接请求 kubelet 接口,将产生证书校验失败的错误,因此需要在 components.yaml 文件中加上 --kubelet-insecure-tls 启动参数。 2️⃣由于 metrics-server 官方镜像仓库存储在 k8s.gcr.io ,国内可能无法直接拉取,您可以自行同步到 CCR 或使用已同步的镜像 ccr.ccs.tencentyun.com/mirrors/metrics-server:v0.5.0

# 修改两处如下
containers:
- args:
 - --cert-dir=/tmp
 - --secure-port=443
 - --kubelet-preferred-address-types=InternalIP,ExternalIP,Hostname
 - --kubelet-use-node-status-port
 - --metric-resolution=15s
 - --kubelet-insecure-tls # 加上该启动参数
 image: ccr.ccs.tencentyun.com/mirrors/metrics-server:v0.5.0 # 国内集群,请替换成这个镜像

三. 安装使用

执行安装

[root@master ~]#kubectl apply -f components.yaml 
......
[root@master ~]#kubectl get pod -n kube-system | grep metrics-server
metrics-server-c44f75469-rfllg   1/1     Running   0               35s
1234

监控 node

[root@master ~]#kubectl top nodes
NAME       CPU(cores)   CPU%   MEMORY(bytes)   MEMORY%  
k8s-m-01   213m         10%    1173Mi          63%      
k8s-n-01   65m          3%     548Mi           29%      
k8s-n-02   68m          3%     433Mi           23%

监控 pod

[root@master ~]#kubectl top pods -n kube-system
NAME                               CPU(cores)   MEMORY(bytes)  
coredns-978bbc4b6-dh5sz            3m           17Mi            
coredns-978bbc4b6-xzg5h            4m           24Mi            
etcd-k8s-m-01                      17m          112Mi          
kube-apiserver-k8s-m-01            72m          346Mi          
kube-controller-manager-k8s-m-01   24m          74Mi            
kube-flannel-ds-8hjd2              5m           32Mi            
kube-flannel-ds-l9wxm              3m           31Mi            
kube-flannel-ds-m4xnq              6m           28Mi            
kube-proxy-2ftlg                   1m           31Mi            
kube-proxy-7k84n                   1m           24Mi            
kube-proxy-fzwwh                   1m           22Mi            
kube-scheduler-k8s-m-01            4m           33Mi            
kuboard-74c645f5df-7vjxs           0m           7Mi            
metrics-server-c44f75469-hxw7f     5m           20Mi


  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

FikL-09-19

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值