Créer une restauration ultraprécise

Cette page explique comment créer des restaurations précises qui utilisent des filtres pour cibler des ressources spécifiques dans les sauvegardes de VM et de disques de VM. Vous pouvez créer une restauration pour une sauvegarde créée manuellement ou automatiquement par un plan de sauvegarde. Le nom des VM restaurées et de leurs disques associés est précédé de la valeur du champ restoredResourceName.

La restauration de VM permet de sélectionner précisément les ressources à l'aide de filtres. Utilisez un filtre pour restaurer un sous-ensemble de ressources à partir de la ressource VirtualMachineBackup précédemment créée. Ce filtre est un champ facultatif. Si le filtre n'est pas fourni, l'ensemble complet des ressources de la ressource VirtualMachineBackup est restauré.

Avant de commencer

Pour créer une restauration, vous devez disposer des éléments suivants :

Créer une restauration ultraprécise

Pour créer une restauration précise pour une sauvegarde créée précédemment, procédez comme suit :

  1. Obtenez la liste des VM et des disques de VM qui ont été sauvegardés dans votre ressource VirtualMachineBackup cible :

    1. Obtenez la liste des VM :

      kubectl get VirtualMachineBackup VM_BACKUP_NAME -n
      VM_BACKUP_NAMESPACE -o jsonpath=
      "{.status.backedUpVirtualMachines}{'\n'}"
      

      Remplacez les éléments suivants :

      • VM_BACKUP_NAME : nom de la sauvegarde contenant les ressources de VM que vous souhaitez restaurer.
      • VM_BACKUP_NAMESPACE : espace de noms contenant la sauvegarde.
    2. Obtenez la liste des disques de la VM :

    kubectl get VirtualMachineBackup VM_BACKUP_NAME -n
    VM_BACKUP_NAMESPACE -o
    jsonpath="{.status.backedUpVirtualMachineDisks}{'\n'}"
    
  2. Utilisez les valeurs de cette liste pour spécifier la cible de votre restauration précise. Créez l'une des restaurations ultraprécises suivantes :

