Alertmanager與Prometheus是互相分離的兩個元件。Prometheus伺服器根據報警規則将警報發送給Alertmanager,然後Alertmanager将silencing、inhibition、aggregation等消息通過電子郵件、微信、等發送資訊,
下載下傳軟體包
<code>wget https://github.com/prometheus/alertmanager/releases/download/v0.20.0/alertmanager-0.20.0.linux-amd64.tar.gz</code>
解壓安裝
tar zxvf alertmanager-0.16.0.linux-amd64.tar.gz && cd alertmanager-0.16.0.linux-amd64
啟動 alertmanager
./alertmanager --config.file=alertmanager.yml
修改 prometheus.yml 配置檔案
配置 與alertmanager 通信
增加報警規則,監控主機服務,預設正常是1
#Load rules once and periodically evaluate them according to the global 'evaluation_interval'.
rule_files:
"rules/*.yml"
重載配置檔案 kill -hup $pid 或者重新開機 prometheus 服務
檢視配置的報警規則
報警規則已建立 ,設定郵件通知報警,已qq 郵箱為示列,qq 郵箱需要開啟smtp ,
smtp_require_tls 預設為true ,這裡需要修改為false,否則郵件觸發不成功, smtp_auth_password 填寫授權瑪
global: 全局配置,包括報警解決後的逾時時間、SMTP 相關配置、各種管道通知的 API 位址等等。
route: 用來設定報警的分發政策,它是一個樹狀結構,按照深度優先從左向右的順序進行比對。
receivers: 配置告警消息接受者資訊,例如常用的 email、wechat、slack、webhook 等消息通知方式。
觸發報警,手動關閉,es 服務,幾分鐘後收到郵件報警