Примечание
Для доступа к этой странице требуется авторизация. Вы можете попробовать войти или изменить каталоги.
Для доступа к этой странице требуется авторизация. Вы можете попробовать изменить каталоги.
В этой статье описано, как протестировать конечные точки частных приложений с помощью Нагрузочного тестирования Azure. Вы создадите ресурс нагрузочного тестирования Azure и включите его для создания нагрузки из виртуальной сети (внедрение виртуальной сети).
Эта функция включает указанные ниже сценарии использования.
- Создайте нагрузку на конечную точку, развернутую в виртуальной сети Azure.
- Создайте нагрузку на общедоступную конечную точку с ограничениями доступа (например, ограничением IP-адресов клиента).
- Создайте нагрузку на локальную службу (не общедоступную), которая подключена к Azure через ExpressRoute.
Дополнительные сведения о сценариях развертывания нагрузочного тестирования Azure в виртуальной сети.
На следующей схеме представлен технический обзор:
При запуске нагрузочного теста служба Azure Load Testing внедряет следующие ресурсы Azure в виртуальную сеть, содержащую конечную точку приложения:
- Виртуальные машины подсистемы тестирования. Эти виртуальные машины вызывают конечную точку приложения во время нагрузочного теста.
- Общедоступный IP-адрес.
- Группа безопасности сети (NSG).
- Балансировщик нагрузки Azure.
Эти ресурсы являются временными и существуют только во время выполнения нагрузочного теста. Если у вас есть ограничения на развертывание общедоступного IP-адреса, подсистемы балансировки нагрузки Azure или группы безопасности сети в подсети, можно отключить развертывание этих ресурсов. Дополнительные сведения см. в разделе "Настройка нагрузочного теста".
Если вы ограничиваете доступ к виртуальной сети, необходимо настроить виртуальную сеть, чтобы обеспечить связь между Azure Load Testing и внедренными виртуальными машинами.
Предварительные условия
- Ваша учетная запись Azure имеет роль Network Contributor, или родительскую роль этого назначения, в виртуальной сети. Ознакомьтесь с разделом "Проверка доступа для пользователя к ресурсам Azure", чтобы проверить ваши разрешения.
- Подсеть, используемая для нагрузочного тестирования Azure, должна иметь достаточное количество свободных IP-адресов, чтобы вместить количество движков нагрузочного тестирования для вашего теста. Узнайте больше о настройке теста для высокомасштабируемой нагрузки.
- Подсеть не должна быть делегирована какой-либо другой службе Azure. Например, его не следует делегировать Экземпляры контейнеров Azure (ACI). Дополнительные сведения о делегировании подсети.
- Подсеть не должна включать IPv6. Нагрузочное тестирование Azure не поддерживает подсети с поддержкой IPv6. Узнайте больше об IPv6 для виртуальной сети Azure
- Azure CLI версии 2.2.0 или более поздней версии (если вы используете CI/CD). Запустите
az --version
, чтобы найти версию, установленную на компьютере. Если вам нужно установить или обновить Azure CLI, см . инструкции по установке Azure CLI.
Настройка виртуальной сети
Чтобы протестировать частные конечные точки, подключите нагрузочное тестирование Azure к виртуальной сети Azure. Виртуальная сеть должна иметь по крайней мере одну подсеть и разрешать исходящий трафик в службу нагрузочного тестирования Azure.
Если у вас еще нет виртуальной сети, выполните следующие действия, чтобы создать виртуальную сеть Azure в портал Azure.
Внимание
Виртуальная сеть должна находиться в той же подписке и в том же регионе, что и ресурс нагрузочного тестирования.
Создание подсети
При развертывании нагрузочного тестирования Azure в виртуальной сети рекомендуется использовать отдельные подсети для нагрузочного тестирования Azure и конечной точки приложения. Этот подход позволяет настраивать политики доступа к сетевому трафику специально для каждой цели. Дополнительные сведения о добавлении подсети в виртуальную сеть.
(Необязательно) Настройка правил трафика
Для нагрузочного тестирования Azure требуется, чтобы внедренные виртуальные машины в виртуальной сети были разрешены для исходящего доступа к службе нагрузочного тестирования Azure. По умолчанию при создании виртуальной сети исходящий доступ уже разрешен.
Если вы планируете дополнительно ограничить доступ к виртуальной сети с помощью группы безопасности сети или если у вас уже есть группа безопасности сети, необходимо настроить правило безопасности исходящего трафика, чтобы разрешить трафик с виртуальных машин тестового модуля в службу нагрузочного тестирования Azure.
Чтобы настроить исходящий доступ для Azure Load Testing, выполните приведенные действия.
Войдите на портал Azure.
Перейдите в группу безопасности сети.
Если у вас еще нет группы безопасности сети, выполните следующие действия, чтобы создать группу безопасности сети.
Создайте СЗГ в том же регионе, что и ваша виртуальная сеть, а затем свяжите её с подсетью.
Выберите правила безопасности исходящего трафика в области навигации слева.
Нажмите кнопку +Добавить, чтобы добавить новое правило безопасности исходящего трафика. Введите следующие сведения, чтобы создать новое правило.
Поле Значение Источник Any Диапазоны исходных портов * Назначение Any Диапазоны портов назначения * Имя azure-load-testing-outbound Description Используется для различных операций, связанных с оркестрацией нагрузочных тестов. Выберите "Добавить ", чтобы добавить правило безопасности исходящего трафика в группу безопасности сети.
Настройка скрипта нагрузочного теста
Виртуальные машины подсистемы тестирования, запускающие скрипт тестирования, внедряются в виртуальную сеть, содержащую конечную точку приложения. Теперь можно напрямую ссылаться на конечную точку в тестовом скрипте с помощью частного IP-адреса или разрешения имени в вашей сети.
Например, для конечной точки с IP-адресом 10.179.0.7 в виртуальной сети с диапазоном подсети 10.179.0.0/18 файл JMX может иметь следующие сведения:
<HTTPSamplerProxy guiclass="HttpTestSampleGui" testclass="HTTPSamplerProxy" testname="Internal service homepage" enabled="true">
<elementProp name="HTTPsampler.Arguments" elementType="Arguments" guiclass="HTTPArgumentsPanel" testclass="Arguments" testname="Service homepage" enabled="true">
<collectionProp name="Arguments.arguments"/>
</elementProp>
<stringProp name="HTTPSampler.domain">10.179.0.7</stringProp>
<stringProp name="HTTPSampler.port">8081</stringProp>
<stringProp name="HTTPSampler.protocol"></stringProp>
<stringProp name="HTTPSampler.contentEncoding"></stringProp>
<stringProp name="HTTPSampler.path"></stringProp>
<stringProp name="HTTPSampler.method">GET</stringProp>
</HTTPSamplerProxy>
Настройка нагрузочного теста
Чтобы включить в нагрузочный тест частные конечные точки, необходимо настроить параметры виртуальной сети для нагрузочного теста. Параметры виртуальной сети можно настроить в портале Azure, или указать в файле конфигурации YAML для конвейеров CI/CD.
Внимание
При развертывании нагрузочного тестирования Azure в виртуальной сети взимается дополнительная плата. Azure Load Testing развертывает Azure Load Balancer и общедоступный IP-адрес в вашей подписке, и за созданный трафик может взиматься плата. Дополнительные сведения см. в разделе о ценах на виртуальную сеть.
Настройте виртуальную сеть в портале Azure
Параметры конфигурации виртуальной сети можно указать в мастере создания и обновления нагрузочного теста.
Войдите на портал Azure с помощью учетных данных вашей подписки Azure.
Перейдите к ресурсу Нагрузочного тестирования Azure и выберите "Тесты " в левой области.
Откройте мастер создания и обновления нагрузочного теста двумя способами:
Выберите + Создать > Загрузите сценарий, если вы хотите создать новый тест.
Выберите существующий тест из списка и нажмите кнопку "Изменить".
На вкладке "Загрузка" выберите режим частного трафика, а затем выберите виртуальную сеть и подсеть.
Если в виртуальной сети есть несколько подсетей, обязательно выберите подсеть, в которую будут размещаться внедренные виртуальные машины подсистемы тестирования.
Внимание
Убедитесь, что у вас есть достаточные разрешения для управления виртуальными сетями. Вам требуется роль участника сети.
(Необязательно) Установите флажок Отключить развертывание общедоступного IP-адреса, если вы не хотите развертывать общедоступный IP-адрес, подсистему балансировки нагрузки и группу безопасности сети в подсети.
При выборе этого параметра убедитесь, что существует альтернативный механизм, например шлюз Azure NAT, Брандмауэр Azure или сетевое виртуальное устройство (NVA), чтобы включить маршрутизацию исходящего трафика из подсети.
Просмотрите или заполните сведения о нагрузочном тесте. Выполните следующие действия, чтобы создать или управлять тестом.
Выберите "Просмотреть + создать и затем Создать (или Применить, если обновляете существующий тест).
При запуске нагрузочного теста Azure Load Testing внедряет виртуальные машины подсистемы тестирования в виртуальную сеть и подсеть. Тестовый скрипт теперь может получить доступ к частной конечной точке приложения в виртуальной сети.
Настройка виртуальной сети для конвейеров CI/CD
Чтобы настроить нагрузочный тест с параметрами виртуальной сети, обновите файл конфигурации теста YAML.
Откройте терминал и используйте Azure CLI для входа в подписку Azure:
az login az account set --subscription <your-Azure-Subscription-ID>
Получите идентификатор подсети и скопируйте полученное значение:
az network vnet subnet show -g <your-resource-group> --vnet-name <your-vnet-name> --name <your-subnet-name> --query id
Откройте файл конфигурации тестов YAML в избранном редакторе.
Добавьте свойство
subnetId
в файл конфигурации и укажите ранее скопированный идентификатор подсети.version: v0.1 testName: SampleTest testPlan: SampleTest.jmx description: 'Load test the website home page' engineInstances: 1 subnetId: <your-subnet-id> publicIPDisabled: False
При необходимости, можно задать значение для свойства
publicIPDisabled
кTrue
. Для получения дополнительной информации о конфигурации YAML см. справочник по тестовой конфигурации YAML.Внимание
Убедитесь, что у вас есть достаточные разрешения для управления виртуальными сетями. Вам требуется роль участника сети.
Сохраните файл конфигурации YAML и зафиксируйте изменения в репозитории исходного кода.
После запуска рабочего процесса CI/CD начинается нагрузочное тестирование, и теперь можно получить доступ к закрытой конечной точке приложения в вашей виртуальной сети.
Устранение неполадок
Чтобы устранить проблемы при создании и выполнении нагрузочных тестов для частных конечных точек, см. инструкцию по устранению неполадок с тестами частной конечной точки.
Следующие шаги
- Дополнительные сведения о сценариях развертывания нагрузочного тестирования Azure в виртуальной сети.
- Узнайте, как устранять неполадки тестов частной конечной точки.