【Prometheus专题】1. Prometheus介绍(何为Prometheus)

个人最喜欢用的监控工具是Zabbix, 架构清晰简单,配合基本的模块和脚本几乎可以全覆盖企业内部的监控,可以说是功能非常强大。
但是后面k8s出现后, 就没法用zabbix去做监控了,你需要写大量的监控脚本,工作量大了不说,还需要去考虑怎么通过脚本去拿到集群信息,就比较麻烦。
所以, Prometheus就被划入新的监控之一, 专门用来做k8s的监控。现在两套监控, zabbix与prometheus, 刚好够用。
也有一些文章去讲解了zabbix与prometheus做集成,这个后续我再写文档分享出来。


一、简介

prometheus是由谷歌研发的一款开源的监控软件,目前已经被云计算本地基金会托管,是继k8s托管的第二个项目。

二、优势

  易于管理

  轻易获取服务内部状态

  高效灵活的查询语句

  支持本地和远程存储

  采用http协议,默认pull模式拉取数据,也可以通过中间网关push数据

  支持自动发现

  可扩展

  易集成

三、prometheus运行流程

prometheus根据配置定时去拉取各个节点的数据,默认使用的拉取方式是pull,也可以使用pushgateway提供的push方式获取各个监控节点的数据。将获取到的数据存入TSDB,一款时序型数据库。此时prometheus已经获取到了监控数据,可以使用内置的PromQL进行查询。它的报警功能使用Alertmanager提供,Alertmanager是prometheus的告警管理和发送报警的一个组件。prometheus原生的图标功能过于简单,可将prometheus数据接入grafana,由grafana进行统一管理。

四、监控的目的

  google指出,监控分为白盒监控和黑盒监控之分。

  白盒监控:通过监控内部的运行状态及指标判断可能会发生的问题,从而做出预判或对其进行优化。

  黑盒监控:监控系统或服务,在发生异常时做出相应措施。

  监控的目的如下:

    1、根据历史监控数据,对为了做出预测

    2、发生异常时,即使报警,或做出相应措施

    3、根据监控报警及时定位问题根源

    4、通过可视化图表展示,便于直观获取信息


参考文档:https://www.cnblogs.com/zqj-blog/p/10871033.html
参考文档:https://www.cnblogs.com/chenqionghe/p/10494868.html

原文地址:https://www.cnblogs.com/DevOpsTechLab/p/13829765.html