SlideShare a Scribd company logo
Selenium Grid: Culinary tips



                                                 TM

                         Profit from the Cloud




Alexander Hayorov
November, 2012
об авторе доклада



3+ года в автоматизации тестирования
 сейчас в                automation QA
   – автоматизация облачных услуг и хостинга
    4 года - опыт автоматизации тестирования
    5 команд автоматизации + outsourcing




                                                                       TM

                                  2            Profit from the Cloud
немного теории
              карта запросов: роль хаба

                                   node

                                   node

                                   node
                        Grid hub              Testing apps
                                   node




                   Clients



 - ключевая роль в стабильности и производительности;
 - концентрирует на себе: запросы, трафик;
 - осуществляет балансировку и контроль;



                                                                                 TM

                                   3                     Profit from the Cloud
Почему мы выбрали selenium grid?



- один сервис на все команды
- много трудоемких (продолжительных, многопоточных) тестов
- стабильность в тестировании
- нужна стандартизованная среда
- желание повысить утилизацию ресурсов для тестирования




                                                                           TM

                                4                  Profit from the Cloud
какие проблемы нас ожидают


   selenium – это сервис

   логирование

   мониторинг

   нотификация

   «сам себе лекарь»

   балансировка




                                                       TM

                           5   Profit from the Cloud
ограничения и особенности доклада




  Pacman problem     Firefox only   *nix platform only




   RC    WebDriver




                                                                    TM

                             6              Profit from the Cloud
совет 0 виртуализация
добавьте слой виртуализации и Вы получите:

-   увеличение уровня доступности приложений,
    плавное функционирование
-   снижение стоимости инфраструктуры
-   эффективное обслуживание серверов
-   возможность гибкого распределения ресурсов
                   и много-много прочего…




посмотрите Virtuozzo Containers parallels.com/products/pvc/




                                                                                      TM

                                             7                Profit from the Cloud
совет 1 selenium это сервис                 github.com/hayorov/grid-tips/tip1




создайте отдельного пользователя и группу
определите структуру директорий сервера
создайте и используйте init-скрипты
автостарт после перезагрузки




                                                                                TM

                                      8                Profit from the Cloud
совет 2 логирование
Обычное перенаправление логов в файл с logrotate
приводит к остановке их записи




ведите,
ротируйте,
и храните лог файлы




                                                                           TM

                                       9           Profit from the Cloud
совет 2/1 сборка логов
Найдите для себя приемлемую технологию по сбору и
централизованному хранению логов



для чего?
- удобство доступа и хранения
- быстрый просмотр
- возможность определения общих
 проблем


например, с помощью Graylog2




                                                                            TM

                                            10      Profit from the Cloud
совет 3 мониторинг
 Какая должна быть система?

- достаточно производительная
- легко изменяемая под Ваши нужды
- предоставляющая API




 автоматизируйте все действия
 по настройке мониторинга




                                                                 TM

                                    11   Profit from the Cloud
совет 3/1 за чем следить?                                     github.com/hayorov/grid-tips/tip3



Параметров так много, за чем следует наблюдать и пристально следить?




   такая таблица может быть очень полезна в диагностике проблем и слабых мест кластера



                                                                                                   TM

                                            12                            Profit from the Cloud
совет 3/2 особые параметры
Уделите особое внимание специфичным параметрам selenium server:
 -   доступность порта сервера для получения запроса
 -   работоспособность xvfb (virtual frame buffer)
 -   количество активных экземпляров браузеров




                                  недельный график мониторинга параметров selenium


                                                                                            TM

                                             13                     Profit from the Cloud
совет 3/3 нотификация
указывайте явные критерии для уведомлений




                            пример триггеров используемых нами




                            блок уведомлений в нашей dashboard




                                                                                   TM

                                  14                       Profit from the Cloud
совет 4 «сам себе лекарь»
     автоматизируйте решения кричных проблем




                                                         доступная память




                                                         лимит числа браузеров


                         наглядная иллюстрация появления «зомби» браузеров




                                                                                   TM

                                   15                      Profit from the Cloud
