Usa la recuperación de un momento determinado (PITR)

En esta página, se describe cómo restablecer un clúster a un estado reciente. Se recomienda restablecer los datos a un momento determinado en un clúster de AlloyDB para PostgreSQL para una recuperación rápida de la pérdida de datos a gran escala.

Antes de comenzar

  • El Google Cloud proyecto que usas debe haber sido habilitado para acceder a AlloyDB.
  • Debes tener uno de estos roles de IAM en el Google Cloud proyecto que usas:
    • roles/alloydb.admin (el rol de IAM predefinido de administrador de AlloyDB)
    • roles/owner (el rol de IAM básico de propietario)
    • roles/editor (el rol de IAM básico de editor)

    Si no tienes ninguno de estos roles, comunícate con el administrador de tu organización para solicitar acceso.

  • Debes tener todos estos roles de IAM en el Google Cloud proyecto que usas:
    • compute.networks.list
    • compute.addresses.create
    • compute.addresses.list
    • compute.globalAddresses.create
    • compute.globalAddresses.list
    • servicenetworking.services.addPeering

    Para obtener estos permisos y seguir el principio de privilegio mínimo, pídele a tu administrador que te otorgue el rol roles/alloydb.admin (IAM predefinido de administrador de AlloyDB).

Restablecer desde un momento reciente

AlloyDB te permite restablecer por completo los datos de un clúster activo desde cualquier momento dentro de un rango reciente específico.

Ventanas de PITR disponibles

Puedes restablecer desde cualquier momento después del más reciente de los siguientes dos momentos:

  • El momento representado por el límite de tu ventana de recuperación. Por ejemplo, si tienes una ventana de recuperación de 14 días, este momento es 14 días en el pasado.

  • La hora de creación de la copia de seguridad más antigua que se tomó desde la última vez que habilitaste la copia de seguridad continua. Si creaste el clúster con la copia de seguridad continua habilitada y no la inhabilitaste desde entonces, este momento se convierte de manera efectiva en la hora de creación de la copia de seguridad más antigua de tu clúster.

Si inhabilitas y, luego, vuelves a habilitar la copia de seguridad continua, no podrás realizar una recuperación de un momento determinado hasta que tú o AlloyDB creen la primera copia de seguridad nueva del clúster. Puede ser una copia de seguridad a pedido o la primera de las copias de seguridad diarias que AlloyDB toma después de habilitar la copia de seguridad continua. Para obtener más información sobre los tipos de copias de seguridad, consulta Descripción general de la copia de seguridad y recuperación de datos.

Solo puedes realizar una recuperación de un momento determinado si existe el clúster original. No puedes realizar este tipo de restablecimiento en un clúster borrado.

Puedes realizar una recuperación de un momento determinado en un clúster en estado listo, incluso si se borra su instancia principal. Sin embargo, la recuperación solo puede restablecer el clúster a un momento determinado antes de que se borrara la instancia.

Realiza un restablecimiento de un momento determinado

  1. Usa la Google Cloud consola o Google Cloud CLI para realizar la restauración.

    Console

    1. Ve a la página Clústeres.

      Ir a los clústeres

    2. Haz clic en un clúster en la columna Nombre del recurso.

    3. Haz clic en Protección de datos.

    4. En Restablecer desde un momento determinado, haz clic en Restablecer.

    5. En el campo Hora de destino, ingresa la fecha y la hora desde las que se restablecerá.

    6. En el campo ID del clúster, ingresa un nombre para el clúster nuevo.

    7. En el campo Red, selecciona una red de nube privada virtual para que la use el clúster nuevo.

    8. Si deseas encriptar las copias de seguridad continuas y los registros de cambios de datos de este clúster con una clave de encriptación administrada por el cliente (CMEK) en lugar de la encriptación predeterminada administrada por Google, sigue estos pasos adicionales:

      1. Haz clic en Opciones avanzadas de encriptación.

      2. Haz clic en el botón de selección Clave de encriptación administrada por el cliente (CMEK).

      3. Haz clic en la lista Seleccionar una clave administrada por el cliente y selecciona una clave.

    9. Haz clic en Restablecer.

    gcloud

    Usa el comando gcloud alloydb clusters restore y especifica un clúster y una marca de tiempo.

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

    Este comando muestra una operación, cuyo estado puedes consultar con el gcloud alloydb operations describe comando.

    gcloud alloydb operations describe OPERATION_ID \
      --region=REGION

    Reemplaza lo siguiente:

    • NEW_CLUSTER: Es el ID que se usará con el clúster nuevo.

    • SOURCE_CLUSTER: Es el ID del clúster desde el que se recuperarán los datos.
      Para restablecer desde un clúster en un proyecto diferente, reemplaza con la ruta de acceso completa del clúster en el siguiente formato:
      projects/SOURCE_PROJECT/locations/SOURCE_REGION/clusters/SOURCE_CLUSTER

    • TIMESTAMP: Es una descripción del momento desde el que se recuperarán los datos, expresada en formato RFC 3339 —por ejemplo, 2012-11-15T16:19:00.094Z. Puedes especificar una fracción de segundo tan pequeña como un microsegundo.

      Ten en cuenta que esta marca de tiempo debe existir dentro del período de retención que especificaste cuando creaste el clúster.

    • REGION: Es la región que contiene el clúster de origen y donde AlloyDB crea el clúster nuevo. Por ejemplo: us-central1.

    • PROJECT_ID: Es el ID del proyecto en el que se encuentra el clúster nuevo.

    Si deseas encriptar los datos del clúster nuevo con una clave de encriptación administrada por el cliente (CMEK) en lugar de la encriptación administrada por Google, debes proporcionar estos argumentos adicionales:

    • --kms-key=KEY_ID: Es el ID de la clave CMEK que se usará.
    • --kms-keyring=KEYRING_ID: Es el ID del llavero de la clave.
    • --kms-location=LOCATION_ID: Es el ID de la región de ese llavero. Ten en cuenta que debe coincidir con la región del clúster.
    • --kms-project=PROJECT_ID: Es el ID del proyecto del llavero.

    Para restablecer a un clúster con Private Service Connect habilitado, asegúrate de agregar la marca --enable-private-service-connect.

  2. Después de que AlloyDB termine de crear el clúster, crea una instancia principal para él. Esa instancia te permite acceder a los datos restablecidos. Ten en cuenta que la configuración de la instancia nueva no necesita coincidir exactamente con la de la instancia principal original.

  3. Opcional: Crea instancias de grupo de lectura.

Puedes comenzar a usar el clúster después de que se complete la operación de restablecimiento.

¿Qué sigue?