当前位置:首页 > Ubuntu > 正文

Ubuntu容器监控实战指南(手把手教你用Prometheus监控Docker环境)

在现代云原生开发中,Ubuntu容器监控已成为运维和开发人员必须掌握的核心技能。无论是运行在本地还是云服务器上的Docker容器,都需要实时了解其资源使用情况、健康状态及性能瓶颈。本文将从零开始,教小白用户如何在Ubuntu系统上搭建一套完整的Docker监控工具体系,使用业界主流的Prometheus监控方案,轻松实现对Linux容器性能的全面掌控。

Ubuntu容器监控实战指南(手把手教你用Prometheus监控Docker环境) Ubuntu容器监控 Docker监控工具 Prometheus监控 Linux容器性能 第1张

一、准备工作:安装Docker与必要组件

首先,确保你的Ubuntu系统已安装Docker。如果没有,请执行以下命令:

sudo apt updatesudo apt install -y docker.iodocker --version  # 验证安装

接着,启动并设置Docker开机自启:

sudo systemctl start dockersudo systemctl enable docker

二、部署cAdvisor:采集容器指标

cAdvisor(Container Advisor)是Google开源的容器监控工具,能自动发现所有容器并收集CPU、内存、网络、文件系统等使用数据。

运行以下命令启动cAdvisor容器:

docker run -d \  --name=cadvisor \  --privileged \  --device=/dev/kmsg \  -p 8080:8080 \  -v /:/rootfs:ro \  -v /var/run:/var/run:rw \  -v /sys:/sys:ro \  -v /var/lib/docker/:/var/lib/docker:ro \  gcr.io/cadvisor/cadvisor:v0.47.0

> 💡 注意:如果你在国内无法拉取gcr.io镜像,可改用国内镜像源,例如 registry.cn-hangzhou.aliyuncs.com/google_containers/cadvisor:v0.47.0

访问 http://你的服务器IP:8080 即可看到cAdvisor的Web界面,实时查看容器性能数据。

三、部署Prometheus:时序数据库与告警引擎

Prometheus 是一个强大的开源监控系统,支持多维数据模型和灵活的查询语言(PromQL)。

1. 创建Prometheus配置文件 prometheus.yml

global:  scrape_interval: 15sscrape_configs:  - job_name: 'cadvisor'    static_configs:      - targets: ['localhost:8080']

2. 启动Prometheus容器:

docker run -d \  --name=prometheus \  -p 9090:9090 \  -v $(pwd)/prometheus.yml:/etc/prometheus/prometheus.yml \  prom/prometheus

现在访问 http://你的服务器IP:9090,进入Prometheus Web界面。在“Graph”标签页中输入 container_cpu_usage_seconds_total 并点击“Execute”,即可查询容器CPU使用情况。

四、可视化神器:Grafana仪表盘

虽然Prometheus提供基础查询功能,但Grafana能让你的数据“活”起来!

启动Grafana容器:

docker run -d \  --name=grafana \  -p 3000:3000 \  grafana/grafana

访问 http://你的服务器IP:3000,默认账号密码均为 admin

添加数据源步骤:

  1. 登录后点击“Configuration” > “Data Sources”
  2. 选择“Add data source”
  3. 类型选择“Prometheus”
  4. URL填写 http://宿主机IP:9090(若在同一台机器,可用 host.docker.internal:9090 或直接填IP)
  5. 点击“Save & Test”

然后导入官方Docker监控模板(ID: 193),即可获得专业级仪表盘,实时展示CPU、内存、网络、磁盘IO等关键指标。

五、总结

通过本教程,你已经成功搭建了一套完整的Ubuntu容器监控系统,涵盖了数据采集(cAdvisor)、存储与查询(Prometheus)以及可视化(Grafana)。这套方案不仅适用于个人开发环境,也广泛应用于企业生产场景,是掌握Linux容器性能分析的黄金组合。

记住,良好的监控是保障服务稳定性的第一道防线。建议定期查看仪表盘,设置关键指标告警,让问题在用户发现前就被你捕获!

关键词回顾:Ubuntu容器监控Docker监控工具Prometheus监控Linux容器性能