要在多台服务器上部署 Grafana、Prometheus 和 Node-Exporter,并且其中一台服务器专门用于 Grafana 和 Prometheus 的部署
1. 准备工作
-
服务器信息:
-
Server 1:用于部署 Grafana 和 Prometheus。
-
Server 2-n:用于部署 Node-Exporter。
-
-
Docker:确保所有服务器上已安装 Docker 和 Docker Compose。
https://getdocker.quickso.cn/
2. 在 Server 1 上部署 Grafana 和 Prometheus
2.1 创建 Docker Compose 文件
在 Server 1 上创建一个 docker-compose.yml
文件,内容如下:
version: '3'services:prometheus:image: prom/prometheuscontainer_name: prometheusports:- "9090:9090"volumes:- ./prometheus.yml:/etc/prometheus/prometheus.ymlcommand:- '--config.file=/etc/prometheus/prometheus.yml'restart: alwaysgrafana:image: grafana/grafanacontainer_name: grafanaports:- "3000:3000"volumes:- grafana-storage:/var/lib/grafanaenvironment:- GF_SECURITY_ADMIN_PASSWORD=adminrestart: alwaysnode-exporter:image: prom/node-exportercontainer_name: node-exporterports:- "9100:9100"restart: alwaysvolumes:grafana-storage:
2.2 创建 Prometheus 配置文件
在 Server 1 上创建一个 prometheus.yml
文件,内容如下:
global:scrape_interval: 15sscrape_configs:- job_name: 'node-exporter'static_configs:- targets: ['server2:9100', 'server3:9100', 'server4:9100', 'server5:9100', 'server6:9100']
2.3 启动服务
在 Server 1 上运行以下命令启动:
docker-compose up -d
3.在 Server 2-n 上部署 Node-Exporter,并开放端口
docker run -d \--name node-exporter \-p 9100:9100 \--restart always \prom/node-exporter
4. 配置 Grafana
4.1 访问 Grafana
在浏览器中访问 http://<Server1-IP>:3000
,使用默认用户名 admin
和密码 admin
登录。
4.2 添加 Prometheus 数据源
-
在 Grafana 中,点击左侧菜单的 Configuration -> Data Sources。
-
点击 Add data source,选择 Prometheus。
-
在 URL 字段中输入
http://localhost:9090
,然后点击 Save & Test。
4.3 导入 Node-Exporter 仪表盘
-
在 Grafana 中,点击左侧菜单的 + -> Import。
-
在 Grafana.com Dashboard 字段中输入
1860
,然后点击 Load。 -
选择 Prometheus 数据源,然后点击 Import。
4. 验证部署
-
Prometheus:访问
http://<Server1-IP>:9090/targets
,确保所有Node-Exporter
目标(包括Server 1
)的状态为 UP。 -
Grafana:访问
http://<Server1-IP>:3000
,查看仪表盘是否显示所有服务器的监控数据。