prometheus+grafana手動部署節點監控

1 prometheus監控部署圖

通常情況下一個完整的服務器監控系統,由三部分組成,分別爲:

  1. 儀表盤服務:通常是grafna或者kibana這類專用開源儀表盤系統完成;
  2. 主監控服務:代表是prometheus,通過yaml進行採集節點配置之後,可以採集各種類型的數據,包括虛擬機狀態、jvm狀態、數據庫狀態等等,同時prometheus通過時間序列數據庫存儲,可以保存很長一段時間的監控數據。
  3. 採集服務:prometheus系列的監控系統,通常自帶了較多的exporter,例如服務服務器基本信息採集的node_eporter、負責數據庫狀態採集mysqld_exporter,當然也可以通過prometheus提供的官方接口的案例,完成不同語言的採集模塊設計,包括java、python、go等的各種直方圖、計數器等類型的設計。

如下圖所示是一個服務器節點監控系統的常用架構:

image-20200517121929174

根據上圖分析,本文提供了三個服務下載的常用鏈接:

image-20200514112246224

01-grafana下載鏈接

02-下載prometheus以及node_exporter鏈接

2 prometheus啓動及設置

prometheus的tar包,解壓後會生成一個prometheus.yml的配置文件,這裏通過編輯yml文件,可以將待監控節點信息填入其中:

如下圖所示是修改監控中的採樣週期,默認是15s一次,這裏將間隔時間改爲了5s觸發一次查詢;

image-20200514115739272

如下圖所示,是配置一個監控節點的基本配置,每新增一個節點,只需要監控服務中加入簡單的job即可,設置jobname以及目標採樣node程序對外暴露的地址及端口。

image-20200514111650302

正常啓動一個prometheus的程序,非常簡單只需要./prometheus即可,但是爲了方便起見,這裏使用了nohup進行啓動,並將運行日誌重定向到了文件:

#!/usr/bin/env bash
dir_path=/root/01-tools/prometheus-2.17.1.linux-amd64
set -x
cd $dir_path
nohup ./prometheus 1>ding.log 2>&1 &
set +x
echo "start prometheus ok!"

啓動prometheus後,可以簡單查看並檢查進程信息:

image-20200514111908511

3 採樣節點node啓動

負責服務器基本情況採集的服務運行同樣較爲簡單,打開解壓後的node_exporter,使用./node_exporter啓動即可,或者如下圖所示使用nohup啓動,默認情況下采樣服務的對外提供端口(也就是對prometheus提供的服務端口)是9000;

具體演示如下所示:

image-20200514112552122

image-20200514112638114

當然使用容器poll拉取鏡像的方式也非常方便,這裏可以根據用戶的需求靈活選擇;

4 grafana基本使用

grafana是一個開源儀表盤項目,可以靈活添加各種儀表盤web ui,這裏並沒有使用自行開發的,而是藉助grafana生態成熟的儀表盤配置,具體下載位置如下鏈接所示:

01-grafana開源儀表盤下載鏈接

02-節點監控配置文件鏈接-8919

image-20200517123711284

使用yum或者rpm安裝grafana後,直接按照導航需求,添加數據源以及儀表盤,數據源直接選擇prometheus,如果grafana與protheus安裝在一個宿主機,直接使用127.0.0.1:9090即可。

至於添加儀表盤,則可以根據上述網絡連接,謝謝指定id導入模板,或者使用直接json導入的方式,具體操作過程可以自行熟悉。

image-20200514112939462

導入儀表盤:

image-20200514115012855

導入指定的儀表盤json配置文件:

image-20200514115130510

如下圖所示是一個導入的儀表盤顯示:

image-20200514115211021

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章