Gestire i backup avanzati

I backup avanzati ti consentono di utilizzare il servizio di Backup e DR con le tue istanze Cloud SQL per gestire i backup. Puoi abilitare i backup avanzati per qualsiasi istanza associandola a un piano di backup di RE e DR. Puoi anche gestire i backup avanzati per la tua istanza procedendo nel seguente modo:

Per ulteriori informazioni sul funzionamento dei backup avanzati e sulla loro integrazione con Backup e RE, consulta Backup avanzati. Per saperne di più su come funzionano i backup in Cloud SQL, consulta la panoramica di Cloud SQL.

Prima di iniziare

Prima di poter gestire i backup avanzati per le istanze Cloud SQL, devi:

Abilita l'API Backup e DR

Per utilizzare i backup avanzati con le istanze Cloud SQL, devi prima abilitare l'API Backup e DR:

Abilita l'API Backup e DR

Autorizzazioni obbligatorie

Per configurare i backup avanzati per le tue istanze Cloud SQL sono necessarie le seguenti autorizzazioni:

  • backupdr.backupPlans.list
  • backupdr.backupPlanAssociations.createForCloudSqlInstance
  • backupdr.backupPlanAssociations.fetchForCloudSqlInstance
  • backupdr.backupPlanAssociations.list
  • backupdr.backupPlanAssociations.getForCloudSqlInstance
  • backupdr.backupPlanAssociations.triggerBackupForCloudSqlInstance
  • backupdr.backupPlanAssociations.deleteForCloudSqlInstance
  • backupdr.backupPlanAssociations.updateForCloudSqlInstance
  • backupdr.backupPlans.useForCloudSqlInstance
  • backupdr.bvdataSources.get
  • backupdr.bvdataSources.list

Per saperne di più su queste autorizzazioni, consulta Ruoli e autorizzazioni di RE e DR.

Abilita backup avanzati

Puoi associare piani di backup avanzati alle istanze principali con repliche di ripristino di emergenza (RE).

Per abilitare i backup avanzati per la tua istanza, segui questi passaggi:

  1. Identifica il vault di backup e il piano di backup che vuoi utilizzare.
  2. Associa l'istanza Cloud SQL al piano di backup.

Per saperne di più sui backup avanzati, consulta Informazioni sui backup di Cloud SQL.

Identifica il piano di backup che vuoi utilizzare

Per associare l'istanza Cloud SQL a un piano di backup, devi prima creare o identificare il piano di backup che vuoi utilizzare. Il piano scelto definisce la pianificazione del backup dell'istanza e le impostazioni di conservazione dei log.

Per creare un piano di backup, utilizza innanzitutto il servizio di Backup e DR per creare un vault in cui verranno archiviati i backup, quindi crea il piano nella console di Backup e DR.

Il vault di backup utilizzato dal piano di backup può trovarsi in una regione diversa da quella dell'istanza. Per saperne di più, consulta Backup tra regioni.

Una volta identificato il piano di backup che vuoi associare, utilizza il suo nome per associarlo alla tua istanza Cloud SQL.

Associa un piano di backup a un'istanza Cloud SQL

Per associare un piano di backup a un'istanza Cloud SQL, devi avere il nome del piano di backup che vuoi utilizzare. Per ulteriori informazioni su come trovare il nome del piano di backup, consulta Crea e gestisci un piano di backup.

Istanze con RE DR: se l'istanza principale ha una replica RE designata, assicurati che il piano di backup selezionato abbia il point-in-time recovery (PITR) abilitato (log_retention_days > 0). Non puoi collegare direttamente i piani di backup alle istanze di replica. Per proteggere una replica RE, collega il piano alla relativa istanza principale o collega un piano dopo aver promosso la replica a istanza principale. Quando promuovi un'istanza gestita da Backup e RE durante un'operazione di failover, switchover o promozione, Cloud SQL attiva un backup operativo di Backup e RE. Se il backup operativo non riesce, Cloud SQL crea un backup standard (nativo).

Console

