Найти тему
VK Cloud

4 самых удобных инструмента мониторинга

Приготовьтесь! Сейчас, буквально за 3 минуты, вы узнаете о самых популярных решениях для мониторинга кластеров Kubernetes. Мы сравним их по 5 параметрам:

  • Простота установки
  • Доступность
  • Функционал: мониторинг
  • Функционал: логи
  • Функционал: уведомления (alerts)

1. Prometheus + InfluxDB + Grafana

В этом стеке используется Prometheus для сбора метрик, InfluxDB для обработки данных и Grafana для наглядного и удобного представления графиков, схем и т.д.

Prometheus уже давно стал стандартным инструментом для сбора метрик в Kubernetes, а по количеству возможностей представления данных едва ли что-то может конкурировать с Grafana.

Простота установки
Простота установки

Все компоненты устанавливаются через Helm, так что проблем с установкой нет. Правда, использовать их сразу «из коробки» не получится — придется немного поиграться с конфигурированием. Хорошие новости: Grafana уже содержит в себе ряд dashboards для мониторинга Kubernetes, так что с ней проблем возникнуть не должно.

Доступность
Доступность

Все компоненты распространяются по свободной лицензии.

Мониторинг
Мониторинг

Cтек позволяет мониторить состояние контейнеров, получать информацию о загруженности нод (CPU, RAM) и др. через удобный и понятный UI. Prometheus дает доступ к огромному количеству метрик, но при необходимости вы можете подключить и свои собственные экспортеры.

Логи
Логи

К сожалению, у рассматриваемого стека есть большой минус — отсутствие возможности работы с логами.

Алерты
Алерты

Что касается оповещений, то здесь все в порядке: Prometheus имеет встроенный модуль alertmanager. Его можно настроить через файлы конфигурации либо через графический интерфейс Prometheus, правда, назвать его удобным весьма сложно.

Общая оценка
Общая оценка

2. Prometheus + ELK stack (ElasticSearch + Logstash + Kibana)

В этом стеке мы видим уже знакомый нам Prometheus для сбора метрик, но для индексации данных применяется уже ElasticSearch, для управления логами — Logstash, а для отображения метрик — Kibana.

Prometheus + ELK — одно из наиболее популярных и гибких решений для мониторинга, но при этом довольно сложное в конфигурировании.

Простота установки
Простота установки

От средней до высокой. В отличие от Grafana и различных SaaS-решений, в этом стеке отсутствуют готовые дэшборды для Kubernetes и придется потратить некоторое время на их настройку в Kibana. Однако после того как все готово, ими очень удобно управлять.

Как и в предыдущем случае, все компоненты устанавливаются через Helm.

Доступность
Доступность

Все компоненты бесплатны и распространяются по модели open source. Elasticsearch также доступен как платный онлайн-сервис (SaaS), но, на наш взгляд, гораздо дешевле использовать его на своих вычислительных ресурсах.

Мониторинг
Мониторинг

Возможности Prometheus + ELK stack практически безграничны. Kibana дает доступ к большому количеству графиков и дэшбордов, позволяя просматривать практически любую информацию о состоянии кластера.

Как уже было сказано, Prometheus собирает множество метрик, и при желании в данной конфигурации также можно использовать дополнительные экспортеры.

Логи
Логи

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

Алерты
Алерты

В данной конфигурации алерты можно настроить следующим образом:

используя модуль alertmanager в Prometheus.

используя ElasticSearch Watcher в рамках модуля X-Pack. Он позволяет легко настроить алерты, но его необходимо устанавливать отдельно, так как он не входит в стандартную поставку.

Общая оценка
Общая оценка

3. Datadog

Datadog — отличное SaaS-решение, если вы хотите сразу получить готовое решение «из коробки». Datadog сам собирает метрики и отображает их в виде удобных графиков, не требуя от пользователя сложной настройки.

Простота установки
Простота установки

Установить Datadog очень просто — достаточно лишь скопировать yaml-файл из панели управления и запустить в своем кластере. Через пару минут вы получаете доступ к статистике о контейнерах и кластерах. А если совсем лень, Datadog можно установить и через Helm.

Доступность
Доступность

В отличие от предыдущих вариантов, Datadog — платное решение. Доступность начинается от $15 за ноду в месяц, однако сервис предлагает бесплатный тарифный план для кластеров, в которых не более 5 нод. Платная версия включает в себя функции APM (Application Performance Management)

Мониторинг
Мониторинг

Datadog дает доступ к различным метрикам приложений и кластера (CPU, RAM) через веб-интерфейс. Если у вас в кластере запущен Prometheus, его можно интегрировать с Datadog.

Логи
Логи

Datadog дает возможность собирать, индексировать и просматривать логи, однако по сравнению с ELK возможности логирования скромные.

Алерты
Алерты

Алерты легко настроить, используя готовые шаблоны или выбрав собственные события и метрики.

Общая оценка
Общая оценка

4. NewRelic

NewRelic — известная компания, предлагающая услуги мониторинга по модели SaaS для разных платформ. Мониторинг для Kubernetes находится в стадии бета-тестирования, и по сравнению с другими решениями возможности для мониторинга кажутся довольно ограниченными, однако это компенсируется невысокой Доступностью. Как и в случае c Datadog, NewRelic собирает метрики и отображает их в виде красивых графиков прямо «из коробки».

Простота установки
Простота установки

Сервис легко интегрировать с кластером, как и Datadog, а в случае использования Helm chart установка сводится к выполнению пары команд.

Доступность
Доступность

Тарифы начинаются от $0,72, что делает его очень привлекательным для небольших проектов. К сожалению, APM оплачивается отдельно и стоит от $10 за ноду в месяц.

Мониторинг
Мониторинг

Возможности мониторинга близки к Datadog, но без возможности интеграции с Prometheus. Однако встроенных метрик должно быть достаточно для большинства пользователей.

Логи
Логи

Возможность логирования предусмотрена, но требует установки отдельного плагина.

Алерты
Алерты

Есть, легко настраиваются под требования инфраструктуры.

Общая оценка
Общая оценка

Заключение

Если описать рассмотренные инструменты кратко, можно сделать следующий вывод: если вам нужен быстрый мониторинг «здесь и сейчас», SaaS-решения Datadog и NewRelic подойдут лучше всего. Если же у вас есть время и ресурсы, присмотритесь к Prometheus + Grafana либо ELK — едва ли можно найти более гибкие и универсальные решения.

Оригинал статьи размещен здесь: https://mcs.mail.ru/blog/kubernetes-monitoring-instruments/