Esegui il backup delle istanze Compute Engine

Il processo di backup gestito da Google per le istanze Compute Engine prevede l'invio di dati a un vault di backup. Questi vault di backup garantiscono l'immutabilità e la conservazione forzata. Puoi scegliere di archiviare i backup in una singola regione o in più regioni.

Il modello gestito da Google supporta due metodi di esecuzione principali: backup pianificati e backup on demand. Questo documento mostra come configurare e gestire questi backup.

Panoramica

L'invio dei backup a un vault di backup garantisce l'immutabilità e la conservazione forzata. Con un vault di backup, puoi archiviare i backup in una singola regione o in più regioni. Esistono due metodi principali per eseguire il backup delle istanze Compute Engine:

  • Utilizza la console Google Cloud per eseguire il backup delle istanze Compute Engine: nella consoleGoogle Cloud , puoi eseguire il backup delle istanze Compute Engine in un vault di backup applicando i piani di backup. Puoi eseguire il backup dei dati utilizzando uno dei seguenti metodi. Entrambi i metodi consentono di archiviare i backup in modo sicuro in un vault di backup, fornendo un modo affidabile per recuperare le istanze Compute Engine in caso di perdita di dati o altri eventi imprevisti.

    • Backup pianificati: esegui automaticamente il backup delle istanze Compute Engine a intervalli specifici, ad esempio giornalieri, settimanali, mensili o annuali.

    • Backup on demand: crea backup on demand ogni volta che ne hai bisogno. I backup on demand sono utili per creare backup prima di apportare modifiche significative alle istanze o per la protezione dei dati ad hoc.

  • Utilizza la console di gestione per eseguire il backup delle istanze Compute Engine: se hai uno dei seguenti requisiti di backup, puoi utilizzare la console di gestione per eseguire il backup delle istanze Compute Engine:

    • Backup tra regioni
    • Backup di dischi specifici collegati a una macchina virtuale (VM)
    • Protezione automatica delle VM di Compute Engine in base ai tag
    • Se i piani di backup e i vault di backup basati sulla console Google Cloud non si trovano in una posizione compatibile con la regione in cui sono in esecuzione le VM di origine.

La console di gestione delle appliance fa parte di Backup e RE per i backup gestiti dalle appliance. Se devi utilizzare la console di gestione dell'appliance, consulta Individuare e proteggere le istanze Compute Engine dalla console di gestione dell'appliance.

Prima di iniziare

  1. Abilita l'API del servizio di backup e DR dove si trovano le istanze Compute Engine.

    Abilitare l'API

  2. Crea un vault di backup.

  3. [Crea un piano di backup][2].

  4. Assegna ruoli e autorizzazioni IAM all'utente di backup.

  5. Concedi l'accesso al vault di backup nel progetto Compute Engine.

  6. Configura Observability Analytics nel bucket per monitorare i job di backup di Backup e RE.

Configurazione IAM

Per configurare i backup pianificati o eseguire i backup on demand, un amministratore deve concedere i seguenti ruoli IAM nel progetto del vault di backup:

  • Backup and DR Backup User (roles/backupdr.backupUser)
  • Visualizzatore (roles/viewer)

Le autorizzazioni specifiche richieste per le operazioni di backup gestite da Google includono:

  • backupdr.backupPlans.list
  • backupdr.backupPlanAssociations.createForComputeInstance
  • backupdr.backupPlanAssociations.list
  • backupdr.backupPlanAssociations.get
  • backupdr.backupPlanAssociations.triggerBackupForComputeInstance
  • backupdr.backupPlanAssociations.deleteForComputeInstance
  • backupdr.backupPlans.useForComputeInstance
  • backupdr.locations.list
  • backupdr.operations.get
  • cloudasset.assets.searchAllResources

Oltre alle autorizzazioni di ripristino, l'utente deve disporre delle autorizzazioni per visualizzare e recuperare i metadati di backup:

  • backupdr.backupVaults.get
  • backupdr.backupVaults.list
  • backupdr.bvbackups.list
  • backupdr.bvbackups.get
  • backupdr.bvdataSources.list
  • backupdr.bvdataSources.get

Se l'istanza Compute Engine risiede in un progetto diverso dal vault di backup, devi concedere il ruolo Operatore Compute Engine di Backup e DR (roles/backupdr.computeEngineOperator) all'agente di servizio del vault di backup all'interno del progetto Compute Engine.

La tabella seguente elenca le autorizzazioni richieste per ogni chiamata API:

