1 / 30

Александр Сербул Руководитель направлени я контроля качества интеграции и внедрений

# bitrix. #bitrix24. Проактивный мониторинг и анализ трендов. Александр Сербул Руководитель направлени я контроля качества интеграции и внедрений. Цели. Понять, почему веб-проекты после запуска нередко становятся сложными и слабоуправляемыми.

jethro
Download Presentation

Александр Сербул Руководитель направлени я контроля качества интеграции и внедрений

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. #bitrix #bitrix24 Проактивный мониторинги анализ трендов Александр Сербул Руководитель направления контроля качества интеграции и внедрений

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

  3. Запуск веб-проекта Проектирование. Не всегда достаточно времени. Требования меняются до самого конца. Сжатые сроки на развертывание веб-проекта на хостинге Мало кто проводит и умеет делать нагрузочное тестирование Не все задумываются над организацией мониторинга, резервного копирования, обновления софта на серверах и т.п. Система запускается «как есть» и по инерции может «поработать» год-два «без вмешательства»

  4. Вроде работает… Веб-проект «вроде работает» В случае торможения пинают сисадмина перезапустить apache или MySQL Программисты что-то дописывают «на боевых серверах» - так быстрее Менеджеры проекта меняются Веб-проект начинает разрушаться и деградировать изнутри… Кто отвечает за порядок, прозрачность и мониторинг??

  5. Как должно быть Сервера «стерильны», код выкладывается через систему контроля версий Доступ на сервера строго ограничен кругом квалифицированных администраторов ПО на серверах постоянно обновляется, «дырки» закрываются, предварительно тестируется всё Перед попаданием «на бой» код попадает на testing, stage сервера для функциональногои нагрузочного тестирования Вся система «покрыта датчиками» и мониторится. SMS. Хорошо, если есть дежурные 24/7.

  6. Мифы о стабильности Миф 1. Весь веб-проект покрыть unit и другими тестами на 100% Миф 2. Проводится тщательное нагрузочное тестирование на реальных данных Миф 3. При изменении настроек/обновлении серверов все тщательно тестируется Миф 4. Если установлены все патчи безопасности, система безопасна. Миф 5. Мы знаем, что может случиться, и ждем этого.

  7. Взять контроль над веб-системой Прозрачное поле боя (nagios) Дисциплина и регламент Анализ трендов (munin)

  8. Мониторинг «железа» Рейды S.M.A.R.T. – диск возможно скоро «умрет» Утилиты вендора – внутренние аппаратные тесты Периодическое тестирование железа в оффлайне Имеем «запчасти» (блоки питания, вентиляторы …) или знаем где их быстро найти

  9. Мониторинг операционной системы Место на дисках Периодическая проверка файловой системы - fsck Регулярно пробуем прочитать записанные (в архив) файлы  iostat

  10. Мониторинг операционной системы Очередь выполнения Размер и использование swap vmstat

  11. Мониторинг операционной системы Сеть. netstat, -o -p Полезные утилиты: atop, ps, pstree, apachetop, innotop

  12. Мониторинг MySQL Ключевые тесты

  13. Мониторинг MySQL Гистограмма времени обработки запросов (Percona)

  14. Мониторинг веб-приложения Лог работы скрипта (>) – обновился за N часов Лог ошибокработы скрипта (2>)– должен быть пуст Обязательно ротируемлоги - logrotate

  15. Мониторинг веб-приложения Число ошибок в хитах за 15 минут - меньше L (из pinba) Макс. время хита (тэга) – меньше M сек. Макс. использование памяти хитом – меньше NМБ Графики рисует простой плагин для munin

  16. Мониторинг веб-приложения Гистограммы распределения времени хитов, памяти, кодам ответа – из логов (awk-скрипт) или pinba Общая температура «по палате»

  17. Аналитика - munin Дисковая подсистема

  18. Аналитика- munin Сеть

  19. Аналитика - munin Память Apache MaxClients MySQL buffers … Нужно «прикинуть» максимальный расход памяти в приложениях и следить за ней

  20. Аналитика - munin swap Скорость работы с диском на неск. порядков ниже. Нужно стараться избегать своппинга.

  21. Аналитика - munin Нагрузка

  22. Аналитика - munin Нагрузка

  23. Аналитика - memcached Ключевые графики

  24. Аналитика - MySQL Ключевые графики

  25. Аналитика - MySQL Ключевые графики

  26. Аналитика - MySQL Ключевые графики

  27. Поиск узких мест XHProf, pinba, XDebug

  28. Поиск узких мест Apache /server-status Включенные логи медленных запросов php-fpm, nginx, apache, mysql

  29. Да пребудет с нами сила! 

  30. Спасибо за внимание! Вопросы? Александр Сербул serbul@1c-bitrix.ru @AlexSerbul #bitrix24

More Related