совет 5 балансировка
 А что если выйдет из строя hub?



            node    node     node     node   node   node


                     hub                     hub




                           HTTP прокси сервер




 Почему для этих целей не подойдет nginx?



                                                                                   TM

                                      16                   Profit from the Cloud
ваши вопросы и



                             Thank You!

               @hayorov



этот файл уже на   slideshare.net/hayorov
Мы растем, задач много. Нам постоянно нужны..
• Разработчики             • Программ-менеджеры
• Проджект-менеджеры (CSD) • QA
             job@parallels.com




                                                             TM

                       18            Profit from the Cloud
Parallels - лидер на международном рынке в своих сегментах

• Автоматизация оказания              • Виртуализация Mac
  облачных сервисов                   • 3 млн. ПК во всем мире
• 10 млн. СМБ в 125 странах           • 80% рынка в розничных сетях США


Работа в Parallels - от программирования в ядрах ОС до
создания web интерфейсов и мобильных приложений

• Интересные проекты на                 • Работа бок о бок с
  грани невозможного                      легендами ИТ-индустрии

• Карьера, опционы                      • Процесс разработки
                                          мирового класса


              Присоединяйся к лучшим! Job@parallels.com

                                                                               TM

                                 19                    Profit from the Cloud

More Related Content

Similar to Selenium Grid: Culinary tips #optconf.ru

Внутренние «облака» для тестирования ПО: как их создавать и как использовать ...
Внутренние «облака» для тестирования ПО: как их создавать и как использовать ...Внутренние «облака» для тестирования ПО: как их создавать и как использовать ...
Внутренние «облака» для тестирования ПО: как их создавать и как использовать ...
SQALab
 
Легко ли продавать контейнеры на базаре (Павел Емельянов)
Легко ли продавать контейнеры на базаре (Павел Емельянов)Легко ли продавать контейнеры на базаре (Павел Емельянов)
Легко ли продавать контейнеры на базаре (Павел Емельянов)Ontico
 
Anisimov parallels
Anisimov parallelsAnisimov parallels
Anisimov parallelssouthmos
 
Облачный рынок в России в и в мире. Взгляд Parallels.
Облачный рынок в России в и в мире. Взгляд Parallels.Облачный рынок в России в и в мире. Взгляд Parallels.
Облачный рынок в России в и в мире. Взгляд Parallels.
Michael Oreshin
 
CloudsNN 2013 Анисимов Константин. Облачный рынок в цифрах и фактах.
CloudsNN 2013 Анисимов Константин. Облачный рынок в цифрах и фактах.CloudsNN 2013 Анисимов Константин. Облачный рынок в цифрах и фактах.
CloudsNN 2013 Анисимов Константин. Облачный рынок в цифрах и фактах.
Clouds NN
 
Путь в облака. А.Зобов.
Путь в облака. А.Зобов.Путь в облака. А.Зобов.
Путь в облака. А.Зобов.Clouds NN
 
VmWare on IBM Cloud
VmWare on IBM Cloud VmWare on IBM Cloud
VmWare on IBM Cloud
Azad Mukhurov
 
Cloud. Business-model-innovation
Cloud. Business-model-innovationCloud. Business-model-innovation
Cloud. Business-model-innovationRuslanKorotaev
 
PMIufa 2011-03-24
PMIufa 2011-03-24PMIufa 2011-03-24
VMware - коротко о продуктах, технологиях и сложностях перевода
VMware - коротко о продуктах, технологиях и сложностях переводаVMware - коротко о продуктах, технологиях и сложностях перевода
VMware - коротко о продуктах, технологиях и сложностях перевода
MUK
 
Особенности тестирования сloud-приложений
Особенности тестирования сloud-приложенийОсобенности тестирования сloud-приложений
Особенности тестирования сloud-приложений
SQALab
 
Блуждание во тьме. Или как понять состояние продукта
Блуждание во тьме. Или как понять состояние продуктаБлуждание во тьме. Или как понять состояние продукта
Блуждание во тьме. Или как понять состояние продукта
qasib
 
Как не положить тысячи серверов с помощью системы централизованного управлени...
Как не положить тысячи серверов с помощью системы централизованного управлени...Как не положить тысячи серверов с помощью системы централизованного управлени...
Как не положить тысячи серверов с помощью системы централизованного управлени...
Ontico
 