Risorsa Azione da eseguire sulla risorsa Autorizzazioni richieste per ogni chiamata API Progetto in cui deve essere assegnato
Vault di backup Crea BackupVault backupdr.backupVaults.create Progetto amministratore
Elimina BackupVault backupdr.backupVaults.delete Progetto amministratore
Aggiornare BackupVault backupdr.backupVaults.update Progetto amministratore
Elenco di BackupVault backupdr.backupVaults.list Progetto amministratore
Ottenere BackupVault backupdr.backupVaults.get Progetto amministratore
Piano di backup Crea BackupPlan backupdr.backupPlans.create Progetto amministratore
Elimina BackupPlan backupdr.backupPlans.delete Progetto amministratore
Recupero BackupPlan backupdr.backupPlans.get Progetto amministratore
Elenco dei piani di backup backupdr.backupPlans.list Progetto amministratore
Associazioni del piano di backup Crea associazione piano di backup Progetto di workload
backupdr.backupPlanAssociations.createForComputeInstance Progetto di workload
backupdr.backupPlans.useForComputeInstance Progetto amministratore
Elimina l'associazione del piano di backup backupdr.backupPlanAssociations.deleteForComputeInstance Progetto di workload
Attivare un backup on demand in Associazione piano di backup backupdr.backupPlanAssociations.triggerBackupForComputeInstance Progetto di workload
Get Backup Plan Association backupdr.backupPlanAssociations.getForComputeInstance Progetto di workload
Elenca le associazioni del piano di backup backupdr.backupPlanAssociations.list Progetto di workload
Recupera associazioni del piano di backup backupdr.backupPlanAssociations.fetchForComputeInstance Progetto di workload
Origine dati Recupero DataSource backupdr.bvdataSources.get Progetto amministratore
List DataSources backupdr.backupPlanAssociations.list Progetto amministratore
Backup Recupera backup backupdr.bvbackups.get Progetto amministratore
Elenco dei backup backupdr.bvbackups.list Progetto amministratore
Elimina backup backupdr.bvbackups.delete Progetto amministratore
Ripristina backup backupdr.bvbackups.restore Progetto amministratore
Operazioni Elenco operazioni backupdr.operations.list Progetto in questione
Operazioni "Get" backupdr.operations.get Progetto in questione

Vincoli e limiti

Backup e RE non supporta i backup gestiti da Google per le istanze Compute Engine che utilizzano le seguenti configurazioni:

  • Istanze con dischi permanenti con carico estremo collegati
  • Istanze che utilizzano tipi di disco hyperdisk-*
  • Istanze che utilizzano i tipi di macchine C3D, H3, A3 o Z3
  • Istanze con chiavi di crittografia fornite dal cliente (CSEK)
  • Istanze senza dischi collegati
  • Istanze di dimensioni superiori a 200 terabyte (TB)

Configura un backup pianificato

Segui queste istruzioni per configurare un backup pianificato per le istanze Compute Engine.

Console

  1. Nella console Google Cloud , vai alla pagina Backup protetti.

    Vai a Backup archiviati nel vault

  2. Fai clic su Pianifica backup.

  3. Nell'elenco Progetti, fai clic su Sfoglia e seleziona un progetto in cui si trovano le istanze Compute Engine.

  4. Nell'elenco Regione, seleziona la regione in cui si trovano le istanze.

  5. Nell'elenco Risorse, fai clic su Sfoglia.

  6. Scegli l'istanza di Compute Engine di cui vuoi eseguire il backup e fai clic su Fine.

  7. Fai clic su Continua.

  8. Nell'elenco Piano di backup, fai clic su Seleziona.

  9. Scegli un piano di backup con cui proteggere l'istanza Compute Engine.

  10. Fai clic su Fine.

  11. Controlla i dettagli del backup e fai clic su Pianifica.

gcloud

  1. Recupera l'ID istanza.

      gcloud compute instances describe VM_NAME --zone=VM_ZONE --format="value(id)"
    

    Sostituisci quanto segue:

    • VM_NAME: il nome dell'istanza VM.
    • VM_ZONE: la località in cui si trova la VM.
  2. Configura un backup pianificato.

      gcloud backup-dr backup-plan-associations create BACKUP_PLAN_ASSOCIATION_NAME \
      --location=VM_REGION \
      --resource=projects/VM_PROJECT_ID/zones/VM_ZONE/instances/VM_ID \
      --backup-plan=projects/PROJECT_ID/locations/LOCATION/backupPlans/BACKUP_PLAN
    

    Sostituisci quanto segue:

    • BACKUP_PLAN_ASSOCIATION_NAME: il nome dell'associazione del piano di backup.
    • VM_REGION: la regione in cui si trova l'istanza Compute Engine.
    • VM_PROJECT_ID: il nome del progetto in cui si trovano le istanze Compute Engine.
    • VM_ZONE: la zona in cui si trova l'istanza Compute Engine.
    • VM_ID: l'ID istanza di Compute Engine.
    • PROJECT_ID: il nome del progetto in cui esistono i piani di backup.
    • LOCATION: la regione in cui esistono i tuoi piani di backup.
    • BACKUP_PLAN: il nome del piano di backup a cui vuoi associare l'istanza Compute Engine.

