Система мониторинга zabbix в процессах разработки и...
TRANSCRIPT
![Page 1: Система мониторинга Zabbix в процессах разработки и тестирования | Алексей Буров](https://reader033.vdocuments.mx/reader033/viewer/2022061423/5879301c1a28ab7c448b638d/html5/thumbnails/1.jpg)
Система мониторинга Zabbix в процессах разработки и тестирования
Алексей БуровDevOps
![Page 2: Система мониторинга Zabbix в процессах разработки и тестирования | Алексей Буров](https://reader033.vdocuments.mx/reader033/viewer/2022061423/5879301c1a28ab7c448b638d/html5/thumbnails/2.jpg)
ПроблемаОтсутствие/недостаточный мониторинг
![Page 3: Система мониторинга Zabbix в процессах разработки и тестирования | Алексей Буров](https://reader033.vdocuments.mx/reader033/viewer/2022061423/5879301c1a28ab7c448b638d/html5/thumbnails/3.jpg)
Типичные проблемы
• Стенды для сборки и тестирования требуют наблюдения за параметрами систем
• Если нет мониторинга, то о проблеме обычно узнают по нарушению функциональности приложения или ОС
• Проблемы бывают простейшие: закончилось место на диске, не работает служба, недоступен какой-либо сервис DevOps со стороны стенда и т.п.
• При разработке и тестировании проблема может встать острее, так как продукт может быть нестабильным, с багами (для их выявления мы его и тестируем)
![Page 4: Система мониторинга Zabbix в процессах разработки и тестирования | Алексей Буров](https://reader033.vdocuments.mx/reader033/viewer/2022061423/5879301c1a28ab7c448b638d/html5/thumbnails/4.jpg)
Типичные проблемы при тестировании
При тестировании продукта требуется охватывать множество показателей:
• Логи – на предмет нахождения «плохого» события
• Загруженность сервера
• Доступность внутренних сервисов продукта
• Доступность внешних сервисов продукта
![Page 5: Система мониторинга Zabbix в процессах разработки и тестирования | Алексей Буров](https://reader033.vdocuments.mx/reader033/viewer/2022061423/5879301c1a28ab7c448b638d/html5/thumbnails/5.jpg)
Проблема мониторинга при разработке и тестировании продукта
Изменяющийся от версии к версии список наблюдаемых параметров:
Release N.0 Release N+1.0Ресурс A по HTTP Ресурс А по HTTPSСервис B -
Сервис С Сервис C
- Сервис D
Для ресурса X критичное значения Y
Для ресурса X критичное значения
Z
![Page 6: Система мониторинга Zabbix в процессах разработки и тестирования | Алексей Буров](https://reader033.vdocuments.mx/reader033/viewer/2022061423/5879301c1a28ab7c448b638d/html5/thumbnails/6.jpg)
РешениеСистема мониторинга в процессах разработки и тестирования
![Page 7: Система мониторинга Zabbix в процессах разработки и тестирования | Алексей Буров](https://reader033.vdocuments.mx/reader033/viewer/2022061423/5879301c1a28ab7c448b638d/html5/thumbnails/7.jpg)
Виды мониторинга
По функциям:• Мониторинг ситуации - оповещение о критических событиях/ошибках
• Мониторинг трендов - сбор информации для дальнейшего анализа
• Perfomance-мониторинг - отслеживание быстродействия системы
По типам:• Системный мониторинг - мониторинг состояния ОС, системных служб
• Мониторинг приложений - реализуется внутри приложения
• Бизнес-метрики - реализуется внутри приложения
![Page 8: Система мониторинга Zabbix в процессах разработки и тестирования | Алексей Буров](https://reader033.vdocuments.mx/reader033/viewer/2022061423/5879301c1a28ab7c448b638d/html5/thumbnails/8.jpg)
План решения от DevOps
• Разграничение зон ответственности между DevOps, Dev и QA
• zabbixtools
• Monitoring as Code
![Page 9: Система мониторинга Zabbix в процессах разработки и тестирования | Алексей Буров](https://reader033.vdocuments.mx/reader033/viewer/2022061423/5879301c1a28ab7c448b638d/html5/thumbnails/9.jpg)
Разграничение зон ответственности
• Хост может иметь только одну Роль• Роль может включать в себя несколько Профилей• Профиль может включать в себя как отдельные Item/Trigger, так и другие Профили• Группировка по объектам (Хост, Роль, Профиль)
![Page 10: Система мониторинга Zabbix в процессах разработки и тестирования | Алексей Буров](https://reader033.vdocuments.mx/reader033/viewer/2022061423/5879301c1a28ab7c448b638d/html5/thumbnails/10.jpg)
zabbixtools в DevOpsHQ
zabbixtools - набор скриптов (Python + Powershell), расширяющий
функциональность Zabbix в части:
• кастомных проверок на Zabbix-агентах
• внешних проверок на Zabbix-сервере
• кастомизации оповещений (интеграция с различными сервисами и workflow)
• работы через API (массовое редактирование хостов и других сущностей)
• конфигурирование мониторинга при деплое продукта или тестов
Ссылка на zabbixtools в GitHub:https://github.com/devopshq/zabbixtools
![Page 11: Система мониторинга Zabbix в процессах разработки и тестирования | Алексей Буров](https://reader033.vdocuments.mx/reader033/viewer/2022061423/5879301c1a28ab7c448b638d/html5/thumbnails/11.jpg)
Monitoring as Code
![Page 12: Система мониторинга Zabbix в процессах разработки и тестирования | Алексей Буров](https://reader033.vdocuments.mx/reader033/viewer/2022061423/5879301c1a28ab7c448b638d/html5/thumbnails/12.jpg)
Что позволяет данная схема?
• Настраивать мониторинг в зависимости от релиза продукта
• Держать мониторинг под версионным контролем (Monitoring as Code)
• Реализовать SMOKE-тестирование средствами системы мониторинга
• Разграничить ответственность между Dev/QA/DevOps
• Разработчикам и тестировщикам не нужно разбираться с работой Zabbix и его API
![Page 13: Система мониторинга Zabbix в процессах разработки и тестирования | Алексей Буров](https://reader033.vdocuments.mx/reader033/viewer/2022061423/5879301c1a28ab7c448b638d/html5/thumbnails/13.jpg)
Конфигурация мониторинга на целевых серверах
При деплое продукта:
• Поддержка актуальности конфигурации мониторинга - на разработчиках
• Конфигурация мониторинга различается от ветке к ветке, от фичи к фиче
• SMOKE-тестирование уже при деплое продукта, даже без запуска тестов
При тестировании продукта:
• Поддержка актуальности конфигурации мониторинга - на тестировщиках
• SMOKE-тесты могут быть выполнены системой мониторинга
![Page 14: Система мониторинга Zabbix в процессах разработки и тестирования | Алексей Буров](https://reader033.vdocuments.mx/reader033/viewer/2022061423/5879301c1a28ab7c448b638d/html5/thumbnails/14.jpg)
РешениеПримеры
![Page 15: Система мониторинга Zabbix в процессах разработки и тестирования | Алексей Буров](https://reader033.vdocuments.mx/reader033/viewer/2022061423/5879301c1a28ab7c448b638d/html5/thumbnails/15.jpg)
Monitoring as Code
![Page 16: Система мониторинга Zabbix в процессах разработки и тестирования | Алексей Буров](https://reader033.vdocuments.mx/reader033/viewer/2022061423/5879301c1a28ab7c448b638d/html5/thumbnails/16.jpg)
Monitoring as Code
![Page 17: Система мониторинга Zabbix в процессах разработки и тестирования | Алексей Буров](https://reader033.vdocuments.mx/reader033/viewer/2022061423/5879301c1a28ab7c448b638d/html5/thumbnails/17.jpg)
Zabbix
![Page 18: Система мониторинга Zabbix в процессах разработки и тестирования | Алексей Буров](https://reader033.vdocuments.mx/reader033/viewer/2022061423/5879301c1a28ab7c448b638d/html5/thumbnails/18.jpg)
Zabbix