文章目录
1. 引言
在上一博客《微服务*项目(07) - 日志解决方案设计》,主要讲解了企业级日志解决方案的设计,架构图如下:
本文主要讲解的是GPE监控架构设计。
2. GPE架构
ELK主要收集分析预警的是我们平台系统中各个服务的业务日志,一般通过日志组件(log4j
、log4j2
、logback
)来收集并写入文本。但是对于系统本身以及一些应用软件的监控预警,这套方案显然是不合适的,这里推荐一下GPE三剑客;基本上主流的中间件和应用都能监控,并且大多数都是代码无入侵的。
架构图:
2.1 核心组件
Grafana
、Prometheus
、Exporter
的三剑客,使用邮件、钉钉以及webhook实现异常告警。
- Prometheus:是一个开源的服务监控系统,它通过HTTP协议从远程的机器收集数据并存储在本地的时序数据库上。
- Grafana:是一个开箱即用的可视化工具,具有功能齐全的度量仪表盘和图形编辑器,有灵活丰富的图形化选项,可以混合多种风格,支持多个数据源特点。
- Exporter:是一系列的插件和外部进程,支持黑盒获取metrics(代码无入侵)
2.2 工作流程
- Exporter组件获取服务器或者系统软件的metrics
- Prometheus拉取Exporter的metrics到本地存储
- Grafana配置Prometheus数据源获取其采集数据结合自定义面板实现监控大屏
- Grafana通过设置Alerting实现监控预警