使用prometheus + grafana + pushgateway搭建監控可視化系統

雖然prometheus提供了pull的方式來收集數據,可是運維成本比push方式高git

下面使用pushgateway快速搭建prometheus的監控可視化系統grafanagithub

安裝prometheus + grafana + pushgateway

能夠使用docker一鍵啓動,參考:github.com/evnsio/prom…docker

啓動過程以下:shell

git clone https://github.com/evnsio/prom-stack.git
cd prom-stack
docker-compose pull && docker-compose up -d
複製代碼

能夠看到docker-compose已經成功啓動了瀏覽器

能夠使用docker-compose ps命令查看各個服務使用的端口 服務器

grafana能夠使用默認用戶名密碼 admin password 登錄運維

使用curl生成測試數據

能夠使用$RANDOM來生成隨機數curl

while true; do
    echo "mymetric $RANDOM" | curl --data-binary @- http://localhost:9091/metrics/job/my-push-job
    sleep 1
done
複製代碼

"mymetric"就是這個被監控的指標,這個監控指標推送到pushgateway比較簡潔直觀的測試

操做效果以下 url

在瀏覽器裏打開pushgateway: "http://127.0.0.1:9091/"

能夠看到測試的數據已經進入pushgateway了

在grafana配置可視化界面

配置從prometheus裏獲取監控數據

在瀏覽器裏打開這個grafana地址:http://127.0.0.1:3000/datasources/new 配置好prometheus監控數據服務器的地址

查看操做結果

建立監控數據展現頁面

選擇graph類型的展現效果

點擊"Panel Title"選擇Edit

在查詢參數處使用這個條件

mymetric{exported_job="my-push-job",instance="pushgateway:9091",job="prom-stack"}
複製代碼

查詢出這個第一步生成的用來測試的監控數據

而後點擊保存按鈕就能夠生成圖表了

一些注意的點

能夠在New Dashboard頁面的General處設置圖表的標題

參考資料

  1. github.com/evnsio/prom…
相關文章
相關標籤/搜索