Почему важен мониторинг? Команды разработчиков кодят быстрее, продукт нужно тестировать оперативнее, делать релизы скорее и не проседать в уровне качества. Но частые изменения кода влекут лавинообразный рост ошибок. Для получения полной картины необходимо иметь проактивный мониторинг ПО .
Хорошая мониторинговая платформа позволит отследить производительность всей системы и приложений локально, в облаке или в контейнерных средах. Эффективный набор инструментов повысит производительность и поможет сократить или даже устранить время простоя. Вы сможете планировать обновления и новые проекты, лучше распределять время и другие ресурсы, а самое важное – обнаруживать и решать проблемы до того, как их увидит пользователь.
Инструменты:
- – гибкое и масштабируемое решение для проверки работоспособности телеметрии и служб. Используется для мониторинга серверов, контейнеров, приложений, функций и подключенных устройств. – инструмент со встроенной базой данных, использующий pull-метод для сбора информации. – старый надёжный инструмент для мониторинга компьютерных систем и сетей с открытым исходным кодом, задавший моду на мониторинг у целого поколения инженеров.
- (и то, как их использовать в Sensu). для мониторинга Kubernetes.
- Автоматизируем рабочий процесс мониторинга.
Средства управления конфигами позволяют автоматизировать подготовку и развертывание систем, принудительно применять требуемые конфигурации и устранять баги. Моделируя инфраструктуру кода, вы можете применять контроль версий, автоматизированное тестирование и непрерывную доставку в приложения. Автоматизация рутинной, подверженной ошибкам работы приводит к повышению скорости, предсказуемости и масштабируемости. Также обеспечиваются стандартизированные конфигураций в test , dev и prod средах.
Инструменты:
- – инструмент на Python. Применяется без агента и использует императивный подход. – инструмент на Ruby, императивный подход управления конфигурациями. – декларативный подход, использует специфичный «доменный» язык и архитектуру агент/мастер.
- для автоматизации управления инфраструктурой.
- Применение принципов инфраструктуры к тестированию и мониторингу.
Система оповещения должна быть достаточно чувствительной, чтобы реагировать на перебои, но не настолько чувствительной, чтобы спамить вас сообщениями о мелких падениях, которые не заметят пользователи. Инструменты оповещения помогают заложить основу для политик безопасности, а также настроить: кого уведомлять, как мониторить и как устанавливать приоритеты восстановления.
Инструменты:
- – ситуационная платформа управления с дополнениями для аналитики, анализа событий и автоматического реагирования на инциденты. – использует автоматизированные рабочие процессы для ITSM (IT Service Management), обслуживания клиентов и бизнес-процессов. – можно повесить оповещения на ту же платформу, которую вы используете для групповых чатов и совместной работы.
Как только вы автоматизируете управление конфигурацией, настроите оповещение и мониторинг, в вашем распоряжении будут данные, которые можно анализировать. Встает вопрос: «как надежно хранить и анализировать информацию?». Нужна система хранения, которая позволит объединять и изучать показатели системы, поведение пользователей, уровень обслуживания и риски.
Информация, получаемая из метрик, помогает принимать решения на всех уровнях бизнес-процесса, улучшая вашу способность соответствовать SLA (Service Level Agreement), удовлетворять ожидания клиентов и обосновывать потребность в инвестициях.
Инструменты:
- – база данных для работы с временными рядами, подходящая для долгосрочного хранения данных. – использует модель базы данных, как в поисковых системах.
- на Sensu и InfluxDB
Инструменты визуализации могут рассматриваться в качестве основы для набора инструментов, используемых при мониторинге. Вы можете объединять данные, сортировать и визуализировать их в различных панельках. Тонкая настройка позволит команде создавать и совместно использовать собственные наработки в области мониторинга.
Инструменты:
- – может использоваться поверх различных хранилищ данных, включая Graphite, InfluxDB и Elasticsearch.
- Sensu, InfluxDB и Grafana
Независимо от того, где вы находитесь в своем DevOps-путешествии, разумно пересмотреть текущую ситуацию и определить места, в которых можно что-то изменить. Подборка инструментов DevOps и метод их использования определяет ваши привычки, культуру командной работы, качество вашего продукта и ценность, которую вы приносите своим пользователям.
Мы будем рады, если вы расскажите в комментариях, какие инструменты для DevOps используете вы сами.