Terraform

Puoi utilizzare una risorsa Terraform per configurare un backup pianificato.


# Before creating a backup plan association, you need to create backup plan (google_backup_dr_backup_plan)
# and compute instance (google_compute_instance).
resource "google_backup_dr_backup_plan_association" "default" {
  provider                   = google-beta
  location                   = "us-central1"
  backup_plan_association_id = "my-bpa"
  resource                   = google_compute_instance.default.id
  resource_type              = "compute.googleapis.com/Instance"
  backup_plan                = google_backup_dr_backup_plan.default.name
}

Coerenza delle applicazioni per i backup di Backup e DR Compute Engine

Gli snapshot coerenti con l'applicazione acquisiscono lo stato dei dati dell'applicazione al momento del backup con tutte le transazioni dell'applicazione completate e tutte le scritture in attesa di cui è stato fatto il flush sul disco.

Segui queste istruzioni per configurare i backup coerenti con le applicazioni per le istanze Compute Engine.

Prima di iniziare

  1. Leggi Snapshot coerenti con l'applicazione.

  2. Un piano di backup per i backup delle istanze coerenti con l'applicazione in un ambiente Linux richiede script pre e post. Crea gli script pre e post snapshot necessari per un ambiente Linux.

Crea un piano di backup per i backup coerenti con le applicazioni sulle istanze Compute Engine

Segui queste istruzioni per creare backup coerenti con le applicazioni per le istanze Compute Engine.

gcloud

  1. Crea il piano di backup.

    gcloud backup-dr backup-plans create BACKUP_PLAN_NAME \
    --compute-instance-properties=guest-flush=true \
    --resource-type=compute.googleapis.com/Instance \
    --location=REGION \
    --project=PROJECT_ID \
    --backup-vault=BACKUPVAULT_NAME \
    --backup-rule=rule-id=RULE_NAME,recurrence=RECURRENCE,hourly-frequency=HOURS, \
    time-zone=TIME_ZONE,backup-window-start=START_TIME,backup-window-end=END_TIME,\
    retention-days=BACKUP_RETENTION --max-custom-on-demand-retention-days=MAX_ONDEMAND_RETENTION
    

    Sostituisci quanto segue:

    • BACKUP_PLAN_NAME: il nome del piano di backup.
    • REGION: la Google Cloud regione in cui vuoi creare il piano di backup.
    • PROJECT_ID: il nome del progetto in cui si trova il vault di backup.
    • BACKUPVAULT_NAME: il nome del vault di backup che vuoi utilizzare per l'archiviazione dei backup.
    • RULE_NAME: il nome della regola di backup.
    • RECURRENCE: la frequenza con cui creare i backup. Può essere oraria, giornaliera, settimanale, mensile o annuale.
    • HOURS: la frequenza dei backup orari. Specifica questo valore solo se hai impostato la ricorrenza su oraria. Il valore predefinito della frequenza oraria minima è sei ore.
    • TIME_ZONE: il fuso orario del piano di backup, ad esempio UTC. Utilizza il formato fuso orario IANA per includere il fuso orario per il piano di backup.
    • START_TIME: l'ora di inizio è l'ora del giorno in formato 24 ore. L'ora di inizio deve essere antecedente all'ora di fine ed è inclusa nella finestra di backup.
    • END_TIME: l'ora di fine è l'ora del giorno in formato 24 ore. L'ora di fine deve essere successiva all'ora di inizio ed è esclusiva per la finestra di backup.
    • BACKUP_RETENTION: il periodo di conservazione del backup. Tieni presente che il periodo di conservazione del backup deve essere uguale o superiore al periodo di conservazione minimo applicato al vault di backup.
    • MAX_ONDEMAND_RETENTION: il periodo di conservazione personalizzato massimo consentito (in giorni) per i backup on demand creati utilizzando questo piano di backup.

Aggiorna un piano di backup esistente per i backup coerenti con le applicazioni delle istanze Compute Engine

