【ConsulManager介紹】
Consul字段設(shè)計(jì)說明
- 所有數(shù)據(jù)存在一個(gè)名為
blackbox_exporter
的Services項(xiàng)中雪营,每個(gè)監(jiān)控目標(biāo)為一個(gè)子Service弓千。 - 每個(gè)Service使用Meta的kv保存監(jiān)控目標(biāo)的屬性:
module
,company
献起,project
洋访,env
镣陕,name
,instance
姻政,分別表示:監(jiān)控類型呆抑,公司部門,項(xiàng)目汁展,環(huán)境鹊碍,名稱,實(shí)例url食绿。 - 新增監(jiān)控時(shí)侈咕,監(jiān)控類型字段(
module
)和Blackbox配置中的module
必須保持一致。 - 前5個(gè)字段合并即為consul的serviceID器紧,作為唯一監(jiān)控項(xiàng)標(biāo)識(shí)
配置Prometheus與Blackbox
原理:基于Consul實(shí)現(xiàn)Prometheus的自動(dòng)發(fā)現(xiàn)功能配置
- 把Consul每個(gè)service的Meta的KV關(guān)聯(lián)到Prometheus每個(gè)指標(biāo)的標(biāo)簽耀销。
- 根據(jù)每個(gè)指標(biāo)的標(biāo)簽來對(duì)監(jiān)控目標(biāo)分類,分組铲汪,方便管理維護(hù)熊尉。
1. 配置Blackbox_Exporter
- 在Web頁(yè)面點(diǎn)擊
Blackbox 站點(diǎn)監(jiān)控/Blackbox 配置
,點(diǎn)擊復(fù)制配置
掌腰。 - 編輯blackbox_exporter的
blackbox.yml
狰住,清空已有的配置,把復(fù)制的內(nèi)容粘貼進(jìn)去辅斟,重啟blackbox_exporter转晰。
2. 配置Prometheus
- 在Web頁(yè)面點(diǎn)擊
Blackbox 站點(diǎn)監(jiān)控/Prometheus 配置
,點(diǎn)擊復(fù)制配置
士飒。 - 編輯Prometheus的
prometheus.yml
查邢,把復(fù)制的內(nèi)容追加到最后,reload或重啟Prometheus酵幕。
3. 配置Prometheus告警規(guī)則
- 在Web頁(yè)面點(diǎn)擊
Blackbox 站點(diǎn)監(jiān)控/告警規(guī)則
扰藕,點(diǎn)擊復(fù)制配置
。 - 編輯Prometheus的
rules.yml
芳撒,把復(fù)制的內(nèi)容追加到最后邓深,reload或重啟Prometheus。
4. 查看Prometheus
- 在Prometheus的Web頁(yè)面中笔刹,點(diǎn)擊Status-Targets芥备,能看到新增的Job即表示數(shù)據(jù)同步到Prometheus。
5. 導(dǎo)入Blackbox Exporter Dashboard
- 支持Grafana 8舌菜,基于blackbox_exporter 0.19.0設(shè)計(jì)
- 采用圖表+曲線圖方式展示TCP萌壳,ICMP,HTTPS的服務(wù)狀態(tài),各階段請(qǐng)求延時(shí)袱瓮,HTTPS證書信息等
- 優(yōu)化展示效果缤骨,支持監(jiān)控目標(biāo)的分組、分類級(jí)聯(lián)展示尺借,多服務(wù)同時(shí)對(duì)比展示绊起。
- 導(dǎo)入ID:9965
- 詳細(xì)URL:https://grafana.com/grafana/dashboards/9965
批量導(dǎo)入腳本
在units目錄下instance.list
中寫入監(jiān)控目標(biāo)的信息:JOB名稱,公司/部門燎斩,項(xiàng)目虱歪,環(huán)境,名稱瘫里,實(shí)例url实蔽,每行一個(gè),空格分隔谨读。
注意:前5個(gè)字段組合起來必須唯一,作為一個(gè)監(jiān)控項(xiàng)的ID坛吁。即Consul的ServiceID
修改units目錄下導(dǎo)入腳本中的consul_token和consul_url劳殖,保存后執(zhí)行input.py,即可導(dǎo)入所有監(jiān)控目標(biāo)到Consul拨脉,并符合Prometheus的自動(dòng)發(fā)現(xiàn)配置哆姻。