← 返回文章
2 分钟阅读

Grafana & Prometheus

Prometheus 单独安装 创建 prometheus yml 配置文件 在服务器上创建一个 prometheus yml 文件 用于定义 Prometheus 的数据采集配置 prometheus yml 示例配置 确保在 targe

Prometheus 单独安装

创建 prometheus.yml 配置文件

在服务器上创建一个 prometheus.yml 文件,用于定义 Prometheus 的数据采集配置。 prometheus.yml 示例配置:

global:
  scrape_interval: 15s  # 数据采集间隔

scrape_configs:
  - job_name: 'node_exporter'
    static_configs:
      - targets: ['server1_ip:9100', 'server2_ip:9100']  # Node Exporter 实例

  - job_name: 'mysqld_exporter'
    static_configs:
      - targets: ['server1_ip:9104', 'server2_ip:9104']  # MySQL Exporter 实例

确保在 targets 列表中替换为您需要监控的实际服务器 IP 地址和端口。

创建 Prometheus 的 docker-compose.yml

在一个单独的目录(例如 prometheus/)中创建 docker-compose.yml,用于定义 Prometheus 服务。 Prometheus 的 docker-compose.yml 示例:

services:
  prometheus:
    image: prom/prometheus:latest
    container_name: prometheus
    ports:
      - "9090:9090"  # 将 Prometheus 的端口映射到主机
    volumes:
      - ./prometheus.yml:/etc/prometheus/prometheus.yml  # 挂载配置文件
      - ./prometheus_data:/prometheus  # 持久化数据存储
    command:
      - '--config.file=/etc/prometheus/prometheus.yml'
  • -p 9090:9090:将 Prometheus 默认端口 9090 映射到主机。
  • -v ./prometheus.yml:/etc/prometheus/prometheus.yml:挂载配置文件。
  • -v ./prometheus_data:/prometheus:持久化数据存储。

启动 Prometheus 容器

在 prometheus/ 目录下执行以下命令:

docker-compose up -d

Prometheus 将启动并监听 9090 端口,可通过 http://your\_server\_ip:9090 访问 Prometheus Web 界面。

Grafana 单独安装

创建 Grafana 的 docker-compose.yml

在一个单独的目录(例如 grafana/)中创建 docker-compose.yml,用于定义 Grafana 服务。 Grafana 的 docker-compose.yml 示例:

services:
  grafana:
    image: grafana/grafana:latest
    container_name: grafana
    ports:
      - "3000:3000"  # 将 Grafana 的端口映射到主机
    volumes:
      - ./grafana_data:/var/lib/grafana  # 持久化数据存储
  • -p 3000:3000:将 Grafana 默认端口 3000 映射到主机。
  • -v ./grafana_data:/var/lib/grafana:持久化数据存储,以便 Grafana 配置和数据在容器重启后保留。

启动 Grafana 容器

在 grafana/ 目录下执行以下命令:

docker-compose up -d

Grafana 将启动并监听 3000 端口,可通过 http://your\_server\_ip:3000 访问 Grafana Web 界面。

3. 配置 Grafana 数据源

  1. 问 Grafana:在浏览器中打开 http://your\_server\_ip:3000,使用默认用户名和密码(admin / admin)登录。
  2. 添加 Prometheus 数据源:
  • 在 Grafana 主页面,点击 Configuration > Data Sources。
  • 点击 Add data source,选择 Prometheus。
  • 在 URL 字段中输入 Prometheus 的地址(如 http://prometheus\_server\_ip:9090)。
  • 点击 Save & Test,确认数据源配置成功。

4. 导入仪表板

  1. 在 Grafana 左侧菜单中点击 + > Import。
  2. 输入仪表板的 ID,例如:
    • Node Exporter 仪表板:ID 为 1860, 12633, 16098。
    • MySQL Exporter 仪表板:在 Grafana Labs 上选择合适的模板。
  3. 点击 Load,选择 Prometheus 数据源,点击 Import。

总结

  • Prometheus 单独部署:在 prometheus/ 目录下创建 prometheus.yml 和 docker-compose.yml,启动 Prometheus 容器。
  • Grafana 单独部署:在 grafana/ 目录下创建 docker-compose.yml,启动 Grafana 容器。
  • 配置 Grafana 数据源和仪表板:将 Prometheus 添加为数据源,并导入仪表板模板。

PUBLISHED BY

Leon Zhang

记录技术实践与日常思考。写得慢一点,但尽量让内容留得久一点。

About
me