Restaurer des VM spécifiques

  • Utilisez le filtre targetedVirtualMachines pour cibler une liste de VM avec cette restauration. Cette option restaure les VM fournies et les disques associés. Créez et appliquez une ressource VirtualMachineRestoreRequest, puis fournissez la liste des VM à restaurer dans le champ targetedVirtualMachines :

    apiVersion: virtualmachine.gdc.goog/v1
    kind: VirtualMachineRestoreRequest
    metadata:
      name: RESTORE_REQUEST_NAME
      namespace: PROJECT_NAME
    spec:
      virtualMachineBackup: VM_BACKUP_NAME
      restoreName: RESTORE_NAME
      restoredResourceName: RESTORE_PREFIX
      restoredResourceDescription: RESTORED_RESOURCE_DESCRIPTION
    filter:
        targetedVirtualMachines:
        - resourceName: VM_NAME
    

    Remplacez les éléments suivants :

    • VM_BACKUP_NAME : nom de la ressource VirtualMachineBackup à partir de laquelle effectuer la restauration.
    • PROJECT_NAME : nom du projet GDC.
    • RESTORE_REQUEST_NAME : nom à attribuer à la requête de restauration en cours d'initialisation.
    • RESTORE_NAME : nom à attribuer à la restauration en cours d'initialisation.
    • RESTORE_PREFIX : préfixe attribué aux ressources de VM nouvellement créées. Les noms de la VM et du disque de VM restaurés sont précédés de la valeur restoredResourceName dans la demande de restauration.
    • RESTORED_RESOURCE_DESCRIPTION : description de la restauration en cours.
    • VM_NAME : liste des VM restaurées par cette ressource VirtualMachineRestoreRequest. Si plusieurs VM sont spécifiées, la liste doit être au format suivant :

        targetedVirtualMachines:
            - resourceName: "virtual-machine"
            - resourceName: "virtual-machine-2"
            ...
            - resourceName: "virtual-machine-n"
        ```
      

Restaurer des disques de VM spécifiques

  • Utilisez le filtre targetedVirtualMachineDisks pour cibler un ensemble de disques de VM à restaurer. Cette option restaure tous les disques sauvegardés. Ils ne doivent pas nécessairement être associés à la même VM. Cette option ne restaure que les disques, et non les VM auxquelles ils étaient associés. Créez et appliquez une ressource VirtualMachineRestoreRequest, puis fournissez la liste des disques de VM à restaurer dans le champ targetedVirtualMachineDisks :

    apiVersion: virtualmachine.gdc.goog/v1
    kind: VirtualMachineRestoreRequest
    metadata:
      name: RESTORE_REQUEST_NAME
      namespace: PROJECT_NAME
    spec:
      virtualMachineBackup: VM_BACKUP_NAME
      restoreName: RESTORE_NAME
      restoredResourceName: RESTORE_PREFIX
      restoredResourceDescription: RESTORED_RESOURCE_DESCRIPTION
      filter:
        targetedVirtualMachineDisks:
        - VM_DISK_NAME
    

    Remplacez VM_DISK_NAME par la liste des disques de VM restaurés par cette ressource VirtualMachineRestoreRequest. Si plusieurs disques de VM sont spécifiés, la liste doit être au format suivant :

    targetedVirtualMachineDisks:
        - resourceName: "disk-1"
        - resourceName: "disk-2"
        ...
        - resourceName: "disk-n"
    

Restaurer des VM et des disques de VM spécifiques

  • Pour cibler une combinaison de VM et de disques de VM, utilisez les filtres targetedVirtualMachines et targetedVirtualMachineDisks ensemble. Cette méthode restaure les VM spécifiées dans le filtre targetedVirtualMachines avec leurs disques associés, ainsi que les disques de VM mentionnés dans le filtre targetedVirtualMachineDisks. Si le disque est déjà associé à la VM spécifiée dans la liste targetedVirtualMachineDisks. Dans le filtre targetedVirtualMachineDisks, spécifiez uniquement les disques qui ne sont pas déjà inclus dans targetedVirtualMachines.

    apiVersion: virtualmachine.gdc.goog/v1
    kind: VirtualMachineRestoreRequest
    metadata:
      name: RESTORE_REQUEST_NAME
      namespace: PROJECT_NAME
    spec:
      virtualMachineBackup: VM_BACKUP_NAME
      restoreName: RESTORE_NAME
      restoredResourceName: RESTORE_PREFIX
      restoredResourceDescription: RESTORED_RESOURCE_DESCRIPTION
      filter:
        targetedVirtualMachines:
        - resourceName: VM_NAME
        targetedVirtualMachineDisks:
        - resourceName: VM_DISK_NAME
    

    Remplacez les éléments suivants :

    • VM_NAME : liste des VM restaurées par cette ressource VirtualMachineRestoreRequest. Si plusieurs VM sont spécifiées, la liste doit être au format suivant :

            targetedVirtualMachines:
                - resourceName: "virtual-machine"
                - resourceName: "virtual-machine-2"
                ...
                - resourceName: "virtual-machine-n"
        ```
      
    • VM_DISK_NAME : liste des disques de VM restaurés par cette ressource VirtualMachineRestoreRequest. Si plusieurs disques de VM sont spécifiés, la liste doit être au format suivant :

      targetedVirtualMachineDisks:
          - resourceName: "disk-1"
          - resourceName: "disk-2"
          ...
          - resourceName: "disk-n"
      

Restaurer tous les disques de VM

  • Définissez la valeur du filtre virtualMachineDiskOptions.allDisks sur "true" pour restaurer tous les disques qui étaient protégés dans VirtualMachineBackup. Cette action ne restaure pas les VM auxquelles les disques étaient associés :

    apiVersion: virtualmachine.gdc.goog/v1
    kind: VirtualMachineRestoreRequest
    metadata:
      name: RESTORE_REQUEST_NAME
      namespace: PROJECT_NAME
    spec:
      virtualMachineBackup: VM_BACKUP_NAME
      restoreName: RESTORE_NAME
      restoredResourceName: RESTORE_PREFIX
      restoredResourceDescription: RESTORED_RESOURCE_DESCRIPTION
      filter:
        virtualMachineDiskOptions:
            allDisks: true
    

Étapes suivantes