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.
Questo articolo descrive come configurare e eseguire il backup di servizio Azure Kubernetes usando portale di Azure. È anche possibile eseguire il backup del servizio Azure Kubernetes usando Azure PowerShell.
Backup di Azure consente di eseguire il backup dei cluster AKS (risorse cluster e volumi permanenti collegati al cluster) usando l'estensione Backup, che deve essere installata nel cluster. L'insieme di credenziali di backup comunica con il cluster tramite l'estensione di backup per eseguire operazioni di backup e ripristino.
Prerequisiti
Aspetti da assicurarsi prima di configurare il backup per il cluster del servizio Azure Kubernetes:
Il servizio AKS Backup supporta i volumi persistenti basati su Azure Disk e Azure SMB Files abilitati dal driver CSI. I dati di backup, inclusi gli snapshot del volume basati su Azure Disk e Files, possono essere archiviati come snapshot nel livello operativo e solo gli snapshot del volume basati su dischi di Azure possono essere spostati nel livello Vault per l'archiviazione a lungo termine. L'insieme di credenziali di backup e il cluster AKS possono trovarsi in sottoscrizioni diverse all'interno della stessa area e tenant.
- Per i volumi basati su File di Azure, è necessario il driver CSI versione 1.32 o successiva.
- I volumi di File di Azure con endpoint di rete privati non sono supportati; sono supportate solo le condivisioni file con endpoint accessibili pubblicamente.
- Sono supportate solo le condivisioni file con 25.000 file o meno.
- File di Azure che usano il protocollo NFS non sono supportati; è supportato solo il protocollo SMB.
Il backup di AKS utilizza un contenitore di BLOB e un gruppo di risorse per archiviare i backup. Il contenitore BLOB contiene le risorse del cluster AKS. Gli snapshot del volume permanente vengono archiviati nel gruppo di risorse per i volumi basati su disco di Azure. Per i volumi basati su File di Azure, gli snapshot vengono archiviati insieme alla condivisione file nello stesso account di archiviazione. Il cluster AKS e le posizioni di archiviazione devono trovarsi nella stessa regione. Scopri come creare un contenitore BLOB.
Attualmente, AKS supporta backup giornalieri. Supporta anche backup più frequenti (in intervalli di 4 ore, 8 ore e 12 ore) al giorno. Questa soluzione consente di conservare i dati per il ripristino per un massimo di 360 giorni per i volumi basati su disco di Azure. Per i volumi basati su File di Azure, la conservazione dei backup è limitata a un massimo di 30 giorni. Informazioni su come creare un criterio di backup.
Per i volumi basati su File di Azure, è consigliabile creare volumi permanenti con i criteri di recupero impostati su Mantieni per garantire che gli snapshot rimangano disponibili anche se il PVC viene eliminato. È possibile impostare il criterio di recupero con:
kubectl patch pv <your-pv-name> --patch '{"spec":{"persistentVolumeReclaimPolicy":"Retain"}}'È necessario installare l'estensione per il backup per configurare le operazioni di backup e ripristino per un cluster AKS. Altre informazioni sull'estensione Backup.
Accertarsi di disporre di
Microsoft.KubernetesConfiguration,Microsoft.DataProtectioneMicrosoft.ContainerServiceregistrati per la sottoscrizione prima di avviare le operazioni di configurazione e ripristino del backup.Assicuratevi di completare tutti i prerequisiti prima di avviare un'operazione di backup o ripristino per AKS Backup.
Per altre informazioni su scenari, limitazioni e disponibilità supportati, vedere la matrice di supporto.
Creare un archivio di backup
Un vault di Backup è un'entità di gestione che memorizza i punti di ripristino trattati nel tempo. Un cassetto di backup fornisce anche un'interfaccia per eseguire le operazioni di backup. Le operazioni includono l'esecuzione di backup su richiesta, l'esecuzione di ripristini e la creazione di criteri di backup. Il backup di AKS richiede che il Vault di Backup e il cluster AKS siano situati nella stessa regione. Tuttavia, possono risiedere in sottoscrizioni diverse, a condizione che siano all'interno dello stesso tenant. Scopri come creare un archivio di backup.
Nota
Un vault di Backup è una nuova risorsa usata per eseguire il backup di nuovi dati supportati. "Un archivio di Backup è diverso da un archivio di Recovery Services."
Se si vuole usare Backup di Azure per proteggere i cluster del servizio Azure Kubernetes da eventuali interruzioni a livello di area, è possibile abilitare il ripristino tra aree. Per abilitare il ripristino tra aree, è necessario:
Impostare il parametro Ridondanza di archiviazione di Backup su Geo-ridondante durante la creazione dell'insieme di credenziali. Dopo aver impostato la ridondanza per un insieme di credenziali, non è possibile disabilitarla.
Impostare il parametro Ripristino tra aree sotto Proprietà dell'insieme di credenziali su Abilitato. Dopo aver abilitato questo parametro, non è possibile disabilitarlo.
Creare un'istanza di backup utilizzando un criterio di backup con durata di conservazione impostata per un archivio dati di tipo Vault-standard. Ogni punto di ripristino inserito in questo archivio dati si troverà nell'area secondaria.
Creare una politica di backup
Prima di configurare i backup, è necessario creare criteri di backup che definiscono la frequenza dei backup e la durata di conservazione dei backup.
Per creare un criterio di backup:
Accedere all'archivio di backup creato e selezionare Gestisci>Criteri di backup>Aggiungi.
Inserire un nome per la politica di backup.
Per Tipo di origine dati, selezionare Servizi Kubernetes.
Nella scheda Pianificazione e conservazione, definire il programma di backup.
- Frequenza di backup: selezionare la frequenza di backup (oraria o giornaliera) e quindi scegliere la durata di conservazione per i backup.
- Impostazione di conservazione: per impostazione predefinita, un nuovo criterio di backup ha la regola Predefinita definita. È possibile modificare questa regola e non eliminarla. La regola predefinita definisce la durata di conservazione per tutti i backup del livello operativo eseguiti. È anche possibile creare regole di conservazione aggiuntive per archiviare i backup per una durata più lunga che vengono eseguiti ogni giorno o settimana.
Importante
Per i volumi basati su File di Azure, la conservazione dei backup è limitata a 30 giorni al massimo. Il backup del Vault Tier non è supportato per i volumi di Azure Files. Se è necessario eseguire il backup di volumi di Azure Disk e Azure Files con diverse destinazioni di backup (deposito e snapshot), creare istanze di backup separate, una per ogni tipo di risorsa.
Nota
- Oltre al primo backup corretto del giorno, è possibile definire le regole di conservazione per il primo backup riuscito della settimana, del mese e dell'anno. In termini di priorità, l'ordine è anno, mese, settimana e giorno.
- È possibile copiare i backup nell'area secondaria (area abbinata di Azure) archiviati nel livello del cassone, che è possibile usare per ripristinare i cluster di Azure Kubernetes Service (AKS) in un'area secondaria quando l'area primaria non è disponibile. Per scegliere questa funzionalità, usare un Insieme di credenziali a ridondanza geografica con Ripristino interregionale abilitato.
Quando sono configurate le impostazioni di frequenza di backup e conservazione, selezionare Avanti.
Nella scheda Rivedi e crea esaminare le informazioni e quindi selezionare Crea.
Installare l'estensione backup e configurare il backup
Puoi usare AKS Backup per eseguire il backup di un intero cluster o di risorse cluster specifiche distribuite nel cluster. È anche possibile proteggere un cluster più volte in base alla pianificazione e ai requisiti di conservazione dell'applicazione distribuita o ai requisiti di sicurezza.
Nota
Per configurare più istanze di backup per lo stesso cluster del servizio Azure Kubernetes:
- Configurare il backup nello stesso archivio di backup, ma utilizzando una politica di backup diversa.
- Configurare il backup in una cassetta di backup diversa.
Installare l'estensione backup
Per configurare i backup per un cluster del servizio Azure Kubernetes:
Nel portale di Azure, vai al cluster AKS di cui desideri eseguire il backup.
Nel menu del servizio, in Impostazioni, selezionare Backup.
Per preparare il cluster del servizio Azure Kubernetes per il backup o il ripristino, selezionare Installa estensione per installare l'estensione backup nel cluster.
Fornire un account di archiviazione e un contenitore BLOB come input.
I backup del cluster AKS sono archiviati in questo contenitore BLOB. L'account di archiviazione deve trovarsi nella stessa area e nella stessa sottoscrizione del cluster.
Selezionare Avanti. Esaminare i dettagli di installazione dell'estensione e selezionare Crea.
Viene avviata l'installazione dell'estensione.
Configurare il backup
Quando l'estensione backup è installata correttamente, selezionare Configura backup.
Selezionare il caveau di backup creato in precedenza. Per eseguire il backup del cluster AKS, è necessario che il vault di backup disponga dell'accesso attendibile abilitato. Per abilitare l'accesso attendibile, selezionare Concedi autorizzazione. Se è già abilitata, selezionare Avanti.
Nella scheda Criteri di backup selezionare i criteri di backup, che definiscono la pianificazione per i backup e il relativo periodo di conservazione, quindi selezionare Avanti.
Nella scheda Origini dati selezionare Aggiungi/Modifica per definire la configurazione dell'istanza di backup.
Nel riquadro Seleziona risorse da eseguire il backup definire le risorse del cluster di cui si vuole eseguire il backup.
Altre informazioni sulle configurazioni di backup.
Per Gruppo di risorse snapshot selezionare il gruppo di risorse da usare per archiviare gli snapshot del disco di Azure e quindi selezionare Convalida. Questo gruppo di risorse è necessario anche se si esegue il backup dei volumi di File di Azure (gli snapshot di File di Azure vengono archiviati insieme alla condivisione file nell'account di archiviazione).
Al termine della convalida, se i ruoli obbligatori non vengono assegnati all'insieme di credenziali nel gruppo di risorse snapshot o all'account di archiviazione (per i volumi di File di Azure), viene visualizzato un errore:
Per risolvere l'errore, in Nome origine dati selezionare la casella di controllo per l'origine dati e quindi selezionare Assegna ruoli mancanti.
Al termine dell'assegnazione di ruolo, selezionare Avanti>Configura backup.
Nota
Per i volumi basati su File di Azure, l'insieme di credenziali di backup assegna automaticamente il ruolo Collaboratore con privilegi per i dati dei file di archiviazione al cluster del servizio Azure Kubernetes sull'account di archiviazione per i volumi di cui è stato eseguito il provisioning dinamico. Per i volumi con provisioning statico, è necessario assegnare questo ruolo manualmente.
Configurazioni di backup
Backup di Azure per il servizio Azure Kubernetes consente di definire il limite dell'applicazione all'interno del cluster del servizio Azure Kubernetes di cui si vuole eseguire il backup. È possibile usare i filtri disponibili nelle configurazioni di backup per scegliere le risorse di cui eseguire il backup e anche per eseguire hook personalizzati. La configurazione di backup definita fa riferimento al valore per Nome dell'istanza di backup. I filtri seguenti sono disponibili per definire il limite dell'applicazione:
Selezionare Seleziona spazi dei nomi di cui eseguire il backup. È possibile selezionare Tutti per eseguire il backup di tutti gli spazi dei nomi esistenti e futuri nel cluster oppure selezionare spazi dei nomi specifici per il backup.
Gli spazi dei nomi seguenti vengono ignorati dalle configurazioni di backup:
kube-system,kube-node-leaseekube-public.Espandere Impostazioni risorse aggiuntive per visualizzare i filtri che è possibile usare per scegliere le risorse del cluster di cui eseguire il backup. È possibile scegliere di eseguire il backup delle risorse in base alle categorie seguenti:
Etichette: è possibile filtrare le risorse del servizio Azure Kubernetes usando etichette assegnate ai tipi di risorse. Immettere le etichette sotto forma di coppie chiave/valore. È possibile combinare più etichette usando la
ANDlogica. Ad esempio, se si immettono le etichetteenv=prod;tier!=web, il processo seleziona le risorse con un'etichetta con la chiaveenve il valoreprode un'etichetta con la chiavetierper cui il valore non èweb.Gruppi di API: è anche possibile includere risorse fornendo il gruppo di API AKS e il tipo. Ad esempio, è possibile scegliere risorse del servizio Azure Kubernetes per il backup, come le distribuzioni. È possibile accedere all'elenco dei gruppi di API definiti da Kubernetes qui.
Altre opzioni: è possibile abilitare o disabilitare il backup per risorse con ambito cluster, volumi persistenti e segreti. Le risorse con ambito cluster e i volumi permanenti sono abilitati per impostazione predefinita.
- Tipo di volume: per eseguire il backup dei volumi basati su File di Azure, selezionare Condivisioni file SMB di Azure dall'elenco a discesa Tipo di volume . Per impostazione predefinita, sono selezionati solo i volumi dischi di Azure.
- Segreti: abilitare Includi segreti se si usano segreti Kubernetes per archiviare le chiavi dell'account di archiviazione per i volumi di File di Azure. Questa operazione è necessaria per le operazioni di ripristino riuscite dei volumi basati su File di Azure.
Nota
È necessario aggiungere le etichette a ogni singolo file YAML distribuito e di cui eseguire il backup. Sono incluse risorse con ambito spazio dei nomi come attestazioni di volume persistente e risorse con ambito cluster come volumi persistenti.
Se si desidera escludere attestazioni di volume persistente specifiche dai backup, aggiungere l'annotazione velero.io/exclude-from-backup=true. Questa annotazione Velero è supportata da Azure Backup per AKS.
Verificare i backup e gli snapshot
Dopo aver configurato il backup, è possibile verificare che i backup vengano eseguiti correttamente e che vengano creati snapshot:
Nel portale di Azure andare all'insieme di credenziali di Backup.
Selezionare Istanze di backup in Gestisci per visualizzare lo stato dell'istanza di backup del cluster del servizio Azure Kubernetes.
Selezionare Processi di backup per visualizzare le operazioni di backup completate e in corso.
Per verificare gli snapshot di Azure Files:
- Passare all'account di archiviazione che contiene la condivisione file di Azure Files.
- Passare alla condivisione file usata dal volume permanente.
- Selezionare Snapshot per visualizzare gli snapshot di backup creati da Backup di Azure.
Per verificare gli snapshot dei dischi di Azure:
- Passare al gruppo di risorse snapshot specificato durante la configurazione del backup.
- Visualizzare gli snapshot del disco che corrispondono ai volumi persistenti basati su disco di Azure.
Usare hook durante il backup di AKS
Questa sezione descrive come usare un hook di backup per creare uno snapshot applicativo coerente del cluster AKS con MySQL distribuito (un volume persistente che contiene l'istanza di MySQL).
È possibile usare hook personalizzati nel backup del servizio Azure Kubernetes per eseguire snapshot coerenti con l'applicazione dei volumi. I volumi vengono usati per i database distribuiti come carichi di lavoro in contenitori.
Usando un hook di backup, è possibile definire i comandi per bloccare e sbloccare un pod MySQL in modo che sia possibile acquisire uno snapshot dell'applicazione del volume. L'estensione Backup quindi orchestra i passaggi necessari per eseguire i comandi all'interno degli hook e acquisisce lo snapshot del volume.
Uno scatto coerente con l'applicazione di un volume con MySQL installato si ottiene eseguendo le seguenti azioni:
- Il pod che esegue MySQL è bloccato in modo che non venga eseguita alcuna nuova transazione nel database.
- Viene creato uno snapshot come backup del volume.
- Il pod che esegue MySQL viene sbloccato in modo che le transazioni possano essere eseguite di nuovo nel database.
Per abilitare un hook di backup come parte del flusso di configurazione del backup per eseguire il backup di MySQL:
Scrivere la risorsa personalizzata per l'hook di backup con i comandi per bloccare e sbloccare un pod PostgreSQL.
È anche possibile usare lo script YAML di esempio seguente postgresbackuphook.yaml, con comandi predefiniti:
apiVersion: clusterbackup.dataprotection.microsoft.com/v1alpha1 kind: BackupHook metadata: # BackupHook CR Name and Namespace name: bkphookname0 namespace: default spec: # BackupHook Name. This is the name of the hook that will be executed during backup. # compulsory name: hook1 # Namespaces where this hook will be executed. includedNamespaces: - hrweb excludedNamespaces: labelSelector: # PreHooks is a list of BackupResourceHooks to execute prior to backing up an item. preHooks: - exec: command: - /sbin/fsfreeze - --freeze - /var/lib/postgresql/data container: webcontainer onError: Continue # PostHooks is a list of BackupResourceHooks to execute after backing up an item. postHooks: - exec: container: webcontainer command: - /sbin/fsfreeze - --unfreeze onError: Fail timeout: 10sPrima di configurare un backup, è necessario distribuire la risorsa personalizzata hook di backup nel cluster AKS.
Per distribuire lo script, eseguire il comando seguente:
kubectl apply -f mysqlbackuphook.yamlAl termine della distribuzione, è possibile configurare i backup per il cluster AKS.
Nota
Come parte di una configurazione di backup, è necessario specificare il nome della risorsa personalizzata e lo spazio dei nomi in cui la risorsa viene distribuita come input.
Passaggi successivi
- Ripristinare un cluster del servizio Azure Kubernetes usando il portale di Azure, Azure PowerShell
- Gestire i backup del cluster del servizio Azure Kubernetes
- Informazioni sul backup del cluster del servizio Azure Kubernetes