Prometheus報警規則別名設置


prometheus報警規則,是由promsql語句編寫組合的,但是有時語句會很長,我們看還好,但是有時間業務組那邊也會使用promsql來看主機偏高的指標,這邊只能設置別名,方便他們使用。

別名設置:

很簡單,也是和報警規則一樣,但是語法可能不一樣

示例
 

[root@hdpv3test08 rules]# cat prometheus_rules_name.yml 
groups:
- name: alive
  rules:
  - record: node:ping:total 
    expr: up 
- name: cpu
  rules:
  - record: node:cpu_usage:ratio #別的文件使用,直接使用這個
    expr: ((100 - (avg by(instance,ip,hostname) (irate(node_cpu_seconds_total{mode="idle"}[5m])) * 100))) 
- name: mem
  rules:
  - record: node:memory_usage:ratio
    expr: (100 -(node_memory_MemTotal_bytes -node_memory_MemFree_bytes+node_memory_Buffers_bytes+node_memory_Cached_bytes ) / node_memory_MemTotal_bytes * 100 )

node:cpu_usage:ratio 就是查看cpu使用率的指標

下面兩張圖就是區別

 

 我們正常使用,就是直接采用這個別名指標了

 業務組使用

prometheus支持promsql語法,我們可以通過相關語句,很快定位到集群,資源使用情況

如:高CPU 高內存,出入流量大, tcp連接數多等等一些列問題。

主機重啟

delta(node_boot_time_seconds[5m]) != 0

文件只讀異常

node_filesystem_readonly == 1

CPU使用率

((100 - (avg by(instance,ip,hostname) (irate(node_cpu_seconds_total{mode="idle"}[5m])) * 100)))

內存使用率

(100 -(node_memory_MemTotal_bytes -node_memory_MemFree_bytes+node_memory_Buffers_bytes+node_memory_Cached_bytes ) / node_memory_MemTotal_bytes * 100 )

IO性能

 100-(avg(irate(node_disk_io_time_seconds_total[5m])) by(instance,hostname)* 100) < 40

磁盤使用率

100-(node_filesystem_free_bytes{fstype=~"ext4|xfs"}/node_filesystem_size_bytes {fstype=~"ext4|xfs"}*100) > 80

主機網絡IO速率

入速率(MiB/s)

irate(node_network_receive_bytes_total{}[5m]) / 1024 / 1024

出速率(MiB/s)

irate(node_network_transmit_bytes_total{}[5m]) / 1024 / 1024

主機磁盤IO

寫速率(MiB/s)

irate(node_disk_written_bytes_total{}[5m]) / 1024 / 1024

讀速率(MiB/s)

irate(node_disk_read_bytes_total{}[5m]) / 1024 / 1024

TCP連接數

node_netstat_Tcp_CurrEstab


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2026 CODEPRJ.COM