文章目录

  • 一、场景介绍
  • 二、Prometheus 数据源添加
  • 三、Grafana 展示 Prometheus 收集的 node_exporter 的数据源
  • 四、Grafana 展示 Prometheus 收集的 mysql_exporter 的数据源
  • 五、Grafana 展示 Prometheus 收集的 应用程序 的数据源


一、场景介绍

  在实际的运维工作中,监控软硬件借助自研或者第三方的监控插件将极大客观的展示被监控系统的状态,以及对系统问题的及时预防发挥重大的作用。

如下采用几张网摘图片阐述监控的意义:

  • 监控系统有如下七大作用
  • 实时采集监控数据:包括硬件、操作系统、中间件、应用程序等各个维度的数据
  • 实时反馈监控状态:通过对采集的数据进行多维度统计和可视化展示,能实时体现监控对象的状态是正常还是异常
  • 预知故障和告警:能够提前预知故障风险,并及时发出告警信息
  • 辅助定位故障:提供故障发生时的各项指标数据,辅助故障分析和定位
  • 辅助性能调优:为性能调优提供数据支持,比如慢 SQL,接口响应时间等
  • 辅助容量规划:为服务器、中间件以及应用集群的容量规划提供数据支撑
  • 辅助自动化运维:为自动扩容或者根据配置的 SLA 进行服务降级等智能运维提供数据支撑
  • 如何使用监控系统
  • 了解监控对象的工作原理:要做到对监控对象有基本的了解,清楚它的工作原理。比如想对 JVM 进行监控,你必须清楚 JVM 的堆内存结构和垃圾回收机制
  • 确定监控对象的指标:清楚使用哪些指标来刻画监控对象的状态?比如想对某个接口进行监控,可以采用请求量、耗时、超时量、异常量等指标来衡量
  • 定义合理的报警阈值和等级:达到什么阈值需要告警?对应的故障等级是多少?不需要处理的告警不是好告警,可见定义合理的阈值有多重要,否则只会降低运维效率或者让监控系统失去它的作用
  • 建立完善的故障处理流程:收到故障告警后,一定要有相应的处理流程和 oncall 机制,让故障及时被跟进处理
  • 监控对象
  • 硬件监控:电源状态、CPU 状态、机器温度、风扇状态、物理磁盘、raid 状态、内存状态、网卡状态
  • 服务器基础监控
  • 数据库监控:数据库连接数、QPSTPS、并行处理的会话数、缓存命中率、主从延时、锁状态、慢查询
  • 中间件监控
  • 监控系统的基本流程
  • 数据采集:采集的方式有很多种,包括日志埋点进行采集(通过 LogstashFilebeat 等进行上报和解析),JMX 标准接口输出监控指标,被监控对象提供 REST API 进行数据采集(如 HadoopES),系统命令行,统一的 SDK 进行侵入式的埋点和上报等
  • 数据传输:将采集的数据以 TCPUDP 或者 HTTP 协议的形式上报给监控系统,有主动 Push 模式,也有被动 Pull 模式
  • 数据存储:有使用 MySQLOracleRDBMS 存储的,也有使用时序数据库 RRDToolOpentTSDBInfluxDB 存储的,还有使用 HBase 存储的
  • 数据展示:数据指标的图形化展示
  • 监控告警:灵活的告警设置,以及支持邮件、短信、IM 等多种通知通道

P.S

以上内容摘自石杉的架构笔记,如有侵权,请私信删除,感谢!

二、Prometheus 数据源添加
  1. 点击 ADD DATA SOURCES
  2. 选择需要展示的数据源,这里选择 Prometheus

P.S
这里除了可以收集 Prometheus 的时序数据库,还能收集 ElasticsearchZipkinMySQLPstgreSQLMicrosoft SQL ServerOracle 等信息

  1. 输入 Prometheus 的访问地址,保存并测试退出
  2. Prometheus 数据源配置成功
三、Grafana 展示 Prometheus 收集的 node_exporter 的数据源
  1. 导入展示 node_exporter 报表的模板
  2. 输入需要导入的模板号(这里可以在社区找到更多更好的开源模板)
  3. 修改模板名称,选择 Prometheus 数据源后点击 Import
  4. 监控详细信息如下
四、Grafana 展示 Prometheus 收集的 mysql_exporter 的数据源
  1. 导入展示 mysql_exportet 报表的模板
  2. 输入需要导入的模板号(这里可以在社区找到更多更好的开源模板)
  3. 修改模板名称,选择 Prometheus 数据源后点击 Import
  4. 监控详细信息如下
五、Grafana 展示 Prometheus 收集的 应用程序 的数据源
  1. 导入展示 应用程序 报表的模板
  2. 输入需要导入的模板号(这里可以在社区找到更多更好的开源模板)
  3. 修改模板名称,选择 Prometheus 数据源后点击 Import
  4. 监控详细信息如下