Compartilhar via


Configurar o armazenamento para a ferramenta de Instantâneo Consistente do Aplicativo do Azure

Este artigo fornece um guia para configurar o armazenamento do Azure a ser usado com a ferramenta AzAcSnap (AzAcSnap).

Selecione o armazenamento que você está usando com o AzAcSnap.

Configure uma identidade gerenciada pelo sistema (recomendada) ou gere o arquivo de autenticação da entidade de serviço.

Quando você está validando a comunicação com o Azure NetApp Files, a comunicação pode falhar ou acabar. Verifique se as regras de firewall não estão bloqueando o tráfego de saída do sistema que executa o AzAcSnap para os seguintes endereços e portas TCP/IP:

  • (https://)management.azure.com:443
  • (https://)login.microsoftonline.com:443

Habilitar a comunicação com o armazenamento

Esta seção explica como habilitar a comunicação com o armazenamento. Use as guias a seguir para selecionar corretamente o back-end de armazenamento que você está usando.

Há duas maneiras de autenticar no Azure Resource Manager usando uma identidade gerenciada pelo sistema ou um arquivo de entidade de serviço. As opções são descritas aqui.

Identidade gerenciada pelo sistema do Azure

No AzAcSnap 9, é possível usar uma identidade gerenciada pelo sistema em vez de uma entidade de serviço para operação. Usar esse recurso evita a necessidade de armazenar credenciais de entidade de serviço em uma VM (máquina virtual). Para configurar uma identidade gerenciada do Azure usando o Azure Cloud Shell, siga estas etapas:

  1. Em uma sessão do Cloud Shell com o Bash, use o exemplo a seguir para definir as variáveis de shell adequadamente e aplicá-las à assinatura em que você deseja criar a identidade gerenciada do Azure. Definir SUBSCRIPTION, VM_NAMEe RESOURCE_GROUP para os valores específicos do site.

    export SUBSCRIPTION="99z999zz-99z9-99zz-99zz-9z9zz999zz99"
    export VM_NAME="MyVM"
    export RESOURCE_GROUP="MyResourceGroup"
    export ROLE="Contributor"
    export SCOPE="/subscriptions/${SUBSCRIPTION}/resourceGroups/${RESOURCE_GROUP}"
    
  2. Defina o Cloud Shell como a assinatura correta:

    az account set -s "${SUBSCRIPTION}"
    
  3. Crie a identidade gerenciada para a máquina virtual. Os seguintes conjuntos de comandos (ou mostra se ele já está definido) a identidade gerenciada da VM do AzAcSnap:

    az vm identity assign --name "${VM_NAME}" --resource-group "${RESOURCE_GROUP}"
    
  4. Obtenha a ID da entidade de segurança para atribuir uma função:

    PRINCIPAL_ID=$(az resource list -n ${VM_NAME} --query [*].identity.principalId --out tsv)
    
  5. Atribua a função colaborador à ID da entidade de segurança:

    az role assignment create --assignee "${PRINCIPAL_ID}" --role "${ROLE}" --scope "${SCOPE}"
    

RBAC opcional

É possível limitar as permissões para a identidade gerenciada usando uma definição de função personalizada no RBAC (controle de acesso baseado em função). Crie uma definição de função adequada para que a máquina virtual possa gerenciar instantâneos. Você pode encontrar configurações de permissões de exemplo em Dicas e truques para usar a ferramenta de Instantâneo Consistente do Aplicativo do Azure.

Em seguida, atribua a função à ID da entidade de segurança da VM do Azure (também exibida como SystemAssignedIdentity):

az role assignment create --assignee ${PRINCIPAL_ID} --role "AzAcSnap on ANF" --scope "${SCOPE}"

Gerar um arquivo de entidade de serviço

  1. Em uma sessão do Cloud Shell, verifique se você está conectado na assinatura em que deseja ser associado à entidade de serviço por padrão:

    az account show
    
  2. Se a assinatura não estiver correta, use o comando az account set:

    az account set -s <subscription name or id>
    
  3. Crie uma entidade de serviço usando a CLI do Azure, conforme mostrado neste exemplo:

    az ad sp create-for-rbac --name "AzAcSnap" --role Contributor --scopes /subscriptions/{subscription-id} --sdk-auth
    

    O comando deve gerar uma saída como este exemplo:

    {
      "clientId": "00001111-aaaa-2222-bbbb-3333cccc4444",
      "clientSecret": "Dd4Ee~5Ff6.-Gg7Hh8Ii9Jj0Kk1Ll2_Mm3Nn4Oo5",
      "subscriptionId": "cccc2c2c-dd3d-ee4e-ff5f-aaaaaa6a6a6a",
      "tenantId": "aaaabbbb-0000-cccc-1111-dddd2222eeee",
      "activeDirectoryEndpointUrl": "https://login.microsoftonline.com",
      "resourceManagerEndpointUrl": "https://management.azure.com/",
      "activeDirectoryGraphResourceId": "https://graph.windows.net/",
      "sqlManagementEndpointUrl": "https://management.core.windows.net:8443/",
      "galleryEndpointUrl": "https://gallery.azure.com/",
      "managementEndpointUrl": "https://management.core.windows.net/"
    }
    

    Esse comando atribui automaticamente a função de Colaborador do RBAC à entidade de serviço no nível da assinatura. Você pode restringir o escopo ao grupo de recursos específico em que os testes criarão os recursos.

  4. Recortar e colar o conteúdo de saída em um arquivo chamado azureauth.json armazenado no mesmo sistema que o comando azacsnap. Proteja o arquivo com as permissões apropriadas do sistema.

    Verifique se o formato do arquivo JSON é exatamente como descrito na etapa anterior, com as URLs entre aspas duplas (").

Próximas etapas