Segui queste istruzioni per aggiornare un piano di backup in modo da produrre backup coerenti con le applicazioni delle istanze Compute Engine.

gcloud

  1. Aggiorna il piano di backup.

    gcloud backup-dr backup-plans update BACKUP_PLAN_NAME \
    --compute-instance-properties=guest-flush=true \
    --project=PROJECT_ID \
    --location=REGION \
    --description=DESCRIPTION \
    --backup-rule=BACKUP_RULE \
    --add-backup-rule=ADD_BACKUP_RULE \
    --remove-backup-rule=REMOVE_BACKUP_RULE \
    --max-custom-on-demand-retention-days=MAX_ONDEMAND_RETENTION
    

    Sostituisci quanto segue:

    • BACKUP_PLAN_NAME: il nome del piano di backup.
    • PROJECT_ID: il nome del progetto in cui si trova il vault di backup.
    • REGION: la località in cui vuoi creare il piano di backup.
    • DESCRIPTION: la descrizione aggiornata del piano di backup.
    • BACKUP_RULE: Definizione completa di una regola di backup esistente con valori aggiornati.
    • ADD_BACKUP_RULE: Parametri della regola di backup da aggiungere al piano di backup. Questo flag può essere ripetuto per aggiungere altre regole di backup.
    • REMOVE_BACKUP_RULE: La regola di backup esistente da rimuovere dal piano di backup.
    • MAX_ONDEMAND_RETENTION: Il periodo di conservazione personalizzato massimo consentito (in giorni) per i backup on demand creati utilizzando questo piano di backup.

Modifica il piano di backup applicato a un'istanza Compute Engine

Puoi modificare il piano di backup applicato a un'istanza Compute Engine con un altro piano di backup. L'altro piano di backup deve soddisfare i seguenti criteri:

  • Utilizzare lo stesso vault di backup
  • Trovarsi nella stessa regione dell'istanza Compute Engine

Segui le istruzioni riportate di seguito per modificare il piano di backup associato a un'istanza Compute Engine.

Console

  1. Nella console Google Cloud , vai alla pagina Backup protetti.

    Vai a Backup archiviati nel vault

    La pagina Backup protetti elenca solo le istanze a cui sono applicati piani di backup e i cui backup sono archiviati in un vault di backup all'interno di un progetto.

  2. Seleziona il backup a cui verrà assegnato un piano diverso. Dalla pagina dei dettagli del backup o dal menu , seleziona Modifica piano di backup. La finestra Seleziona un piano di backup elenca solo i piani di backup validi per questa istanza.

  3. Seleziona un piano di backup e fai clic su Applica.

gcloud

  • Modifica il piano di backup assegnato.

      gcloud backup-dr backup-plan-associations update BACKUP_PLAN_ASSOCIATION_NAME \
      --workload-project=VM_PROJECT_ID \
      --location=VM_REGION \
      --backup-plan=BACKUP-PLAN \
      --project=PROJECT_ID
    

    Sostituisci quanto segue:

    • BACKUP_PLAN_ASSOCIATION_NAME: il nome della risorsa di associazione del piano di backup.
    • VM_PROJECT_ID: l'ID progetto dell'istanza Compute Engine.
    • VM_REGION: la posizione dell'istanza Compute Engine.
    • BACKUP_PLAN: il nome del piano di backup a cui stai passando.
    • PROJECT_ID: l'ID progetto del piano di backup selezionato.

Elenco dei backup pianificati

Utilizza le seguenti istruzioni per elencare le istanze Compute Engine di cui è stato eseguito il backup.

Console

  1. Nella console Google Cloud , vai alla pagina Backup protetti.

    Vai a Backup archiviati nel vault

    La pagina Backup protetti elenca solo le istanze a cui sono applicati piani di backup e i cui backup sono archiviati in un vault di backup all'interno di un progetto.

gcloud

  1. Elenca i backup pianificati.

      gcloud backup-dr backup-plan-associations list \
      --location=LOCATION \
      --project=PROJECT_ID
    

    Sostituisci quanto segue:

    • PROJECT_ID: il nome del progetto.
    • LOCATION: la posizione dei backup pianificati.

Crea un backup on demand

Puoi avviare un backup on demand per un'istanza Compute Engine con un piano di backup attivando l'esecuzione immediata della regola di backup che preferisci. I backup on demand in genere acquisiscono solo i dati modificati dall'ultimo backup (incrementale).

Quando crei un backup on demand, puoi scegliere una regola dal piano di backup associato all'istanza Compute Engine. Questa regola determina quando viene eliminato il backup on demand. Puoi controllare lo stato del job di backup dalla pagina Job. Per saperne di più, consulta Monitora i job di backup e ripristino nella console Google Cloud .

