首页主机资讯Docker容器在Ubuntu上如何进行性能监控

Docker容器在Ubuntu上如何进行性能监控

时间2025-11-17 17:26:04发布访客分类主机资讯浏览378
导读:Ubuntu 上 Docker 容器性能监控实操指南 一 快速上手 Docker 自带工具 实时资源监控:运行 docker stats,查看所有运行中容器的 CPU、内存、网络 I/O、块 I/O;如需查看单个容器并减少输出,可使用 d...

Ubuntu 上 Docker 容器性能监控实操指南

一 快速上手 Docker 自带工具

  • 实时资源监控:运行 docker stats,查看所有运行中容器的 CPU、内存、网络 I/O、块 I/O;如需查看单个容器并减少输出,可使用 docker stats < 容器名或ID> --no-stream
  • 容器与主机视角补充:
    • docker ps / docker ps -a 查看容器状态;
    • docker top < 容器名或ID> 查看容器内进程;
    • docker system df 查看镜像、容器、卷等占用;
    • docker inspect < 容器名或ID> 查看详细配置与状态;
    • docker logs < 容器名或ID> 结合日志定位性能异常。
  • 系统级进程视角:安装并使用 htop(sudo apt-get install -y htop)观察宿主机整体资源与 Docker 相关进程负载。

二 可视化与长期存储方案 Prometheus + cAdvisor + Grafana

  • 组件分工:
    • cAdvisor 采集容器 CPU、内存、网络、磁盘 等指标;
    • Prometheus 定时抓取并存储指标;
    • Grafana 进行可视化与告警。
  • 部署步骤(示例命令,按需持久化与鉴权):
    1. 启动 cAdvisor(推荐 host 网络与必要权限):
      docker run -d --name=cadvisor --privileged --net=host google/cadvisor:latest
      访问 http://< 宿主机IP> :8080 查看原生页面。
    2. 启动 Prometheus(挂载配置):
      docker run -d --name=prometheus -p 9090:9090
      -v /opt/prometheus/prometheus.yml:/etc/prometheus/prometheus.yml
      prom/prometheus
      /opt/prometheus/prometheus.yml 中添加抓取任务:
      scrape_configs:
      • job_name: ‘docker’ static_configs:
        • targets: [‘< 宿主机IP> :8080’]
    3. 启动 Grafana:
      docker run -d --name=grafana -p 3000:3000 grafana/grafana
      访问 http://< 宿主机IP> :3000,添加 Prometheus(http://< 宿主机IP> :9090) 为数据源,导入 Docker 相关仪表板(如容器监控模板)并配置告警通道(邮件、Slack、Webhook 等)。

三 其他可选工具

  • Weave Scope:自动生成容器拓扑与关系图,便于排查依赖与瓶颈。
  • Zabbix:企业级监控平台,支持 Docker 监控与告警。
  • Datadog / New Relic:商业化 SaaS 方案,开箱即用、告警与报表完善。
  • ELK Stack(Elasticsearch, Logstash, Kibana):日志集中与可视化,辅助性能问题定位。

四 常见问题与排障

  • docker stats 卡住或无响应
    • 检查 Docker 服务状态:sudo systemctl status docker;
    • 必要时重启 Docker:sudo systemctl restart docker;
    • 确认宿主机资源未耗尽(CPU、内存、磁盘 I/O)。
  • cAdvisor 端口与网络:默认暴露 8080;如使用 –net=host 可直连宿主机网络,注意云主机安全组与防火墙放行。
  • Prometheus 抓取失败:核对 targets 地址与端口、网络连通性、容器与宿主机时间同步(NTP)。

声明:本文内容由网友自发贡献,本站不承担相应法律责任。对本内容有异议或投诉,请联系2913721942#qq.com核实处理,我们将尽快回复您,谢谢合作!


若转载请注明出处: Docker容器在Ubuntu上如何进行性能监控
本文地址: https://pptw.com/jishu/749118.html
如何提高Ubuntu Golang打包速度 如何在Ubuntu上构建Docker镜像并发布

游客 回复需填写必要信息