Cette page explique comment créer, modifier et supprimer un plan de restauration dans Google Distributed Cloud (GDC) air-gapped.
Les plans de restauration sont des scénarios de restauration préconfigurés pour une ligne de sauvegardes correspondante. Les plans de restauration peuvent attribuer des autorisations aux utilisateurs disposant du rôle "Créateur de sauvegardes" pour qu'ils utilisent ces configurations.
Les créateurs de sauvegardes peuvent restaurer rapidement et indépendamment une sauvegarde en cas d'incident. Par exemple, les données persistantes peuvent être corrompues par une mise à jour logicielle dans une application déployée, entraînant un état non valide de l'espace de noms de l'application, ce qui nécessite une restauration.
Lors de la restauration, vous pouvez éventuellement appliquer un ensemble de règles de substitution, qui visent à faire correspondre un ensemble de ressources et à remplacer la valeur actuelle d'un attribut de ces ressources par une nouvelle valeur. Par exemple, une règle de substitution peut modifier l'espace de noms des ressources sauvegardées lors de la restauration pour migrer une charge de travail d'un espace de noms vers un autre.
Avant de commencer
Pour créer un plan de restauration, vous devez disposer des éléments suivants :
Rôle d'identité et d'accès nécessaire :
- Administrateur de sauvegarde de cluster d'utilisateur : gère les ressources de sauvegarde telles que les plans de sauvegarde et de restauration dans les clusters d'utilisateur. Demandez à votre administrateur IAM de l'organisation de vous attribuer le rôle Administrateur des sauvegardes de cluster utilisateur (
user-cluster-backup-admin
). Pour en savoir plus, consultez Définitions des rôles. - Si vous êtes un opérateur d'application, demandez à votre administrateur disposant des droits d'administrateur de sauvegarde de cluster d'utilisateur de créer un plan de restauration pour vous.
- Administrateur de sauvegarde de cluster d'utilisateur : gère les ressources de sauvegarde telles que les plans de sauvegarde et de restauration dans les clusters d'utilisateur. Demandez à votre administrateur IAM de l'organisation de vous attribuer le rôle Administrateur des sauvegardes de cluster utilisateur (
Créer un plan de restauration
Créez un plan de restauration à l'aide de la console GDC ou de l'API.
Console
- Connectez-vous à la console GDC.
- Dans le menu de navigation, cliquez sur Sauvegarde pour les clusters.
- Cliquez sur Créer un plan de restauration.
- Dans la section Principes de base de la restauration du forfait, procédez comme suit, puis cliquez sur Suivant :
- Dans Nom du plan de restauration, saisissez le nom de votre plan de restauration.
- (Facultatif) Dans Description du plan de restauration, saisissez une description du plan de restauration.
- Dans la liste Cluster source, sélectionnez le cluster source du plan de restauration.
- Dans la liste Projet, sélectionnez le projet du plan de restauration.
- Sélectionnez le projet associé au cluster source.
- Dans le champ Plan de sauvegarde, choisissez un plan de sauvegarde pour un cluster existant qui correspond aux sauvegardes que vous souhaitez restaurer.
- Dans le champ Cluster cible, choisissez le cluster cible dans lequel vous souhaitez restaurer la sauvegarde.
- Dans la section Choisir les ressources d'espace de noms, procédez comme suit, puis cliquez sur Suivant :
- Choisissez les espaces de noms à restaurer :
- Cliquez sur Toutes les ressources d'espace de noms pour restaurer toutes les ressources d'espace de noms dans la sauvegarde.
- Cliquez sur Ressources d'espace de noms sélectionnées pour spécifier les espaces de noms dans la sauvegarde à restaurer.
- Cliquez sur Modifier les espaces de noms du cluster, puis sur Ajouter un espace de noms au cluster pour saisir un espace de noms.
- Cliquez sur Applications protégées sélectionnées pour ajouter des ressources en spécifiant l'espace de noms et le nom de l'application.
- Déterminez la gestion des conflits :
- Cliquez sur Échec en cas de conflit (non destructeur) pour entraîner l'échec de la restauration si des espaces de noms ciblés pour la restauration à partir d'une sauvegarde existent déjà dans le cluster cible.
- Cliquez sur Rollback (destructeur) pour supprimer les espaces de noms existants avant de restaurer les espaces de noms si des espaces de noms ciblés pour la restauration à partir d'une sauvegarde existent déjà dans le cluster cible.
- Déterminez la restauration des données de volume :
- Cliquez sur Provisionner de nouveaux volumes et restaurer les données de volume à partir de la sauvegarde pour restaurer les données de volume à partir de la sauvegarde sur un nouveau disque persistant.
- Cliquez sur Ne pas restaurer les données du volume pour provisionner un nouveau volume persistant. Si le cluster cible contient un volume persistant non lié qui répond aux exigences
PersistentVolumeClaim
, il est lié au volume. - Cliquez sur Réutiliser les volumes existants contenant vos données pour ne pas restaurer les données de sauvegarde de volume. Toutes les
PersistentVolumeClaims
sont liées à des volumes qui référencent des disques persistants existants.
- Choisissez les espaces de noms à restaurer :
- Facultatif : Dans la section Choisir les ressources à l'échelle d'un cluster, procédez comme suit, puis cliquez sur Suivant :
- Cliquez sur Ne pas restaurer les ressources à l'échelle du cluster pour laisser la version existante de la ressource intacte.
- Cliquez sur Restaurer les ressources à l'échelle du cluster par GroupKind pour restaurer ces ressources.
- Cliquez sur Modifier GroupKinds pour ajouter d'autres ressources à l'échelle d'un cluster. Saisissez le groupe d'API et le genre d'objet pour rechercher les ressources correspondantes.
- Cliquez sur Conserver les ressources existantes pour créer des ressources si elles n'existent pas dans le cluster cible.
- Cliquez sur Remplacer les ressources dans le cluster cible pour supprimer une ressource si elle existe déjà dans le cluster cible et restaurer la copie à partir de la sauvegarde.
- Facultatif : Dans la section Ajouter des règles de substitution, procédez comme suit, puis cliquez sur Suivant :
- Cliquez sur Ajouter une règle.
- Dans la zone Espaces de noms du cluster, saisissez une liste d'espaces de noms correspondant aux ressources qu'ils contiennent.
- Pour ajouter des GroupKinds, cliquez sur Ajouter un GroupKind, puis saisissez le groupe d'API et le genre de l'objet pour rechercher les ressources correspondantes.
- Dans le champ Chemin JSON, saisissez le chemin JSON qui identifie les champs des ressources correspondantes pour lesquelles la substitution s'applique.
- Dans le champ Format de la valeur d'origine, saisissez le format d'origine à comparer à la nouvelle valeur.
- Dans le champ Nouvelle valeur, saisissez la nouvelle valeur qui remplace la valeur actuelle des attributs correspondants.
- Cliquez sur Enregistrer.
- Cliquez sur Créer.
API
Créez une ressource personnalisée ClusterRestorePlan
pour planifier les restaurations à partir d'un ClusterBackupPlan
existant. ClusterRestorePlan
attribue l'ensemble exact des ressources et des espaces de noms qu'un créateur de sauvegarde est autorisé à restaurer. Voici un exemple de ClusterRestorePlan
:
apiVersion: backup.gdc.goog/v1
kind: ClusterRestorePlan
metadata:
name: restoreplan-sample
namespace: PROJECT_NAME
spec:
targetCluster:
targetClusterType: UserCluster
targetClusterName:
kind: "Cluster"
name: "user-vm-1"
description: "restores test clusters"
clusterBackupPlanName: "backupplan-sample"
clusterRestoreConfig:
volumeDataRestorePolicy: RestoreVolumeDataFromBackup
clusterResourceConflictPolicy: UseBackupVersion
namespacedResourceRestoreMode: DeleteAndRestore
namespacedResourceRestoreScope:
selectedNamespaces:
namespaces: ["nginx-2"]
clusterBackupRepositoryRef: "backup-repository"
substitutionRules:
- newValue: "newhippo"
originValuePattern: game-config-2
target:
groupKinds:
jsonPath: '{.metadata.name}'
namespaces:
- nginx-2
- newValue: "hippo"
originValuePattern: game-config
target:
groupKinds:
jsonPath: '{.metadata.name}'
namespaces:
- nginx-2
Remplacez PROJECT_NAME
par le nom de votre projet GDC.
Cet exemple utilise les valeurs suivantes :
Valeur |
Attribut |
Description |
---|---|---|
clusterBackupPlanName |
Nom de l'ClusterBackupPlan à restaurer. Le ClusterBackupPlan doit exister dans le même espace de noms que le ClusterRestorePlan . |
|
targetClusterName |
Nom du cluster source dans un projet auquel ce plan est associé. | |
description |
Description fournie par l'utilisateur pour l'objectif de ClusterRestorePlan . |
|
clusterRestoreConfig |
Configuration du processus de restauration. | |
clusterBackupRepositoryRef |
Spécifie le dépôt dans lequel stocker les ressources Restore . Ce dépôt peut être différent de celui à partir duquel la sauvegarde est effectuée. Le dépôt doit être un dépôt ReadWrite dans le cluster. |
|
clusterResourceConflictPolicy |
Spécifie le comportement à adopter pour gérer les conflits de ressources de cluster, par exemple si la ressource existe déjà dans le cluster. Spécifiez l'une des options suivantes :
|
|
volumeDataRestorePolicy |
Spécifiez l'une des options suivantes :
|
|
namespacedResourceRestoreMode |
Gère la situation dans laquelle les ensembles de ressources avec espace de noms en cours de restauration existent déjà dans le cluster cible. Spécifiez l'une des options suivantes :
|
|
namespacedResourceRestoreScope |
Spécifie les Namespaces ou ProtectedApplications autorisés pour la restauration.
|
|
substitutionRules |
Règles permettant de remplacer les valeurs des ressources Kubernetes sauvegardées lors de la restauration. Une liste vide signifie qu'aucune substitution n'a lieu. Les règles de substitution sont appliquées de manière séquentielle dans l'ordre défini. Cet ordre est important, car les modifications apportées par une règle peuvent avoir un impact sur la logique de correspondance de la règle suivante. |
Une fois qu'un ClusterRestorePlan
est créé, les utilisateurs disposant du rôle Créateur de sauvegardes peuvent restaurer manuellement les sauvegardes.
Afficher un plan de restauration
Affichez un plan de restauration à l'aide de la console GDC :
- Connectez-vous à la console GDC.
- Dans le menu de navigation, cliquez sur Sauvegarde pour les clusters.
- Cliquez sur Sélectionner un projet pour sélectionner une organisation ou un projet en fonction de votre rôle :
- Administrateur de la sauvegarde du cluster d'utilisateur : sélectionnez une organisation pour afficher tous les plans de restauration d'une organisation ou sélectionnez un projet pour afficher tous les plans de restauration d'un projet.
- Créateur de sauvegarde : sélectionnez un projet pour afficher tous les plans de restauration d'un projet.
- Cliquez sur l'onglet Plans de restauration.
- Cliquez sur un plan de restauration dans la liste pour afficher ses détails.
Modifier un plan de restauration
Si le dépôt de sauvegarde associé au plan de restauration que vous souhaitez modifier comporte une valeur dans le champ Cluster associé(lecture seule) lorsque le plan de restauration est créé, il est créé deux fois. Le plan de restauration est propagé aux clusters en lecture/écriture et en lecture seule.
Lorsque vous modifiez le plan de restauration appartenant à un dépôt de sauvegarde pour lequel des clusters en lecture et écriture et en lecture seule sont définis, vous devez modifier le plan de restauration dont le TARGET CLUSTER
est défini sur le cluster en lecture et écriture.
Modifiez un plan de restauration à l'aide de la console GDC :
- Connectez-vous à la console GDC.
- Dans le menu de navigation, cliquez sur Sauvegarde pour les clusters.
- Cliquez sur Sélectionner un projet pour sélectionner une organisation ou un projet en fonction de votre rôle :
- Administrateur de la sauvegarde du cluster d'utilisateur : sélectionnez une organisation pour afficher tous les plans de restauration d'une organisation ou sélectionnez un projet pour afficher tous les plans de restauration d'un projet.
- Créateur de sauvegarde : sélectionnez un projet pour afficher tous les plans de restauration d'un projet.
- Cliquez sur l'onglet Plans de restauration.
- Cliquez sur le nom du plan de restauration que vous souhaitez modifier.
- Cliquez sur l'onglet Configuration du forfait pour afficher les champs modifiables.
Cliquez sur l'icône Modifier edit à côté de Ressources avec espace de noms pour modifier cette ressource :
Dans la section Choisir les ressources d'espace de noms, sélectionnez les ressources d'espace de noms incluses dans la sauvegarde que vous souhaitez restaurer :
- Sélectionnez Toutes les ressources d'espace de noms pour restaurer toutes les ressources d'espace de noms dans la sauvegarde.
Sélectionnez Ressources d'espace de noms sélectionnées pour restaurer les ressources des espaces de noms sélectionnés dans la sauvegarde :
- Sélectionnez Modifier les espaces de noms du cluster pour sélectionner l'espace de noms du cluster.
- Dans le champ Espace de noms du cluster 1, saisissez le nom de l'espace de noms.
- Cliquez sur le bouton Enregistrer.
Sélectionnez Applications protégées sélectionnées pour restaurer les ressources des applications protégées sélectionnées dans la sauvegarde :
- Sélectionnez Modifier les applications protégées pour sélectionner l'espace de noms et l'application protégée.
- Dans le champ Espace de noms 1, saisissez le nom de l'espace de noms.
- Dans le champ Application protégée 1, saisissez le nom de l'application protégée.
- Cliquez sur le bouton Enregistrer.
Cliquez sur l'icône Modifier edit à côté de Ressources à portée du cluster pour modifier cette ressource :
Facultatif : Dans la section Choisir les ressources à l'échelle d'un cluster, sélectionnez les ressources à l'échelle d'un cluster à restaurer en spécifiant les groupes d'API et
GroupKinds
, puis décidez de la manière dont les conflits doivent être résolus :- Sélectionnez Ne pas restaurer les ressources à l'échelle du cluster pour supprimer les ressources à l'échelle du cluster du processus de restauration.
Sélectionnez Restaurer les ressources à l'échelle du cluster par GroupKind pour restaurer les ressources par le
GroupKind
spécifié :Pour spécifier un
GroupKind
, cliquez sur le bouton Modifier GroupKind.Cliquez sur le bouton Add GroupKind (Ajouter GroupKind).
Saisissez le nom de
GroupKind
.Cliquez sur le bouton Enregistrer.
Dans la section Gestion des conflits, déterminez l'action à effectuer si la ressource existe déjà dans le cluster cible :
- Sélectionnez Conserver les ressources existantes pour créer des ressources si elles n'existent pas déjà dans le cluster.
- Sélectionnez Écraser les ressources existantes pour supprimer les ressources existantes trouvées et les remplacer par la ressource restaurée.
Cliquez sur le bouton Enregistrer pour confirmer vos modifications.
Dans la section Règles de substitution, cliquez sur le bouton Ajouter une règle pour ajouter une règle de substitution :
- Dans le champ Espaces de noms du cluster, saisissez le nom de l'espace de noms du cluster auquel appliquer cette règle de substitution.
- Cliquez sur le bouton Add GroupKind (Ajouter GroupKind) pour appliquer cette règle à un certain objet
GroupKind
. - Dans le champ Chemin JSON, saisissez le chemin d'accès à l'attribut de ressource que vous souhaitez remplacer, au format JSON.
- Dans le champ Modèle de valeur d'origine, saisissez une expression régulière qui correspond à la valeur d'origine de l'attribut.
- Dans le champ Nouvelle valeur, saisissez la valeur de remplacement dans le champ cible. Si ce champ est vide, le champ cible est supprimé de la ressource.
- Cliquez sur le bouton Enregistrer pour terminer la création de la règle de substitution.
Dans la section Règles de substitution, cliquez sur l'icône Modifier edit pour modifier une règle de substitution existante.
Dans la section Règles de substitution, cliquez sur l'icône delete Supprimer pour supprimer une règle de substitution existante.
Supprimer un plan de restauration
RestorePlans
peut être supprimé via la console GDC ou en supprimant la ressource directement depuis le serveur d'API Kubernetes. Cette opération supprime tous les artefacts RestorePlan
associés du stockage d'objets.
Console
- Connectez-vous à la console GDC.
- Dans le menu de navigation, cliquez sur Sauvegarde pour les clusters.
- Cliquez sur Sélectionner un projet pour sélectionner une organisation ou un projet en fonction de votre rôle :
- Administrateur de sauvegarde de cluster d'utilisateur : sélectionnez une organisation pour afficher tous les plans de restauration d'une organisation, ou sélectionnez un projet pour afficher tous les plans de restauration d'un projet.
- Créateur de sauvegardes : sélectionnez un projet pour afficher tous les plans de restauration d'un projet.
- Cliquez sur l'onglet Plans de restauration.
- Cliquez sur le nom du plan de restauration que vous souhaitez supprimer.
- Cliquez sur le bouton delete Supprimer.
- Saisissez le nom du plan de restauration dans le champ.
- Cliquez sur le bouton Supprimer pour confirmer la suppression de ce plan de restauration.
API
Supprimez la ressource du plan de restauration :
kubectl delete clusterRestoreplan RESTORE_PLAN_NAME -n NAMESPACE
Remplacez les éléments suivants :
RESTORE_PLAN_NAME
: nom du plan de restauration.NAMESPACE
: espace de noms contenant le plan de restauration.