Configurare l'archiviazione per lo strumento snapshot coerente app Azure
Articolo
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
Sarà necessario generare il proprio certificato autofirmato e quindi condividere il contenuto del file PEM (Privacy Enhanced Mail) con Le operazioni Microsoft in modo che possa essere installato nel back-end di archiviazione per consentire ad AzAcSnap di eseguire l'autenticazione sicura con ONTAP.
Combinare PEM e KEY in un singolo file PKCS12 necessario da AzAcSnap per l'autenticazione basata su certificato in ONTAP.
Testare il file PKCS12 usando curl per connettersi a uno dei nodi.
Microsoft Operations fornisce il nome utente di archiviazione e l'indirizzo IP di archiviazione al momento del provisioning.
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:
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.
Impostare Cloud Shell sulla sottoscrizione corretta:
az account set -s "${SUBSCRIPTION}"
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}"
Ottenere l'ID entità per l'assegnazione di un ruolo:
PRINCIPAL_ID=$(az resource list -n ${VM_NAME} --query [*].identity.principalId --out tsv)
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
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
Se la sottoscrizione non è corretta, usare il az account set comando :
az account set -s <subscription name or id>
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:
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.
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 (").
Importante
Da AzAcSnap 10, la comunicazione con l'archiviazione di istanze Large di Azure usa l'API REST su HTTPS. Le versioni precedenti ad AzAcSnap 10 usano l'interfaccia della riga di comando tramite SSH.
API REST di istanze Large di Azure su HTTPS
La comunicazione con il back-end di archiviazione avviene tramite un canale HTTPS crittografato usando l'autenticazione basata su certificati. I passaggi di esempio seguenti forniscono indicazioni sulla configurazione del certificato PKCS12 per questa comunicazione:
Generare i file PEM e KEY.
Cn è uguale al nome utente SVM, chiedere a Microsoft Operations di specificare questo nome utente SVM.
In questo esempio viene usato svmadmin01 come nome utente SVM, modificarlo in base alle esigenze per l'installazione.
Generating a RSA private key
........................................................................................................+++++
....................................+++++
writing new private key to 'svmadmin01.key'
-----
Restituisce il contenuto del file PEM.
Il contenuto del file PEM viene usato per aggiungere il client-ca alla SVM.
! Inviare il contenuto del file PEM all'amministratore di Microsoft BareMetal Infrastructure (BMI).
Il file svmadmin01.p12 viene usato come valore per certificateFile nella sezione aliStorageResource del file di configurazione AzAcSnap.
Testare il file PKCS12 usando curl.
Dopo aver ottenuto la conferma dalle operazioni Microsoft, il certificato è stato applicato alla SVM per consentire l'accesso basato su certificati, quindi testare la connettività alla macchina virtuale SVM.
In questo esempio viene usato il file PKCS12 denominato svmadmin01.p12 per connettersi all'host SVM "X.X.X.X.X" (questo indirizzo IP verrà fornito da Microsoft Operations).
Interfaccia della riga di comando per istanze Large di Azure tramite SSH
Avviso
Queste istruzioni sono relative alle versioni precedenti ad AzAcSnap 10 e non vengono più aggiornate regolarmente questa sezione del contenuto.
La comunicazione con il back-end di archiviazione avviene tramite un canale SSH crittografato. I passaggi di esempio seguenti forniscono indicazioni sulla configurazione di SSH per questa comunicazione:
Modificare il file /etc/ssh/ssh_config.
Fare riferimento all'output seguente, che include la MACs hmac-sha riga :
# RhostsRSAAuthentication no
# RSAAuthentication yes
# PasswordAuthentication yes
# HostbasedAuthentication no
# GSSAPIAuthentication no
# GSSAPIDelegateCredentials no
# GSSAPIKeyExchange no
# GSSAPITrustDNS no
# BatchMode no
# CheckHostIP yes
# AddressFamily any
# ConnectTimeout 0
# StrictHostKeyChecking ask
# IdentityFile ~/.ssh/identity
# IdentityFile ~/.ssh/id_rsa
# IdentityFile ~/.ssh/id_dsa
# Port 22
Protocol 2
# Cipher 3des
# Ciphers aes128-ctr,aes192-ctr,aes256-ctr,arcfour256,arcfour128,aes128-cbc,3des-
cbc
# MACs hmac-md5,hmac-sha1,umac-64@openssh.com,hmac-ripemd
MACs hmac-sha
# EscapeChar ~
# Tunnel no
# TunnelDevice any:any
# PermitLocalCommand no
# VisualHostKey no
# ProxyCommand ssh -q -W %h:%p gateway.example.com
Usare il comando di esempio seguente per generare una coppia di chiavi privata/pubblica. Non immettere una password quando si genera una chiave.
ssh-keygen -t rsa –b 5120 -C ""
L'output del cat /root/.ssh/id_rsa.pub comando è la chiave pubblica. Inviarlo alle operazioni Microsoft, in modo che gli strumenti di snapshot possano comunicare con il sottosistema di archiviazione.