Utilizzare il recupero point-in-time (PITR)

Per eseguire rapidamente il recupero da una modifica accidentale dei dati o da una perdita di dati su larga scala, puoi utilizzare il recupero point-in-time (PITR) per ripristinare un cluster AlloyDB per PostgreSQL a uno stato specifico del recente passato.

Prima di iniziare

  • Il progetto Google Cloud che stai utilizzando deve essere stato abilitato per accedere ad AlloyDB.
  • Devi disporre di uno di questi ruoli IAM nel progetto Google Cloud che stai utilizzando:
    • roles/alloydb.admin (il ruolo IAM predefinito AlloyDB Admin)
    • roles/owner (il ruolo IAM di base Proprietario)
    • roles/editor (il ruolo IAM di base Editor)

    Se non disponi di nessuno di questi ruoli, contatta l'Amministratore organizzazione per richiedere l'accesso.

  • Devi disporre di tutte le seguenti autorizzazioni di Identity and Access Management (IAM) nel progetto Google Cloud che stai utilizzando:
    • compute.networks.list
    • compute.addresses.create
    • compute.addresses.list
    • compute.globalAddresses.create
    • compute.globalAddresses.list
    • servicenetworking.services.addPeering

    Per ottenere queste autorizzazioni seguendo il principio del privilegio minimo, chiedi all'amministratore di concederti il ruolo IAM predefinito Amministratore AlloyDB (roles/alloydb.admin), che include le autorizzazioni alloydb.clusters.restore e di networking richieste.

Ripristina da un momento specifico recente

AlloyDB ti consente di ripristinare completamente i dati di un cluster attivo da qualsiasi momento all'interno di un intervallo recente specifico.

Finestre PITR disponibili

Puoi eseguire il ripristino da qualsiasi momento successivo al più recente dei seguenti due momenti:

  • Il momento rappresentato dal limite della finestra di recupero. Ad esempio, se hai una finestra di recupero di 14 giorni, questo momento è 14 giorni nel passato.

  • La data e l'ora di creazione del backup meno recente eseguito dall'ultima volta che hai attivato il backup continuo. Se hai creato il cluster con il backup continuo abilitato e non lo hai disabilitato da allora, questo momento diventa effettivamente l'ora di creazione del backup più vecchio del cluster.

Se disabiliti e poi riabiliti il backup continuo, non puoi eseguire un recupero point-in-time finché tu o AlloyDB non create il primo nuovo backup del cluster. Può trattarsi di un backup on demand o del primo dei backup giornalieri eseguiti da AlloyDB dopo l'attivazione del backup continuo. Per saperne di più sui tipi di backup, consulta la panoramica del backup e del ripristino dei dati.

Puoi eseguire un recupero point-in-time solo se il cluster originale esiste. Non puoi eseguire questo tipo di ripristino su un cluster eliminato.

Puoi eseguire un recupero point-in-time su un cluster in stato Pronto, anche se la sua istanza principale è stata eliminata. Tuttavia, il recupero può ripristinare il cluster solo in un momento precedente all'eliminazione dell'istanza.

Esegui un recupero point-in-time

  1. Utilizza la console Google Cloud o Google Cloud CLI per eseguire il ripristino.

    Console

    1. Vai alla pagina Cluster.

      Vai a Cluster

    2. Fai clic su un cluster nella colonna Nome risorsa.

    3. Fai clic su Protezione dei dati.

    4. In Ripristina da un momento specifico, fai clic su Ripristina.

    5. Nel campo Data/ora target, inserisci la data e l'ora da cui eseguire il ripristino.

    6. Nel campo ID cluster, inserisci un nome per il nuovo cluster.

    7. Nel campo Rete, seleziona una rete Virtual Private Cloud da utilizzare per il nuovo cluster.

    8. Se vuoi criptare i backup continui e i log delle modifiche dei dati di questo cluster utilizzando una chiave di crittografia gestita dal cliente (CMEK) anziché la crittografia predefinita gestita da Google, segui questi passaggi aggiuntivi:

      1. Fai clic su Opzioni di crittografia avanzate.

      2. Fai clic sul pulsante di opzione Chiave di crittografia gestita dal cliente (CMEK).

      3. Fai clic sull'elenco Seleziona una chiave gestita dal cliente e seleziona una chiave.

    9. Fai clic su Ripristina.

    gcloud

    Utilizza il comando gcloud alloydb clusters restore, specificando un cluster e un timestamp.

    gcloud alloydb clusters restore NEW_CLUSTER \
      --source-cluster=SOURCE_CLUSTER \
      --point-in-time=TIMESTAMP \
      --region=REGION

    Questo comando restituisce un'operazione, di cui puoi eseguire query sullo stato utilizzando il comando gcloud alloydb operations describe.

    gcloud alloydb operations describe OPERATION_ID \
      --region=REGION

    Sostituisci quanto segue:

    • NEW_CLUSTER: l'ID da utilizzare con il nuovo cluster.

    • SOURCE_CLUSTER: l'ID del cluster da cui recuperare i dati.
      Per eseguire il ripristino da un cluster in un progetto diverso, sostituisci con il percorso completo del cluster nel seguente formato:
      projects/SOURCE_PROJECT/locations/SOURCE_REGION/clusters/SOURCE_CLUSTER

    • TIMESTAMP: una descrizione del momento da cui recuperare i dati, espressa nel formato RFC 3339, ad esempio 2012-11-15T16:19:00.094Z. Puoi specificare una frazione di secondo fino a un microsecondo.

      Tieni presente che questo timestamp deve rientrare nel periodo di conservazione specificato al momento della creazione del cluster.

    • REGION: la regione che contiene il cluster di origine e in cui AlloyDB crea il nuovo cluster. Ad esempio: us-central1.

    • PROJECT_ID: l'ID del progetto in cui si trova il nuovo cluster.

    Se vuoi criptare i dati del nuovo cluster con una chiave di crittografia gestita dal cliente (CMEK) anziché con la crittografia gestita da Google, devi fornire questi argomenti aggiuntivi:

    • --kms-key=KEY_ID: l'ID della chiave CMEK da utilizzare.
    • --kms-keyring=KEYRING_ID: l'ID della chiave automatizzata della chiave.
    • --kms-location=LOCATION_ID: l'ID della regione del keyring. Tieni presente che deve corrispondere alla regione del cluster.
    • --kms-project=PROJECT_ID: l'ID del progetto del keyring.

    Per eseguire il ripristino in un cluster con Private Service Connect abilitato, assicurati di aggiungere il flag --enable-private-service-connect.

  2. Dopo che AlloyDB ha completato la creazione del cluster, crea un'istanza principale. Questa istanza ti consente di accedere ai dati ripristinati. Tieni presente che la configurazione della nuova istanza non deve corrispondere esattamente a quella dell'istanza principale originale.

  3. (Facoltativo) Crea istanze del pool di lettura.

Puoi iniziare a utilizzare il cluster al termine dell'operazione di ripristino.

Passaggi successivi