Существует как минимум три возможных варианта, которые соответствуют понятию «тест облака»: тестирование облачного ПО (SaaS-продуктов), тестирование качества ПО с помощью облачных инструментов и тестирование облачной инфраструктуры. Нам интересен третий вариант — а именно как протестировать IaaS до размещения IT-сервисов на виртуальных мощностях провайдера.
- Что собой представляет тест облака
- Проблемы с тестированием облачной инфраструктуры
- Чем и как тестировать облако
- На что обратить внимание при тестировании IaaS
Что собой представляет тест облака
Далее мы будем говорить о том, как оценить облако с точки производительности и корректного функционирования, а также безопасности, конфиденциальности, способности к масштабированию и аварийному восстановлению данных из бэкапов.
Эксперт Colobridge:
«В нашей компании под тестом облачной инфраструктуры мы обычно подразумеваем два вида тестирования. Первый — на соответствие заявленной конфигурации технических составляющих: производительности процессора, емкости накопителя, сетевую связанность. Второй — на удобство работы с самим облаком и поставщиком услуги: как функционирует панель управления, как быстро и насколько профессионально отвечает техподдержка».
Примеров тестов облака еще больше — помимо производительности и работы провайдера также можно оценивать функциональность, работу при пиковых нагрузках, совместимость, безопасность, задержку, доступность и другие параметры. Каждое такое тестирование выполняет ряд конкретных задач.
Вот несколько примеров:
- При тестировании производительности важно, чтобы сбой, затронувший один процесс или пользователя, не повлиял на другие процессы и других пользователей. Или чтобы на всех типах устройств, подключенных к облаку, производительность приложений была одинаковой.
- При тестировании безопасности важно, чтобы провайдер не имел доступа к клиентским данным и были активированы заявленные средства безопасности (брандмауэр, антивирус, VPN), а данные передавались в зашифрованном виде, если по договоренности поставщик услуги подключает шифрование.
- При проведении нагрузочного тестирования важно, чтобы IT-службы и системы оставались доступными при увеличении нагрузки в пределах выделенных ресурсов. Также необходимо понять, как работа разных приложений меняется при изменении нагрузки.
Проблемы с тестированием облачной инфраструктуры
Тест IaaS хотя и дает общее представление о работе провайдера и функционировании облака, но не всегда показывает реальную картину.
Почему так происходит? Вот лишь несколько основных причин:
- в отрасли отсутствуют стандартизированные подходы к проведению тестов облака;
- провайдеры часто выделяют вычислительные ресурсы автоматически («на лету»), что усложняет проведение тестов на производительность;
- не всегда есть возможность учесть временные / пиковые нагрузки, которые могут отличаться в будние дни и выходные, а также бэкапирование, сервисное обслуживание, аварийные ситуации, сетевые атаки и другие факторы;
- повторно запущенный в том же облаке тест может показать разные результаты из-за отличий в работе физических компонентов (CPU, RAM, Disk) и виртуальных машин.
Эксперт Colobridge:
«Результаты синтетических тестов не всегда соответствуют действительности — это факт. Однако проблема не настолько глобальная, какой кажется на первый взгляд. Если тест показывает результат в условных единицах, вы можете сравнить его с результатами, полученными при тестировании наземной инфраструктуры или облака другого провайдера. И именно полученные выводу как раз будут корректными — вы поймете, где производительность лучше соответствует вашим потребностям. Еще можно разместить в облаке копию своего продуктива и оценить на соответствие облачную инфраструктуру в реальных условиях, но это тоже будут приблизительные результаты.
Еще одна проблема тестов соответствия мощностей облака заключается в том, что некоторые провайдеры иногда занижают производительность отдельных компонентов, чтобы обеспечить 100% соответствие SLA: например, используют серверы производительностью условных 2000 гигафлопс, в то время как в SLA указывают гарантированные 1000 гигафлопс. Благодаря такой заниженной гарантии тестирование всегда покажет положительный результат, но пользователь при этом может не узнать, что доступной производительности хватит на большее количество IT-сервисов».
Чем и как тестировать облако
Некоторые компании предлагают комплексные услуги по автоматизированному тестированию облачной инфраструктуры. Они привлекают тем, что на 20-30% сокращают время проведения тестирования и позволяют оценить вероятность, с которой приложения и сервисы после развертывания в реальной облачной среде будут работать так, как заявляет поставщик услуги (но эта цифра обычно далека от 100%). Например, для функционального тестирования используют AppPerfect, Jmeter, SOASTA CloudTest, LoadStorm. Для тестирования безопасности — Nessus, Wireshark или Nmap. Минус такого ПО в том, что оно довольно дорогое и сложное, требует от пользователя достаточно высокой квалификации.
В то же время многие предпочитают использовать отдельные инструменты для теста виртуальных ресурсов в облаке провайдера. Для тестирования производительности процессора можно выбирать любой тест из категории CPU-benchmark: Geekbench, PCMark, PassMark. Чтобы оценить работу диска, часто прибегают к IOmeter или DISKSPD. Если возможности воспользоваться перечисленными инструментами или их аналогами нет, можно сразу разместить тестовую среду сразу или, что более предпочтительно, после проведения базовых оценок производительности.
Выбор подхода к тестированию облака зависит от количества свободного времени, технических возможностей и наличия необходимой IT-экспертизы.
- Экспертиза отсутствует: клиент заливает в облако продуктив, приступает к работе с ним в штатном режиме и, если возникают проблемы, начинает искать утилиты для тестирования.
- Средняя экспертиза: клиент тестирует облачную среду синтетическими тестами и, если их результаты его устраивают, переносит в облако продуктив.
- Высокий уровень экспертизы: клиент тестирует облачную среду синтетическими тестами, затем размещает в облаке копию продуктива, имитирует реальную нагрузку и только после этого переносит на облачную платформу актуальную версию продуктива и приступает к работе.
На что обратить внимание при тестировании IaaS
- Убедитесь, что выбранный провайдер предоставляет возможность тестировать виртуальные ресурсы бесплатно в течение нескольких дней (оптимально — неделю и больше).
- Получите консультацию технических специалистов провайдера, чтобы знать заранее, соответствует ли выбранная конфигурация IaaS требованиям ваших сервисов.
- Во время тестирования создайте обращение в службу поддержки, чтобы оценить скорость ответа и качество обслуживания.
- Принимая окончательное решение, взвешивайте все ключевые факторы: результаты тестов облака, сертификацию и расположение дата-центра, работу поддержки, содержание SLA, продуктовый портфель и другие.
В Colobridge при аренде виртуальной инфраструктуры IaaS вы можете бесплатно тестировать ее в течение 7 дней с возможностью продления периода до 14 дней включительно. Мы ответим на все ваши вопросы, касающиеся тестирования производительности, безопасности, функциональности и другие — задайте их нашему менеджеру по телефону или другим удобным способом.