Per associare un piano di backup alla tua istanza Cloud SQL, segui questi passaggi:

  1. Nella console Google Cloud , vai alla pagina Istanze Cloud SQL.

    Vai a Istanze Cloud SQL

  2. Trova l'istanza a cui vuoi associare il piano di backup. Per aprire la pagina Panoramica dell'istanza, fai clic sul nome dell'istanza.

  3. Fai clic su Modifica.

  4. Nella sezione Protezione dei dati, in Livello di backup, seleziona Livello di backup avanzato.

  5. Nella sezione Piano di backup, fai clic su Seleziona.

  6. Nella finestra Seleziona un piano di backup, segui questi passaggi:

    1. In Progetto, fai clic su Sfoglia, quindi cerca e seleziona il progetto di Backup e RE che contiene il piano di backup.

    2. Una volta selezionato il progetto, vedrai un elenco di tutti i piani di backup disponibili. Trova il piano di backup che vuoi utilizzare, quindi fai clic su Seleziona.

  7. Fai clic su Salva.

    L'istanza è abilitata per i backup avanzati e utilizza le impostazioni di backup e conservazione del piano di backup associato.

gcloud

Per associare un piano di backup alla tua istanza Cloud SQL, esegui il comando gcloud backup-dr backup-plan-associations create:

gcloud backup-dr backup-plan-associations create BACKUP_PLAN_ASSOCIATION_NAME
--project=PROJECT_ID
--resource=INSTANCE_ID
--backup-plan=BACKUP_PLAN_NAME
--resource-type=sqladmin.googleapis.com/Instance
--location=REGION_ID

Sostituisci quanto segue:

  • BACKUP_PLAN_ASSOCIATION_NAME: il nome dell'associazione del piano di backup.
  • PROJECT_ID: l'ID progetto della tua istanza.
  • INSTANCE_ID: l'ID dell'istanza a cui vuoi associare il piano di backup.
  • BACKUP_PLAN_NAME: il nome del piano di backup che vuoi utilizzare. Per saperne di più, consulta Identifica il piano di backup che vuoi utilizzare.
  • REGION_ID: la regione dell'istanza.

REST v1

Per creare un'associazione del piano di backup, utilizza il metodo backupPlanAssociations nell'API Backup e DR.

Prima di utilizzare i dati della richiesta, apporta le sostituzioni seguenti:

  • backup-plan-association-id: l'ID dell'associazione del piano di backup
  • resource-name: il nome completo dell'istanza Cloud SQL, nel formato projects/project-id/locations/location/instances/instance-name
  • backup-plan-name: il nome del piano di backup, nel formato projects/project-id/backupPlans/backup-plan-name

Metodo HTTP e URL:

POST https://backupdr.googleapis.com/v1/projects/project-id/locations/location/backupPlanAssociations

Corpo JSON della richiesta:

{
  "name": "backup-plan-association-id",
  "resourceType": "sql.googleapis.com/Instance",
  "resource": "resource-name",
  "backupPlan": "backup-plan-name"
}

Per inviare la richiesta, espandi una di queste opzioni:

Dovresti ricevere una risposta JSON simile alla seguente:

Gestisci i backup avanzati

Dopo aver abilitato l'istanza per i backup avanzati e aver associato un piano di backup all'istanza, puoi modificare il piano di backup associato, eseguire un backup on demand, visualizzare tutti i backup nel vault di backup o trovare e convalidare le origini dati per il PITR.

Per gestire un piano di backup, consulta Crea e gestisci un piano di backup. Per gestire un vault di backup, consulta Crea e gestisci un vault di backup.

Modifica il piano di backup associato all'istanza

Puoi modificare il piano di backup da utilizzare con l'istanza Cloud SQL. Per modificare il piano di backup associato alla tua istanza Cloud SQL, il nuovo piano deve trovarsi nello stesso vault di backup del piano di backup attuale e nella stessa regione dell'istanza Cloud SQL.

Per passare a un nuovo piano di backup, segui questi passaggi:

Console

