cAdvisor没有显示所有容器的正常运行时间(Prometheus + cAdvisor + Grafana)

时间:2018-05-14 07:31:29

标签: linux docker grafana prometheus cadvisor

环境:

  • Linux(Redhat7)
  • 已部署的码头工具(cAdvisor,Prometheus,Grafana)
  • cAdvisor收集指标>转到普罗米修斯>用Grafana显示
  • Apache反向代理在环境中(因此没有与特定端口的直接连接)

问题:

  • cAdvisor未显示所有容器的正常运行时间
  • Grafana未显示Prometheus和Grafana容器的正常运行时间
  • 仅显示cAdvisor容器的正常运行时间

我拥有(问题): enter image description here enter image description here

我想要的是什么: enter image description here

在普罗米修斯设置: enter image description here enter image description here

运行cAdvisor的命令:

sudo docker run --volume = /:/ rootfs:ro --volume = / var / run:/ var / run:rw --volume = / var / lib / docker /:/ var / lib / docker: ro --volume = / dev / disk /:/ dev / disk:ro --publish = 8080:8080 --name = cadvisor --detach = true --privileged = true --volume = / cgroup:/ cgroup:ro --network = docker8443 --ip = 172.28.5.201 google / cadvisor:latest

问题:

  • 普罗米修斯的目标是否缺少显示所有容器的正常运行时间?
  • cAdvisor设置中是否缺少某些内容?
  • 图表查询不正确吗? (我试过以下,但它显示“没有数据点”) enter image description here

2 个答案:

答案 0 :(得分:1)

我认为这个问题是关于cadvisor的。 您可以尝试检查cadvisor指标端点:http://172.28.5.201:8080/metrics 确保管理员返回指标样本:

示例:

# HELP container_start_time_seconds Start time of the container since unix epoch in seconds.
# TYPE container_start_time_seconds gauge
container_start_time_seconds{id="/",image="",name=""} 1.525939343e+09
container_start_time_seconds{id="/docker",image="",name=""} 1.526006565e+09
container_start_time_seconds{id="/docker/d4b87911bd0842ee1d6969e6a05aa3d36a48a801184faf14e1b23169e056da92",image="busybox",name="trusting_bassi"}

答案 1 :(得分:0)

除了云龙的回答(添加--volume = / sys:/ sys:ro)
您还需要在shell下运行以下命令:

mount -o remount,rw' / sys / fs / cgroup'
ln -s / sys / fs / cgroup / cpu,cpuacct / sys / fs / cgroup / cpuacct,cpu

否则你的cAdvisor会在容器启动后立即崩溃。