Как не положить тысячи серверов с помощью системы централизованного управлени...
Как не положить тысячи серверов с помощью системы централизованного управлени...Как не положить тысячи серверов с помощью системы централизованного управлени...
Как не положить тысячи серверов с помощью системы централизованного управлени...Dmitry Samsonov
 
FlexPod – Атомы ЦОДа
FlexPod – Атомы ЦОДа FlexPod – Атомы ЦОДа
FlexPod – Атомы ЦОДа Cisco Russia
 
Облака для бизнеса: что происходит в мире и СНГ
Облака для бизнеса: что происходит в мире и СНГОблака для бизнеса: что происходит в мире и СНГ
Облака для бизнеса: что происходит в мире и СНГ
ActiveCloud
 
Service-as-a-Грабли. Алексей Грачев. EMC
Service-as-a-Грабли. Алексей Грачев. EMCService-as-a-Грабли. Алексей Грачев. EMC
Service-as-a-Грабли. Алексей Грачев. EMCMichael Oreshin
 
Dmytro Nemesh "Building the perfect infrastructure with Kubernetes"
Dmytro Nemesh "Building the perfect infrastructure with Kubernetes"Dmytro Nemesh "Building the perfect infrastructure with Kubernetes"
Dmytro Nemesh "Building the perfect infrastructure with Kubernetes"
Fwdays
 
Куда летят облака? Примеры внедрений, вопросы и прогнозы развития в России v.1.1
Куда летят облака? Примеры внедрений, вопросы и прогнозы развития в России v.1.1Куда летят облака? Примеры внедрений, вопросы и прогнозы развития в России v.1.1
Куда летят облака? Примеры внедрений, вопросы и прогнозы развития в России v.1.1Michael Kozloff
 
Облачные тестовые среды Перфоманс лаб
Облачные тестовые среды Перфоманс лабОблачные тестовые среды Перфоманс лаб
Облачные тестовые среды Перфоманс лаб
Глобал Позитив
 

Similar to Selenium Grid: Culinary tips #optconf.ru (20)

Внутренние «облака» для тестирования ПО: как их создавать и как использовать ...
Внутренние «облака» для тестирования ПО: как их создавать и как использовать ...Внутренние «облака» для тестирования ПО: как их создавать и как использовать ...
Внутренние «облака» для тестирования ПО: как их создавать и как использовать ...
 
Легко ли продавать контейнеры на базаре (Павел Емельянов)
Легко ли продавать контейнеры на базаре (Павел Емельянов)Легко ли продавать контейнеры на базаре (Павел Емельянов)
Легко ли продавать контейнеры на базаре (Павел Емельянов)
 
Anisimov parallels
Anisimov parallelsAnisimov parallels
Anisimov parallels
 
Облачный рынок в России в и в мире. Взгляд Parallels.
Облачный рынок в России в и в мире. Взгляд Parallels.Облачный рынок в России в и в мире. Взгляд Parallels.
Облачный рынок в России в и в мире. Взгляд Parallels.
 
CloudsNN 2013 Анисимов Константин. Облачный рынок в цифрах и фактах.
CloudsNN 2013 Анисимов Константин. Облачный рынок в цифрах и фактах.CloudsNN 2013 Анисимов Константин. Облачный рынок в цифрах и фактах.
CloudsNN 2013 Анисимов Константин. Облачный рынок в цифрах и фактах.
 
Путь в облака. А.Зобов.
Путь в облака. А.Зобов.Путь в облака. А.Зобов.
Путь в облака. А.Зобов.
 
VmWare on IBM Cloud
VmWare on IBM Cloud VmWare on IBM Cloud
VmWare on IBM Cloud
 
Cloud. Business-model-innovation
Cloud. Business-model-innovationCloud. Business-model-innovation
Cloud. Business-model-innovation
 
PMIufa 2011-03-24
PMIufa 2011-03-24PMIufa 2011-03-24
PMIufa 2011-03-24
 
