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

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

在现代云原生架构中,容器化部署已成为主流。作为RHEL的社区替代品,RockyLinux 因其稳定性和兼容性被广泛用于生产环境。然而,如何有效监控容器环境成为运维人员必须掌握的技能。本文将手把手教你如何在RockyLinux系统上搭建一套轻量、高效的容器监控体系,即使你是Linux新手也能轻松上手!

RockyLinux容器环境监控实战指南(手把手教你用Prometheus + cAdvisor监控Docker容器) RockyLinux容器监控  Docker监控工具 Prometheus监控 cAdvisor容器指标 第1张

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

首先,确保你的RockyLinux系统已安装Docker。若未安装,请按以下步骤操作:

# 更新系统sudo dnf update -y# 安装Docker依赖sudo dnf install -y yum-utils device-mapper-persistent-data lvm2# 添加Docker官方仓库sudo dnf config-manager --add-repo https://download.docker.com/linux/centos/docker-ce.repo# 安装Docker Enginesudo dnf install -y docker-ce docker-ce-cli containerd.io# 启动并设置开机自启sudo systemctl start dockersudo systemctl enable docker# 验证安装docker --version

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

cAdvisor(Container Advisor)是Google开源的容器资源使用和性能分析工具,能自动发现所有容器并收集CPU、内存、网络、磁盘等指标。我们通过Docker运行它:

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

⚠️ 注意:由于网络原因,国内用户可能无法拉取gcr.io镜像。可改用阿里云镜像:

sudo docker run -d \  --name=cadvisor \  --privileged \  --device=/dev/kmsg \  -p 8080:8080 \  -v /:/rootfs:ro \  -v /var/run:/var/run:ro \  -v /sys:/sys:ro \  -v /var/lib/docker/:/var/lib/docker:ro \  -v /dev/disk/:/dev/disk:ro \  registry.cn-hangzhou.aliyuncs.com/google_containers/cadvisor:v0.47.0

访问 http://你的服务器IP:8080 即可看到cAdvisor的Web界面,实时查看容器资源使用情况。

三、部署Prometheus:存储与查询指标

Prometheus 是一个开源的监控与告警系统,支持多维数据模型和强大的查询语言(PromQL)。我们将配置它从cAdvisor拉取数据。

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

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

2. 使用Docker运行Prometheus:

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

现在访问 http://你的服务器IP:9090,在“Graph”标签页中输入 container_cpu_usage_seconds_total 即可查询CPU使用情况。

四、可视化:Grafana(可选但推荐)

虽然Prometheus自带查询界面,但Grafana能提供更美观的仪表盘。你可以后续添加Grafana数据源为Prometheus,并导入官方Docker监控模板(ID: 193)。

总结

通过本文,你已经掌握了在RockyLinux容器监控的核心方法:利用 cAdvisor容器指标 采集器获取数据,再由 Prometheus监控 系统进行存储与查询。这套组合轻量、开源、功能强大,非常适合中小规模容器环境。

记住,良好的监控是保障服务稳定的第一道防线。建议定期检查指标趋势,设置合理的告警规则,让你的容器应用始终处于可控状态。

关键词回顾:RockyLinux容器监控Docker监控工具Prometheus监控cAdvisor容器指标