【交流群限时开放】
戳此加入,专栏交流群
你将获得
- 理论扫盲:监控领域专业知识一网打尽
- 选型指导:10 大开源监控方案横评对比
- 快速上手:搭建、增强、落地监控系统
- 实战指南:带你搞定 8 大常见监控需求
课程介绍
可被监控和观测是我们开发软件时必须考虑的一环。优秀的软件,一定是考虑了各类故障的发现和应对手段的,因此它们都内置了监控数据的暴露方法,用户可以对其进行观测,了解其健康状况,及时感知系统出现的问题。
随着时代的发展,监控也从最开始的一句话需求——及时感知系统出现的问题,发展到了希望预知问题,并且可以洞察业务经营数据,越来越多的诉求让我们逐渐意识到监控的重要作用。
比如:
- 通过监控我们可以了解数据趋势,知道系统在未来的某个时刻可能出问题,预知问题。
- 通过监控我们可以了解系统的水位情况,为服务扩缩容提供数据支撑。
- 通过监控我们可以给系统把脉,感知到哪里需要优化,比如一些中间件参数的调优。
- 通过监控我们还可以洞察业务,提供业务决策的数据依据,及时感知业务异常。
因此,优秀的软件,一定会暴露完备的监控指标,或者用现在时髦的话讲,优秀的软件一定是可观测的。
就拿我们常见的数据库中间件来说,你会发现虽然大家的指标暴露方式不同,但没有哪个是缺失监控能力的。
监控领域相关的产品很多,监控数据采集器有 Telegraf、Grafana-agent、Datadog-agent、Categraf、Prometheus 生态的各种 Exporters,时序数据库有 M3DB、VictoriaMetrics、Thanos、InfluxDB、TimescaleDB 等,监控系统有 Zabbix、Open-Falcon、Prometheus、Nightingale 等,整个监控技术体系非常庞杂。
不同的监控目标应该选用哪个采集器?机器、中间件、数据库、应用程序分别应该怎么监控?应该着重关注哪些指标?时序数据量很大,应该选用什么样的存储?作为一个公司级的基础设施,需求各异,选用哪一款系统更便于扩展?
为了解答这些困惑,我们请到了快猫星云的联合创始人,同时也是 Open-Falcon、Nightingale、Categraf 的核心研发秦晓辉老师。他会结合自己在这一领域多年的经验和思考,介绍监控领域的产品及优缺点,带你搭建监控系统,实现业务、应用、组件、资源四大场景的监控需求。
课程设计
1. 基础知识概要介绍
学习监控知识,得先了解为什么,也就是监控是因何产生的,解决了什么问题,有哪些典型的方案,分别有什么优缺点,通用的监控系统架构是怎样的。通过这些内容,你可以了解监控及相关的概念,为接下来的正式学习打好铺垫。
2. 搭建并优化 Prometheus
这个部分老师会带你搭建 Prometheus 这个监控系统,剖析它的关键设计,并给出 Prometheus 薄弱环节的解决方案。让你有个感性认识的同时,帮助你理解监控系统的相关设计。
3. 监控实战,搞定常见的监控需求
操作系统、网络设备、MySQL、Redis、Kafka、ElasticSearch、Kubernetes、应用、日志等所有常见监控的需求统统搞定。这个部分讲解各个监控目标是如何采集监控数据的,有哪些指标最为关键。中间穿插一些问题排查手段,并提供配置好的仪表盘,让你开箱即用的同时,知其然并知其所以然。
4. 告警实战,设计良好的告警系统应该具备哪些能力
这个部分的重点就是甄别异常数据并发出告警,包括告警规则、屏蔽规则、抑制规则、订阅规则的管理,还有告警事件的管理以及告警事件触发后的自愈逻辑。
一般监控系统都支持配置告警规则,可以产生告警事件,但是针对告警事件后续的支持偏弱,没有很好的聚合收敛、事件闭环的能力。这个部分主要是为了让你了解告警部分相关的设计逻辑和考量点,帮助你选型这方面的商业产品。当然,如果你后续选择自研,这些思考也会大有裨益。
不管你是运维工程师,还是业务研发、架构师,抑或者是监控和稳定性系统建设人员,运维监控相关知识都是工作中必不可少的一部分。希望这个课程可以补齐你在监控领域缺失的“拼图”。
课程目录
适合人群
- 运维工程师、监控及稳定性系统建设人员。
- 业务研发人员以及架构师。
- 对稳定性建设、可观测性体系建设感兴趣的相关人员。