У меня есть Swarm с двумя узлами, и я использую cadvisor в качестве глобальной службы.Я получаю метрики и графану / Прометей могу их скрести.Однако мои цифры неверны.Когда я проверяю количество контейнеров с помощью инструментов командной строки docker, я вижу, что на первом узле работает 17 контейнеров, а на втором - 14 контейнеров.Prometheus / grafana, однако, скажет мне, что я получил 34 контейнера, и количество контейнеров равно 17 на обоих узлах.
Я предполагаю, что мои проблемы связаны с тем, что cadvisor определен в другом стеке, чем контейнер prometheus и grafana, и попыталсядля доступа к cadvisor через сервисный API.
В AI стека есть
version: '3.6'
services:
cadvisor:
image: google/cadvisor
deploy:
mode: global
ports:
- "8888:8080"
#privileged: true
#command:
volumes:
- /:/rootfs:ro
- /var/run:/var/run:rw
- /sys:/sys:ro
- /var/lib/docker/:/var/lib/docker:ro
Затем в конфигурации prometheus.yml у меня есть следующее определение скрапа, где host1 и host2 - имена хостовузлы.
- job_name: 'cadvisor'
scrape_interval: 20s
static_configs:
- targets: ['host1:8888','host2:8888']
Есть ли у кого-нибудь рабочий пример использования cadvisor в рое с более чем одним узлом или может указать, как определить цели для cadvisor в конфигурации proemtheus?