Per associare il nuovo piano di backup alla tua istanza, segui questi passaggi:

  1. Nella console Google Cloud , vai alla pagina Istanze Cloud SQL.

    Vai a Istanze Cloud SQL

  2. Trova l'istanza per cui vuoi modificare il piano di backup. Per aprire la pagina Panoramica dell'istanza, fai clic sul nome dell'istanza.

  3. Fai clic su Modifica.

  4. Nella sezione Protezione dei dati, in Livello di backup, seleziona Livello di backup avanzato.

  5. Fai clic sul pulsante Cambia.

  6. Nella finestra Seleziona un piano di backup, scegli il nuovo piano.

  7. Fai clic su Salva.

    L'istanza è abilitata per i backup avanzati e utilizza il nuovo piano di backup selezionato.

gcloud

Per associare il nuovo piano di backup all'istanza, esegui il comando gcloud backup-dr backup-plan-associations create:

gcloud backup-dr backup-plan-associations create BACKUP_PLAN_ASSOCIATION_NAME
--project=PROJECT_ID
--resource=INSTANCE_ID
--backup-plan=BACKUP_PLAN_NAME
--resource-type=sqladmin.googleapis.com/Instance
--location=REGION_ID

Sostituisci quanto segue:

  • BACKUP_PLAN_ASSOCIATION_NAME: il nome dell'associazione del piano di backup.
  • PROJECT_ID: l'ID progetto dell'istanza.
  • INSTANCE_ID: l'ID dell'istanza.
  • BACKUP_PLAN_NAME: il nome del piano di backup. Per saperne di più, consulta Identifica il piano di backup che vuoi utilizzare.
  • REGION_ID: la regione dell'istanza.

REST v1

Dopo aver eliminato l'associazione del piano di backup esistente, associa il nuovo piano di backup utilizzando il metodo backupPlanAssociations nell'API Backup e DR.

Prima di utilizzare i dati della richiesta, apporta le sostituzioni seguenti:

  • backup-plan-association-id: l'ID dell'associazione del piano di backup
  • resource-name: il nome completo dell'istanza Cloud SQL, nel formato projects/project-id/locations/location/instances/instance-name
  • backup-plan-name: il nome del piano di backup, nel formato projects/project-id/backupPlans/backup-plan-name

Metodo HTTP e URL:

POST https://backupdr.googleapis.com/v1/projects/project-id/locations/location/backupPlanAssociations

Corpo JSON della richiesta:

{
  "name": "backup-plan-association-id",
  "resourceType": "sql.googleapis.com/Instance",
  "resource": "resource-name",
  "backupPlan": "backup-plan-name"
}

Per inviare la richiesta, espandi una di queste opzioni:

Dovresti ricevere una risposta JSON simile alla seguente:

Esegui un backup on demand

Puoi eseguire un backup on demand per un'istanza Cloud SQL con un piano di backup associato utilizzando la console Google Cloud , gcloud CLI o l'API Cloud SQL.

Console

Per eseguire un backup on demand per un'istanza con i backup avanzati abilitati, procedi nel seguente modo:

  1. Nella console Google Cloud , vai alla pagina Backup di Cloud SQL.

    Vai ai backup di Cloud SQL

  2. Fai clic su Crea backup.

  3. Nella finestra Crea un backup on demand, esegui una delle seguenti operazioni:

    • In Scegli una regola di backup, seleziona il tipo di backup on demand che vuoi eseguire. La regola di backup definisce il periodo di conservazione del backup on demand.
    • Seleziona l'opzione In base al periodo di conservazione personalizzato per specificare un periodo di conservazione personalizzato per il backup. Quando utilizzi un periodo di conservazione personalizzato, tieni presente le seguenti regole:
      • Logica dell'intervallo di conservazione: l'intervallo di conservazione consentito è determinato dall'intersezione tra la conservazione minima applicata del vault di backup e l'impostazione di conservazione personalizzata massima del piano di backup.
      • Valori predefiniti impliciti: se max_custom_on_demand_retention_days non è impostato esplicitamente nel piano di backup, il servizio utilizza un limite superiore predefinito pari al periodo di conservazione minimo applicato del vault di backup più 30 giorni.
      • Limite massimo: indipendentemente dalla configurazione, la conservazione massima consentita per qualsiasi backup on demand personalizzato è di 10 anni (3653 giorni).
  4. Fai clic su Crea.

    Il backup on demand è stato creato.

