Pour récupérer rapidement des données après une modification accidentelle ou une perte de données à grande échelle, vous pouvez utiliser la récupération à un moment précis (PITR) pour restaurer un cluster AlloyDB pour PostgreSQL à un état spécifique du passé récent.
Avant de commencer
- Le projet Google Cloud que vous utilisez doit avoir été activé pour accéder à AlloyDB.
- Vous devez disposer de l'un de ces rôles IAM dans le projet Google Cloud que vous utilisez :
roles/alloydb.admin(rôle IAM prédéfini d'administrateur AlloyDB)roles/owner(rôle IAM de base "Propriétaire")roles/editor(rôle IAM de base Éditeur)
Si vous ne disposez d'aucun de ces rôles, contactez l'administrateur de votre organisation pour demander l'accès.
- Vous devez disposer de toutes les autorisations IAM (Identity and Access Management) suivantes dans le projet Google Cloud que vous utilisez :
compute.networks.listcompute.addresses.createcompute.addresses.listcompute.globalAddresses.createcompute.globalAddresses.listservicenetworking.services.addPeering
Pour obtenir ces autorisations tout en respectant le principe du moindre privilège, demandez à votre administrateur de vous accorder le rôle IAM prédéfini d'administrateur AlloyDB (
roles/alloydb.admin), qui inclut les autorisationsalloydb.clusters.restoreet de mise en réseau requises.
Restaurer à un moment précis récent
AlloyDB vous permet de restaurer entièrement les données d'un cluster actif à partir de n'importe quel moment précis d'une période récente spécifique.
Fenêtres de PITR disponibles
Vous pouvez effectuer une restauration à partir de n'importe quel moment après le plus récent des deux moments suivants :
Le moment représenté par la limite de votre période de récupération. Par exemple, si vous disposez d'une fenêtre de récupération de 14 jours, ce moment correspond à 14 jours dans le passé.
Heure de création de la sauvegarde la plus ancienne effectuée depuis la dernière activation de la sauvegarde continue. Si vous avez créé le cluster avec la sauvegarde continue activée et que vous ne l'avez pas désactivée depuis, ce moment devient l'heure de création de la sauvegarde la plus ancienne de votre cluster.
Si vous désactivez, puis réactivez la sauvegarde continue, vous ne pouvez pas effectuer de récupération à un moment précis tant que vous ou AlloyDB n'avez pas créé la première sauvegarde du cluster. Il peut s'agir d'une sauvegarde à la demande ou de la première des sauvegardes quotidiennes effectuées par AlloyDB après l'activation de la sauvegarde continue. Pour en savoir plus sur les types de sauvegardes, consultez Présentation de la sauvegarde et de la récupération de données.
Vous ne pouvez effectuer une récupération à un moment précis que si le cluster d'origine existe. Vous ne pouvez pas effectuer ce type de restauration sur un cluster supprimé.
Vous pouvez effectuer une récupération à un moment précis sur un cluster à l'état prêt, même si son instance principale est supprimée. Toutefois, la récupération ne peut restaurer le cluster qu'à un moment précis avant la suppression de l'instance.
Effectuer une restauration à un moment précis
Utilisez la console Google Cloud ou la Google Cloud CLI pour effectuer la restauration.
Console
Accédez à la page Clusters.
Cliquez sur un cluster dans la colonne Nom de la ressource.
Cliquez sur Protection des données.
Sous Restaurer à un moment précis, cliquez sur Restaurer.
Dans le champ Heure cible, saisissez la date et l'heure à partir desquelles effectuer la restauration.
Dans le champ ID du cluster, saisissez un nom pour le nouveau cluster.
Dans le champ Réseau, sélectionnez un réseau cloud privé virtuel que le nouveau cluster pourra utiliser.
Si vous souhaitez chiffrer les sauvegardes continues et les journaux de modification des données de ce cluster à l'aide d'une clé de chiffrement gérée par le client (CMEK) au lieu du chiffrement par défaut géré par Google, procédez comme suit :
Cliquez sur Options de chiffrement avancées.
Cliquez sur la case d'option Clé de chiffrement gérée par le client (CMEK).
Cliquez sur la liste Sélectionner une clé gérée par le client, puis sélectionnez une clé.
Cliquez sur Restaurer.
gcloud
Exécutez la commande
gcloud alloydb clusters restoreen spécifiant un cluster et un code temporel.gcloud alloydb clusters restore NEW_CLUSTER \ --source-cluster=SOURCE_CLUSTER \ --point-in-time=TIMESTAMP \ --region=REGIONCette commande renvoie une opération dont vous pouvez interroger l'état à l'aide de la commande
gcloud alloydb operations describe.gcloud alloydb operations describe OPERATION_ID \ --region=REGIONRemplacez les éléments suivants :
NEW_CLUSTER: ID à utiliser avec le nouveau cluster.SOURCE_CLUSTER: ID du cluster à partir duquel récupérer les données.
Pour effectuer une restauration à partir d'un cluster d'un autre projet, remplacez par le chemin d'accès complet au cluster au format suivant :
projects/SOURCE_PROJECT/locations/SOURCE_REGION/clusters/SOURCE_CLUSTERTIMESTAMP: description du moment à partir duquel récupérer les données, exprimée au format RFC 3339 (par exemple,2012-11-15T16:19:00.094Z). Vous pouvez spécifier une fraction de seconde aussi petite qu'une microseconde.Notez que ce code temporel doit exister pendant la période de conservation que vous avez spécifiée lors de la création du cluster.
REGION: région contenant le cluster source et dans laquelle AlloyDB crée le cluster. Exemple :us-central1.PROJECT_ID: ID du projet dans lequel se trouve le nouveau cluster.
Si vous souhaitez chiffrer les données du nouveau cluster avec une clé de chiffrement gérée par le client (CMEK) au lieu du chiffrement géré par Google, vous devez fournir les arguments supplémentaires suivants :
--kms-key=KEY_ID: ID de la clé CMEK à utiliser.--kms-keyring=KEYRING_ID: ID du trousseau de clés de la clé.--kms-location=LOCATION_ID: ID de la région de ce trousseau de clés. Notez qu'elle doit correspondre à la région du cluster.--kms-project=PROJECT_ID: ID du projet du trousseau de clés.
Pour effectuer une restauration vers un cluster sur lequel Private Service Connect est activé, veillez à ajouter l'option
--enable-private-service-connect.Une fois qu'AlloyDB a terminé de créer le cluster, créez une instance principale pour celui-ci. Cette instance vous permet d'accéder aux données restaurées. Notez que la configuration de la nouvelle instance ne doit pas nécessairement correspondre exactement à celle de l'instance principale d'origine.
Facultatif : créez des instances de pool de lecture.
Vous pouvez commencer à utiliser le cluster une fois l'opération de restauration terminée.
Étapes suivantes
- Restaurer un cluster à partir d'une sauvegarde stockée
- Créer une instance de pool de lecture
- Créez un cluster et une instance secondaires.