Créer un plan de sauvegarde planifié

Ce document explique comment créer des plans de sauvegarde programmée qui sauvegardent les charges de travail des machines virtuelles (VM) selon une programmation définie dans Google Distributed Cloud (GDC) air-gapped.

Les plans de sauvegarde fournissent la configuration et l'emplacement des sauvegardes. Un plan de sauvegarde contient une configuration de sauvegarde comprenant la VM source et la sélection de la VM à sauvegarder. Les plans de sauvegarde définissent une programmation régulière pour les sauvegardes de VM. Chaque plan de sauvegarde basé sur une VM fait référence aux ressources de VM ou de disque de VM cibles à sauvegarder à l'aide d'un sélecteur de libellés défini dans une ressource ProtectedApplication.

Ce document s'adresse aux développeurs des groupes d'administrateurs de plate-forme ou d'opérateurs d'applications qui gèrent les opérations de sauvegarde de VM. Pour en savoir plus, consultez la documentation sur les audiences pour GDC sous air gap.

Avant de commencer

Pour créer des plans de sauvegarde de VM, vous devez disposer des éléments suivants :

Demander des autorisations IAM

Pour gérer le cycle de vie des ressources de sauvegarde de VM, y compris la création, l'affichage et la suppression des 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 de sauvegarde de l'organisation (organization-backup-admin). Ce rôle vous permet de configurer et d'exécuter des stratégies de protection des données des VM.

Créer un modèle de plan de sauvegarde pour les VM

Pour planifier vos sauvegardes, créez une ressource personnalisée VirtualMachineBackupPlanTemplate. Voici un exemple de VirtualMachineBackupPlanTemplate :

   apiVersion: virtualmachine.gdc.goog/v1
   kind: VirtualMachineBackupPlanTemplate
   metadata:
     name: BACKUP_TEMPLATE_NAME
     namespace: PROJECT_NAME
   spec:
     backupRepository: "BACKUP_REPOSITORY_NAME"

Remplacez les éléments suivants :

  • BACKUP_TEMPLATE_NAME : nom du modèle de plan de sauvegarde.
  • PROJECT_NAME : nom du projet dans lequel créer le modèle.

  • BACKUP_REPOSITORY_NAME : nom du dépôt créé dans la section précédente.

Créer un plan de sauvegarde défini pour les VM

Pour créer des sauvegardes de VM selon une planification définie et avec un champ d'application spécifié, vous devez créer une ressource VirtualMachineBackupPlan à l'aide de l'API. Cette ressource spécifie le champ d'application de la sauvegarde de VM et la planification cron qui définit la fréquence de création des sauvegardes.

Vous pouvez définir le champ d'application du plan de sauvegarde de VM de deux manières :

  • Utiliser une liste : spécifiez les machines virtuelles ou les disques de machine virtuelle à sauvegarder sous forme de liste. Ces cibles de sauvegarde sont listées dans les champs selectedVirtualMachines et selectedVirtualMachineDisks.
  • Utiliser un libellé : indiquez un libellé qui sélectionne toutes les machines virtuelles ou tous les disques de machine virtuelle contenant cette valeur de libellé. Toutes les VM correspondantes sont sauvegardées par ce plan de sauvegarde.

Créer un plan de sauvegarde de VM à l'aide d'une liste

Pour créer un plan de sauvegarde de VM à l'aide de la méthode de liste, spécifiez les cibles de sauvegarde dans les champs selectedVirtualMachines et selectedVirtualMachineDisks :

apiVersion: virtualmachine.gdc.goog/v1
kind: VirtualMachineBackupPlan
metadata:
    name: BACKUP_PLAN_NAME
    namespace: BACKUP_PLAN_NAMESPACE
spec:
    virtualMachineBackupPlanTemplate: BACKUP_TEMPLATE_NAME
    backupConfig:
        backupScope:
            selectedVirtualMachines:
                - resourceName: VM_NAME
            selectedVirtualMachineDisks:
                - resourceName: VM_DISK_NAME
        volumeStrategy: VOLUME_STRATEGY
    backupSchedule:
        cronSchedule: CRON_SCHEDULE
        paused: false