gcloud

Per eseguire un backup on demand per un'istanza con i backup avanzati abilitati, esegui il comando gcloud backup-dr backup-plan-associations trigger-backup:

gcloud backup-dr backup-plan-associations trigger-backup BACKUP_PLAN_ASSOCIATION_NAME
--backup-rule-id=BACKUP_RULE_ID
--project=PROJECT_ID
--location=BACKUP_VAULT_LOCATION
--custom-retention-days=CUSTOM_RETENTION
[--no-async]

Sostituisci quanto segue:

  • BACKUP_PLAN_ASSOCIATION_NAME: il nome dell'associazione del piano di backup della tua istanza Cloud SQL. Per trovare un elenco di tutti i piani di backup associati a un'istanza Cloud SQL, consulta Elenca tutte le associazioni dei piani di backup.
  • BACKUP_RULE_ID: il nome della regola di backup per il tipo di backup on demand che vuoi eseguire (ad es. rule-daily).
  • PROJECT_ID: l'ID progetto dell'istanza.
  • BACKUP_VAULT_LOCATION: la località del vault di backup associato al piano di backup.

REST v1

Per attivare un backup on demand per l'istanza Cloud SQL, utilizza il metodo backupPlanAssociations nell'API Backup e DR.

Prima di utilizzare i dati della richiesta, apporta le sostituzioni seguenti:

  • backup-rule-id: l'ID della regola di backup per cui deve essere attivato un backup

Metodo HTTP e URL:

GET https://backupdr.googleapis.com/v1/projects/project-id/locations/location/backupPlanAssociations/backup-plan-association-id:triggerBackup

Corpo JSON della richiesta:

{
  "ruleId": "backup-rule-id"
}

Per inviare la richiesta, espandi una di queste opzioni:

Dovresti ricevere una risposta JSON simile alla seguente:

Elenca tutti i backup in un vault di backup per la tua istanza

Puoi elencare tutti i backup nel vault di backup per la tua istanza Cloud SQL utilizzando la console Google Cloud , gcloud CLI o l'API Cloud SQL.

Console

  1. Nella console Google Cloud , vai alla pagina Backup di Cloud SQL.

    Vai ai backup di Cloud SQL

  2. Nel menu a discesa Livello di backup, seleziona Livello avanzato, quindi dall'elenco Backup vault, seleziona il backup vault che contiene il backup che vuoi utilizzare.

    Vengono visualizzati tutti i backup disponibili nel vault di backup per l'istanza selezionata.

gcloud

Per elencare tutti i backup disponibili per l'istanza Cloud SQL nel vault di backup, devi prima trovare il data-source per l'istanza Cloud SQL, quindi eseguire il comando gcloud backup-dr backups list.

Per trovare il data-source dell'istanza, esegui il comando gcloud backup-dr data-source-references fetch-for-resource-type:

gcloud backup-dr data-source-references
fetch-for-resource-type sqladmin.googleapis.com/Instance
--location=BACKUP_VAULT_LOCATION | grep INSTANCE_NAME

Sostituisci quanto segue:

  • BACKUP_VAULT_LOCATION: la posizione del vault di backup. Se utilizzi i backup tra regioni, questa località è diversa dalla regione dell'istanza Cloud SQL.
  • INSTANCE_NAME: il nome dell'istanza Cloud SQL.

Per elencare tutti i backup in un vault di backup per la tua istanza, esegui il comando gcloud backup-dr backups list:

gcloud backup-dr backups list
--data-source=DATA_SOURCE
--location=BACKUP_VAULT_LOCATION
--backup-vault=BACKUP_VAULT_NAME

Sostituisci quanto segue:

  • DATA_SOURCE: il data-source della tua istanza Cloud SQL.
  • BACKUP_VAULT_LOCATION: la posizione del vault di backup, che può essere diversa dalla regione dell'istanza Cloud SQL.
  • BACKUP_VAULT_NAME: il nome del vault di backup associato al piano di backup.

