Questa pagina descrive come eseguire il backup delle istanze Cloud SQL in un vault di backup. L'invio dei backup a un vault di backup garantisce l'immutabilità e la conservazione forzata.
Nella console Google Cloud , puoi eseguire il backup delle istanze Cloud SQL in un vault di backup applicando i piani di backup. Puoi eseguire il backup in uno di questi due modi. Entrambi i metodi consentono di archiviare i backup in modo sicuro in un vault di backup, fornendo un modo affidabile per recuperare le istanze Cloud SQL in caso di perdita di dati o altri eventi imprevisti.
- Backup pianificati. Puoi eseguire automaticamente il backup delle istanze Cloud SQL a intervalli specifici, ad esempio giornalieri, settimanali, mensili o annuali.
- Backup on demand. Puoi creare backup on demand ogni volta che ne hai bisogno. I backup on demand sono utili per creare backup prima di apportare modifiche significative ai database o per la protezione dei dati ad hoc.
Prima di iniziare
- Abilita l'API del servizio di Backup e DR dove si trovano le istanze Cloud SQL.
- Abilitare l'API
- Crea un vault di backup
- Crea un piano di backup
- Assegna ruoli e autorizzazioni IAM all'utente di backup
- Concedi l'accesso al vault di backup nel progetto Cloud SQL
- Configura l'analisi dei log nel bucket per monitorare i job di backup di Backup e RE.
Ruoli e autorizzazioni IAM per l'utente di backup
Per ottenere le autorizzazioni necessarie per configurare i backup pianificati o eseguire backup on demand, chiedi all'amministratore di concederti i seguenti ruoli IAM nel progetto del vault di backup:
-
Backup and DR Backup User (
roles/backupdr.backupUser
) -
Visualizzatore (
roles/viewer
)
Per ulteriori informazioni sulla concessione dei ruoli, consulta Gestisci l'accesso a progetti, cartelle e organizzazioni.
Questi ruoli predefiniti contengono le autorizzazioni necessarie per configurare i backup pianificati o eseguire backup on demand. Per vedere quali sono esattamente le autorizzazioni richieste, espandi la sezione Autorizzazioni obbligatorie:
Autorizzazioni obbligatorie
Per configurare i backup pianificati o eseguire i backup on demand 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.backupPlans.useForCloudSqlInstance
-
backupdr.locations.list
-
backupdr.operations.get
-
cloudasset.assets.searchAllResources
Potresti anche ottenere queste autorizzazioni con ruoli personalizzati o altri ruoli predefiniti.
La tabella seguente elenca le autorizzazioni dinamiche richieste per ogni chiamata API:
Risorsa | Azione da eseguire sulla risorsa | Autorizzazioni richieste per ogni chiamata API | Progetto a cui deve essere assegnato |
---|---|---|---|
Vault di backup | Crea BackupVault | backupdr.backupVaults.create | Progetto amministratore |
Elimina BackupVault | backupdr.backupVaults.delete | Progetto amministratore | |
Aggiorna BackupVault | backupdr.backupVaults.update | Progetto amministratore | |
List BackupVaults | 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 | |
Elenca i piani di backup | backupdr.backupPlans.list | Progetto amministratore | |
Associazioni del piano di backup | Crea associazione piano di backup | cloudsql.instances.updateBackupDrConfig | Progetto di workload |
backupdr.backupPlanAssociations.createForCloudSqlInstance | Progetto di workload | ||
backupdr.backupPlans.useForCloudSqlInstance | Progetto amministratore | ||
Elimina l'associazione del piano di backup | backupdr.backupPlanAssociations.deleteForCloudSqlInstance | Progetto di workload | |
cloudsql.instances.updateBackupDrConfig | Progetto di workload | ||
Attivare un backup on demand in Associazione piano di backup | backupdr.backupPlanAssociations.triggerBackupForCloudSqlInstance | Progetto di workload | |
Get Backup Plan Association | backupdr.backupPlanAssociations.getForCloudSqlInstance | Progetto di workload | |
Elenca le associazioni dei piani di backup | backupdr.backupPlanAssociations.list | Progetto di workload | |
Recupera associazioni del piano di backup | backupdr.backupPlanAssociations.fetchForCloudSqlInstance | Progetto di workload | |
Origine dati | Recupero DataSource | backupdr.bvdataSources.get | Progetto amministratore |
List DataSources | backupdr.backupPlanAssociations.list | Progetto amministratore | |
Ripristino PiTR | backupdr.bvdataSources.useReadOnlyForCloudSqlInstance | Progetto amministratore | |
Backup | Recupera backup | backupdr.bvbackups.get | Progetto amministratore |
Elenco backup | backupdr.bvbackups.list | Progetto amministratore | |
Elimina backup | backupdr.bvbackups.delete | Progetto amministratore | |
Ripristina backup | backupdr.bvbackups.useReadOnlyForCloudSqlInstance | Progetto amministratore | |
Riferimenti all'origine dati | Recupera riferimento origine dati | backupdr.dataSourceReferences.getForCloudSqlInstance | Progetto di workload |
Recupera riferimenti sorgente dati | backupdr.dataSourceReferences.fetchForCloudSqlInstance | Progetto di workload | |
Operazioni | Elenco operazioni | backupdr.operations.list | Progetto in questione |
Operazioni "Get" | backupdr.operations.get | Progetto in questione |
Concedere l'accesso al vault di backup nel progetto Cloud SQL
Per eseguire il backup di un'istanza Cloud SQL in un progetto diverso da quello in cui viene creato il vault di backup, devi concedere il ruolo IAM Backup and DR Cloud SQL Operator (roles/backupdr.cloudSqlOperator
) all'agente di servizio del vault di backup all'interno del progetto Cloud SQL. Se il progetto
del vault di backup in cui verranno archiviati i backup è diverso dal
progetto Cloud SQL, assegna il ruolo all'agente di servizio del vault di backup all'interno del progetto Cloud SQL.
Per eseguire il backup di un'istanza Cloud SQL nello stesso progetto in cui viene creato il vault di backup, non è necessario concedere ruoli.
Per informazioni sulla concessione dei ruoli all'agente di servizio del vault di backup all'interno del progetto di cui intendi eseguire il backup, consulta Concedere un ruolo all'agente di servizio.
Configura un backup pianificato
Segui queste istruzioni per configurare un backup pianificato per le istanze Cloud SQL.
Console
Nella console Google Cloud , vai alla pagina Backup protetti.
Fai clic su Pianifica backup.
Dall'elenco Tipo di risorsa, seleziona Cloud SQL.
Dall'elenco Progetto, seleziona un progetto in cui si trova l'istanza di Cloud SQL.
Nell'elenco Regione, seleziona la regione in cui si trovano le istanze.
Nell'elenco Risorse, fai clic su Sfoglia. Scegli l'istanza Cloud SQL di cui vuoi eseguire il backup e fai clic su Fine.
Fai clic su Continua.
Nell'elenco Piano di backup, fai clic su Seleziona.
Scegli un piano di backup con cui proteggere le istanze Cloud SQL.
Fai clic su Fine.
Controlla i dettagli del backup e fai clic su Pianifica.
gcloud
Configura un backup pianificato.
gcloud backup-dr backup-plan-associations create BACKUP_PLAN_ASSOCIATION_NAME \ --location=CSQL_REGION \ --project=CSQL_PROJECT_ID \ --resource=projects/CSQL_PROJECT_ID/instances/CSQL_INSTANCE_ID \ --resource-type=sqladmin.googleapis.com/Instance \ --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.CSQL_REGION
: la regione in cui si trovano le istanze Cloud SQL.CSQL_PROJECT_ID
: il nome del progetto in cui si trovano le istanze Cloud SQL.CSQL_INSTANCE_ID
: l'ID istanza Cloud SQL.PROJECT_ID
: il nome del progetto in cui esistono i piani di backup.LOCATION
: la posizione dell'istanza.
Elenca le istanze per cui sono pianificati i backup
Utilizza le seguenti istruzioni per elencare le istanze Cloud SQL per le quali sono pianificati i backup.
Console
Nella console Google Cloud , vai alla pagina Backup protetti.
Nella parte superiore della tabella, seleziona Filtra tabella > Tipo di risorsa. Seleziona Cloud SQL. In questo modo, la visualizzazione viene limitata solo alle istanze Cloud SQL a cui sono applicati piani di backup e i cui backup sono archiviati in un vault di backup all'interno di un progetto.
gcloud
Elenca le istanze Cloud SQL per le quali sono pianificati i backup:
gcloud alpha backup-dr backup-plan-associations fetch-for-resource-type sqladmin.googleapis.com/Instance \
--location=LOCATION \
--project=PROJECT_ID
Sostituisci quanto segue:
- LOCATION: la posizione dei backup pianificati.
- PROJECT_ID: il nome del progetto in cui si trovano le istanze Cloud SQL.
Crea un backup on demand
Puoi avviare un backup on demand per un'istanza Cloud SQL con un piano di backup attivando immediatamente la 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 Cloud SQL. 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ù, vedi Monitorare i job di backup e ripristino nella console Google Cloud .
Utilizza le seguenti istruzioni per creare un backup on demand.
Console
Nella console Google Cloud , vai alla pagina Backup protetti.
Vai a Backup archiviati nel vault
La pagina Backup protetti elenca solo le risorse di dati a cui sono applicati piani di backup e i cui backup sono archiviati in un vault di backup all'interno di un progetto.
Seleziona la risorsa di cui eseguire il backup. Dal menu
o dalla pagina dei dettagli della risorsa, seleziona Crea backup on demand.Nella finestra Crea un backup on demand, seleziona una regola di backup da utilizzare e fai clic su Crea.
Per visualizzare lo stato del job di backup on demand, fai clic su Notifiche.
gcloud
Crea un backup on demand. Avvia un backup on demand utilizzando un'associazione del piano di backup esistente. Specifica un ID regola per determinare il periodo di scadenza di questo singolo backup on demand:
gcloud backup-dr backup-plan-associations trigger-backup BACKUP_PLAN_ASSOCIATION_NAME \ --backup-rule-id=RULE_ID \ --project=PROJECT_ID \ --location=LOCATION \ [--no-async]
Sostituisci quanto segue:
BACKUP_PLAN_ASSOCIATION_NAME: il nome dell'associazione del piano di backup.
RULE_ID: il nome della regola di backup che vuoi associare per eseguire backup on demand.
PROJECT_ID: il nome del progetto.
LOCATION: la posizione dei backup pianificati.
Rimuovi la protezione di un'istanza Cloud SQL
Puoi annullare la protezione di un'istanza Cloud SQL rimuovendo il piano di backup applicato all'istanza. La rimozione di un piano di backup da un'istanza Cloud SQL non elimina i backup creati durante l'utilizzo del piano di backup. Puoi comunque accedere a questi backup esistenti e gestirli fino alla loro scadenza.
Segui le istruzioni riportate di seguito per rimuovere la protezione di un'istanza Cloud SQL.
Console
Nella console Google Cloud , vai alla pagina Backup protetti.
Fai clic sul nome del database da cui vuoi rimuovere un piano di backup.
Seleziona Rimuovi piano di backup.
gcloud
Rimuovi la protezione di un'istanza Cloud SQL.
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 dell'associazione del piano di backup che vuoi eliminare.
- PROJECT_ID: il nome del progetto.
- LOCATION: la posizione del backup pianificato.