Utilizza le seguenti istruzioni per creare un backup on demand.

Console

  1. Vai a Istanze VM > Dettagli > Piano di backup per creare un backup on demand.
  2. Fai clic su Crea backup on demand. Devi disporre delle autorizzazioni corrette per eseguire un backup on demand.
  3. Scegli quando eliminare questo backup. Sono disponibili queste opzioni:

    • In base al periodo di conservazione personalizzato Per impostazione predefinita, il limite è impostato come periodo di conservazione minimo applicato del vault di backup più 30 giorni. Per impostare un limite diverso, aggiungi un periodo di conservazione on demand personalizzato massimo al piano di backup.
    • In base a una regola di backup esistente. Seleziona una regola dal menu a discesa Elimina i backup dopo.
  4. Fai clic su Crea per avviare il job di backup on demand.

  5. Per visualizzare lo stato del job di backup on demand, fai clic su Notifiche.

gcloud

  • Crea un backup on demand che utilizza una regola di backup.

      gcloud backup-dr backup-plan-associations trigger-backup BACKUP_PLAN_ASSOCIATION_NAME \
      --project=PROJECT_ID \
      --location=REGION \
      --backup-rule-id=RULE_ID
      --labels=LABELS
    

    Sostituisci quanto segue:

    • BACKUP_PLAN_ASSOCIATION_NAME: il nome dell'associazione del piano di backup. Esegui il comando gcloud backup-dr backup-plan-associations list --location=LOCATION --project=PROJECT_ID per ottenere l'elenco dei piani di backup associati al disco Compute Engine.
    • PROJECT_ID: il nome del progetto.
    • REGION: la posizione dei backup pianificati.
    • RULE_ID: il nome della regola di backup che vuoi associare per eseguire i backup on demand.
    • LABELS: etichette facoltative per il backup come coppie chiave-valore separate da virgole, ad esempio webserver=backend,media=images.
  • Crea un backup on demand che utilizzi la conservazione personalizzata.

      gcloud backup-dr backup-plan-associations trigger-backup BACKUP_PLAN_ASSOCIATION_NAME \
      --project=PROJECT_ID \
      --location=REGION \
      --custom-retention-days=CUSTOM_RETENTION
      --labels=LABELS
    

    Sostituisci quanto segue:

    • BACKUP_PLAN_ASSOCIATION_NAME: il nome dell'associazione del piano di backup. Esegui il comando gcloud backup-dr backup-plan-associations list --location=LOCATION --project=PROJECT_ID per ottenere l'elenco dei piani di backup associati al disco Compute Engine.
    • PROJECT_ID: il nome del progetto.
    • REGION: la posizione dei backup pianificati.
    • CUSTOM_RETENTION: Il periodo di conservazione personalizzato in giorni per questo backup on demand. Questo valore deve essere uguale o superiore al periodo di conservazione del vault di backup e inferiore o uguale al valore max-custom-on-demand-retention-days configurato nel piano di backup (o al periodo di conservazione del vault + 30 giorni se max-custom-on-demand-retention-days non è configurato).
    • LABELS: etichette facoltative per il backup come coppie chiave-valore separate da virgole, ad esempio webserver=backend,media=images.

Rimuovere la protezione di un'istanza Compute Engine

Puoi rimuovere la protezione di un'istanza Compute Engine rimuovendo il piano di backup applicato all'istanza. La rimozione di un piano di backup da un'istanza Compute Engine non elimina il piano di backup o eventuali backup creati durante l'utilizzo dell'istanza. Puoi comunque accedere a questi backup esistenti e gestirli.

Segui queste istruzioni per rimuovere la protezione da un'istanza Compute Engine.

Console

  1. Nella console Google Cloud , vai alla pagina Backup protetti.

    Vai a Backup archiviati nel vault

  2. Fai clic sul nome dell'istanza da cui vuoi rimuovere un piano di backup.

  3. Seleziona Rimuovi piano di backup.

gcloud

  1. Rimuovi la protezione di un'istanza Compute Engine.

      gcloud backup-dr backup-plan-associations delete BACKUP_PLAN_ASSOCIATION_NAME\
      --project=PROJECT_ID \
      --location=LOCATION
    

    Sostituisci quanto segue:

    • BACKUP_PLAN_ASSOCIATION_NAME: il nome del backup che vuoi eliminare.
    • PROJECT_ID: il nome del progetto.
    • LOCATION: la posizione del backup pianificato.

Passaggi successivi