prometheus+grafana监控docker容器
CAdvisor介绍
cAdvisor (Container Advisor) 是 Google 开源的一个容器监控工具,可用于对容器资源的使用情况和性能进行监控。它以守护进程方式运行,用于收集、聚合、处理和导出正在运行容器的有关信息。具体来说,该组件对每个容器都会记录其资源隔离参数、历史资源使用情况、完整历史资源使用情况的直方图和网络统计信息。
cAdvisor 本身就对 Docker 容器支持,并且还对其它类型的容器尽可能的提供支持,力求兼容与适配所有类型的容器。
cAdvisor 是用于监控容器引擎的。由于其监控的实用性,Kubernetes 已经默认将其与 Kubelet 融合,所以在K8S中无需再单独部署 cAdvisor 组件来暴露节点中容器运行的信息,直接使用 Kubelet 组件提供的指标采集地址即可。
CAdvisor安装
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 \
--volume=/etc/localtime:/etc/localtime \
--publish=18080:8080 \
--detach=true \
--name=cadvisor \
--privileged \
--device=/dev/kmsg \
swr.cn-north-4.myhuaweicloud.com/ddn-k8s/gcr.io/cadvisor/cadvisor:v0.52.1
docker ps |grep cadvisor
3fc7f61859cb swr.cn-north-4.myhuaweicloud.com/ddn-k8s/gcr.io/cadvisor/cadvisor:v0.52.1 "/usr/bin/cadvisor -…" 27 seconds ago Up 26 seconds (health: starting) 0.0.0.0:8080->8080/tcp, :::8080->8080/tcp
访问cadvisor web界面:
对接Prometheus监控系统
vim /data/prometheus/prometheus.yml
- job_name: 'CAdvisor_docker'
scrape_interval: 15s
scrape_timeout: 5s
static_configs:
- targets: ['10.0.0.61:18080']
- targets: ['10.0.0.62:18080']
热加载prometheus:
curl -X POST http://localhost:9090/-/reload
查看是否正常:
配置grafana仪表盘
直接导入模版代码14282