引言
在現代運維中,監控服務器的運行狀態是保證服務穩定性的關鍵。本文將介紹如何使用 Docker 來部署 Prometheus 和 Grafana,並結合 node_exporter 進行服務器狀態監控。通過簡單的配置和部署,我們可以實時掌握服務器的運行狀況,提前發現並處理潛在問題。
一、准備工作
首先確保你的服務器已經安裝了 Docker 和 Docker Compose。如果沒有安裝,可以通過以下命令安裝:
# 安裝 Dockercurl -fsSL https://get.docker.com -o get-docker.shsh get-docker.sh# 安裝 Docker Composesudo curl -L "https://github.com/docker/compose/releases/download/1.29.2/docker-compose-$(uname -s)-$(uname -m)" -o /usr/local/bin/docker-composesudo chmod +x /usr/local/bin/docker-compose二、編寫 Docker Compose 文件
我們將使用 Docker Compose 來編排 Prometheus、Grafana 和 node_exporter 的容器。新建一個目錄並在其中創建 docker-compose.yml 文件:
version: '3.7'services: prometheus: image: prom/prometheus:latest container_name: prometheus volumes: - ./prometheus.yml:/etc/prometheus/prometheus.yml ports: - "9090:9090" grafana: image: grafana/grafana:latest container_name: grafana ports: - "3000:3000" environment: - GF_SECURITY_ADMIN_PASSWORD=admin node-exporter: image: prom/node-exporter:latest container_name: node-exporter ports: - "9100:9100"三、配置 Prometheus
在同一目錄下創建 prometheus.yml 配置文件:
global: scrape_interval: 15sscrape_configs: - job_name: 'node_exporter' static_configs: - targets: ['node-exporter:9100']四、啓動服務
在 docker-compose.yml 文件所在的目錄下運行以下命令啓動所有服務:
docker-compose up -d五、訪問 Grafana
服務啓動後,可以通過浏覽器訪問 http://localhost:3000 打開 Grafana。默認的用戶名和密碼均爲 admin。
六、配置 Grafana 來顯示 Prometheus 數據
添加數據源:進入 Grafana 儀表盤。點擊左側的 “齒輪” 圖標(Configuration)並選擇 “Data Sources”。點擊 “Add data source”,選擇 “Prometheus”,然後設置 URL 爲 http://prometheus:9090。點擊 “Save & Test” 以確認連接成功。創建儀表盤:點擊左側的 “加號” 圖標(Create)並選擇 “Dashboard”。點擊 “Add new panel”。在查詢部分,選擇 Prometheus 作爲數據源,並輸入適當的 Prometheus 查詢語句,例如 node_cpu_seconds_total。配置完畢後,點擊 “Save” 保存儀表盤。![](http://image.uc.cn/s/wemedia/s/upload/2024/b737ea776436393b1fda6d366d4ad2fa.jpg)
granafa 提供很多可視化模版可供參考,地址:https://grafana.com/grafana/dashboards/
![](http://image.uc.cn/s/wemedia/s/upload/2024/32221e0979730d9dab97e5522478bba2.jpg)
結語
通過本文的指導,您可以輕松部署並配置 Prometheus 和 Grafana 進行服務器監控。使用 Docker 進行編排不僅簡化了部署過程,還使得服務的管理和擴展變得更加方便。