在Linux中使用docker-compose快速搭建Prometheus监控系统

写在前面

Prometheus是一款开源的系统监控和警报工具包,特别适合容器化环境。本文将详细介绍如何使用docker-compose在Linux系统中快速部署完整的Prometheus监控系统,包含核心监控组件、可视化界面和服务器指标采集等功能。

环境准备

确保系统已安装Docker和docker-compose工具。建议使用Linux服务器(如Ubuntu/CentOS)进行操作。

步骤

  1. 创建监控目录结构
    首先创建专用目录存放配置文件:
mkdir -p /usr/local/bin/monitor
cd /usr/local/bin/monitor
touch docker-compose.yml prometheus.yml

2.配置docker-compose.yml
以下是完整的docker-compose配置,包含5个核心服务:

version: '3'

networks:
    monitor:
        driver: bridge

services:
    prometheus:
        image: prom/prometheus
        container_name: prometheus
        hostname: prometheus
        restart: always
        volumes:
            - ./prometheus.yml:/etc/prometheus/prometheus.yml
        ports:
            - "9090:9090"
        networks:
            - monitor

    alertmanager:
        image: prom/alertmanager
        container_name: alertmanager
        hostname: alertmanager
        restart: always
        ports:
            - "9093:9093"
        networks:
            - monitor

    grafana:
        image: grafana/grafana
        container_name: grafana
        hostname: grafana
        restart: always
        ports:
            - "3000:3000"
        networks:
            - monitor

    node-exporter:
        image: quay.io/prometheus/node-exporter
        container_name: node-exporter
        hostname: node-exporter
        restart: always
        ports:
            - "9100:9100"
        networks:
            - monitor

    cadvisor:
        image: google/cadvisor:latest
        container_name: cadvisor
        hostname: cadvisor
        restart: always
        volumes:
            - /:/rootfs:ro
            - /var/run:/var/run:rw
            - /sys:/sys:ro
            - /var/lib/docker/:/var/lib/docker:ro
        ports:
            - "8899:8080"
        networks:
            - monitor

  1. 配置prometheus.yml
    配置Prometheus抓取指标的目标:
global:
  scrape_interval: 15s
  evaluation_interval: 15s

scrape_configs:
  - job_name: 'prometheus'
    static_configs:
    - targets: ['localhost:9090']
  - job_name: 'cadvisor'
    static_configs:
    - targets: ['localhost:8899']
  - job_name: 'node'
    static_configs:
    - targets: ['localhost:9100']
  1. 启动服务
    在配置文件所在目录执行:
# 首次启动建议前台运行以便查看日志
docker-compose --compatibility up

# 确认无误后可使用后台模式
docker-compose --compatibility up -d
  1. 访问服务
    启动成功后,可通过以下地址访问各组件:
  • Prometheus UI: http://<服务器IP>:9090
  • Grafana: http://<服务器IP>:3000 (默认账号/密码: admin/admin)
  • Node Exporter指标: http://<服务器IP>:9100/metrics
  • cAdvisor指标: http://<服务器IP>:8899/metrics

组件说明

  • Prometheus‌: 核心监控组件,负责指标采集、存储和查询
  • ‌Grafana‌: 数据可视化平台,提供丰富的监控仪表盘
  • ‌Node Exporter‌: 采集主机硬件和操作系统指标
  • cAdvisor‌: 采集Docker容器资源使用情况
  • Alertmanager‌: 告警管理组件(本文暂未配置)

Tips:确保9090、3000、9100等端口未被占用!!!


The end.

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

伊成

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值