![](https://habrastorage.org/webt/84/01/5-/84015-1ckbajbqepfamtimj-6b0.jpeg)
Сегодня свершился релиз нового и очень полезного опенсорсного проекта, созданного дирекцией разработки ITSumma — плагина в Grafana для мониторинга Kubernetes. Он включён в официальный графана-стор — grafana.com/grafana/plugins/devopsprodigy-kubegraf-app
Его ключевые полезности:
- интеграция с k8s-api для построения полной карты ваших приложений + группировка по неймспейсам + привязка к подам/сервисам.
- графическое представление распределения приложений по нодам k8s-кластера в реальном времени.
- реалтайм статистика о статусе приложений/подов в кластере и сообщений об ошибках (например, если ваше приложение перестало проходить liveness-probes).
- дашборды со статистикой различных параметров нод кластера (использование CPU, памяти, нагрузки на дисковую подсистему и сетевые интерфейсы), а также со статистикой по использованию ресурсов конкретным подом (CPU, память, сетевые интерфейсы ) и по статусам deployment’ов/statefulset’ов/daemonset’ов, в которых можно посмотреть количество доступных реплик приложения, количество запущенных контейнеров этим приложением и количество рестартов контейнеров.
- отдельная визуализация для просмотра реалтайм статистики о состоянии нод в кластере.
![](https://habrastorage.org/webt/7y/3i/rb/7y3irbwrledjt4beandu9pnxmdk.png)
Откуда плагин собирает информацию?
Конфигурация плагина предусматривает сбор данных, во-первых, с API-сервера k8s (для построения карты ваших приложений, сбора состояний приложений, информации о пройденных пробах и т.д.). Также в плагине отдельно выставляется дополнительный Prometheus datasource (сбор метрик с kube-state-metrics и node-exporter’а).
![](https://habrastorage.org/webt/jk/gv/2i/jkgv2i6x6-9d6e7but_wa69d8qq.png)
Почему и зачем мы это сделали?
Всё просто: аналогичных плагинов — ровно один, и он уже около года не поддерживается.
Что нас в нём, помимо этого, не устраивало:
- отсутствие грамотной визуализации карты приложений.
- несовместимость с текущими версиями node-exporter'a и kube-state-metrics'a.
- отсутствие поддержки мониторинга statefulset'ов.
Ну, и и мы просто можем себе это позволить! ;-)
Звёздочки, ишшуи и пулреквесты приветствуются — github.com/devopsprodigy/kubegraf
И, конечно, большое спасибо Александру Зобнину за поддержку с воздуха!
Очень скоро я расскажу всю историю создания: «как это было». Не переключайтесь (с)