Prometheus之简介

1.  监控种类

    1.  业务监控

    2.  系统监控

    3.  网络监控

    4.  日志监控

    5.  程序监控

2.  数据采集的形式分类

    1.  一次性采集

        优点:  稳定性好,开发逻辑简单,实现快速

        缺点:  采集不到位

    2.  后台式采集

        优点:  数据准确性高,采集密度精细,管理方便

        缺点:  内存泄漏,僵尸进程,性能瓶颈,开发周期长

3.  prometheus的特性

    1.  基于time series时间序列模型

    2.  基于KV的数据模型

    3.  采集数据完全基于数学运算

    4.  采用HTTP pull/push两种对应的数据采集传输方式

    5.  本身自带图形调试

    6.  最精细的数据采样

    7.  架构

        

          如果没有数据库,默认prometheus只保存15天                      

4.  prometheus缺点

    1.  不支持集群化

    2.  被监控集群过大后,本身性能有瓶颈

    3.  对中文支持不好

5.  prometheus对运维的要求

    1.  要求对操作系统有很深入扎实的知识

    2.  对数学思维有一定的要求

    3.  对监控的经验有很高的要求

6.  prometheus组织架构

    常用组件

  • Prometheus Server:用于收集指标和存储时间序列数据,并提供查询接口
  • client Library:客户端库(例如Go,Python,Java等),为需要监控的服务产生相应的/metrics并暴露给Prometheus Server。目前已经有很多的软件原生就支持Prometheus,提供/metrics,可以直接使用。对于像操作系统已经不提供/metrics,可以使用exporter,或者自己开发exporter来提供/metrics服务。
  • push gateway:主要用于临时性的 jobs。由于这类 jobs 存在时间较短,可能在 Prometheus 来 pull 之前就消失了。对此Jobs定时将指标push到pushgateway,再由Prometheus Server从Pushgateway上pull。
  • exporter:用于暴露已有的第三方服务的 metrics 给 Prometheus。
  • alertmanager:从 Prometheus server 端接收到 alerts 后,会进行去除重复数据,分组,并路由到对收的接受方式,发出报警。常见的接收方式有:电子邮件,pagerduty,OpsGenie, webhook 等。
  • Web UI:Prometheus内置一个简单的Web控制台,可以查询指标,查看配置信息或者Service Discovery等,实际工作中,查看指标或者创建仪表盘通常使用Grafana,Prometheus作为Grafana的数据源;

    

7.  prometheus的metrics

    1.  metrics是对采样数据的总称

    2.  metrics的几种主要类型

        1.  Gauges

            最简单的度量指标,只有一个简单的返回值,或者叫瞬时状态。

            例子:磁盘容量,cpu使用率  

        2.  Counters

            计数器,从数据量0开始累积计算,只增不减

            例子:比如对用户访问量的采样数量

        3.  Histograms

            统计数据的分布情况。比如:最大值,最小值,百分比,平均值

            例子:统计0~0.5秒访问量有多少,0.5~1秒有多少

 

 

     

 

 

posted @ 2020-10-10 16:21  奋斗史  阅读(715)  评论(0)    收藏  举报