Prometheus 整合 Node Exporter

程式設計師果果發表於2019-10-22

文章首發於公眾號《程式設計師果果》
地址:https://mp.weixin.qq.com/s/40ULB9UWbXVA21MxqnjBxw

簡介

Prometheus 官方和一些第三方,已經把一些常用資料庫、系統、中介軟體等的指標資料的採集做成了一個個 exporter,在生產環境中,直接匯入使用就可以。 這一節,我們就用 Prometheus 官方提供的 Node Exporter 來完成對Linux系統執行資料的採集 。

實驗

Node Exporter 安裝及執行

在一臺 Linux 機器上安裝並執行 Node Exporter,我使用的是一臺 ip 為 172.16.2.101 的Linux 虛擬機器。

下載地址:https://github.com/prometheus/node_exporter/releases

下載並解壓:

wget https://github.com/prometheus/node_exporter/releases/download/v0.18.1/node_exporter-0.18.1.linux-amd64.tar.gz

tar zxvf node_exporter-0.18.1.linux-amd64.tar.gz

進入 node_exporter-0.18.1.linux-amd64 資料夾 啟動node_exporter:

./node_exporter

Prometheus 配置

在 prometheus.yml 中配置 node_exporter 的metrics 端點,內容如下:

global:
  scrape_interval: 5s
  evaluation_interval: 5s
  scrape_timeout: 5s

scrape_configs:
  - job_name: 'prometheus'
    static_configs:
    - targets: ['localhost:9090']
  - job_name: 'linux-exporter'
    metrics_path: /metrics
    static_configs:
    - targets: ['172.16.2.101:9100']

啟動 prometheus:

docker run --name prometheus -d -p 9090:9090 -v /root/prometheus-data:/prometheus-data \
       prom/prometheus --web.enable-lifecycle --config.file=/prometheus-data/prometheus.yml

訪問 http://172.16.2.101:9090/targets 發現已經出現了 target “node_exporter” ,並且為UP狀態。

Prometheus 整合 Node Exporter

Grafana 匯入 DashBoard

Grafana 官方和社群對已經做好了常用的 DashBoard,可以訪問 https://grafana.com/grafana/dashboards 進行查詢:

Prometheus 整合 Node Exporter

選擇下載最多的,點選進去:

Prometheus 整合 Node Exporter

DashBoard 的 id 為 8919,後面要用到。

啟動 Grafana

docker start grafana

通過Grafana的 + 圖示匯入(Import) Node Exporter dashboard:

  • grafana id = 8919
  • 注意選中prometheus資料來源

Prometheus 整合 Node Exporter

Prometheus 整合 Node Exporter

點選 "Import" 會跳轉到 監控介面:

Prometheus 整合 Node Exporter

通過介面可以直觀的看到 主機cpu佔用率 、負載、磁碟空間、記憶體等資訊。

總結

這一節 ,通過整合 Node Exporter 來演示了 exporter 的使用。之後你可以利用Prometheus 官方提供的其他 exporter 應用到你的學習或工作中,例如 MySQL Server Exporter 、Redis exporter 等等。

往期內容




歡迎掃碼或微信搜尋公眾號《程式設計師果果》關注我,關注有驚喜~
Prometheus 整合 Node Exporter

相關文章