Prometheus 迈出DevOps第一步
前言
平台服务资源监控,是迈出DevOps的第一步,服务资源的稳定是基础,监控资源是核心,保障基础设施的稳定,是其他各种服务的前提。
现在市面上监控系统很多:Zabbix、Open-Falcon、Prometheus。最终选择的是 Prometheus,github。
Prometheus(普罗米修斯)是一套开源的监控&报警&时间序列数据库的组合,起始是由SoundCloud公司开发的。随着发展,越来越多公司和组织接受采用Prometheus,社会也十分活跃,他们便将它独立成开源项目,并且有公司来运作。Google SRE的书内也曾提到跟他们BorgMon监控系统相似的实现是Prometheus。现在最常见的Kubernetes容器管理系统中,通常会搭配Prometheus进行监控。
Prometheus基本原理是通过HTTP协议周期性抓取被监控组件的状态,这样做的好处是任意组件只要提供HTTP接口就可以接入监控系统,不需要任何SDK或者其他的集成过程。这样做非常适合虚拟化环境比如VM或者Docker 。
Prometheus应该是为数不多的适合Docker、Mesos、Kubernetes环境的监控系统之一,也是我安装的主要原因。