Prometheus: 在 Linux 伺服器上安裝 Prometheus Node Exporter

本文件是從 Linux 獲取指標指南的一部分。請在此處查看完整指南:如何使用 Node Exporter 在 Prometheus 中獲取 Linux 伺服器指標

👋 歡迎來到 Stackhero 文件!

Stackhero 提供一個即用型的 Prometheus cloud 解決方案,帶來多項好處,包括:

  • 包含 Alert Manager,可發送警報至 SlackMattermostPagerDuty 等。
  • 專用電郵伺服器發送無限電郵警報
  • Blackbox 用於探測 HTTPICMPTCP 等。
  • 使用線上配置文件編輯器進行簡單配置
  • 只需點擊即可輕鬆更新
  • 專用私有 VM提供的最佳性能和強大安全性

節省時間簡化您的生活:只需5 分鐘即可嘗試 Stackhero 的 Prometheus cloud hosting 解決方案!

您可以從其 GitHub 發佈頁面 下載 Node Exporter。它以二進制形式分發,直接在您的系統上運行。由於它設計為持續運行,建議您配置它在伺服器啟動時自動啟動。

默認情況下,Node Exporter 在沒有身份驗證或加密的情況下向世界開放端口 9100。強烈建議您添加身份驗證和 TLS 加密(見下文),並設置防火牆以限制對端口 9100 的訪問,以便只有您的 Prometheus 伺服器或其他授權的 IP 地址可以連接。

您可以在 Ubuntu 上按照以下步驟進行:

# 前往 https://github.com/prometheus/node_exporter/releases 獲取最新版本號。
node_exporter_version="1.2.0"
node_exporter_release="linux-amd64"

# 下載並安裝 node_exporter
cd /tmp
wget https://github.com/prometheus/node_exporter/releases/download/v${node_exporter_version}/node_exporter-${node_exporter_version}.${node_exporter_release}.tar.gz
tar xvfa node_exporter-${node_exporter_version}.${node_exporter_release}.tar.gz
sudo mv node_exporter-${node_exporter_version}.${node_exporter_release}/node_exporter /usr/local/bin/
rm -rf node_exporter-${node_exporter_version}.${node_exporter_release} node_exporter-${node_exporter_version}.${node_exporter_release}.tar.gz

# 創建用戶 "node_exporter"
sudo useradd -rs /bin/false node_exporter

# 創建 systemd 服務以在啟動時自動啟動 node_exporter
sudo bash -c 'cat << EOF > /etc/systemd/system/node_exporter.service
[Unit]
Description=Node Exporter
After=network.target

[Service]
User=node_exporter
Group=node_exporter
Type=simple
ExecStart=/usr/local/bin/node_exporter --web.config=/etc/prometheus_node_exporter/configuration.yml

[Install]
WantedBy=multi-user.target
EOF'

# 創建配置目錄和文件
sudo mkdir -p /etc/prometheus_node_exporter/
sudo touch /etc/prometheus_node_exporter/configuration.yml
sudo chmod 700 /etc/prometheus_node_exporter
sudo chmod 600 /etc/prometheus_node_exporter/*
sudo chown -R node_exporter:node_exporter /etc/prometheus_node_exporter

sudo systemctl daemon-reload
sudo systemctl enable node_exporter

# 啟動 node_exporter 守護進程並檢查其狀態
sudo systemctl start node_exporter
sudo systemctl status node_exporter

此時,node_exporter 二進制文件應該在您的伺服器上運行。要確認它是否正常工作,您可以連接到它並檢查它是否返回指標:

curl http://localhost:9100/metrics

Node Exporter 向公共網絡開放端口 9100。這意味著任何人都可以連接並獲取您的伺服器指標! 至少,您應該添加身份驗證和 TLS 加密(見下文),並強烈建議設置防火牆以阻止來自非 Prometheus 伺服器的 IP 的端口 9100 請求。

在 Debian 上安裝 Node Exporter 的過程與上述的 Ubuntu 方法相同。只需按照相同的說明進行操作。

Node Exporter 的安裝步驟取決於您使用的系統。雖然未提供每個平台的詳細文檔,但基本過程涉及下載與您的系統匹配的二進制文件並配置它在啟動時啟動。