REST v1

Per elencare tutti i backup disponibili per l'istanza Cloud SQL nel vault di backup, devi prima trovare l'origine dati per l'istanza Cloud SQL, quindi recuperare tutti i backup utilizzando il nome dell'origine dati.

Trova l'origine dati dell'istanza

Per trovare l'origine dati dell'istanza, utilizza il metodo dataSource.References nell'API Backup e DR.

Metodo HTTP e URL:

GET https://backupdr.googleapis.com/v1/projects/project-id/locations/location/dataSourceReferences:fetchForResourceType?filter=dataSourceGcpResourceInfo.gcp_resourcename="projects/project-id/instances/instance-id

Corpo JSON della richiesta:

{
  "resourceType": "sqladmin.googleapis.com/Instance"
}

Per inviare la richiesta, espandi una di queste opzioni:

Dovresti ricevere una risposta JSON simile alla seguente:

Elenca i backup dell'istanza

Per elencare i backup della tua istanza utilizzando l'ID origine dati, utilizza il metodo backupVaults.dataSources.backups nell'API Backup e DR.

Metodo HTTP e URL:

GET https://backupdr.googleapis.com/v1/projects/project-id/locations/location/backupVaults/backup-vault-id/dataSources/data-source-id/backups

Per inviare la richiesta, espandi una di queste opzioni:

Dovresti ricevere una risposta JSON simile alla seguente:

Trova e convalida le origini dati per il PITR

Se non conosci l'origine dati esatta associata alla tua istanza o se più origini dati fanno riferimento alla tua istanza (ad esempio, se di recente hai cambiato i vault di backup o hai promosso una replica RE), devi trovare e convalidare l'origine dati.

Prima di tentare un recupero point-in-time (PITR) in un timestamp specifico, devi individuare l'origine dati associata alla tua istanza Cloud SQL. Devi anche confermare che esiste un backup con un createTime precedente al timestamp di ripristino target:

  1. Trova il riferimento all'origine dati per l'istanza.
  2. Convalida i backup disponibili per il timestamp di ripristino target.
  3. Esegui un recupero point-in-time.

Passaggio 1: trova il riferimento dell'origine dati per l'istanza

Per scoprire l'origine dati associata alla tua istanza Cloud SQL, esegui il comando gcloud backup-dr data-source-references fetch-for-resource-type:

gcloud backup-dr data-source-references \
    fetch-for-resource-type sqladmin.googleapis.com/Instance \
    --project=INSTANCE_PROJECT_ID \
    --location=BACKUP_VAULT_LOCATION \
    --filter="dataSourceGcpResource.cloudSqlInstanceProperties.name =
      'INSTANCE_NAME'"

Sostituisci quanto segue:

  • INSTANCE_PROJECT_ID: l'ID progetto della tua istanza Cloud SQL
  • BACKUP_VAULT_LOCATION: la località del vault di backup, che può essere diversa dalla regione dell'istanza Cloud SQL se utilizzi i backup tra regioni
  • INSTANCE_NAME: il nome della tua istanza Cloud SQL

Dall'output comando, prendi nota dell'ID origine dati. Questo ID ti servirà nel passaggio successivo.