VMware - коротко о продуктах, технологиях и сложностях перевода
VMware - коротко о продуктах, технологиях и сложностях переводаVMware - коротко о продуктах, технологиях и сложностях перевода
VMware - коротко о продуктах, технологиях и сложностях перевода
 
Особенности тестирования сloud-приложений
Особенности тестирования сloud-приложенийОсобенности тестирования сloud-приложений
Особенности тестирования сloud-приложений
 
Блуждание во тьме. Или как понять состояние продукта
Блуждание во тьме. Или как понять состояние продуктаБлуждание во тьме. Или как понять состояние продукта
Блуждание во тьме. Или как понять состояние продукта
 
Как не положить тысячи серверов с помощью системы централизованного управлени...
Как не положить тысячи серверов с помощью системы централизованного управлени...Как не положить тысячи серверов с помощью системы централизованного управлени...
Как не положить тысячи серверов с помощью системы централизованного управлени...
 
Как не положить тысячи серверов с помощью системы централизованного управлени...
Как не положить тысячи серверов с помощью системы централизованного управлени...Как не положить тысячи серверов с помощью системы централизованного управлени...
Как не положить тысячи серверов с помощью системы централизованного управлени...
 
FlexPod – Атомы ЦОДа
FlexPod – Атомы ЦОДа FlexPod – Атомы ЦОДа
FlexPod – Атомы ЦОДа
 
Облака для бизнеса: что происходит в мире и СНГ
Облака для бизнеса: что происходит в мире и СНГОблака для бизнеса: что происходит в мире и СНГ
Облака для бизнеса: что происходит в мире и СНГ
 
Service-as-a-Грабли. Алексей Грачев. EMC
Service-as-a-Грабли. Алексей Грачев. EMCService-as-a-Грабли. Алексей Грачев. EMC
Service-as-a-Грабли. Алексей Грачев. EMC
 
Dmytro Nemesh "Building the perfect infrastructure with Kubernetes"
Dmytro Nemesh "Building the perfect infrastructure with Kubernetes"Dmytro Nemesh "Building the perfect infrastructure with Kubernetes"
Dmytro Nemesh "Building the perfect infrastructure with Kubernetes"
 
Куда летят облака? Примеры внедрений, вопросы и прогнозы развития в России v.1.1
Куда летят облака? Примеры внедрений, вопросы и прогнозы развития в России v.1.1Куда летят облака? Примеры внедрений, вопросы и прогнозы развития в России v.1.1
Куда летят облака? Примеры внедрений, вопросы и прогнозы развития в России v.1.1
 
Облачные тестовые среды Перфоманс лаб
Облачные тестовые среды Перфоманс лабОблачные тестовые среды Перфоманс лаб
Облачные тестовые среды Перфоманс лаб
 

More from Alexander Khaerov

The Amazing AppEngine
The Amazing AppEngineThe Amazing AppEngine
The Amazing AppEngine
Alexander Khaerov
 
Moscow IT-English Meetup #1
Moscow IT-English Meetup #1Moscow IT-English Meetup #1
Moscow IT-English Meetup #1
Alexander Khaerov
 
Deploying to AppEngine
Deploying to AppEngineDeploying to AppEngine
Deploying to AppEngine
Alexander Khaerov
 
Understanding PaaS
Understanding PaaSUnderstanding PaaS
Understanding PaaS
Alexander Khaerov
 
Hayorov AA selen_internal_demo
Hayorov AA selen_internal_demoHayorov AA selen_internal_demo
Hayorov AA selen_internal_demoAlexander Khaerov
 

More from Alexander Khaerov (8)

The Amazing AppEngine
The Amazing AppEngineThe Amazing AppEngine
The Amazing AppEngine
 
Moscow IT-English Meetup #1
Moscow IT-English Meetup #1Moscow IT-English Meetup #1
Moscow IT-English Meetup #1
 
Deploying to AppEngine
Deploying to AppEngineDeploying to AppEngine
Deploying to AppEngine
 
Understanding PaaS
Understanding PaaSUnderstanding PaaS
Understanding PaaS
 
Mpc store testing
Mpc store testingMpc store testing
Mpc store testing
 
Hayorov AA selen_internal_demo
Hayorov AA selen_internal_demoHayorov AA selen_internal_demo
Hayorov AA selen_internal_demo
 
