Share via


Configurar o Link Privado para experimentos baseados em agente (versão prévia)

Este artigo explica as etapas necessárias para configurar o Link Privado do Azure para um experimento baseado em agente do Azure Chaos Studio (versão prévia). A experiência atual do usuário é baseada no suporte a pontos de extremidade privados habilitados como parte da visualização pública do recurso de pontos de extremidade privados. Espere que essa experiência evolua com o tempo, pois o recurso é aprimorado para a qualidade de GA (disponibilidade geral). No momento, está disponível em versão prévia.


Pré-requisitos

Observação

Se o recurso de destino tiver sido criado usando o portal do Azure, a extensão da VM (máquina virtual) do Agente do Caos será instalada automaticamente na VM do host. Se o destino for habilitado usando a CLI do Azure, siga a documentação do Chaos Studio para instalar a extensão da VM primeiro na máquina virtual. Até que você conclua a configuração do ponto de extremidade privado, a extensão da VM relatará um estado não íntegro. O comportamento é esperado.


Limitações

  • Você precisará usar nossa API REST 2023-10-27-preview para criar e usar o Link Privado somente para experimentos baseados em agente. Não há suporte para o Link Privado para experimentos baseados em agente em nossa API REST estável em GA até o primeiro semestre de 2024.
  • Toda a experiência de ponta a ponta para esse fluxo requer algum uso da CLI. A experiência atual de ponta a ponta não pode ser feita a partir do portal do Microsoft Azure.
  • O tipo de recurso CSPA (Acessos Privados do Chaos Studio) tem um mapeamento estrito de 1:1 de Chaos Target:CSPA Resource (abstração para ponto de extremidade privado). Só permitimos que cinco recursos CSPA sejam criados por assinatura para manter a experiência esperada para todos os nossos clientes.

Criar um Recurso de Acesso Privado do Chaos Studio

Para usar os pontos de extremidade privados para experimentos de caos baseados em agente, você precisa criar um novo tipo de recurso chamado Acessos Privados do Chaos Studio. O CSPA é o recurso no qual os pontos de extremidade privados são criados.

Atualmente, esse recurso só pode ser criado a partir da CLI. Consulte o código de exemplo a seguir para saber como criar esse tipo de recurso:

az rest --verbose --skip-authorization-header --header "Authorization=Bearer $accessToken" --uri-parameters api-version=2023-10-27-preview --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>" 

   } 

}'
Nome Obrigatória Type Descrição
subscriptionID True String GUID que representa uma ID de assinatura do Azure.
resourceGroupName True String Cadeia de caracteres que representa um grupo de recursos do Azure.
CSPAResourceName True String Cadeia de caracteres que representa o nome que você deseja dar ao recurso de Acesso Privado do Chaos Studio.
resourceLocation True String Local no qual você deseja que o recurso seja hospedado (deve ser uma região de suporte do Chaos Studio).

Criar sua rede virtual, sub-rede e ponto de extremidade privado

Configurar a rede virtual, a sub-rede e o ponto de extremidade desejados para o experimento, caso ainda não tenha feito isso.

Certifique-se de anexá-lo à mesma rede virtual da VM. Capturas de tela fornecem exemplos de criação da rede virtual, da sub-rede e do ponto de extremidade privado. Você precisa definir o tipo de recurso para Microsoft.Chaos/privateAccesses, como visto na captura de tela.

Screenshot that shows the Resource tab of private endpoint creation.

Screenshot that shows the Virtual Network tab of private endpoint creation.

Mapear a VM do host do agente para o recurso CSPA

Localize o destino Resource ID fazendo uma chamada GetTarget:

GET https://management.azure.com/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{parentProviderNamespace}/{parentResourceType}/{parentResourceName}/providers/Microsoft.Chaos/targets/{targetName}?api-version=2023-10-27-preview

O comando GET retorna uma resposta grande. Observe essa resposta. Usamos essa resposta e a modificamos antes de executar um comando PUT Target para mapear os dois recursos.


Invoque um comando PUT Target usando essa resposta. Você precisa acrescentar mais dois campos ao corpo do comando PUT antes de executá-lo.

Esses campos extras são mostrados aqui:

"privateAccessId": "subscriptions/<subID>/...
"allowPublicAccess": false

},

Aqui está um bloco de exemplo para a aparência do comando PUT Target e os campos que você precisaria preencher:

Observação

Copie o corpo do comando GET anterior. Você precisa acrescentar manualmente os campos privateAccessID e allowPublicAccess.


az rest --verbose --skip-authorization-header --header "Authorization=Bearer $accessToken" --uri-parameters api-version=2023-10-27-preview --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
    }} '

Observação

O valor PrivateAccessID deve corresponder exatamente ao valor resourceID usado para criar o recurso CSPA na seção anterior Criar um recurso de Acesso Privado do Chaos Studio.

Reiniciar o serviço do Agente do Azure Chaos na VM

Depois de fazer todas as alterações necessárias no host, reinicie o serviço do Agente do Azure Chaos na VM.

Windows

Screenshot that shows restarting the Windows VM.

Linux

No Linux, execute o seguinte comando na CLI:

Systemctl restart azure-chaos-agent

Screenshot that shows restarting the Linux VM.

Executar seu experimento baseado em agente usando pontos de extremidade privados

Após a reinicialização, o Agente do Azure Chaos deve ser capaz de se comunicar com o serviço de plano de dados de Comunicação do Agente e o registro do agente no plano de dados deve ser bem-sucedido. Após o registro bem-sucedido, o agente pode indicar seu status com uma pulsação. Em seguida, você pode continuar a executar os experimentos baseados no Agente do Azure Chaos usando pontos de extremidade privados.