Se più istanze nel progetto condividono lo stesso nome (ad esempio, se hai eliminato e ricreato un'istanza), il comando elenca i riferimenti alle origini dati per tutte le istanze. Per isolare l'istanza esatta, includi il timestamp di creazione nella query di filtro:

gcloud backup-dr data-source-references \
    fetch-for-resource-type sqladmin.googleapis.com/Instance \
    --project=INSTANCE_PROJECT_ID \
    --location=BACKUP_VAULT_LOCATION \
    --filter="dataSourceGcpResource.cloudSqlInstanceProperties.name =
      'INSTANCE_NAME' AND
      dataSourceGcpResource.cloudSqlInstanceProperties.instanceCreateTime =
      'INSTANCE_CREATE_TIME'"

Passaggio 2: convalida i backup per il timestamp di destinazione

Per trovare i tempi di recupero più recenti e più remoti, esegui il comando gcloud sql instances get-latest-recovery-time. Poi, esegui il comando gcloud backup-dr backups list per elencare i backup all'interno dell'origine dati e verificare che esista un backup valido con un createTime precedente al punto di ripristino di destinazione:

gcloud backup-dr backups list \
    --data-source=DATA_SOURCE_ID \
    --backup-vault=BACKUP_VAULT_NAME \
    --location=BACKUP_VAULT_LOCATION \
    --project=BACKUP_VAULT_PROJECT_ID \
    --filter="createTime < 'PITR_TIMESTAMP' AND
      createTime >= 'EARLIEST_RECOVERY_TIMESTAMP'"

Sostituisci quanto segue:

  • DATA_SOURCE_ID: l'ID dell'origine dati del passaggio 1
  • BACKUP_VAULT_NAME: il nome del vault di backup
  • BACKUP_VAULT_LOCATION: la località del vault di backup
  • BACKUP_VAULT_PROJECT_ID: l'ID progetto del vault di backup
  • PITR_TIMESTAMP: il timestamp di ripristino di destinazione in formato RFC 3339
  • EARLIEST_RECOVERY_TIMESTAMP: il timestamp di recupero più recente restituito dal comando gcloud sql instances get-latest-recovery-time

Passaggio 3: esegui un recupero point-in-time

Dopo aver identificato l'origine dati, procedi con il comando PITR. Per saperne di più, consulta Esegui un PITR utilizzando il vault di backup.

Disattiva i backup avanzati

Puoi disattivare i backup avanzati riportando l'istanza Cloud SQL all'opzione di backup standard. In questo modo viene eliminata l'associazione tra il piano di backup e l'istanza.

Modifica l'istanza per utilizzare i backup standard

Console

Per disattivare i backup avanzati e ripristinare l'opzione di backup standard per l'istanza, segui questi passaggi:

  1. Nella console Google Cloud , vai alla pagina Istanze Cloud SQL.

    Vai a Istanze Cloud SQL

  2. Trova l'istanza per cui vuoi modificare l'opzione di backup. Per aprire la pagina Panoramica dell'istanza, fai clic sul nome dell'istanza.

  3. Fai clic su Modifica.

  4. Nella sezione Protezione dei dati, in Livello di backup, seleziona Livello di backup standard. Aggiorna le impostazioni dei backup standard per l'istanza in base alle esigenze.

  5. Fai clic su Salva.

    Il piano di backup associato all'istanza viene eliminato e l'istanza viene ora gestita nell'opzione Backup standard, gestita da Cloud SQL.

gcloud

Per disattivare i backup avanzati e ripristinare l'opzione di backup standard per l'istanza, esegui il comando gcloud backup-dr backup-plan-associations delete:

gcloud backup-dr backup-plan-associations delete BACKUP_PLAN_ASSOCIATION_NAME
--location=BACKUP_VAULT_LOCATION

Sostituisci quanto segue:

  • BACKUP_PLAN_ASSOCIATION_NAME: il nome dell'associazione del piano di backup che vuoi eliminare.
  • BACKUP_VAULT_LOCATION: la posizione del vault di backup.

REST v1

Per disattivare i backup avanzati, devi rimuovere l'associazione del piano di backup utilizzando il metodo backupPlanAssociations nell'API Backup e DR.

Prima di utilizzare i dati della richiesta, apporta le sostituzioni seguenti:

  • backup-plan-association-id: l'ID dell'associazione del piano di backup, nel formato projects/project-id/locations/location/backupPlanAssociations/backup-plan-association-id

Metodo HTTP e URL:

POST https://backupdr.googleapis.com/v1/projects/project-id/locations/location/backupPlanAssociations/delete

Corpo JSON della richiesta:

{
  "name": "backup-plan-association-id",
}

Per inviare la richiesta, espandi una di queste opzioni:

Dovresti ricevere una risposta JSON simile alla seguente:

Passaggi successivi