zoukankan      html  css  js  c++  java
  • prometheus监控

    中文文档:https://songjiayang.gitbooks.io/prometheus/content/introduction/
     
    端口:9090
     监控模式:
    pull 主动拉取的形式 --->exporters,通过各种exporters组件
    push被动推送的形式 --> pushgateway

    metrics:

    gauges: 瞬时状态,随机变化

    例如:衡量一个待处理队列中任务的个数

    磁盘的容量或内存的使用量

    counters:计数器

    histograms:比例型

    统计数据分布情况:最小值,最大值,中间值,中位数

    cpu使用率
    (1- (sum(increase(node_cpu{mode="idle"}[1m])) /sum(increase(node_cpu{}[1m])))) * 100
     

    prometheus安装

     容器安装:

    docker run -d --name prom 
               -p 9090:9090 
               -v /opt/srv/prom/etc/:/etc/prometheus 
               -v /opt/srv/prom/promdata:/prometheus 
                prom/prometheus --storage.tsdb.retention.time=365d --web.enable-lifecycle --web.external-url=http://xxx:9090 --config.file=/etc/prometheus/prometheus.yml --storage.tsdb.path=/prometheus
                
    

     

    alermanager安装

    docker run -d --name alert 
               -p 9093:9093 
               -v /opt/srv/prom/etc/:/etc/alertmanager 
               -v /opt/srv/prom/alertdata:/prometheus 
           prom/alertmanager
    

    grafana安装

    docker run -d --name grafana 
               -p 80:3000 
               -v /opt/srv/grafana/etc:/etc/grafana 
               -v /opt/srv/grafana/data:/var/lib/grafana 
               -v /opt/srv/grafana/log:/var/log/grafana 
               -v /opt/srv/grafana/plugins:/var/lib/grafana/plugins 
               grafana/grafana
    

      

      

     

    动态加载配置

    curl -XPOST http://xx:9093/-/reload
    curl -XPOST http://xx:9090/-/reload

    hot reload 功能是默认关闭的,如需开启,需要在启动 Prometheus 的时候,添加 --web.enable-lifecycle 参数。

     prometheus常见配置

    PromQL 

     常用的函数

    rate() 函数

    计算范围向量中时间序列的每秒平均增长率

    专门搭配counter类型使用的函数,取counter这个时间段中的平均每秒中的增量
    irate(http_requests_total{job="api-server"}[5m])
    

     

    irate()

    计算范围向量中时间序列的每秒即时增长​​率

    irate(http_requests_total{job="api-server"}[5m])
    

     

    increase() 计算范围向量中时间序列的增加。

     取一段时间增量的总量

    示例:increase(http_requests_total{job="api-server"}[5m])

     

    聚合运算

    sum()
    min()
    max()
    avg()
    by()
    topk() 支持 gauge, counter类型
    count())
     

    altermanager告警

    级别:

    warning

    critical

    告警策略:

  • 相关阅读:
    C# TransactionScope 使用
    .Net 4.5 的async 和await 的简单理解使用
    图片的等比缩放
    IIS 8 下使用 WCF
    SQL Server 中字符串中包含字符串变量的表示方法
    jsTree 的简单用法--异步加载和刷新数据
    webService 部署以后参数输入框不能显示
    js 节点属性
    js 数组排序
    js 时间格式化 -- 时间加减实现
  • 原文地址:https://www.cnblogs.com/xuliang666/p/11206310.html
Copyright © 2011-2022 走看看