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
- Uma conta do Azure com uma assinatura ativa. Se você não tiver uma assinatura do Azure, crie uma conta gratuita antes de começar.
- Defina seu experimento baseado em agente seguindo as etapas em Criar um experimento de caos que usa uma falha baseada em agente com o portal do Microsoft Azure.
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" --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.
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" --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
Linux
No Linux, execute o seguinte comando na CLI:
Systemctl restart azure-chaos-agent
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.