Questa pagina descrive come creare un piano di backup Backup per GKE, utilizzato per il backup dei carichi di lavoro in Google Kubernetes Engine (GKE).
I piani di backup forniscono le funzioni di configurazione, posizione e gestione per una sequenza di backup. Un piano di backup contiene una configurazione di backup che comprende il cluster di origine, la selezione dei carichi di lavoro di cui eseguire il backup e la regione in cui sono archiviati gli artefatti di backup prodotti in questo piano.
Puoi creare uno o più piani di backup per ogni cluster. Esistono due motivi principali per cui potresti volere più di un piano di backup per un cluster:
- Vuoi archiviare gli artefatti di backup in più regioni. In questo caso, crea un piano di backup per ogni regione in cui vuoi archiviare i backup.
Vuoi partizionare i backup del tuo cluster, ad esempio:
- Invece di un backup molto grande eseguito in un'unica ora del giorno, è preferibile distribuire più backup più piccoli nell'arco della giornata.
- Vuoi eseguire il backup di alcune parti del tuo cluster più spesso di altre (ad esempio, backup giornalieri per alcuni spazi dei nomi e backup orari per altri).
Consigliamo che ogni cluster abbia almeno un piano di backup.
Puoi creare un piano di backup con un metodo di pianificazione dei backup per creare automaticamente backup: pianificazione intelligente o pianificazione cron. Ti consigliamo una pianificazione intelligente per il tuo piano di backup. Ciò garantisce che i backup vengano creati automaticamente per soddisfare i requisiti del RPO (Recovery Point Objective). Per ulteriori informazioni, vedi Creazione ed eliminazione automatici dei backup.
Se non vuoi creare un piano di backup con metodi di pianificazione del backup, devi eseguire manualmente il backup dei carichi di lavoro. Dopo aver creato un piano di backup, puoi crearne uno da quel piano.
Prima di iniziare
Ruoli obbligatori
Per ottenere le autorizzazioni necessarie per creare e gestire un piano di backup, chiedi all'amministratore di concederti il ruolo IAM Amministratore backup di Backup per GKE (roles/gkebackup.backupAdmin
), che è un sottoinsieme del ruolo IAM Amministratore di Backup per GKE (roles/gkebackup.admin
) per il tuo progetto.
Per saperne di più sulla concessione dei ruoli, consulta Gestire l'accesso.
Potresti anche essere in grado di ottenere le autorizzazioni richieste tramite i ruoli personalizzati o altri ruoli predefiniti.
Crea un piano di backup
Crea un piano di backup utilizzando gcloud CLI o la console Google Cloud.
gcloud
Per creare un piano di backup con una pianificazione, esegui questo comando:
gcloud beta container backup-restore backup-plans create BACKUP_PLAN \
--project=PROJECT_ID \
--location=LOCATION \
--cluster=CLUSTER \
--all-namespaces \
--include-secrets \
--include-volume-data \
--encryption-key=ENCRYPTION_KEY
--target-rpo-minutes=TARGET_RPO_MINUTES \
--exclusion-windows-file=EXCLUSION_WINDOWS_FILE
--cron-schedule=CRON_SCHEDULE \
--backup-retain-days=RETAIN_DAYS \
--backup-delete-lock-days=DELETE_LOCK_DAYS \
--locked
Sostituisci quanto segue:
BACKUP_PLAN
: il nome del piano di backup che vuoi creare.PROJECT_ID
: l'ID del tuo progetto Google Cloud.LOCATION
: la regione di computing per la risorsa, ad esempious-central1
. Vedi Informazioni sulle località delle risorse.CLUSTER
: il percorso relativo al cluster:- Cluster a livello di regione:
projects/PROJECT_ID/locations/REGION/clusters/CLUSTER_NAME
- Cluster di zona:
projects/PROJECT_ID/locations/ZONE/clusters/CLUSTER_NAME
- Cluster a livello di regione:
CLUSTER_NAME
: il nome del cluster di cui eseguire il backup.--all-namespaces
: esegue il backup di tutti gli spazi dei nomi per il cluster.In alternativa, specifica:
--selected-applications
con un elenco di ProtectedApplications comeNAMESPACE1/APP1,NAMESPACE2/APP2,...
di cui eseguire il backup.--selected-namespaces
con un elenco di spazi dei nomi comeNAMESPACE1,NAMESPACE2,...
di cui eseguire il backup.
Quando crei un piano di backup, devi specificare una di queste opzioni.
--include-secrets
: un argomento facoltativo per includere le risorseSecret
se rientrano nell'ambito del backup.--include-volume-data
: un argomento facoltativo per includere dati di volumi permanenti nel backup. Non impostare questo argomento se vuoi creare volumi vuoti durante il ripristino.ENCRYPTION_KEY
: un argomento facoltativo per definire il percorso di una chiave di crittografia gestita dal cliente. Vedi Informazioni sulla crittografia CMEK.TARGET_RPO_MINUTES
: argomento richiesto se è impostatoEXCLUSION_WINDOWS_FILE
. Specifica l'RPO target in minuti. La pianificazione intelligente utilizza questo valore per creare automaticamente backup. Il minimo è 60 minuti (1 ora) e il massimo è 86.400 minuti (60 giorni). Non puoi impostare siaTARGET_RPO_MINUTES
cheCRON_SCHEDULE
contemporaneamente in un piano di backup.EXCLUSION_WINDOWS_FILE
: un argomento facoltativo per definire le finestre temporali durante le quali non è possibile eseguire il backup. Tutti gli orari sono interpretati come UTC. Questo argomento è disponibile solo quando è impostatoTARGET_RPO_MINUTES
.CRON_SCHEDULE
: un argomento facoltativo per definire una pianificazione cron che crei automaticamente backup e supporti la sintassi cron standard. Ad esempio,"10 3 * * *"
crea un backup ogni giorno alle 03:10. Tutti gli orari sono interpretati come UTC. L'intervallo minimo tra i backup pianificati è di 10 minuti. Non puoi impostare siaCRON_SCHEDULE
siaTARGET_RPO_MINUTES
contemporaneamente in un piano di backup.RETAIN_DAYS
: argomento richiesto se è impostatoTARGET_RPO_MINUTES
oCRON_SCHEDULE
. Specifica il numero di giorni in cui conservare il backup. I backup per questo piano vengono eliminati automaticamente alla scadenza del periodo di conservazione.DELETE_LOCK_DAYS
: un argomento facoltativo per specificare il numero di giorni durante i quali non è possibile eliminare i backup. Se questo valore è impostato, i backup creati per quel piano non possono essere eliminati (automaticamente o manualmente) fino alla scadenza di tale piano.--locked
: un argomento facoltativo per bloccare il criterio di conservazione per il piano di backup.
Per l'elenco completo delle opzioni, consulta la documentazione di gcloud beta container backup-restore backup-plans create
.
Crea un piano di backup per tutti gli spazi dei nomi con un RPO di 24 ore e una singola finestra di esclusione
Crea un file window.yaml contenente un array YAML di exclusionWindows
.
exclusionWindows:
- startTime:
hours: 1
minutes: 0
duration: "3600s"
singleOccurrenceDate:
day: 1
month: 3
year: 2024
Il seguente comando crea un piano di backup per tutti gli spazi dei nomi con un RPO di destinazione di 24 ore e non sono consentiti backup dalle 01:00 alle 02:00 del 1° marzo 2024. I backup vengono conservati per sette giorni e bloccati per tre giorni dopo la creazione:
gcloud beta container backup-restore backup-plans create BACKUP_PLAN \
--location=LOCATION \
--cluster=CLUSTER \
--all-namespaces \
--include-secrets \
--include-volume-data \
--target-rpo-minutes=1440 \
--exclusion-windows-file=window.yaml \
--backup-retain-days=7 \
--backup-delete-lock-days=3 \
--locked
Crea un piano di backup per tutti gli spazi dei nomi con un RPO di 2 ore e più finestre di esclusione
Crea un file window.yaml contenente un array YAML di exclusionWindows
: una finestra settimanale e una finestra di occorrenza singola.
exclusionWindows:
- startTime:
hours: 15
minutes: 0
duration: "5400s"
daysOfWeek:
daysOfWeek:
- MONDAY
- FRIDAY
- startTime:
hours: 1
minutes: 0
duration: "3600s"
singleOccurrenceDate:
day: 1
month: 3
year: 2024
Il seguente comando crea un piano di backup per tutti gli spazi dei nomi con un RPO di destinazione di due ore e nessun backup consentito dalle 01:00 alle 2:00 del 1° marzo 2024 e dalle 15:00 alle 16:30 ogni lunedì e venerdì. I backup vengono conservati per sette giorni e bloccati per tre giorni dopo la creazione:
gcloud beta container backup-restore backup-plans create BACKUP_PLAN \
--location=LOCATION \
--cluster=CLUSTER \
--all-namespaces \
--include-secrets \
--include-volume-data \
--target-rpo-minutes=120 \
--exclusion-windows-file=window.yaml \
--backup-retain-days=7 \
--backup-delete-lock-days=3 \
--locked
Crea un piano di backup per tutti gli spazi dei nomi con una pianificazione cron giornaliera
Il seguente comando crea un piano di backup per pianificare il backup giornaliero di tutti gli spazi dei nomi alle 5:20 di ogni giorno. I backup vengono conservati per sette giorni e bloccati per tre giorni dopo la creazione:
gcloud beta container backup-restore backup-plans create BACKUP_PLAN \
--location=LOCATION \
--cluster=CLUSTER \
--all-namespaces \
--include-secrets \
--include-volume-data \
--cron-schedule="20 5 * * *" \
--backup-retain-days=7 \
--backup-delete-lock-days=3 \
--locked
Crea un piano di backup per uno spazio dei nomi selezionato con una pianificazione cron oraria
Il seguente comando crea un piano di backup per pianificare il backup orario per lo spazio dei nomi selezionato ( my-ns) al minuto 15 ogni ora. I backup vengono conservati per tre giorni dopo la creazione:
gcloud beta container backup-restore backup-plans create BACKUP_PLAN \
--location=LOCATION \
--cluster=CLUSTER \
--selected-namespaces=my-ns \
--include-secrets \
--include-volume-data \
--cron-schedule="15 * * * *" \
--backup-retain-days=3
Crea un piano di backup per un elemento ProtectedApplication
selezionato
Il seguente comando crea un piano di backup per selezionare ProtectedApplication (my-ns/my-app).
gcloud beta container backup-restore backup-plans create BACKUP_PLAN \
--location=LOCATION \
--cluster=CLUSTER \
--selected-applications=my-ns1/my-app1,my-ns2/my-app2 \
--include-secrets \
--include-volume-data
Console
Segui le istruzioni riportate di seguito per creare un piano di backup nella console Google Cloud:
Vai alla pagina Google Kubernetes Engine nella console Google Cloud.
Nel menu di navigazione, fai clic su Backup per GKE.
Fai clic su Crea un piano di backup.
Nella sezione Dettagli piano, procedi nel seguente modo:
- Seleziona il cluster di cui eseguire il backup.
- Inserisci il nome del piano di backup e la descrizione facoltativa.
- Scegli una posizione per il backup.
Per creare automaticamente i backup, nella sezione Pianificazione backup, seleziona la casella di controllo Attiva pianificazione dei backup, quindi scegli uno dei seguenti metodi:
Seleziona Programmazione intelligente e segui questi passaggi:
- Nel campo RPO target, inserisci l'RPO per il piano di backup, quindi seleziona il valore dell'RPO in Minutes, Hours o Days dal menu a discesa.
- (Facoltativo) Seleziona la casella di controllo Definisci una singola finestra di esclusione di backup ricorrente per l'esclusione del backup.
- Scegli Giornaliera o Settimanale nella finestra di esclusione.
- Nella sezione Si ripete il, seleziona i giorni della settimana da escludere dal piano di backup. Questo campo viene visualizzato solo per la finestra di esclusione settimanale.
- Nel campo Ora di inizio finestra, inserisci l'ora di inizio per l'esclusione del piano di backup.
- Nel campo Durata, inserisci la durata dell'esclusione del piano di backup e seleziona Secondi, Minuti oppure Ore dal menu a discesa.
- (Facoltativo) Se vuoi creare una o più finestre di esclusione per il backup a occorrenza singola, seleziona la casella di controllo Definisci una o più date di esclusione del backup e procedi nel seguente modo:
- Fai clic su Aggiungi data di esclusione.
- Nel campo Data e ora di inizio della finestra di esclusione, fai clic sull'icona e seleziona Data e Ora per i backup.
- Nel campo Durata, inserisci la durata dell'esclusione del piano di backup e seleziona Secondi, Minuti oppure Ore dal menu a discesa.
Seleziona Cron schedule e inserisci un'espressione CRON utilizzando la sintassi standard cron. Ad esempio,
10 3 * * *
crea un backup ogni giorno alle 03:10. L'intervallo minimo tra i backup pianificati è di 10 minuti.
Nella sezione Criterio di conservazione, segui questi passaggi:
- Imposta il numero di giorni in cui conservare il backup prima che venga eliminato automaticamente.
- Imposta il numero di giorni durante i quali non è possibile eliminare i backup.
- Per bloccare il criterio di conservazione, fai clic sull'icona lucchetto per impostare il blocco da Off ad On.
Nella sezione Configura ambito e crittografia del backup, segui questi passaggi:
Seleziona l'ambito del piano di backup:
- Fai clic su Intero cluster (inclusi tutti gli spazi dei nomi) per eseguire il backup di tutte le risorse con spazio dei nomi nel backup.
- Fai clic su Spazi dei nomi selezionati all'interno di questo cluster per scegliere gli spazi dei nomi da includere nel piano di backup.
- Fai clic su Applicazioni protette selezionate all'interno di questo cluster per aggiungere risorse specificando lo spazio dei nomi e il nome dell'applicazione.
Fai clic sulla casella di controllo Secret per includere le risorse Secret Kubernetes.
Fai clic sulla casella di controllo Dati di volumi permanenti se vuoi che i dati di volume vengano inclusi nel backup. Se scegli di saltare i dati di volume, non potrai ripristinarli durante il ripristino. Tuttavia, hai due opzioni per scegliere i dati di volume durante il ripristino: Esegui il provisioning di nuovi volumi o Riutilizza volumi esistenti.
Per abilitare la crittografia CMEK, devi prima concedere l'accesso alle chiavi CMEK appropriate (vedi Informazioni sulla crittografia CMEK).
- Fai clic sulla casella di controllo Utilizza una chiave di crittografia gestita dal cliente per selezionare una chiave.
Esamina i dettagli del piano di backup e fai clic su Crea piano.
Terraform
Crea una risorsa google_gke_backup_backup_plan
.
resource "google_gke_backup_backup_plan" "basic" {
name = "BACKUP_PLAN"
cluster = google_container_cluster.CLUSTER.id
location = "LOCATION"
retention_policy {
backup_retain_days = 7
}
backup_schedule {
cron_schedule = "17 3 * * *"
}
backup_config {
include_volume_data = true
include_secrets = true
all_namespaces = true
}
}
Sostituisci quanto segue:
BACKUP_PLAN
: il nome del piano di backup che vuoi creare.CLUSTER
: il nome della tua risorsagoogle_container_cluster
.LOCATION
: la regione in cui vuoi archiviare i backup.
Per ulteriori informazioni, consulta gke_backup_backup_plan.
Visualizza un piano di backup
Visualizza un piano di backup e i relativi dettagli utilizzando gcloud CLI o la console Google Cloud.
gcloud
Per elencare tutti i piani di backup all'interno del progetto e della regione, esegui questo comando:
gcloud beta container backup-restore backup-plans list \
--project=PROJECT_ID \
--location=LOCATION
Solo per i comandi list
, puoi fornire -
come valore per qualsiasi
parametro tranne PROJECT_ID
. Il valore -
funge da carattere jolly. Il valore -
è il valore predefinito per qualsiasi parametro, se non specifichi un'opzione della riga di comando o non imposti una proprietà.
Per l'elenco completo delle opzioni, consulta la documentazione di gcloud beta container backup-restore backup-plans list
.
Per vedere i dettagli di un piano di backup, esegui questo comando:
gcloud beta container backup-restore backup-plans describe BACKUP_PLAN \
--project=PROJECT_ID \
--location=LOCATION
Per l'elenco completo delle opzioni, consulta la documentazione di gcloud beta container backup-restore backup-plans describe
.
Console
Segui le istruzioni riportate di seguito per visualizzare un piano di backup nella console Google Cloud:
Vai alla pagina Google Kubernetes Engine nella console Google Cloud.
Nel menu di navigazione, fai clic su Backup per GKE.
Fai clic sulla scheda Piani di backup.
Espandi il cluster e fai clic sul nome del piano.
Fai clic sulla scheda Dettagli per visualizzare i dettagli del piano.
Aggiorna un piano di backup
Aggiorna un piano di backup utilizzando gcloud CLI o la console Google Cloud.
gcloud
Per aggiornare un piano di backup, ad esempio aggiungendo una nuova descrizione, esegui questo comando:
gcloud beta container backup-restore backup-plans update BACKUP_PLAN \
--project=PROJECT_ID \
--location=LOCATION \
--description=DESCRIPTION
Per l'elenco completo delle opzioni, consulta la documentazione di gcloud beta container backup-restore backup-plans update
.
Console
Segui queste istruzioni per aggiornare un piano di backup nella console Google Cloud:
Vai alla pagina Google Kubernetes Engine nella console Google Cloud.
Nel menu di navigazione, fai clic su Backup per GKE.
Fai clic sulla scheda Piani di backup.
Espandi il cluster e fai clic sul nome del piano.
Fai clic sulla scheda Dettagli per modificare i dettagli del piano.
Fai clic su edit Modifica per modificare una sezione del piano e poi su Salva modifiche.
Mettere in pausa una pianificazione del backup
Puoi mettere in pausa la pianificazione del backup. Mentre la pianificazione è in pausa, non vengono creati backup automatici. Puoi comunque creare backup manualmente.
gcloud
Per mettere in pausa una pianificazione del backup, esegui questo comando:
gcloud beta container backup-restore backup-plans update BACKUP_PLAN \
--project=PROJECT_ID \
--location=LOCATION \
--paused
Per l'elenco completo delle opzioni, consulta la documentazione di gcloud beta container backup-restore backup-plans update
.
Console
Segui le istruzioni riportate di seguito per mettere in pausa una pianificazione del backup nella console Google Cloud:
Vai alla pagina Google Kubernetes Engine nella console Google Cloud.
Nel menu di navigazione, fai clic su Backup per GKE.
Fai clic sulla scheda Piani di backup.
Espandi il cluster e fai clic sul nome del piano.
Fai clic su Metti in pausa la pianificazione e poi su Metti in pausa la pianificazione nella finestra di dialogo di conferma.
Elimina un piano di backup
Puoi eliminare un piano di backup utilizzando gcloud CLI o la console Google Cloud. Non puoi eliminare un piano di backup se questo contiene backup.
gcloud
Per eliminare un piano di backup, esegui questo comando:
gcloud beta container backup-restore backup-plans delete BACKUP_PLAN \
--project=PROJECT_ID \
--location=LOCATION
Per l'elenco completo delle opzioni, consulta la documentazione di gcloud beta container backup-restore backup-plans delete
.
Console
Segui queste istruzioni per eliminare un piano di backup nella console Google Cloud:
Vai alla pagina Google Kubernetes Engine nella console Google Cloud.
Nel menu di navigazione, fai clic su Backup per GKE.
Fai clic sulla scheda Piani di backup.
Espandi il cluster e fai clic sul nome del piano.
Fai clic su delete Elimina piano.
Digita il nome del piano di backup e fai clic su Elimina piano di backup nella finestra di dialogo di conferma.
Passaggi successivi
- Scopri di più sulla pianificazione di una serie di ripristini.
- Scopri di più sul backup manuale dei carichi di lavoro.