介绍

  • metrics-server 是 Kubernetes 监控体系中的核心组件之一,它负责从 kubelet 收集资源指标,然后对这些指标监控数据进行聚合(依赖 kube-aggregator),并在 Kubernetes Apiserver 中通过 Metrics API ( /apis/metrics.k8s.io/)公开暴露它们,但是 metrics-server 只存储最新的指标数据(CPU/Memory),
  • 你的 kube-apiserver 要能访问到 metrics-server;
  • 需要 kube-apiserver 启用聚合层;
  • 组件要有认证配置并且绑定到 metrics-server;
  • Pod / Node 指标需要由 Summary API 通过 kubelet 公开。

aggregated apiserver

对apiserver的访问实际上就是rest调用,后端的URI就是哪一个api的哪一个版本的哪一个对象。然后就可以对这些URI注册不同的handler,转发到不同的api。

把多个apiserver聚合成一个,对用户来说只是访问了一个apiserver地址,后面可能有多个apiserver,服务于不同的api。原生的apiserver,服务于原生对象如node,pod等。

查看apiservice

k get apiservice

local代表的是原生的apiserver。

k get apiservice v1.node.k8s.io -o yaml

安装

  1. 这里使用helm安装,也可以使用其他方式。
helm search repo metrics-server

  1. 下载chart
helm pull bitnami/metrics-server
tar xvf metrics-server-5.11.7.tgz
cd metrics-server
  1. 修改values.yaml
apiService:create: true
extraArgs:kubelet-insecure-tls: truekubelet-preferred-address-types: InternalIP,ExternalIP,Hostnamekubelet-use-node-status-port: true
readinessProbe:initialDelaySeconds: 20
  1. 安装
helm install metrics-server . -n kube-system

  1. 查看pod,svc
ks get po,svc | grep metrics-server

  1. 查看apiservice
k get apiservice | grep metrics-server
k get apiservice v1beta1.metrics.k8s.io -o yaml


这个就代表任何访问v1beta1.metrics.k8s.io api下的对象都转发给metrics-server来处理。

  1. 查看集群负载
k top po
k top node

  1. 查看k top明细
k top po -v 9

top命令最终还是转到了一个get到metrics.k8s.io的请求。

  1. 查看node
kubectl get --raw "/apis/metrics.k8s.io/v1beta1/nodes"

用途

metrics-server更多的是用来获取集群当前指标,并根据设置好的值,来横向扩容(hpa)或者纵向扩容(vpa)。

  • k top去apiserver获取指标
  • apiserver转发到metrics-server
  • metrics-server到kubelet获取指标返回给apiserver

将指标数据转换成 metrics.k8s.io 的 api 调用返回值

k get --raw "/api/v1/nodes/node1/proxy/metrics/resource"

返回的数值包括节点,容器,pod。

Metrics-Server总结相关推荐

  1. Kubernetes基于Metrics Server的HPA

    Kubernetes基于Metrics Server的HPA [TOC] 1. 环境说明和相关介绍 我的kubernetes环境: kubeadm安装的kubernetes1.11 Horizonta ...

  2. Kubernetes — 安装 Metrics Server

    目录 文章目录 目录 Kubernetes Metrics Server 启用 API Aggregator 安装 Metrics Server Kubernetes Metrics Server K ...

  3. k8s搭建监控:安装metrics server和dashboard

    安装metrics server 参考:https://github.com/kubernetes-sigs/metrics-server kubectl  create -f components. ...

  4. Easypack: Ansible方式部署工具中增加Metrics Server支持

    在Easypack中提供了多套Kubernetes快速部署的工具,基于Bash脚本和Ansible的,Ansible的方式也有基于K3S和普通的Kubernetes的两种.这篇文章介绍一下普通Kube ...

  5. Metrics Server安装以及报错解决

    在查看kubernetes的测试环境中,使用top命令查看Pod的CPU.内存使用过程中,遇到以下问题: $ kubectl top po W0818 03:22:46.090578 26207 to ...

  6. k8s 1.14部署metrics server显示running但是报ServiceUnavailable错误

    k8s 1.14部署metrics server显示running但是报ServiceUnavailable错误 查看metrics server日志: [root@master metrics-se ...

  7. 安装 Metrics server

    安装 Metrics server Metrics Server 是 Kubernetes 内置自动缩放管道的可扩展.高效的容器资源指标来源. Metrics Server 从 Kubelets 收集 ...

  8. 【K8S 七】Metrics Server部署中的问题

    目录 填坑过程 问题一:启动metrics server报证书错误:x509: cannot validate certificate for x.x.x.x because it doesn't c ...

  9. Kubernetes 【监控】1. Metrics Server、Aggregator APIServer和Prometheus监控体系

    文章目录 1. 背景 2. 简介 3. 监控对象类型 4. Metrics Server简介 5. Metrics Server部署 5.1 下载并解压Metrics-Server 5.2 修改Met ...

  10. java metrics 简书_Metrics Server 安装

    #什么是metrics-server? kubernetes 集群资源监控之前可以通过 heapster 来获取数据,在 1.11 开始开始逐渐废弃 heapster 了,采用 metrics-ser ...

最新文章

  1. iframe几种常用代码片段
  2. int型数字转char型指针
  3. 前端小知识点(3):JavaScript 单线程
  4. mysql实验视图及索引_MySQL视图及索引
  5. 题目1140:八皇后
  6. 迅捷cad_迅捷元组
  7. 大数据如何影响企业的决策
  8. matlab引擎下载,安装用于 Python 的 MATLAB 引擎 API
  9. windows启动管理器_把windows 10装进文件里,竟然也能启动
  10. fan4801开关电源原理图_六款简单的开关电源电路设计,内附原理图详解
  11. 微信小程序tabBar闪烁问题
  12. psd导出jpg太大_Adobe Photoshop CC2017保存技巧 (PS)导出文件过大问题解决
  13. 一张图看懂零维到十维空间
  14. 使用ASP.NET MVC Web SignalR 构建单身聊天室(一)
  15. 班级校园网页设计作业 静态HTML我的班级网页 DW班级网站模板 大学生简单班级网页作品代码 我的大学网页制作 学生班级网页设计作业
  16. 北京冬奥会 向世界展示了什么
  17. JAVA正反合——原码、补码与反码学习笔记’
  18. 2014-2015 少年辛苦终身事,莫向光阴惰寸功
  19. GBJ2510-ASEMI电机专用25A整流桥GBJ2510
  20. TurboMosaic for Mac如何制作个性化的照片马赛克拼图

热门文章

  1. 星际战甲服务器维护时间,星际战甲
  2. 假设一年期定期利率为3.25%,计算一下需要过多少年,一万元的一年定期存款连本带息能翻番?(编程题)
  3. GK Summay算法(ϵ−approximate ϕ−quantile)
  4. 运维同学,你们公司的运维团队有多少人?
  5. element ui路由配置文件_element-ui使用导航栏跳转路由的用法详解
  6. java在线编译网站
  7. java中的 |=(位或运算符)、=(位与运算符)、^=(位异或运算)、~=(位非运算符)
  8. 解读-m addrtype --dst-type LOCAL -j DOCKER
  9. ElGamal数字签名
  10. 成长与危险相伴是常态,加强安全审计才是硬道理