linux視覺化監控:Grafana+Prometheus+node_exporter

拾句發表於2024-06-20

原理

linux視覺化監控:Grafana+Prometheus+node_exporter

linux視覺化監控:Grafana+Prometheus+node_exporter

node_exporter:它的作用主要是收集效能測試的資料,如cpu、記憶體磁碟網路等資訊,然後將資料儲存到prometheus,相當於將資料存入到資料庫中;想要監控不同的內容,就使用不同的exporter,比如mysqld_exporter

Prometheus:雖然說是監控平臺,但是實際上是一套資料庫,用於做資料儲存,不能做展示,因此我們需要用到Grafana元件

Grafana:主要用於資料展示,並且可以做到定時讀取資料

總結:

  • node_exporter是採集器,負責將採集的資料儲存到prometheus資料庫,然後grafana取promethues資料庫的資料進行展示,放被測伺服器,預設埠9100
  • Grafana + Prometheus:為避免影響效能儘量方非被測伺服器上,Grafana 預設埠3000,Prometheus預設埠9090

搭建

部署前的準備:

關閉linux機器的防火牆:systemctl stop firewalld

保證所有linux機器時間是準確的,執行date命令檢查;如果不準,可以使用ntp命令同步網路時間

1、node_exporter:

node_exporter包上傳到被測伺服器上,進入解壓後的資料夾,進入安裝目錄下啟動命令:./node_exporter

啟動效果如下:

IMG_256

http://YouExporter_IP:9100/metrics這個能訪問,說明node_exporter是正常的,網路也是可以被訪問的:

IMG_256

2、Prometheus:

2.1 把prometheus的包,放到非被測伺服器上,解壓後,進入解壓後的資料夾,執行prometheus:./prometheus

透過日誌,我們發現 prometheus.yml 是它的配置檔案:

IMG_256

2.2 exporter與 prometheus進行關聯(資料聯通)

開啟Prometheus.yaml配置檔案,在檔案的末尾增加監測的ip和埠,需要監測多個伺服器時使用逗號隔開,這裡追加node_exporter的ip埠,如下圖

修改prometheus.yml:vi prometheus.yml

yml檔案的兩個特別重要的語法: 縮排(對齊)、 key的冒號後面,有一個空格;

在prometheus.yml檔案後面加入以下內容:

  • # job_name 可以自定義
  • job_name: ‘node_exporter’
  • static_configs:
  • targets: [‘192.168.2.131:9100’,‘nodeexporter_IP:9100’]

然後,儲存,退出;【注意換成自己的IP】

殺掉啟動的程序,重新啟動命令生效:./prometheus

linux視覺化監控:Grafana+Prometheus+node_exporter

啟動應用檢視是否監控成功:透過瀏覽器訪問http://prometheus_IP:9090

IMG_256

3、Grafana:

展示收集的資料,官網下載

啟動命令:systemctl start grafana-server.service

接下來Grafana新增Prometheus資料

瀏覽器訪問 http://your ip:3000/graph 進入grafana介面,預設登入使用者名稱密碼都為admin,登入後介面如下:

IMG_256

配置Grafana從Prometheus拉取監控資料

配置prometheus資料來源,點選 DATA SOURCES 去配置資料來源,如下

IMG_256

新增資料來源的頁面有很多可選資料來源,我們選擇prometheus

IMG_256

IMG_256

配置prometheus的url測試儲存

IMG_256

新增一個監控模板,步驟如下:

進入grafana官網 https://grafana.com/

從選單欄Grafana中選擇Dashboards,進入dashboards模板頁面,複製ID,這裡用的是8919,在grafana上import 監聽模組,如圖所示:

IMG_256

IMG_256

匯入後即可看到當前伺服器監控皮膚資訊

IMG_256

相關文章