天天看點

Prometheus 內建 Node Exporter

文章首發于公衆号《程式員果果》

位址:

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 等等。

參考

https://github.com/prometheus/mysqld_exporter

往期内容

繼續閱讀