eFusion 13 февраля 2020

12 инструментов DevOps-инженера для мониторинга архитектуры

Управление конфигурациями, инструменты метрики, оповещений, визуализации. Преимущества инструментов мониторинга архитектуры DevOps, ссылки на сами инструменты и публикации о них.
12 инструментов DevOps-инженера для мониторинга архитектуры

Почему важен мониторинг? Команды разработчиков кодят быстрее, продукт нужно тестировать оперативнее, делать релизы скорее и не проседать в уровне качества. Но частые изменения кода влекут лавинообразный рост ошибок. Для получения полной картины необходимо иметь проактивный мониторинг ПО .

Инструменты для мониторинга

12 инструментов DevOps-инженера для мониторинга архитектуры

Хорошая мониторинговая платформа позволит отследить производительность всей системы и приложений локально, в облаке или в контейнерных средах. Эффективный набор инструментов повысит производительность и поможет сократить или даже устранить время простоя. Вы сможете планировать обновления и новые проекты, лучше распределять время и другие ресурсы, а самое важное – обнаруживать и решать проблемы до того, как их увидит пользователь.

Инструменты:

  • Sensu – гибкое и масштабируемое решение для проверки работоспособности телеметрии и служб. Используется для мониторинга серверов, контейнеров, приложений, функций и подключенных устройств.
  • Prometheus – инструмент со встроенной базой данных, использующий pull-метод для сбора информации.
  • Nagios – старый надёжный инструмент для мониторинга компьютерных систем и сетей с открытым исходным кодом, задавший моду на мониторинг у целого поколения инженеров.

Ресурсы:

Управление конфигурациями

12 инструментов DevOps-инженера для мониторинга архитектуры

Средства управления конфигами позволяют автоматизировать подготовку и развертывание систем, принудительно применять требуемые конфигурации и устранять баги. Моделируя инфраструктуру кода, вы можете применять контроль версий, автоматизированное тестирование и непрерывную доставку в приложения. Автоматизация рутинной, подверженной ошибкам работы приводит к повышению скорости, предсказуемости и масштабируемости. Также обеспечиваются стандартизированные конфигураций в test, dev и prod средах.

Инструменты:

  • Ansible – инструмент на Python. Применяется без агента и использует императивный подход.
  • Chef – инструмент на Ruby, императивный подход управления конфигурациями.
  • Puppet – декларативный подход, использует специфичный «доменный» язык и архитектуру агент/мастер.

Ресурсы:

Инструменты оповещения

12 инструментов DevOps-инженера для мониторинга архитектуры

Система оповещения должна быть достаточно чувствительной, чтобы реагировать на перебои, но не настолько чувствительной, чтобы спамить вас сообщениями о мелких падениях, которые не заметят пользователи. Инструменты оповещения помогают заложить основу для политик безопасности, а также настроить: кого уведомлять, как мониторить и как устанавливать приоритеты восстановления.

Инструменты:

  • PagerDuty – ситуационная платформа управления с дополнениями для аналитики, анализа событий и автоматического реагирования на инциденты.
  • ServiceNow – использует автоматизированные рабочие процессы для ITSM (IT Service Management), обслуживания клиентов и бизнес-процессов.
  • Slack – можно повесить оповещения на ту же платформу, которую вы используете для групповых чатов и совместной работы.

Ресурсы:

Метрики

12 инструментов DevOps-инженера для мониторинга архитектуры

Как только вы автоматизируете управление конфигурацией, настроите оповещение и мониторинг, в вашем распоряжении будут данные, которые можно анализировать. Встает вопрос: «как надежно хранить и анализировать информацию?». Нужна система хранения, которая позволит объединять и изучать показатели системы, поведение пользователей, уровень обслуживания и риски.

Информация, получаемая из метрик, помогает принимать решения на всех уровнях бизнес-процесса, улучшая вашу способность соответствовать SLA (Service Level Agreement), удовлетворять ожидания клиентов и обосновывать потребность в инвестициях.

Инструменты:

  • InfluxDB – база данных для работы с временными рядами, подходящая для долгосрочного хранения данных.
  • Splunk – использует модель базы данных, как в поисковых системах.

Ресурсы:

Визуализация

12 инструментов DevOps-инженера для мониторинга архитектуры

Инструменты визуализации могут рассматриваться в качестве основы для набора инструментов, используемых при мониторинге. Вы можете объединять данные, сортировать и визуализировать их в различных панельках. Тонкая настройка позволит команде создавать и совместно использовать собственные наработки в области мониторинга.

Инструменты:

  • Grafana – может использоваться поверх различных хранилищ данных, включая Graphite, InfluxDB и Elasticsearch.

Ресурсы:

Следующие шаги: оценка текущих инструментов

Независимо от того, где вы находитесь в своем DevOps-путешествии, разумно пересмотреть текущую ситуацию и определить места, в которых можно что-то изменить. Подборка инструментов DevOps и метод их использования определяет ваши привычки, культуру командной работы, качество вашего продукта и ценность, которую вы приносите своим пользователям.

Мы будем рады, если вы расскажите в комментариях, какие инструменты для DevOps используете вы сами.

Источники

МЕРОПРИЯТИЯ

Комментарии

ВАКАНСИИ

Добавить вакансию
Go-разработчик
по итогам собеседования
Senior Java Developer
Москва, по итогам собеседования
Java Team Lead
Москва, по итогам собеседования

ЛУЧШИЕ СТАТЬИ ПО ТЕМЕ