Нагрузочное тестирование с масштабированием в Docker-контейнерах

Задача

Продукту в сфере кибербезопасности требовалось нагрузочное тестирование в условиях реалистичной многопользовательской нагрузки, а команде — воспроизводимые тестовые стенды на нескольких платформах без создания системы развёртывания с нуля.

Решение

Нагрузочное тестирование вели shell-скриптами, которые масштабируют нагрузку симулированных пользователей добавлением Docker-контейнеров. Тестовые стенды строились на VirtualBox, VMware, Docker и виртуальных машинах AWS с CentOS и Rocky Linux; для развёртывания стендов использовалась существующая продвинутая система на базе OpenStack. Тесты Robot Framework дополнили новыми кейсами и Python-ключевыми словами, а новые функции безопасности тестировались вручную.

Результат

Повторяемые прогоны нагрузки для любого целевого количества пользователей за счёт масштабирования контейнеров, на стендах, которые можно пересоздать по требованию — в локальной виртуализации, облачных ВМ и OpenStack.

Автор статьи: Андрей Олегович