Selen short regru + demo
Selen short regru + demoSelen short regru + demo
Selen short regru + demo
 
Selen framework
Selen frameworkSelen framework
Selen framework
 

Selenium Grid: Culinary tips #optconf.ru

  • 1. Selenium Grid: Culinary tips TM Profit from the Cloud Alexander Hayorov November, 2012
  • 2. об авторе доклада 3+ года в автоматизации тестирования сейчас в automation QA – автоматизация облачных услуг и хостинга 4 года - опыт автоматизации тестирования 5 команд автоматизации + outsourcing TM 2 Profit from the Cloud
  • 3. немного теории карта запросов: роль хаба node node node Grid hub Testing apps node Clients - ключевая роль в стабильности и производительности; - концентрирует на себе: запросы, трафик; - осуществляет балансировку и контроль; TM 3 Profit from the Cloud
  • 4. Почему мы выбрали selenium grid? - один сервис на все команды - много трудоемких (продолжительных, многопоточных) тестов - стабильность в тестировании - нужна стандартизованная среда - желание повысить утилизацию ресурсов для тестирования TM 4 Profit from the Cloud
  • 5. какие проблемы нас ожидают selenium – это сервис логирование мониторинг нотификация «сам себе лекарь» балансировка TM 5 Profit from the Cloud
  • 6. ограничения и особенности доклада Pacman problem Firefox only *nix platform only RC WebDriver TM 6 Profit from the Cloud
  • 7. совет 0 виртуализация добавьте слой виртуализации и Вы получите: - увеличение уровня доступности приложений, плавное функционирование - снижение стоимости инфраструктуры - эффективное обслуживание серверов - возможность гибкого распределения ресурсов и много-много прочего… посмотрите Virtuozzo Containers parallels.com/products/pvc/ TM 7 Profit from the Cloud
  • 8. совет 1 selenium это сервис github.com/hayorov/grid-tips/tip1 создайте отдельного пользователя и группу определите структуру директорий сервера создайте и используйте init-скрипты автостарт после перезагрузки TM 8 Profit from the Cloud
  • 9. совет 2 логирование Обычное перенаправление логов в файл с logrotate приводит к остановке их записи ведите, ротируйте, и храните лог файлы TM 9 Profit from the Cloud
  • 10. совет 2/1 сборка логов Найдите для себя приемлемую технологию по сбору и централизованному хранению логов для чего? - удобство доступа и хранения - быстрый просмотр - возможность определения общих проблем например, с помощью Graylog2 TM 10 Profit from the Cloud
  • 11. совет 3 мониторинг Какая должна быть система? - достаточно производительная - легко изменяемая под Ваши нужды - предоставляющая API автоматизируйте все действия по настройке мониторинга TM 11 Profit from the Cloud
  • 12. совет 3/1 за чем следить? github.com/hayorov/grid-tips/tip3 Параметров так много, за чем следует наблюдать и пристально следить? такая таблица может быть очень полезна в диагностике проблем и слабых мест кластера TM 12 Profit from the Cloud
  • 13. совет 3/2 особые параметры Уделите особое внимание специфичным параметрам selenium server: - доступность порта сервера для получения запроса - работоспособность xvfb (virtual frame buffer) - количество активных экземпляров браузеров недельный график мониторинга параметров selenium TM 13 Profit from the Cloud
  • 14. совет 3/3 нотификация указывайте явные критерии для уведомлений пример триггеров используемых нами блок уведомлений в нашей dashboard TM 14 Profit from the Cloud
  • 15. совет 4 «сам себе лекарь» автоматизируйте решения кричных проблем доступная память лимит числа браузеров наглядная иллюстрация появления «зомби» браузеров TM 15 Profit from the Cloud
  • 16. совет 5 балансировка А что если выйдет из строя hub? node node node node node node hub hub HTTP прокси сервер Почему для этих целей не подойдет nginx? TM 16 Profit from the Cloud
  • 17. ваши вопросы и Thank You! @hayorov этот файл уже на slideshare.net/hayorov
  • 18. Мы растем, задач много. Нам постоянно нужны.. • Разработчики • Программ-менеджеры • Проджект-менеджеры (CSD) • QA job@parallels.com TM 18 Profit from the Cloud
  • 19. Parallels - лидер на международном рынке в своих сегментах • Автоматизация оказания • Виртуализация Mac облачных сервисов • 3 млн. ПК во всем мире • 10 млн. СМБ в 125 странах • 80% рынка в розничных сетях США Работа в Parallels - от программирования в ядрах ОС до создания web интерфейсов и мобильных приложений • Интересные проекты на • Работа бок о бок с грани невозможного легендами ИТ-индустрии • Карьера, опционы • Процесс разработки мирового класса Присоединяйся к лучшим! Job@parallels.com TM 19 Profit from the Cloud

