Google开源的用于监控基础设施应用的工具,它是一个强大的监控工具,不需要任何配置就可以通过运行在Docker主机上的容器来监控Docker容器,而且可以监控Docker主机。
cadvisor不仅可以搜集一台机器上所有运行的容器信息,还提供基础查询界面和http接口,方便其他组件如Prometheus进行数据抓取,或者cadvisor + influxdb + grafana搭配使用。
cAdvisor可以对节点机器上的资源及容器进行实时监控和性能数据采集,包括CPU使用情况、内存使用情况、网络吞吐量及文件系统使用情况。
Cadvisor使用Go语言开发,利用Linux的cgroups获取容器的资源使用信息,在K8S中集成在Kubelet里作为默认启动项,官方标配。
更多详细操作和配置选项可以查看Github上的cAdvisor项目文档。
(0)搜索镜像
(1)下载镜像
(2)创建容器
参数说明:
-v, --volume:绑定/挂载/映射目录
-p, --publish:将容器的端口发布到主机(端口映射)
:将链接添加到另一个容器
-d, --detach:在后台运行容器并打印容器ID
:设置容器名称-storage_driver相关参数:
driver
要使用的存储驱动程序。数据总是短时缓存在内存中,这控制了将数据推送到本地缓存之外的位置。空意味着没有。选项包括:,bigquery,elasticsearch,influxdb,kafka,redis,statsd,stdout
-storage_driver_buffer_duration duration
存储驱动程序中的写操作将在此期间进行缓冲,并作为单个事务提交给非内存后端(默认为1m0s)
string
数据库名称(默认为“ cadvisor”)
-storage_driver_es_enable_sniffer
默认情况下,ElasticSearch使用嗅探过程自动查找集群中的所有节点
-storage_driver_es_host string
ElasticSearch主机:端口(默认为“ http:// localhost:9200”)
-storage_driver_es_index string
ElasticSearch索引名称(默认为“ cadvisor”)
-storage_driver_es_type string
ElasticSearch类型名称(默认为“ stats”)
string
数据库主机:端口(默认为“ localhost:8086”)
-storage_driver_influxdb_retention_policy string
保留政策
-storage_driver_kafka_broker_list string
kafka经纪人csv(默认为“ localhost:9092”)
-storage_driver_kafka_ssl_ca string
TLS客户端身份验证的可选证书颁发机构文件
-storage_driver_kafka_ssl_cert string
TLS客户端身份验证的可选证书文件
-storage_driver_kafka_ssl_key string
TLS客户端身份验证的可选密钥文件
-storage_driver_kafka_ssl_verify
验证ssl证书链(默认为true)
-storage_driver_kafka_topic string
kafka主题(默认为“统计信息”)
-storage_driver_password string
数据库密码(默认为“ root”)
-storage_driver_secure
与数据库使用安全连接
-storage_driver_table string
表名(默认为“统计信息”)
-storage_driver_user string
数据库用户名(默认为“ root”)
-storage_duration duration
保存数据的时间(默认值:2分钟)。 (默认为2m0s)
(3)查看运行容器
(4)浏览器访问
访问地址:http://192.168.116.161:8080/containers/