Новый экспортер для мониторинга Docker-контейнеров

Привет, Хабр! Мы разворачиваем более 40 сервисов в docker-compose, и у многих из них есть API, базы данных и другие компоненты. Со временем возникла необходимость централизованного мониторинга состояния контейнеров и получения алертов о проблемах. Docker предоставляет healthcheck, однако его статусы не интегрируются в Prometheus по умолчанию. Мы изучили cAdvisor, но он не поддерживает метрики healthcheck.

В поисках решений мы столкнулись с устаревшими проектами и решили создать собственный экспортер. Он будет собирать информацию о состоянии контейнеров, не перегружая Docker API частыми запросами. Экспортер работает по принципу снапшота, обновляя данные раз в N секунд, что делает его стабильным и быстрым.

Мы выделили несколько состояний контейнеров: healthy, unhealthy, running без healthcheck, stopped и unknown. Важным аспектом стало игнорирование одноразовых контейнеров, чтобы избежать ложных алертов. Экспортер предоставляет простые статусы и метрики для удобной визуализации в Grafana.

Мы решили поделиться инструментом в open-source, так как проблема актуальна для многих. Ожидаем обратной связи и продолжим улучшать проект.

Пожалуйста, сделайте репост
0 0 голоса
Рейтинг статьи
guest
0 комментариев
Старые
Новые Популярные