我已经设置了Prometheus来监视Kubernetes。但是,当我观看Prometheus仪表板时,会看到 kubernetes-cadvisor DOWN
我想知道是否需要它来监视Kubernetes,因为在Grafana上,我已经获得了不同的信息,例如内存使用情况,磁盘空间...
是否将其用于监视容器以发出精确请求,例如使用特定名称空间的吊舱使用的内存 >?
答案 0 :(得分:1)
您提供的错误意味着cAdvisor的内容不符合Prometheus展览格式。[1]但是,老实说,这是一种可能,由于您没有提供更多信息,我们将不得不暂时将其保留(我的意思是Oliver + Prometheus和Grafana版本以及运行集群的环境所要求的信息)。
回答您的问题,尽管您不需要使用cAdvisor进行监视,但它确实提供了一些重要的指标,并且与Kubernetes集成得很好。因此,在需要容器级别指标之前,应使用cAdvisor。 根据{{3}}中的规定(您可以在此处找到配置教程)
您不能直接访问cAdvisor(通过4194)。您可以(!)访问 cAdvisor通过在以下位置复制job_name(称为“ k8s”) prometheus.yml文件,将副本称为“ cAdvisor”(也许)并 插入另一行以定义“ metrics_path”。普罗米修斯 假设出口商使用“ /指标”,但是对于cAdvisor,我们的指标是 在“ / metrics / cadvisor”上。
我认为这可能是原因,但是如果这不能解决您的问题,我将尝试在群集中重新创建它。
更新:
从yaml文件来看,您没有配置Prometheus从cAdvisor抓取指标。将此添加到您的yaml文件:
scrape_configs:
- job_name: cadvisor
scrape_interval: 5s
static_configs:
- targets:
- cadvisor:8080
根据指定的article。
答案 1 :(得分:0)
要获取容器的指标,我们需要CADVISOR!
要设置它,我只需按照以下步骤
https://github.com/google/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 \
google/cadvisor:latest
我希望这会对您有所帮助;)