Nota
L'accesso a questa pagina richiede l'autorizzazione. È possibile provare ad accedere o modificare le directory.
L'accesso a questa pagina richiede l'autorizzazione. È possibile provare a modificare le directory.
Questa guida introduttiva descrive come configurare il backup con insieme di credenziali per un cluster servizio Azure Kubernetes del servizio Azure Kubernetes con l'interfaccia della riga di comando di Azure.
Backup di Azure per il servizio Azure Kubernetes è un servizio di backup incentrato sulle applicazioni, di livello aziendale e nativo del cloud che consente di configurare rapidamente il backup per i cluster del servizio Azure Kubernetes.
Prima di iniziare
Prima di configurare il backup con insieme di credenziali per il cluster del servizio Azure Kubernetes, assicurarsi che siano soddisfatti i prerequisiti seguenti:
Creare un insieme di credenziali per il backup
Per creare l'insieme di credenziali di Backup, eseguire il comando seguente:
az dataprotection backup-vault create --resource-group $backupvaultresourcegroup --vault-name $backupvault --location $region --type SystemAssigned --storage-settings datastore-type="VaultStore" type="GeoRedundant"
L'insieme di credenziali appena creato ha impostazioni di archiviazione impostate come con ridondanza globale, pertanto i backup archiviati nel livello dell'insieme di credenziali saranno disponibili nell'area abbinata di Azure. Al termine della creazione dell'insieme di credenziali, creare un criterio di backup per proteggere i cluster del servizio Azure Kubernetes.
Creare un criterio di backup
Recuperare il modello di criteri usando il comando az dataprotection backup-policy get-default-policy-template.
az dataprotection backup-policy get-default-policy-template --datasource-type AzureKubernetesService > akspolicy.json
Il modello predefinito per i criteri di backup viene aggiornato e viene aggiunta una regola di conservazione per conservare il primo backup riuscito al giorno nel livello Insieme di credenziali per 30 giorni.
az dataprotection backup-policy retention-rule create-lifecycle --count 30 --retention-duration-type Days --copy-option ImmediateCopyOption --target-datastore VaultStore --source-datastore OperationalStore > ./retentionrule.json
az dataprotection backup-policy retention-rule set --lifecycles ./retentionrule.json --name Daily --policy ./akspolicy.json > ./akspolicy.json
Dopo che il codice JSON dei criteri ha tutti i valori necessari, procedere con la creazione di un nuovo criterio dall'oggetto criteri.
az dataprotection backup-policy create -g testBkpVaultRG --vault-name TestBkpVault -n mypolicy --policy akspolicy.json
Preparare il cluster del servizio Azure Kubernetes per il backup
Al termine della creazione dell’insieme di credenziali e dei criteri, è necessario eseguire i prerequisiti seguenti per preparare il cluster del servizio Azure Kubernetes per il backup:
Creare un account di archiviazione e un contenitore BLOB.
Il backup per il servizio Azure Kubernetes archivia le risorse Kubernetes in un contenitore BLOB come backup. Per preparare il cluster del servizio Azure Kubernetes per il backup, è necessario installare un'estensione nel cluster. Questa estensione richiede l'account di archiviazione e il contenitore BLOB come input.
Per creare un nuovo account di archiviazione, eseguire il comando seguente:
az storage account create --name $storageaccount --resource-group $storageaccountresourcegroup --location $region --sku Standard_LRSAl termine della creazione dell'account di archiviazione, creare un contenitore BLOB all'interno eseguendo il comando seguente:
az storage container create --name $blobcontainer --account-name $storageaccount --auth-mode loginInstallare l'estensione di backup.
L'estensione di backup deve obbligatoriamente essere installata nel cluster del servizio Azure Kubernetes per eseguire tutte le operazioni di backup e ripristino. L'estensione di backup crea uno spazio dei nomi
dataprotection-microsoftnel cluster e usa lo stesso per distribuire le risorse. L'estensione richiede l'account di archiviazione e il contenitore BLOB come input per l'installazione.az k8s-extension create --name azure-aks-backup --extension-type microsoft.dataprotection.kubernetes --scope cluster --cluster-type managedClusters --cluster-name $akscluster --resource-group $aksclusterresourcegroup --release-train stable --configuration-settings blobContainer=$blobcontainer storageAccount=$storageaccount storageAccountResourceGroup=$storageaccountresourcegroup storageAccountSubscriptionId=$subscriptionIdCome parte dell'installazione dell'estensione, viene creata un'identità utente nel gruppo di risorse pool di nodi del cluster del servizio Azure Kubernetes. Per consentire all'estensione di accedere all'account di archiviazione, è necessario specificare questa identità il ruolo Collaboratore ai dati dei BLOB di archiviazione. Per assegnare il ruolo richiesto, eseguire il comando seguente:
az role assignment create --assignee-object-id $(az k8s-extension show --name azure-aks-backup --cluster-name $akscluster --resource-group $aksclusterresourcegroup --cluster-type managedClusters --query aksAssignedIdentity.principalId --output tsv) --role 'Storage Blob Data Contributor' --scope /subscriptions/$subscriptionId/resourceGroups/$storageaccountresourcegroup/providers/Microsoft.Storage/storageAccounts/$storageaccountAbilitare l'accesso attendibile
Affinché l'insieme di credenziali di backup si connetta al cluster del servizio Azure Kubernetes, è necessario abilitare l'accesso attendibile perché consente all'insieme di credenziali di backup di avere una linea diretta di vista per il cluster del servizio Azure Kubernetes.
Per abilitare l'accesso attendibile, eseguire il comando seguente:
az aks trustedaccess rolebinding create --cluster-name $akscluster --name backuprolebinding --resource-group $aksclusterresourcegroup --roles Microsoft.DataProtection/backupVaults/backup-operator --source-resource-id /subscriptions/$subscriptionId/resourceGroups/$backupvaultresourcegroup/providers/Microsoft.DataProtection/BackupVaults/$backupvault
Configurare i backup con insieme di credenziali per il cluster del servizio Azure Kubernetes
Con l'insieme di credenziali di backup, i criteri di backup creati e il cluster del servizio Azure Kubernetes nello stato pronto per il backup, è ora possibile iniziare a eseguire il backup del cluster del servizio Azure Kubernetes.
Preparare la richiesta
La configurazione del backup viene eseguita in due passaggi:
Preparare la configurazione del backup per definire le risorse del cluster di cui eseguire il backup usando il
az dataprotection backup-instance initialize-backupconfigcomando . Il comando genera un file JSON, che è possibile aggiornare per definire la configurazione di backup per il cluster del servizio Azure Kubernetes in base alle esigenze.az dataprotection backup-instance initialize-backupconfig --datasource-type AzureKubernetesService > aksbackupconfig.jsonPreparare la richiesta pertinente usando l'insieme di credenziali, i criteri, il cluster del servizio Azure Kubernetes, la configurazione del backup e il gruppo di risorse snapshot usando il
az dataprotection backup-instance initializecomando .az dataprotection backup-instance initialize --datasource-id /subscriptions/$subscriptionId/resourceGroups/$aksclusterresourcegroup/providers/Microsoft.ContainerService/managedClusters/$akscluster --datasource-location $region --datasource-type AzureKubernetesService --policy-id /subscriptions/$subscriptionId/resourceGroups/$backupvaultresourcegroup/providers/Microsoft.DataProtection/backupVaults/$backupvault/backupPolicies/$backuppolicy --backup-configuration ./aksbackupconfig.json --friendly-name ecommercebackup --snapshot-resource-group-name $snapshotresourcegroup > backupinstance.json
Usare ora l'output JSON di questo comando per configurare il backup per il cluster del servizio Azure Kubernetes.
Assegnare le autorizzazioni necessarie e convalidare
Dopo aver preparato la richiesta, è prima necessario verificare se i ruoli necessari vengono assegnati alle risorse coinvolte eseguendo il comando seguente:
az dataprotection backup-instance validate-for-backup --backup-instance ./backupinstance.json --ids /subscriptions/$subscriptionId/resourceGroups/$backupvaultresourcegroup/providers/Microsoft.DataProtection/backupVaults/$backupvault
Se la convalida non riesce e mancano determinate autorizzazioni, è possibile assegnarle eseguendo il comando seguente:
az dataprotection backup-instance update-msi-permissions command.
az dataprotection backup-instance update-msi-permissions --datasource-type AzureKubernetesService --operation Backup --permissions-scope ResourceGroup --vault-name $backupvault --resource-group $backupvaultresourcegroup --backup-instance backupinstance.json
Dopo aver assegnato le autorizzazioni, riconvalidare usando la convalida precedente per il comando di backup e quindi procedere con la configurazione del backup:
az dataprotection backup-instance create --backup-instance backupinstance.json --resource-group $backupvaultresourcegroup --vault-name $backupvault