Remplacez les éléments suivants :

  • BACKUP_PLAN_NAME : nom du plan de sauvegarde.
  • BACKUP_PLAN_NAMESPACE : espace de noms contenant le plan de sauvegarde.
  • BACKUP_TEMPLATE_NAME : modèle de plan de sauvegarde de la machine virtuelle qui pointe vers le dépôt de sauvegarde correspondant créé dans Créer un modèle de plan de sauvegarde de VM.
  • VM_NAME : spécifiez les noms des VM sous forme de liste dans le champ selectedVirtualMachines. Cette liste de VM est sauvegardée par ce plan de sauvegarde de machines virtuelles. Si plusieurs VM sont spécifiées, la liste doit être au format suivant :

    selectedVirtualMachines:
        - resourceName: "virtualmachine"
        - resourceName: "virtualmachine-2"
        ...
        - resourceName: "virtualmachine-n"
    
  • VM_DISK_NAME : disques de VM à sauvegarder avec ce plan de sauvegarde de machine virtuelle. Si plusieurs disques de VM sont spécifiés, la liste doit être au format suivant :

    selectedVirtualMachineDisks:
        - resourceName: "disk-1"
        - resourceName: "disk-2"
        ...
        - resourceName: "disk-n"
    
  • VOLUME_STRATEGY : type de sauvegarde de volume à effectuer. Vous devez utiliser l'une des valeurs suivantes :

    • ProvisionerSpecific : exploite les fonctionnalités de sauvegarde et de restauration du fournisseur de stockage sous-jacent. Utilisez cette option si includeVolumeData est défini sur true.
    • LocalSnapshotOnly : crée une copie du volume à un moment donné uniquement sur le système de stockage local lui-même.
  • CRON_SCHEDULE : expression cron qui définit la planification de sauvegarde choisie. Par exemple, une valeur cron de 0 */12 * * * crée une sauvegarde toutes les 12 heures.

Créer un plan de sauvegarde de VM à l'aide d'un libellé

Pour créer un plan de sauvegarde de VM à l'aide de la méthode des libellés, spécifiez un libellé dans le champ vmResourceLabelSelector qui correspond aux VM cibles que vous souhaitez sauvegarder :

apiVersion: virtualmachine.gdc.goog/v1
kind: VirtualMachineBackupPlan
metadata:
    name: BACKUP_PLAN_NAME
    namespace: BACKUP_PLAN_NAMESPACE
spec:
    virtualMachineBackupPlanTemplate: BACKUP_TEMPLATE_NAME
    backupConfig:
        backupScope:
            vmResourceLabelSelector:
                KEY: VALUE
        volumeStrategy: VOLUME_STRATEGY
    backupSchedule:
        cronSchedule: CRON_SCHEDULE
        paused: false

Remplacez les éléments suivants :

  • BACKUP_PLAN_NAME : nom du plan de sauvegarde.
  • BACKUP_PLAN_NAMESPACE : espace de noms contenant le plan de sauvegarde.
  • BACKUP_TEMPLATE_NAME : modèle de plan de sauvegarde de la machine virtuelle qui pointe vers le dépôt de sauvegarde correspondant créé dans Créer un modèle de plan de sauvegarde de VM.
  • KEY: VALUE : sélecteur d'étiquettes qui fait correspondre les étiquettes données à toutes les VM qui contiennent cette étiquette. Toutes les VM correspondantes trouvées dans le même espace de noms sont sauvegardées par ce plan de sauvegarde. Cet objet doit être au format keys:string, values:string.
  • VOLUME_STRATEGY : type de sauvegarde de volume à effectuer. Vous devez utiliser l'une des valeurs suivantes :
    • ProvisionerSpecific : exploite les fonctionnalités de sauvegarde et de restauration du fournisseur de stockage sous-jacent. Utilisez cette option si includeVolumeData est défini sur true.
    • LocalSnapshotOnly : crée une copie du volume à un moment donné uniquement sur le système de stockage local lui-même.
  • CRON_SCHEDULE : expression cron qui définit la planification de sauvegarde choisie. Par exemple, une valeur cron de 0 */12 * * * crée une sauvegarde toutes les 12 heures.

Afficher un plan de sauvegarde

Affichez un plan de sauvegarde à l'aide de la console GDC ou de kubectl.

Console

Affichez la liste des plans de sauvegarde à l'aide de la console GDC.

  1. Connectez-vous à la console GDC.
  2. Dans le menu de navigation, cliquez sur Sauvegarde pour les machines virtuelles > Plans de sauvegarde.
  3. Sélectionnez un projet.
  4. Cliquez sur un plan de sauvegarde dans la liste pour afficher ses détails.

kubectl

Affichez un plan de sauvegarde en listant les plans de sauvegarde et en affichant leurs détails à l'aide de kubectl.

  1. Répertoriez les plans de sauvegarde existants :

    kubectl get backupplans.backup.gdc.goog -n PROJECT_NAME
    
  2. Dans la liste, recherchez le plan de sauvegarde que vous souhaitez afficher.

  3. Affichez les détails du plan de sauvegarde :

    kubectl describe backupplans.backup.gdc.goog BACKUP_PLAN_NAME -n PROJECT_NAME
    

    Remplacez les éléments suivants :

    • BACKUP_PLAN_NAME : nom du plan de sauvegarde.
    • PROJECT_NAME : nom du projet.

Étape suivante