对任何系统就像人一样需要“知己知彼“才能做到”百战百胜”,经常在讨论高可用,一方面需要从架构设计、编码实施、质量验证等环节保证项目的高可用,另一方面能够尽可能早的发现问题也是非常的重要。目前监控生态中有大量的产品可供选择,Java生态尤其是Spring Boot生态下更是,如何选择一套适合自己的方案则显得尤为重要。
对于Spring Boot应用可以使用Spring Boot Admin进行监控,但是还不够全面,本文则主要介绍Prometheus搭配Grafana进行监控报警。大致流程图如下
Prometheus是服务器监控系统的后起之秀,可以和Kubernetes完美结合用于监控大量集群和应用,Grafana是一款数据可视化看板,可指定多个数据源执行查询,将枯燥的数据转化为多维度的面板。两者均为开源项目,通过配置可实现直观强大的监控、报警、分析系统,实属运维神奇。
简介
Prometheus简介
Prometheus(普罗米修斯)是一款从2012年开始研发的弹性监控解决方案,该系统将其数据存储至时序数据库,且提供了多维度的数据模型和强大的查询语言来生成被监控资源的报表。最初由SpringCloud发布
特点
多维数据模型
灵活的查询语言
不依赖分布式存储
通过pull方式采集时间序列,通过http协议传输
支持通过中介网关的push时间序列的方式
监控数据