在建設監控體系的過程中,針對一個系統的監控是多維度的,除了服務器資源狀態、中間件狀態、應用狀態外,對系統訪問狀態的監控也是很有必要,可以在系統訪問出現異常時第一時間通知到我們。本文介紹使用 Docker-compose 方式一鍵部署 Prometheus + Grafana + alertmanager + blackbox_exporter,實現黑盒測試(站點監控),docker-compose.yml 文件已上傳至 Github ,直接啟動即可。
1. 安裝 docker-compose
Docker 和 Docker-Compose?安裝方法參考:?Docker二進制安裝教程!-CSDN博客
2. 下載docker-compose.yml
因為某些原因,拉取失敗可以多拉取幾次
$?git?clone?https://github.com/Public-Compose/Prometheus-Grafana.git
3. 啟動 Prometheus 容器
各個組件的鏡像已改為阿里源,境內可正常拉取
$?cd?Prometheus-Grafana
$?docker-compose up -d
4. 添加權限重啟
$?chmod 777 -R prometheus grafana alertmanager pushgateway blackbox_exporter
$?docker-compose restart
5. 地址測試
查一下容器狀態是否都正常
$?docker-compose ps
「Prometheus訪問地址:」http://IP:9090
「Grafana訪問地址:」http://IP:3000?賬號: admin 密碼: admin
「Alertmanager訪問地址:」http://IP:9093
「Pushgateway訪問地址:」http://IP:9091
「blackbox訪問地址:」http://IP:9115
6. Grafana添加數據源
「選擇 Configuration -- data sources -- Add data sources -- Prometheus」
「URL:」http://prometheus:9090
7. 導入模板 -- 9965
7.1 選擇 Dashboards -- Import -- ID 輸入9965,點擊Load
7.2 選擇數據源
8. 站點監控完成
可通過修改?Prometheus-Grafana\prometheus\blackbox
?目錄下的數據源文件調整監控站點信息,每30s自動刷新源數據
到此,對站點監控狀態的可視化已完成,后續需根據通知方式配置告警器及?
rules
,如果使用AlertManager
則需編寫rules
和安裝webhook
,也可參考我之前的文章直接使用夜鶯(nightingale)進行告警配置。