Prometheus: node-exporter

person using MacBook Pro

node_exporter 是 Prometheus 用于监控服务器操作系统指标的工具,它可以通过 Docker 容器进行快速安装和配置。以下是使用 Docker Compose 部署 node_exporter 的详细步骤。

1. 创建 Docker Compose 文件

在服务器上创建一个 Docker Compose 文件(如 docker-compose.yml),用于管理 node_exporter 容器。

Docker Compose 配置示例:

services:
  node-exporter:
    image: prom/node-exporter:latest
    container_name: node_exporter
    restart: always
    ports:
      - "9100:9100"  # 将 node_exporter 容器的端口映射到主机端口
    volumes:
      - /proc:/host/proc:ro
      - /sys:/host/sys:ro
      - /:/rootfs:ro
    command:
      - '--path.procfs=/host/proc'
      - '--path.sysfs=/host/sys'
      - '--path.rootfs=/rootfs'

说明

  • image:使用 prom/node-exporter 官方镜像。
  • container_name:容器名称为 node_exporter,可根据需要更改。
  • restart: always:设置自动重启策略,以确保容器在崩溃或重启时自动启动。
  • ports:将 node_exporter 默认的端口 9100 映射到主机,Prometheus 将通过该端口收集数据。
  • volumes:挂载系统目录,以便 node_exporter 访问系统的 /proc、/sys 和根文件系统目录:
  • /proc:/host/proc:ro:将主机的 /proc 挂载到容器的 /host/proc,只读。
  • /sys:/host/sys:ro:将主机的 /sys 挂载到容器的 /host/sys,只读。
  • /:/rootfs:ro:将主机的根文件系统挂载到容器的 /rootfs,只读。
  • command:指定 node_exporter 的配置路径,以确保在容器中使用主机的文件系统路径。

2. 启动 node_exporter 容器

在包含 docker-compose.yml 文件的目录中,运行以下命令启动 node_exporter:

docker-compose up -d

这将以后台模式启动 node_exporter,并监听主机的 9100 端口。

3. 配置 Prometheus 监控多个 node_exporter 实例

在 Prometheus 的配置文件 prometheus.yml 中,添加 node_exporter 的 scrape_configs。如果有多个服务器,需要为每台服务器添加 node_exporter 地址。

scrape_configs:
  - job_name: 'node'
    static_configs:
      - targets:
          - 'server1_ip:9100'  # 第一个服务器的node_exporter地址
          - 'server2_ip:9100'  # 第二个服务器的node_exporter地址
          # 可以继续添加其他服务器

4. 在 Grafana 中设置监控面板

  1. 添加 Prometheus 数据源: 在 Grafana 中,将 Prometheus 配置为数据源。
  2. 导入 Node Exporter 仪表板: 在 Grafana 中,可以从 Grafana Labs 仪表板库导入已有的 Node Exporter 仪表板模板。一个常用的模板 ID 是 1860,它可以显示 CPU、内存、磁盘、网络等系统指标。

总结

  • 使用 Docker Compose 部署 node_exporter 容器,监控操作系统指标。
  • 配置 Prometheus 采集多个 node_exporter 实例的数据。
  • 在 Grafana 中设置 Node Exporter 仪表板,以可视化监控数据。

通过这种方法,您可以轻松地将多个服务器的系统性能数据集中到一个 Prometheus 和 Grafana 实例中,实现集中监控。

上一篇 2024年11月6日 下午11:32
下一篇 2024年11月17日 下午5:53

相关推荐

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注