Создание агента тестирования
Подготовка инфраструктуры
-
Создайте сервисный аккаунт для агента тестирования:
-
Настройте группу безопасности агента тестирования.
Создание агента тестирования
Примечание
Если агент нужен вам для единичного использования, вы можете создать временный агент. Временный агент тестирования будет создан только для определенного теста и после завершения теста будет удален.
Смотреть видео в Yandex Cloud Video
-
Если у вас еще нет пары SSH-ключей, создайте их.
-
Создайте агент:
Консоль управленияCLI-
В консоли управления
выберите каталог, в котором будет создан агент. -
В списке сервисов выберите Load Testing.
-
На вкладке Агенты нажмите кнопку Создать агент.
-
Укажите имя агента, например
agent-008. -
Укажите ту же зону доступности, в которой находится цель тестирования.
-
В блоке Агент:
- Выберите подходящий тип агента. Подробнее см. в разделе Производительность агентов.
- Укажите подсеть, в которой находится цель тестирования. В подсети должен быть создан и настроен NAT-шлюз.
- Если вам доступны группы безопасности, выберите заранее настроенную группу безопасности агента.
-
В блоке Доступ укажите данные для доступа к агенту:
-
Выберите сервисный аккаунт
sa-loadtest. -
В поле Логин введите имя пользователя.
Внимание
Не используйте логин
rootили другие имена, зарезервированные операционной системой. Для выполнения операций, требующих прав суперпользователя, используйте командуsudo. -
В поле SSH-ключ вставьте содержимое файла открытого ключа.
-
-
Нажмите Создать.
-
Дождитесь завершения процесса создания виртуальной машины. Статус агента должен смениться на
Ready for test.Примечание
Если процесс создания агента остановился на статусе
Initializing connection, проверьте выполнение условий:- У агента есть доступ к
loadtesting.api.cloud.yandex.net:443и публичный IP-адрес. - В целевой подсети настроен NAT-шлюз.
- У сервисного аккаунта, который назначен агенту, есть необходимые роли.
- У агента есть доступ к
Если у вас еще нет интерфейса командной строки Yandex Cloud (CLI), установите и инициализируйте его.
По умолчанию используется каталог, указанный при создании профиля CLI. Чтобы изменить каталог по умолчанию, используйте команду
yc config set folder-id <идентификатор_каталога>. Также для любой команды вы можете указать другой каталог с помощью параметров--folder-nameили--folder-id.-
Посмотрите описание команды CLI для создания агента:
yc loadtesting agent create --help -
Выберите ту же зону доступности, в которой находится цель тестирования.
-
Выберите подсеть, в которой находится цель тестирования. В подсети должен быть создан и настроен NAT-шлюз.
Чтобы получить список доступных подсетей с помощью CLI, выполните следующую команду:
yc vpc subnet listРезультат:
+----------------------+---------------------------+----------------------+----------------+-------------------+-----------------+ | ID | NAME | NETWORK ID | ROUTE TABLE ID | ZONE | RANGE | +----------------------+---------------------------+----------------------+----------------+-------------------+-----------------+ | e2lfkhps7bol******** | default-kz1-b | enpnf7hajqmd******** | | kz1-b | [10.129.0.0/24] | | e9bgnq1bggfa******** | default-kz1-a | enpnf7hajqmd******** | | kz1-a | [10.128.0.0/24] | | fl841n5ilklr******** | default-kz1-d | enpnf7hajqmd******** | | kz1-d | [10.130.0.0/24] | +----------------------+---------------------------+----------------------+----------------+-------------------+-----------------+ -
Выберите группу безопасности. Группа безопасности должна быть заранее настроена.
Чтобы получить список доступных групп безопасности с помощью CLI, выполните следующую команду:
yc vpc security-group listРезультат:
+----------------------+---------------------------------+--------------------------------+----------------------+ | ID | NAME | DESCRIPTION | NETWORK-ID | +----------------------+---------------------------------+--------------------------------+----------------------+ | enp414a2tnnp******** | default-sg-enpnf7hajqmd******** | Default security group for | enpnf7hajqmd******** | | | | network | | | enpctpve7951******** | sg-load-testing-agents | | enpnf7hajqmd******** | | enpufo9ms0gi******** | sg-load-testing-targets | | enpnf7hajqmd******** | +----------------------+---------------------------------+--------------------------------+----------------------+ -
Узнайте идентификатор сервисного аккаунта
sa-loadtestпо его имени:yc iam service-account get sa-loadtestРезультат:
id: ajespasg04oc******** folder_id: b1g85uk96h3f******** created_at: "2024-12-04T17:38:57Z" name: sa-loadtest last_authenticated_at: "2024-12-12T19:10:00Z" -
Создайте агента в каталоге по умолчанию:
yc loadtesting agent create \ --name agent-008 \ --labels origin=default,label-key=label-value \ --zone default-kz1-a \ --network-interface subnet-id=e9bgnq1bggfa********,security-group-ids=enpctpve7951******** \ --cores 2 \ --memory 2G \ --service-account-id ajespasg04oc******** --metadata-from-file user-data=metadata.yamlГде:
--name— имя агента.--labels— метки агента.--zone— зона доступности, в которой будет размещен агент.--network-interface— настройки сетевого интерфейса агента:subnet-name— идентификатор выбранной подсети.security-group-ids— идентификаторы групп безопасности.
--cores— сколько ядер процессора может задействовать агент.--memory— сколько памяти отведено агенту.--service-account-id— идентификатор сервисного аккаунта.--metadata-from-file— пара<ключ>=<значение>с именем файла, содержащим путь к публичному SSH-ключу. Пример содержимого файла конфигурацииmetadata.yamlможно посмотреть в разделе Метаданные виртуальной машины.
Подробнее о создании агента с помощью CLI см. в репозитории Yandex Cloud Examples
.
-
-
Привяжите публичный IP-адрес к агенту для доступа по протоколу SSH:
Консоль управленияCLI- В консоли управления
выберите каталог, в котором размещен агент. - Выберите сервис Compute Cloud.
- Выберите ВМ с именем
agent-008. - В блоке Сетевой интерфейс в правом верхнем углу нажмите
и выберите Добавить публичный IP-адрес. - В открывшемся окне:
- В поле Публичный адрес выберите получение адреса Автоматически.
- Нажмите Добавить.
Чтобы привязать к агенту публичный IP-адрес выполните команду CLI:
yc compute instance add-one-to-one-nat \ --id=<идентификатор_ВМ> \ --network-interface-index=<номер_сетевого_интерфейса_ВМ> \ --nat-address=<IP-адрес>Где:
-
--id— идентификатор ВМ. Получите список идентификаторов ВМ, доступных в каталоге, с помощью команды CLIyc compute instance list. -
--network-interface-index— номер сетевого интерфейса ВМ. По умолчанию —0. Чтобы получить список сетевых интерфейсов ВМ и их номера, выполните командуyc compute instance get <идентификатор_ВМ>. -
--nat-address— публичный IP-адрес, который нужно присвоить ВМ. Необязательный параметр. Если параметр--nat-addressне задан, публичный IP-адрес будет присвоен ВМ автоматически.Получите список зарезервированных публичных IP-адресов, доступных в каталоге, с помощью команды CLI
yc vpc address list. IP-адрес и ВМ должны находиться в одной зоне доступности.
Пример использования:
yc compute instance add-one-to-one-nat \ --id=fhmsbag62taf******** \ --network-interface-index=0 \ --nat-address=51.250.*.***Результат:
id: fhmsbag62taf******** folder_id: b1gv87ssvu49******** created_at: "2022-05-06T10:41:56Z" ... network_settings: type: STANDARD placement_policy: {}Подробнее о команде
yc compute instance add-one-to-one-natсм. в справочнике CLI. - В консоли управления
Создание временного агента тестирования
-
В консоли управления
выберите каталог для тестирования. -
В списке сервисов выберите Load Testing.
-
На вкладке Тесты нажмите Создать тест.
-
В секции Агенты нажмите Временный.
-
В блоке Настройки временного агента:
- Выберите подходящий тип агента. Подробнее см. в разделе Производительность агентов.
Важно
Для работы временного агента тестирования сервисному аккаунту
sa-loadtestнеобходимо дополнительно назначить ролиcompute.editor,iam.serviceAccounts.user,vpc.userиvpc.publicAdmin.- Выберите сервисный аккаунт
sa-loadtest. - Укажите подсеть, в которой находится цель тестирования.
- Если вам доступны группы безопасности, выберите заранее настроенную группу безопасности агента.