Questa pagina descrive come eseguire un backup tra progetti in Google Kubernetes Engine (GKE) utilizzando il servizio Backup per GKE.
Panoramica
I backup tra progetti consentono di scollegare il ciclo di vita del progetto di backup dal progetto del cluster. Puoi ottenere backup con controllo dell'accesso separatamente in un progetto diverso dal progetto del cluster.
Limitazioni
Non puoi eseguire la migrazione dei piani di backup esistenti per eseguire backup tra progetti.
Prezzi
Per i dettagli sui prezzi, consulta Prezzi per backup e ripristini tra progetti.
Prima di iniziare
-
Prima di iniziare, assicurati di aver eseguito le seguenti operazioni:
- Attiva l'API Google Kubernetes Engine. Attiva l'API Google Kubernetes Engine
- Se vuoi utilizzare Google Cloud CLI per questa attività,
installala e poi
inizializzala. Se hai già installato gcloud CLI, scarica l'ultima versione eseguendo
gcloud components update
.
Abilita l'API Backup per GKE nel progetto che contiene il cluster di cui vuoi eseguire il backup e nel progetto in cui vuoi archiviare il backup. Per maggiori informazioni, vedi Abilitare l'API Backup per GKE.
Abilita il componente aggiuntivo Backup per GKE nel cluster di cui vuoi eseguire il backup. Per maggiori informazioni, consulta Abilitare Backup per GKE per un cluster.
Ruoli obbligatori
Per ottenere le autorizzazioni necessarie per creare e gestire un backup tra progetti, chiedi all'amministratore di concederti il ruolo IAM Backup per GKE Backup Admin (roles/gkebackup.backupAdmin
), che è un sottoinsieme di Backup per GKE Admin (roles/gkebackup.admin
), nel tuo progetto.
Per saperne di più sulla concessione dei ruoli, consulta Gestisci l'accesso a progetti, cartelle e organizzazioni.
Potresti anche riuscire a ottenere le autorizzazioni richieste tramite i ruoli personalizzati o altri ruoli predefiniti.
Configura service account
Se necessario, crea service account per progetto per eseguire operazioni sui tuoi progetti.
Utilizzando Google Cloud CLI, esegui questi comandi per configurare un account di servizio:
Crea un account di servizio eseguendo il comando
gcloud beta services identity create
:gcloud beta services identity create \ --service=gkebackup.googleapis.com \ --project=CLUSTER_PROJECT_ID gcloud projects add-iam-policy-binding CLUSTER_PROJECT_ID \ --member=serviceAccount:service-CLUSTER_PROJECT_NUMBER@gcp-sa-gkebackup.iam.gserviceaccount.com \ --role=roles/gkebackup.serviceAgent \ gcloud beta services identity create \ --service=gkebackup.googleapis.com \ --project=BACKUP_PROJECT_ID gcloud projects add-iam-policy-binding BACKUP_PROJECT_ID \ --member=serviceAccount:service-BACKUP_PROJECT_NUMBER@gcp-sa-gkebackup.iam.gserviceaccount.com \ --role=roles/gkebackup.serviceAgent
Sostituisci quanto segue:
CLUSTER_PROJECT_ID
: il nome alfanumerico del tuo progetto Google Cloud che vuoi creare. Ad esempiocluster-project-id
.CLUSTER_PROJECT_NUMBER
: l'identificatore numerico univoco del tuo progetto Google Cloud . Ad esempio123456789012
.BACKUP_PROJECT_ID
: il nome alfanumerico del progettoGoogle Cloud in cui verrà archiviato il backup. Ad esempiobackup-project-id
.BACKUP_PROJECT_NUMBER
: l'identificatore numerico univoco del progetto in cui verrà archiviato il backup. Ad esempio,123456789012
.
Consenti al account di servizio del progetto di backup di eseguire i backup nel progetto del cluster eseguendo il comando
gcloud projects add-iam-policy-binding
:gcloud projects add-iam-policy-binding CLUSTER_PROJECT_ID \ --member=serviceAccount:service-BACKUP_PROJECT_NUMBER@gcp-sa-gkebackup.iam.gserviceaccount.com \ --role=roles/gkebackup.serviceAgent
Sostituisci quanto segue:
CLUSTER_PROJECT_ID
: il nome alfanumerico del tuo Google Cloud progetto. Ad esempio:cluster-project-id
.BACKUP_PROJECT_NUMBER
: l'identificatore numerico univoco del progetto in cui verrà archiviato il backup. Ad esempio,123456789012
.
Consenti all'agente del progetto del cluster di accedere a
gkebackup.googleapis.com
nel progetto di backup eseguendo il comandogcloud projects add-iam-policy-binding
:gcloud projects add-iam-policy-binding BACKUP_PROJECT_ID \ --member serviceAccount:service-CLUSTER_PROJECT_NUMBER@container-engine-robot.iam.gserviceaccount.com \ --role "roles/gkebackup.crossProjectServiceAgent"
Sostituisci quanto segue:
BACKUP_PROJECT_ID
: il nome alfanumerico del progettoGoogle Cloud in cui verrà archiviato il backup. Ad esempiobackup-project-id
.CLUSTER_PROJECT_NUMBER
: l'identificatore numerico univoco del tuo progetto Google Cloud . Ad esempio123456789012
.
Crea un canale di backup
Dopo aver configurato gli account di servizio, devi creare un canale di backup nello stesso progetto e nella stessa regione del cluster di cui vuoi eseguire il backup. Dopo aver creato un canale di backup, puoi eseguire il backup dei cluster nel progetto e nella regione nel progetto di destinazione.
gcloud
Per creare un canale di backup, esegui il comando
gcloud beta container backup-restore backup-channels create
utilizzando Google Cloud CLI:
gcloud beta container backup-restore backup-channels create BACKUP_CHANNEL_NAME \
--project=CLUSTER_PROJECT_ID \
--location=CLUSTER_LOCATION \
--destination-project=projects/BACKUP_PROJECT_NUMBER
Sostituisci quanto segue:
BACKUP_CHANNEL_NAME
: il nome del canale di backup che vuoi creare. Ad esempio,my-backup-channel-name
.CLUSTER_PROJECT_ID
: il nome alfanumerico del tuo progettoGoogle Cloud in cui si trova il cluster. Ad esempiocluster-project-id
.CLUSTER_LOCATION
: la regione in cui si trova il cluster. Ad esempio,us-central1
.BACKUP_PROJECT_NUMBER
: l'identificatore numerico univoco del progetto in cui verrà archiviato il backup.
Console
Per creare un canale di backup nella console Google Cloud , segui queste istruzioni:
Nella console Google Cloud , vai alla pagina Google Kubernetes Engine.
Nel menu Gestione delle risorse, fai clic su Backup per GKE.
Fai clic sulla scheda Canali di backup.
Nella scheda Canali di backup, fai clic su Crea un canale di backup.
Utilizzando il campo Progetto cluster, assicurati di aver selezionato il progetto cluster corretto.
Nel menu Regione, seleziona la regione in cui si trovano i tuoi cluster.
Nel campo Progetto di backup, seleziona il progetto a cui vuoi consentire i backup.
Nel campo Nome canale di backup, inserisci un nome per il canale di backup.
(Facoltativo): nel campo Descrizione canale di backup, inserisci una breve descrizione del canale di backup.
Fai clic su Avanti.
Convalida le autorizzazioni del account di servizio nei progetti del cluster e di backup.
Fai clic su Crea.
Crea un piano di backup
Dopo aver creato un canale di backup, devi creare il piano di backup. Se il cluster di cui viene eseguito il backup si trova in un progetto diverso, il piano di backup viene associato automaticamente a un canale di backup esistente. Il campo backup_channel
nel piano di backup mostra il canale di backup a cui è associato il piano di backup.
Prima di iniziare
Prima di creare un piano di backup, consulta la sezione Pianificare una serie di backup.
Crea un piano di backup
Per creare un piano di backup nel progetto di backup utilizzando la console Google Cloud , segui queste istruzioni:
Nella console Google Cloud , vai alla pagina Google Kubernetes Engine.
Nel menu Gestione delle risorse, fai clic su Backup per GKE.
Apri il progetto di backup in cui vuoi creare il piano di backup.
Fai clic su Crea un piano di backup.
Seleziona la casella di controllo Configura backup tra progetti.
Nel campo Progetto cluster, scegli il progetto contenente il cluster di origine.
Nel menu Cluster, seleziona la regione del cluster.
Nel campo Nome piano di backup, inserisci un nome per il piano di backup.
Nel campo Progetto di backup, inserisci il nome del progetto di backup in cui vuoi archiviare i backup.
Nel campo Regione, inserisci la località in cui verranno archiviati i backup. Se non viene trovato alcun canale di backup, fai clic su Crea canale di backup, segui le istruzioni per creare un canale di backup e fai clic su Crea.
Fai clic su Visualizza i dettagli del canale di backup.
Fai clic su Convalida autorizzazioni.
Completa i passaggi rimanenti come descritto in Creare un piano di backup.
Fai clic su Crea piano.
Visualizzare un canale di backup
Segui le istruzioni riportate nelle sezioni seguenti per visualizzare i canali di backup.
Visualizza tutti i canali di backup all'interno di un progetto e di una regione
gcloud
Per visualizzare tutti i canali di backup all'interno di un progetto e di una regione, esegui
il comando gcloud beta container backup-restore backup-channels list
utilizzando Google Cloud CLI:
gcloud beta container backup-restore backup-channels list \
--project=CLUSTER_PROJECT_ID \
--location=CLUSTER_LOCATION
Sostituisci quanto segue:
CLUSTER_PROJECT_ID
: il nome alfanumerico del tuo progettoGoogle Cloud in cui si trova il cluster. Ad esempiocluster-project-id
.CLUSTER_LOCATION
: la regione in cui si trova il cluster. Ad esempio,us-central1
.
Console
Per visualizzare tutti i canali di backup all'interno di un progetto e di una regione nella consoleGoogle Cloud , segui queste istruzioni:
Nella Google Cloud console del progetto del cluster, vai alla pagina Google Kubernetes Engine.
Nel menu Gestione delle risorse, fai clic su Backup per GKE.
Fai clic sulla scheda Canali di backup.
Utilizza il menu del progetto e della regione per filtrare l'elenco dei canali di backup.
L'elenco filtrato mostra tutti i canali di backup nel progetto e nella regione selezionati.
Visualizzare i dettagli di un canale di backup
gcloud
Per visualizzare i dettagli di un canale di backup, esegui il comando
gcloud beta container backup-restore backup-channels describe
utilizzando Google Cloud CLI:
gcloud beta container backup-restore backup-channels describe BACKUP_CHANNEL_NAME \
--project=CLUSTER_PROJECT_ID \
--location=CLUSTER_LOCATION
Sostituisci quanto segue:
BACKUP_CHANNEL_NAME
: il nome del canale di backup che vuoi visualizzare. Ad esempio,my-backup-channel-name
.CLUSTER_PROJECT_ID
: il nome alfanumerico del tuo progettoGoogle Cloud in cui si trova il cluster. Ad esempiocluster-project-id
.CLUSTER_LOCATION
: la regione in cui si trova il cluster. Ad esempio,us-central1
.
Console
Per visualizzare i dettagli di un canale di backup nella console Google Cloud , segui queste istruzioni:
Nella Google Cloud console del progetto del cluster, vai alla pagina Google Kubernetes Engine.
Nel menu Gestione delle risorse, fai clic su Backup per GKE.
Fai clic sulla scheda Canali di backup.
Utilizza il menu del progetto e della regione per filtrare l'elenco dei canali di backup.
Fai clic sul nome del canale di backup che vuoi visualizzare. Si apre una pagina con i dettagli del canale di backup.
Visualizzare i piani di backup associati a un canale di backup
Per visualizzare i piani di backup associati a un canale di backup, esegui il comando gcloud beta container backup-restore backup-plan-bindings list
utilizzando Google Cloud CLI:
gcloud beta container backup-restore backup-plan-bindings list \
--backup-channel=BACKUP_CHANNEL_NAME \
--project=CLUSTER_PROJECT_ID \
--location=CLUSTER_LOCATION
Sostituisci quanto segue:
BACKUP_CHANNEL_NAME
: il nome del canale di backup che vuoi visualizzare. Ad esempio,my-backup-channel-name
.CLUSTER_PROJECT_ID
: il nome alfanumerico del tuo progetto Google Cloud in cui si trova il cluster. Ad esempio,cluster-project-id
.CLUSTER_LOCATION
: la regione in cui si trova il cluster. Ad esempio,us-central1
.
Gestire i canali di backup
Le sezioni seguenti descrivono come gestire i canali di backup dopo averli creati.
Aggiorna un canale di backup
Utilizza le seguenti istruzioni per aggiornare un canale di backup. Tieni presente che puoi modificare solo la descrizione di un canale di backup esistente. Tutti gli altri campi non possono essere modificati.
gcloud
Per aggiornare la descrizione di un canale di backup, esegui il comando
gcloud beta container backup-restore backup-channels update
utilizzando Google Cloud CLI:
gcloud beta container backup-restore backup-channels update BACKUP_CHANNEL_NAME \
--project=CLUSTER_PROJECT_ID \
--location=CLUSTER_LOCATION \
--description=DESCRIPTION
Sostituisci quanto segue:
BACKUP_CHANNEL_NAME
: il nome del canale di backup che vuoi aggiornare. Ad esempio,my-backup-channel-name
.CLUSTER_PROJECT_ID
: il nome alfanumerico del tuo progettoGoogle Cloud in cui si trova il cluster. Ad esempiocluster-project-id
.CLUSTER_LOCATION
: la regione in cui si trova il cluster. Ad esempio,us-central1
.DESCRIPTION
: la descrizione che vuoi aggiornare.
Console
Per aggiornare un canale di backup nella console Google Cloud , segui queste istruzioni:
Nella Google Cloud console del progetto del cluster, vai alla pagina Google Kubernetes Engine.
Nel menu Gestione delle risorse, fai clic su Backup per GKE.
Fai clic sulla scheda Canali di backup.
Nella pagina Canali di backup, fai clic sul canale di backup che vuoi aggiornare. Tieni presente che puoi aggiornare solo la descrizione di un canale di backup esistente. Tutti gli altri campi non possono essere modificati.
Viene visualizzata la pagina Dettagli canale di backup.
Fai clic su Convalida autorizzazioni.
Nelle sezioni Dettagli del canale di backup, fai clic sull'icona
Modifica descrizione.Viene visualizzata la finestra di dialogo Modifica descrizione.
Nel campo Descrizione, inserisci la descrizione aggiornata, poi fai clic su Salva modifiche.
Eliminare un canale di backup
Puoi eliminare un canale di backup solo se non contiene piani di backup attivi. Se sono associati piani di backup attivi, devi prima disattivarli o eliminarli prima di poter eliminare il canale di backup.
gcloud
Per eliminare un canale di backup, esegui il comando
gcloud beta container backup-restore backup-channels delete
utilizzando
Google Cloud CLI:
gcloud beta container backup-restore backup-channels delete BACKUP_CHANNEL_NAME \
--project=CLUSTER_PROJECT_ID \
--location=CLUSTER_LOCATION
Sostituisci quanto segue:
BACKUP_CHANNEL_NAME
: il nome del canale di backup che vuoi eliminare. Ad esempio,my-backup-channel-name
.CLUSTER_PROJECT_ID
: il nome alfanumerico del tuo progettoGoogle Cloud in cui si trova il cluster. Ad esempiocluster-project-id
.CLUSTER_LOCATION
: la regione in cui si trova il cluster. Ad esempio,us-central1
.
Console
Per eliminare un canale di backup nella console Google Cloud , segui queste istruzioni:
Nella Google Cloud console del progetto del cluster, vai alla pagina Google Kubernetes Engine.
Nel menu Gestione delle risorse, fai clic su Backup per GKE.
Fai clic sulla scheda Canali di backup.
Nella pagina Canali di backup, fai clic sul canale di backup che vuoi eliminare.
Fai clic su Elimina canale.
Viene visualizzata una finestra di dialogo che ti chiede di confermare l'eliminazione del canale di backup.
Nel campo Nome canale di backup, inserisci il nome del canale di backup per confermare l'eliminazione.
Fai clic su Conferma.
Passaggi successivi
Scopri come eseguire un ripristino tra progetti.
Scopri di più sulla pianificazione di un insieme di ripristini.