运维监控系统实战笔记
秦晓辉
快猫星云联合创始人,Open-Falcon、Nightingale、Categraf 核心研发
9147 人已学习
新⼈⾸单¥59
登录后,你可以任选4讲全文学习
课程目录
已完结/共 25 讲
运维监控系统实战笔记
15
15
1.0x
00:00/00:00
登录|注册

18|组件监控:Kubernetes 控制面组件的关键指标与数据采集

你好,我是秦晓辉。
上一讲我们介绍了 Kubernetes 工作负载节点的监控,了解了 Kube-Proxy、Kubelet、容器负载监控的方法。这一讲我们介绍控制面组件的监控,包括 APIServer、Controller-manager(简称 CM)、Scheduler、etcd 四个组件,我会讲解这几个组件监控数据的采集方法和关键指标,并给出监控大盘。此外,我们还会学习如何使用 kube-state-metrics(简称 KSM)来监控 Kubernetes 的各类对象。

数据采集

自行搭建 Kubernetes 控制面的朋友,大都是选择 Kubeadm 这样的工具,Kubeadm 会把控制面的组件以静态容器的方式放到容器里运行,之后我会重点给你演示在这种部署方式下如何采集监控数据。
不过很多大一些的互联网公司会选择直接使用二进制的方式来部署,因为二进制的方式对于监控数据采集来说其实更简单,直接在采集器里配置要抓取的这几个组件的目标地址就可以了。
如果想要调用 Kubernetes 服务端 APIServer、Controller-manager、Scheduler 这三个组件的 /metrics 接口,需要有 Token 做鉴权,我们还是通过创建 ServiceAccount 的方式拿到 Token,后面也会把采集器直接部署到 Kubernetes 容器里,这样 Token 信息就可以自动 mount 到容器里,比较方便。
确认放弃笔记?
放弃后所记笔记将不保留。
新功能上线,你的历史笔记已初始化为私密笔记,是否一键批量公开?
批量公开的笔记不会为你同步至部落
公开
同步至部落
取消
完成
0/2000
荧光笔
直线
曲线
笔记
复制
AI
  • 深入了解
  • 翻译
    • 英语
    • 中文简体
    • 中文繁体
    • 法语
    • 德语
    • 日语
    • 韩语
    • 俄语
    • 西班牙语
    • 阿拉伯语
  • 解释
  • 总结

Kubernetes 控制面组件的监控对于维护集群的稳定性至关重要。本文介绍了如何采集控制面组件的监控数据以及关键指标。首先,通过创建认证信息和部署采集器来实现数据采集。文章提到了使用Prometheus的agent mode模式来采集数据的方式,并给出了相应的配置文件和部署方法。此外,还介绍了修复Controller-manager、Scheduler和etcd组件监控数据抓取的方法,包括创建service和调整组件的启动参数。通过这些步骤,读者可以了解如何在Kubernetes集群中监控控制面组件的关键指标,以及如何部署采集器来实现自动感知组件实例变化的能力。文章内容详实,适合需要深入了解Kubernetes监控的技术人员阅读。文章总结了Kubernetes控制面组件的监控重要性,以及如何采集监控数据和关键指标,为技术人员提供了实用的指导和解决方案。

仅可试看部分内容,如需阅读全部内容,请付费购买文章所属专栏
《运维监控系统实战笔记》
新⼈⾸单¥59
立即购买
登录 后留言

全部留言(8)

  • 最新
  • 精选
  • Geek_1a3949
    尝试回答一下课后题: 可以为prometheus增加global.external_labels配置,增加cluster的标识以区分不同的集群: global: external_labels: cluster: prod-bigdata-sh .... 另外,请教老师一个问题,ksm的分片,官网上有statefulset、daemonset的分片方式,它们各自的适用场景是什么,在生产环境下,更推荐哪种方式?

    作者回复: 量小的话sts即可,量大的话得daemonset

    2023-02-17归属地:上海
    4
  • 胡飞
    你好老师,promtheus 如果开启了remote write后,存储会用两份吗?prom本地一份数据,第三方一份数据?

    作者回复: 是的

    2023-03-15归属地:上海
    1
  • peter
    请教老师几个问题: Q1:KSM是k8s自身的组件吗?还是一个第三方的软件? Q2:一般性的问题,公司的实际运营中,日志数据一般保存多长时间?指标数据一般保存多长时间?(到期后是直接删除数据吧)

    作者回复: 1,不是,但可以看做是伴生的重要性 2,有些日志有政策审计要求,有些只查问题,有些用于做数据统计,日志保存时间都不一样,指标的话默认15天即可,一些业务指标可能会需要永久保存

    2023-02-18归属地:北京
    2
    1
  • 姜兵
    老师您好,想问一下,生产上的各类指标开启秒级采集的话,一般最小设置为多少秒可以确保采集性能和告警的及时性?

    作者回复: 一般15秒就算很高了

    2023-07-19归属地:北京
  • k8s卡拉米
    老师您好,采集work组件是后,您这篇文章中使用的是把prometheus当做agent,部署的这个采集的prometheus 是仅仅做采集使用吗?,我在其他机器上已经部署了prometheus用户和n9e和这个采集的prometheus 没关系是吗?

    作者回复: agent mode 模式的 prometheus 仅仅作为采集器,中心端时序存储建议使用 VictoriaMetrics 或 Thanos

    2023-07-04归属地:北京
  • 晴空万里
    自己做监控系统 但是用了公有云产品 比如华为云的k8s 请问怎么监控哈 公司都是用公有云saas 自己公司卖paas产品

    作者回复: 只用了一个云的话,其实直接用云的监控就可以了,未来要是有多云或者混合云的场景,再考虑自建监控。如果自己搞监控来监控K8s,主要关注工作负载节点就可以了,托管的K8s控制面组件的可靠性让云厂商来做

    2023-03-01归属地:广东
  • LiLian
    请问老师:"prometheus agent mode,支持 Kubernetes 服务发现" 本质上还是通过list & watch 监听来自api server的信息吗?

    作者回复: 是

    2023-02-24归属地:广东
  • Geek_7656a8
    老师好; 采集到集群调度信息,但是 scheduler (0 / 8767 active targets);这是什么情况? 数据没有推到远端的prometheus
    2023-06-21归属地:北京
收起评论
显示
设置
留言
8
收藏
沉浸
阅读
分享
手机端
快捷键
回顶部