Editor's Notes

  1. Краткая теория завершена, но перед тем как давать советы я хочу сказать немного об ограничениях которые накладываются на весь мой доклад. Проблема пакмана приводит к тому что рисунки и конфигурации grid в рассказе актуальны именно для Selenium RC (хотя они должны работать с незначительными изменениями для WebDriver)Так случилось что для тестирования у нас используется только firefox. На текущий момент разных версий, но грид построен на 16 версиии я не уделяю внимание про особенность поддержки мультибраузерности.В качестве серверной платформы для grid у нас иcпользуются linux(а логотип windows8 я добавил, потому что это сейчас популярная тема), а если серьёзно все системные настройки и технические решения так или иначе будут зависеть от linux. Вы евангелист microsoft, ну что ж прошу меня извинить. Ну и значок цепочки – это внешняя ссылка на материал (их будет очень много), на самом деле я думаю презентация должна быть ценна именно этими ссылками и не конкретными советами которые будут дальше.. Значок осьминога явно указывает что на github есть репозиторий где вы найдете код который иллюстрируется в слайдах. Вообще я люблю когда на слайдах есть листинг … они не дают заснуть слушателям. Все советы…
  2. Примите как должное – selenium это такой же сервис как sshили ftp, и нельзя запускать его абы как, создайте отдельных пользователя и группу, опишите структуру директорий. Создайте инит скрипты, которые дадут Вам единую точку управления сервисом, о том как это делать можно прочитать ссылку или просто посмотреть любой приличный инит скрипт. Не стоит сразу стараться создать его максимально универсальным, со временем Вы создадите для приемлемый вариант.
  3. Совет два.Логи наше все. Они как бекапы бесполезны до поры до времени…пока не случится что-то плохое. Из своей практики могу сказать что никто не уделяет должное внимание логам selenium сервера. На то думаю множество причин –их слишком много, они почти всегда непонятные, да и во время разработки тестов есть масса других индикаторов все ли работает как нужно. А теперь горькая правда – логи сервера порой единственно что позволит понять в чем проблема. Но какая сложность или особенность в логировании selenium? По-умолчанию, логи получаются перенаправлением STD odt/err в файл. Часто при рестарт сервиса они перетираются, а если нет то накапливаются сотнями гигабайта. Наспех настроенный logrotate приводи к остановке записи логов в файлах при очередном цикле ротирования, а Вы уверены что логи у Вас пишутся. Как выйти из ситуации? Примените всю мощь log4j который не только позволяет детально настроить уровни логирования, но и реализовать логику корректной записи и ротирования.Детально как это сделать описано в приведенных ссылках.
  4. Продолжая тему логов, хочется упомянуть об удобстве коллекционирования – те сборки логов в одном надежном и просторном месте. Эту хитрость знают матерые системные администраторы, у которых под контролем парк серверов. А чем наш selenium кластер хуже? Я бы мог посоветовать graylog2 удобный коллектор, немного монстроидален, но богатый функционал никогда не будет лишним. Что мы получим от единой точки доступа логам? Первое – удобство. Не нужно заходить на машину и набирать магическое less grep tail –f. Приятный интерфейс просмотра добавит скорости при анализе журналов событий. Ну и напоследок мы получаем возможность выявления общих проблем.
  5. Любой сервис нуждается в мониторинге. Мы уже запомнили что selenium это такой же сервис как им многие другие, хотя внимание по началу он требует куда больше. И так перед нами ответственный выбор – система мониторинга или выбор уже сделан давно, неважно. Важно что чтобы система мониторинга Вас устраивала – по производительности, легко подстраивалась под ваши меняющиеся нужны и как производного обладала удобным API с клиентом под ваш любимый язык разработки.Для нас такой системой стал zabbix. Он обладает достойным API и качественным сторонним клиентом для многих языков в т.ч. и для pythonОчень важно автоматизировать все действия до добавлению сервисов в мониторинг и установки разных агентов и параметров. Это не просто съэкономит Ваше время но и гарантирует что Вы не забудете (или поленитесь) что-то добавить в вашу систему мониторинга. Решений тут также крайне много – если Вы используйте python – взгляните на fabric.
  6. Все технические и идеологические вопросы мониторинга разрешены. Серверы настроены, но за какими параметрами следить? Я думаю за всеми! Ну, конечно, в первую очередь за самыми типичными системными –память, диск, свободное места разделов, число inodes. В общем все что как правило уже предоставляет выбранная вами система мониторинга. В качестве наглядного примера хочу показать один из наших экранов по мониторингу кластера. Таблица в который по вертикали выставлены основные параметры – утилизация CPU, сетевая активность, объем доступной оперативной памяти. А по горизонтали – конкретные серверы кластера. Очень удобно и вполне наглядно, пока сервера не больше десятка)
  7. – специфичными параметрами. Их Вам нужно выделить самим, но от этого их ценность только возрастает. Что за параметры это например могут быть? Доступность порта на который приходят запросы, как его проверять думаю каждый решит сам лишь напомню что это http порт. Я уверен что запуская селениум сервер в linuxВы активно используйте virtual frame buffer для исков, и конечно, его работоспособность краеугольный камень в работе браузера, в которым осуществляется тестирование. Очень ценным параметром может стать подсчет числа активных те запущенных экземпляров браузера, в конечном итоге складывая эти числа со всех нодгрида Вы можете смело заявлять миру что у Вас n число потоков тестирования. Тут я разместил правдивый недельный график отображающий состояние описанных параметров.
  8. И хочу закончить тему мониторинга кластера нотификацией и способами реагирования на все те события и параметры за которыми пристально следить zabbixили что-то что используете Вы. Мы крайне заняты и хотим отвлекаться только на важные события мониторинга, для этого нужно четко определить что для нас важно, а что нет, для этого существуют триггеры или или аналоги. Обязательно задавайте конкретные и как можно более простые условия срабатывания триггеров. По ним мы выполняем нотификацию, куда именно опять таки решать Вам – email, smsили никуда. Мы использует специальные dashboard для выводы разной важной информации, туда же мы выводит кратно нотификации системы мониторинга, один из вариантов как раз показан на нижней картинке. Ну а more information ведет прямиком в zabbix
  9. Покончив с мониторингом, самое время автоматизировать решение каких-либо важных проблем. Это особенно актуально, когда нет возможность в корне побороть проблему (или пронять ее природу), а возникает она эпизодически и решение отнимает заметное время, при этом действия явно носят однотипный характер и легко поддаются автоматизации. Как пример, могу привести исключительную ситуацию в который накапливаются открытые браузеры при том что selenium server считает из закрытыми. Последствия как правило довольно печальный, мы расходуем сейчас уже не такую дорогую память, затем уходим в свап и начинаем расходовать очень ценный disk io, что привод к проблемам на всей физической машине. Придумали решение (листинг на экране) закрепили скрипт на срабатывает по тригеру максимального числа браузеров и PROFIT!
  10. Немного о стабильности и живучести selenium grid. А что если сервер выполняющий роль hub выйдет из строя? Как мы заметили в начале – hub ключевая точка. Да наш огромный кластер станет не работопригодным. Добавить живучести можно запуском не одного, а нескольких hub и распределением между ними нод (с браузерами), а общую точку объединения хабов – сможет выполнять любой http прокси сервер. Ведь сам селениум использует jetty. Можно если захотеть написаний свой – при помощи Twisted, как это показано у меня на слайде. А вот почему на эту роль не подойдет всеми любимый nginxдумаю каждый сможет догадаться сам.