Настройка Приватный канал для экспериментов на основе агента (предварительная версия)
В этой статье описываются действия, необходимые для настройки Приватный канал Azure для эксперимента на основе агента Azure Chaos Studio (предварительная версия). Текущий пользовательский интерфейс основан на поддержке частных конечных точек, которая включена в рамках общедоступной предварительной версии функции частных конечных точек. Ожидается, что этот опыт будет развиваться с течением времени, так как эта функция улучшена до общего качества доступности .
Необходимые компоненты
- Учетная запись Azure с активной подпиской. Если у вас нет подписки Azure, создайте бесплатную учетную запись, прежде чем приступить к работе.
- Определите эксперимент на основе агента, выполнив действия, описанные в статье "Создание эксперимента хаоса, использующего ошибку на основе агента с портал Azure".
Примечание.
Если целевой ресурс был создан с помощью портал Azure, расширение виртуальной машины агента хаоса автоматически устанавливается на виртуальной машине узла. Если целевой объект включен с помощью Azure CLI, следуйте документации по Chaos Studio, чтобы сначала установить расширение виртуальной машины на виртуальной машине. Пока не завершите настройку частной конечной точки, расширение виртуальной машины сообщает о неработоспособном состоянии. Это поведение является ожидаемым.
Ограничения
- Для создания и использования Приватный канал только для экспериментов на основе агентов необходимо использовать интерфейс REST API 2023-10-27-preview. Нет поддержки Приватный канал для экспериментов на основе агентов в нашем ОБЩЕДОСТУПНОм REST API до H1 2024.
- Для всего комплексного взаимодействия с этим потоком требуется использовать интерфейс командной строки. Текущий комплексный интерфейс не может быть выполнен из портал Azure.
- Тип ресурса Chaos Studio Private Accesses (CSPA) имеет строгое сопоставление ресурсов Chaos Target:CSPA (абстракция для частной конечной точки). Мы разрешаем создавать только пять ресурсов CSPA для каждой подписки , чтобы поддерживать ожидаемый интерфейс для всех наших клиентов.
Создание ресурса Private Access в Chaos Studio
Чтобы использовать частные конечные точки для экспериментов хаоса на основе агента, необходимо создать новый тип ресурса с именем Chaos Studio Private Accesses. CSPA — это ресурс, для которого создаются частные конечные точки.
В настоящее время этот ресурс можно создать только из интерфейса командной строки. См. следующий пример кода для создания этого типа ресурса:
az rest --verbose --skip-authorization-header --header "Authorization=Bearer $accessToken" --method PUT --uri "https://centraluseuap.management.azure.com/subscriptions/<subscriptionID>/resourceGroups/<resourceGroupName>/providers/Microsoft.Chaos/privateAccesses/<CSPAResourceName>?api-version=2023-10-27-preview" --body '
{
"location": "<resourceLocation>",
"properties": {
"id": "<CSPAResourceName>",
"name": "<CSPAResourceName>",
"location": "<resourceLocation>",
"type": "Microsoft.Chaos/privateAccesses",
"resourceId": "subscriptions/<subscriptionID>/resourceGroups/<resourceGroupName>/providers/Microsoft.Chaos/privateAccesses/<CSPAResourceName>"
}
}'
имени | Обязательно | Type | Описание |
---|---|---|---|
subscriptionID | Истина | Строка | GUID, представляющий идентификатор подписки Azure. |
resourceGroupName | Истина | Строка | Строка, представляющая группу ресурсов Azure. |
CSPAResourceName | Истина | Строка | Строка, представляющая имя, которое вы хотите предоставить ресурсу Private Access Chaos Studio. |
resourceLocation | Истина | Строка | Расположение, в котором должен размещаться ресурс (должен быть регионом поддержки в Chaos Studio). |
Создание виртуальной сети, подсети и частной конечной точки
Настройте нужную виртуальную сеть, подсеть и конечную точку для эксперимента, если вы еще не сделали этого.
Убедитесь, что вы подключите его к той же виртуальной сети виртуальной машины. Снимок экрана: примеры создания виртуальной сети, подсети и частной конечной точки. Необходимо задать тип ресурса Microsoft.Chaos/privateAccesses , как показано на снимке экрана.
Сопоставление виртуальной машины узла агента с ресурсом CSPA
Найдите целевой GetTarget
объектResource ID
, выполнив вызов:
GET https://management.azure.com/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{parentProviderNamespace}/{parentResourceType}/{parentResourceName}/providers/Microsoft.Chaos/targets/{targetName}?api-version=2023-10-27-preview
Команда GET
возвращает большой ответ. Обратите внимание на этот ответ. Мы используем этот ответ и изменяем его перед выполнением PUT Target
команды для сопоставления двух ресурсов.
PUT Target
Вызовите команду с помощью этого ответа. Перед выполнением команды необходимо добавить еще два поля в текст PUT
команды.
Ниже показаны следующие дополнительные поля:
"privateAccessId": "subscriptions/<subID>/...
"allowPublicAccess": false
},
Ниже приведен пример блока для того, как PUT Target
должна выглядеть команда, и поля, которые необходимо заполнить:
Примечание.
Скопируйте текст из предыдущей GET
команды. Необходимо вручную добавить privateAccessID
поля и allowPublicAccess
поля.
az rest --verbose --skip-authorization-header --header "Authorization=Bearer $accessToken" --method PUT --uri "https://management.azure.com/subscriptions/<subscriptionID>/resourceGroups/<resourceGroup>/providers/Microsoft.Compute/virtualMachines/<VMSSname>/providers/Microsoft.Chaos/targets/Microsoft-Agent?api-version=2023-10-27-preview " --body ' {
"id": "/subscriptions/<subscriptionID>/resourceGroups/<resourceGroupName>/providers/microsoft.compute/virtualmachines/<VMSSName>/providers/Microsoft.Chaos/targets/Microsoft-Agent",
"type": "Microsoft.Chaos/targets",
"name": "Microsoft-Agent",
"location": "<resourceLocation>",
"properties": {
"agentProfileId": "<from target resource>",
"identities": [
{
"type": "AzureManagedIdentity",
"clientId": "<clientID>",
"tenantId": "<tenantID>"
}
],
"agentTenantId": "CHAOSSTUDIO",
"privateAccessId": "subscriptions/<subscriptionID>/resourceGroups/<resourceGroupName>/providers/Microsoft.Chaos/privateAccesses/<CSPAresourceName>",
"allowPublicAccess": false
}} '
Примечание.
Значение PrivateAccessID
должно точно соответствовать resourceID
значению, используемому для создания ресурса CSPA в предыдущем разделе " Создание ресурса Private Access в Chaos Studio.
Перезапуск службы агента Хаоса Azure на виртуальной машине
После внесения всех необходимых изменений на узел перезапустите службу агента Хаоса Azure на виртуальной машине.
Windows
Linux
Для Linux выполните следующую команду из интерфейса командной строки:
Systemctl restart azure-chaos-agent
Запуск эксперимента на основе агента с помощью частных конечных точек
После перезапуска агент Azure Chaos должен иметь возможность взаимодействовать со службой уровня данных агента связи, а регистрация агента в плоскости данных должна быть успешной. После успешной регистрации агент может указать состояние пульса. Затем можно продолжить выполнение экспериментов на основе агента Хаоса Azure с помощью частных конечных точек.