Condividi tramite


Configurare l'archiviazione per lo strumento snapshot coerente app Azure

Questo articolo fornisce una guida per la configurazione dell'archiviazione di Azure da usare con lo strumento snapshot coerente app Azure lication (AzAcSnap).

Selezionare la risorsa di archiviazione usata con AzAcSnap.

Configurare un'identità gestita dal sistema (scelta consigliata) o generare il file di autenticazione dell'entità servizio.

Quando si convalida la comunicazione con Azure NetApp Files, la comunicazione potrebbe non riuscire o scadere. Verificare che le regole del firewall non blocchino il traffico in uscita dal sistema che esegue AzAcSnap agli indirizzi e alle porte TCP/IP seguenti:

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

Abilitare la comunicazione con l'archiviazione

Questa sezione illustra come abilitare la comunicazione con l'archiviazione. Usare le schede seguenti per selezionare correttamente il back-end di archiviazione in uso.

Esistono due modi per eseguire l'autenticazione in Azure Resource Manager usando un'identità gestita dal sistema o un file di entità servizio. Le opzioni sono descritte qui.

Identità gestita dal sistema di Azure

Da AzAcSnap 9 è possibile usare un'identità gestita dal sistema anziché un'entità servizio per l'operazione. L'uso di questa funzionalità evita la necessità di archiviare le credenziali dell'entità servizio in una macchina virtuale .Using this feature avoids the need to store service principal credentials on a virtual machine (VM). Per configurare un'identità gestita di Azure usando Azure Cloud Shell, seguire questa procedura:

  1. All'interno di una sessione di Cloud Shell con Bash, usare l'esempio seguente per impostare le variabili della shell in modo appropriato e applicarle alla sottoscrizione in cui si vuole creare l'identità gestita di Azure. Impostare SUBSCRIPTION, VM_NAMEe RESOURCE_GROUP su valori specifici del sito.

    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. Impostare Cloud Shell sulla sottoscrizione corretta:

    az account set -s "${SUBSCRIPTION}"
    
  3. Creare l'identità gestita per la macchina virtuale. Il comando seguente imposta (o mostra se è già impostato) l'identità gestita della macchina virtuale AzAcSnap:

    az vm identity assign --name "${VM_NAME}" --resource-group "${RESOURCE_GROUP}"
    
  4. Ottenere l'ID entità per l'assegnazione di un ruolo:

    PRINCIPAL_ID=$(az resource list -n ${VM_NAME} --query [*].identity.principalId --out tsv)
    
  5. Assegnare il ruolo Collaboratore all'ID entità:

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

Controllo degli accessi in base al ruolo facoltativo

È possibile limitare le autorizzazioni per l'identità gestita usando una definizione di ruolo personalizzata nel controllo degli accessi in base al ruolo. Creare una definizione di ruolo appropriata per la macchina virtuale in grado di gestire gli snapshot. È possibile trovare impostazioni di autorizzazioni di esempio in Suggerimenti e consigli per l'uso dello strumento snapshot coerente app Azure.

Assegnare quindi il ruolo all'ID entità macchina virtuale di Azure (visualizzato anche come SystemAssignedIdentity):

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

Generare un file di entità servizio

  1. In una sessione di Cloud Shell assicurarsi di aver eseguito l'accesso alla sottoscrizione in cui si vuole essere associati all'entità servizio per impostazione predefinita:

    az account show
    
  2. Se la sottoscrizione non è corretta, usare il az account set comando :

    az account set -s <subscription name or id>
    
  3. Creare un'entità servizio usando l'interfaccia della riga di comando di Azure, come illustrato in questo esempio:

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

    Il comando deve generare un output simile all'esempio seguente:

    {
      "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/"
    }
    

    Questo comando assegna automaticamente il ruolo Collaboratore controllo degli accessi in base al ruolo all'entità servizio a livello di sottoscrizione. È possibile limitare l'ambito al gruppo di risorse specifico in cui i test creeranno le risorse.

  4. Tagliare e incollare il contenuto di output in un file denominato azureauth.json archiviato nello stesso sistema del azacsnap comando. Proteggere il file con le autorizzazioni di sistema appropriate.

    Assicurarsi che il formato del file JSON sia esattamente come descritto nel passaggio precedente, con gli URL racchiusi tra virgolette doppie (").

Passaggi successivi