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

告警策略:

原文地址:https://www.cnblogs.com/xuliang666/p/11206310.html