背景
平台在运维时,需要关注:
- 平台所部署环境的硬件资源使用情况,如果发现有资源不足的风险需要提醒运维对资源进行扩展。
- 平台所部署的应用及各组件的资源使用情况,如果发现所使用的资源抖动比较厉害需要即时发现并结合业务进行分析,如果发现应用及及组件的资源紧缺,需要提前预警对性能进行扩展。
技术选型
监控预警领域,GPE(Grafana、Prometheus、Exporter)方案独领风骚。
这里就不做选型比较了,直接介绍GPE,关于GPE的架构图如下所示:
核心组件
- Grafana、Prometheus、Exporter的三剑客,使用邮件、钉钉以及webhook实现异常告警。
- Prometheus:是一个开源的服务监控系统,它通过HTTP协议从远程的机器收集数据并存储在本地的时序数据库上。
- Grafana:是一个开箱即用的可视化工具,具有功能齐全的度量仪表盘和图形编辑器,有灵活丰富的图形化选项,可以混合多种风格,支持多个数据源特点。
- Exporter:是一系列的插件和外部进程,支持黑盒获取metrics(代码无入侵)
工作流程
- Exporter组件获取服务器或者系统软件的metrics
- Prometheus拉取Exporter的metrics到本地存储
- Grafana配置Prometheus数据源获取其采集数据结合自定义面板实现监控大屏
- Grafana通过设置Alerting实现监控预警