Repolode
google

google/cadvisor

一个 Go 守护进程,用于采集、汇总并导出运行中容器的资源使用与性能数据,提供 Web 界面和 REST API。

Star
19,498
Fork
2,500
未关闭 Issue
76
最近提交
12天前

这是什么?

cAdvisor(Container Advisor)帮助容器用户了解运行中容器的资源使用情况和性能表现。它以守护进程方式运行,为每个容器持续记录资源隔离参数、历史资源用量、用量直方图以及网络统计,数据可按容器或整机维度查看。

cAdvisor 原生支持 Docker 容器,并设计为兼容其他类型的容器。其容器抽象沿用 lmctfy 的模型,容器按层级嵌套。它可以作为独立二进制运行,也可以以 Docker 容器或 Kubernetes DaemonSet 的形式部署。

项目在端口上提供 Web 界面,并暴露带版本的远程 REST API,同时在 client 目录中提供官方 Go 客户端。统计数据还可导出到多种存储插件。项目路线图中计划加入容器性能建议、自动调优和面向调度器的用量预测。

核心功能

  • 01采集每个容器的资源隔离参数、历史资源用量和网络统计。
  • 02同时提供整机和单容器两个维度的资源用量视图。
  • 03内置 Web 界面。
  • 04提供带版本的远程 REST API 和官方 Go 客户端。
  • 05可将统计数据导出到多种存储插件。
  • 06支持独立运行、Docker 容器部署或作为 Kubernetes DaemonSet 部署。

适用场景

  • 监控单台主机上 Docker 容器的资源使用情况。
  • 在 Kubernetes 集群中以节点级 agent 方式运行监控。
  • 将容器指标写入外部存储或监控链路。
  • 排查容器历史 CPU、内存和网络用量。

快速上手

  1. 1

    设置为最新发布版本号

    VERSION=0.55.1
  2. 2

    用 Docker 容器运行 cAdvisor

    sudo docker run --volume=/:/rootfs:ro --volume=/var/run:/var/run:ro --volume=/sys:/sys:ro --volume=/var/lib/docker/:/var/lib/docker:ro --volume=/dev/disk/:/dev/disk:ro --publish=8080:8080 --detach=true --name=cadvisor --privileged --device=/dev/kmsg ghcr.io/google/cadvisor:$VERSION
  3. 3

    在 http://localhost:8080 打开网页界面

使用前须知

  • 元数据中的许可证显示为 NOASSERTION,因此无法从元数据确定具体条款。
  • Docker 快速启动需要特权容器并挂载多个主机目录。
  • CentOS、Fedora、RHEL 和 LXC 环境需要额外步骤,文档中另有说明。

收录于专题

标签

常见问题

cadvisor 是什么?
一个 Go 守护进程,用于采集、汇总并导出运行中容器的资源使用与性能数据,提供 Web 界面和 REST API。 cAdvisor(Container Advisor)帮助容器用户了解运行中容器的资源使用情况和性能表现。它以守护进程方式运行,为每个容器持续记录资源隔离参数、历史资源用量、用量直方图以及网络统计,数据可按容器或整机维度查看。
cadvisor 可以免费使用吗?用的什么许可证?
cadvisor 以 Other 许可证开源。用于商业产品前,请先确认许可证条款。
cadvisor 还在维护吗?
活跃维护中。cadvisor 最近一次提交是在 2026年10月12日。
cadvisor 适合用来做什么?
监控单台主机上 Docker 容器的资源使用情况。 在 Kubernetes 集群中以节点级 agent 方式运行监控。 将容器指标写入外部存储或监控链路。 排查容器历史 CPU、内存和网络用量。
cadvisor 怎么安装和运行?
设置为最新发布版本号: VERSION=0.55.1 用 Docker 容器运行 cAdvisor: sudo docker run --volume=/:/rootfs:ro --volume=/var/run:/var/run:ro --volume=/sys:/sys:ro --volume=/var/lib/docker/:/var/lib/docker:ro --volume=/dev/disk/:/dev/disk:ro --publish=8080:8080 --detach=true --name=cadvisor --privileged --device=/dev/kmsg ghcr.io/google/cadvisor:$VERSION 在 http://localhost:8080 打开网页界面
在哪里获取 cadvisor?
源代码和安装说明在 GitHub 上:https://github.com/google/cadvisor

概要由 AI 根据项目 README 生成;GitHub 数据每日更新。

相关项目