Compute Engine-Instanz aus einem Backup-Vault wiederherstellen

Auf dieser Seite erfahren Sie, wie Sie eine Compute Engine-Instanz aus einem Backup Vault in der Google Cloud -Konsole wiederherstellen. Als Ziel kann entweder eine neue Compute Engine-Instanz oder ein neuer nichtflüchtiger Speicher festgelegt werden. Informationen zum selektiven Wiederherstellen eines einzelnen Laufwerks auf einem neuen nichtflüchtigen Speicher finden Sie unter Selektive Laufwerkswiederherstellung aus einem Compute Engine-Instanz-Backup durchführen.

Erforderliche Rollen

Bitten Sie Ihren Administrator, Ihnen die folgenden IAM-Rollen für das Projekt, das Zielprojekt, den Backup and DR-Dienst-Agent und das VPC-Hostprojekt zuzuweisen, um die Berechtigungen zu erhalten, die Sie zum Wiederherstellen einer Compute Engine-Instanz aus einem Backup Vault benötigen:

Weitere Informationen zum Zuweisen von Rollen finden Sie unter Zugriff auf Projekte, Ordner und Organisationen verwalten.

Diese vordefinierten Rollen enthalten die Berechtigungen, die zum Wiederherstellen einer Compute Engine-Instanz aus einem Backup Vault erforderlich sind. Maximieren Sie den Abschnitt Erforderliche Berechtigungen, um die notwendigen Berechtigungen anzuzeigen:

Erforderliche Berechtigungen

Die folgenden Berechtigungen sind erforderlich, um eine Compute Engine-Instanz aus einem Backup Vault wiederherzustellen:

  • Compute Engine-Instanz wiederherstellen:
    • backupdr.bvbackups.restore
    • backupdr.compute.restoreFromBackupVault
    • backupdr.backupVaults.get
    • backupdr.backupVaults.list
    • backupdr.bvbackups.list
    • backupdr.bvdataSources.get
    • backupdr.bvdataSources.list
    • backupdr.bvbackups.get
  • So stellen Sie eine Compute Engine-Instanz mit der Google Cloud Console wieder her (zusätzliche Berechtigungen):
    • compute.acceleratorTypes.list
    • compute.disks.list
    • compute.machineTypes.list
    • compute.projects.get
    • compute.regions.list
    • compute.zones.list

Sie können diese Berechtigungen auch mit benutzerdefinierten Rollen oder anderen vordefinierten Rollen erhalten.

Compute Engine-Instanz wiederherstellen

Folgen Sie der Anleitung unten, um eine Compute Engine-Instanz wiederherzustellen.

Console

  1. Rufen Sie in der Google Cloud Console die Seite Vaulted Backups auf.

    Zu Vault-Sicherungen

    Hier werden alle Compute Engine-Instanzen mit gesicherten Back-ups aufgeführt.

  2. Klicken Sie auf das Aktionssymbol, um die Aktion Wiederherstellen auszuwählen. Auf der Seite Seite wiederherstellen können Sie die folgenden Wiederherstellungsoptionen auswählen:

    • Wählen Sie einen Ressourcennamen aus.
    • Wählen Sie einen Erstellungszeitpunkt der Sicherung aus.
    • Wählen Sie den Wiederherstellungsbereich aus, entweder die gesamte Compute Engine-Instanz oder ein einzelnes Laufwerk. Informationen zum Wiederherstellen eines einzelnen Laufwerks finden Sie unter Selektive Laufwerkswiederherstellung aus einer Compute Engine-Instanzsicherung durchführen.
    • Wählen Sie den Projektnamen aus, in dem Sie die VM wiederherstellen möchten.
  3. Klicken Sie auf Fortfahren.

    Die Seite Neue Compute Engine-Instanz aus einem Backup erstellen wird angezeigt. Die Eigenschaften der Compute Engine-Instanz sind basierend auf den Eigenschaften der Quell-Compute Engine-Instanz vorausgefüllt. Sie können die Eigenschaften ändern, um eine neue Compute Engine-Instanz zu erstellen, z. B. die Auswahl für Region oder Maschinentyp.

  4. Klicken Sie auf Erstellen, um eine neue VM aus der ausgewählten Sicherung zu erstellen.

gcloud

  1. Rufen Sie das Dienstkonto des Backup Vaults mit dem Befehl gcloud backup-dr backup-vaults describe ab:

    gcloud backup-dr backup-vaults describe BACKUP_VAULT_NAME /
    --location=REGION_NAME
    

    Ersetzen Sie Folgendes:

    • BACKUP_VAULT_NAME: Der Name des Backup Vaults, aus dem Sie Daten wiederherstellen möchten.

    • REGION_NAME: die Region des Backup Vault.

  2. Bevor Sie eine Compute Engine-Instanz wiederherstellen können, müssen Sie mit den folgenden Befehlen die Datenquellen-ID und die ID des erforderlichen Back-ups abrufen:

    1. Suchen Sie mit dem Befehl gcloud backup-dr data-sources list nach der Datenquellen-ID:

      gcloud backup-dr data-sources list \
      --project=PROJECT_NAME \
      --location=REGION_NAME \
      --backup-vault=BACKUP_VAULT_NAME \
      "--filter=dataSourceGcpResource.computeInstanceDatasourceProperties.name:(DATA_SOURCE)" \
      "--format=get(name)"
      
    2. Listen Sie vorhandene Sicherungen für die Datenquelle auf, um mit dem Befehl gcloud backup-dr backups list die richtige BACKUP_ID zu finden:

      gcloud backup-dr backups list \
      --location=REGION_NAME \
      --backup-vault=BACKUP_VAULT_NAME \
      --data-source=DATA_SOURCE \
      "--format=yaml(backupType,computeInstanceBackupProperties.sourceInstance,consistencyTime,enforcedRetentionEndTime,expireTime,name)"
      
  3. Verwenden Sie die folgenden Befehle, um eine Compute Engine-Instanz wiederherzustellen:

    • Stellen Sie eine Compute Engine-Instanz im selben Projekt wie das Arbeitslastprojekt mit der Sicherungs-ID mit dem Befehl gcloud backup-dr backups restore compute wieder her:

      gcloud backup-dr backups restore compute test-backup-id \
      --project=PROJECT_NAME --location=REGION_NAME \
      --backup-vault=BACKUP_VAULT_NAME --data-source=DATA_SOURCE\
      --name=NAME --target-zone=TARGET_ZONE \
      --target-project=TARGET_PROJECT
      
    • Stellen Sie eine Compute Engine-Instanz im selben Projekt wie das Arbeitslastprojekt mit der vollständigen Ressourcen-URL des Back-ups mit dem Befehl gcloud backup-dr backups restore compute projects wieder her:

      gcloud backup-dr backups restore compute projects/test-project-id/locations/us-central1/backupVaults/test-vault/dataSources/test-ds/backups/test-backup-id \
      --name=NAME --target-zone=TARGET_ZONE \
      --target-project=TARGET_PROJECT
      
    • So stellen Sie eine Compute Engine-Instanz mit einem benutzerdefinierten Dienstkonto und einer benutzerdefinierten Netzwerkkonfiguration mit dem Befehl gcloud backup-dr backups restore compute wieder her:

      gcloud backup-dr backups restore compute test-backup-id \
      --project=PROJECT --location=REGION \
      --backup-vault=BACKUPVAULT_NAME --data-source=DATA_SOURCE\
      --name=NAME --target-zone=TARGET_ZONE \
      --target-project=TARGET_PROJECT \
      --network-interface=network=NETWORK,subnet=SUBNET \
      --service-account=SERVICE_ACCOUNT \
      --scopes=SCOPE
      

      Ersetzen Sie Folgendes:

      • PROJECT: der Name des Backup Vault-Projekts.

      • REGION: Der Speicherort des Backup Vaults.

      • BACKUPVAULT_NAME: Der Name des Backup Vaults, aus dem Sie Daten wiederherstellen möchten.

      • DATA_SOURCE: Der Name der Datenquelle, aus der Sie Daten wiederherstellen möchten.

      • NAME: Der Name der wiederhergestellten Compute Engine-Instanz.

      • TARGET_ZONE: die Region, in der die Compute Engine-Instanz wiederhergestellt wird.

      • TARGET_PROJECT: Das Projekt, in dem die Compute Engine-Instanz wiederhergestellt wird.

      • NETWORK: der Netzwerk-URI der Compute Engine-Instanz.

      • SUBNET: der Subnetz-URI der Compute Engine-Instanz.

      • SERVICE_ACCOUNT: Das Dienstkonto der wiederhergestellten Compute Engine-Instanz.

      • SCOPE: der Autorisierungsbereich des Dienstkontos.

    • Stellen Sie eine Compute Engine-Festplatte mit dem Befehl gcloud backup-dr backups restore disk wieder her. Eine detaillierte Anleitung zum Wiederherstellen einer einzelnen Festplatte aus einer Compute Engine-Instanzsicherung finden Sie unter Selektive Festplattenwiederherstellung aus einer Compute Engine-Instanzsicherung durchführen.

      gcloud backup-dr backups restore disk BACKUP_NAME  \
      --name=DISK_NAME \
      --target-project=TARGET_PROJECT_NAME \
      [--source-instance-boot-disk | --source-instance-disk-device-name=DEVICE_NAME] \
      [--target-zone=TARGET_ZONE_NAME | --target-region=TARGET_REGION_NAME --replica-zones=ZONE_NAME] \
      [DISK_OVERRIDE_FLAGS...] \
      [--async]
      

Informationen zum Überschreiben anderer Compute Engine-Instanzeigenschaften finden Sie unter Übersicht über den Backup- und DR-Dienst  – gcloud CLI-Befehle.

Einschränkungen beim Wiederherstellen von selektiven Festplattensicherungen

Wenn Sie eine Compute Engine-Instanz aus einer Sicherung wiederherstellen, die mit der selektiven Laufwerksicherung erstellt wurde, werden nur die Laufwerke wiederhergestellt und an die neue VM-Instanz angehängt, die zum Zeitpunkt der Sicherung geschützt waren. In der Google Cloud Console werden im Zusammenfassungsbereich die geschützten Laufwerke hervorgehoben, die in der Sicherung enthalten sind (z. B. Protected disks: 2 out of 3).

Um Bootfehler beim Wiederherstellen von VMs mit ausgeschlossenen Laufwerken zu vermeiden, konfigurieren Sie die Bootkonfiguration der Quell-VM so, dass fehlende Laufwerke ignoriert werden. Fügen Sie dazu beispielsweise die Mount-Option nofail in /etc/fstab ein. Weitere Informationen zu dieser Compute Engine-Einschränkung finden Sie unter Einschränkungen und Hinweise zur Wiederherstellung nichtflüchtiger Laufwerke.

Sicherung aus einem CMEK-fähigen Backup Vault wiederherstellen

Die Verschlüsselung bei der Wiederherstellung aus einem CMEK-fähigen Backup Vault hängt davon ab, ob Sie die gesamte Compute Engine-Instanz oder ein einzelnes Laufwerk wiederherstellen.

CMEK-Verarbeitung für die Wiederherstellung ganzer Compute Engine-Instanzen

Wenn Sie eine gesamte Compute Engine-Instanz aus einer Sicherung wiederherstellen, die in einem CMEK-fähigen Backup Vault gespeichert ist, ist die Sicherung selbst durch den CMEK des Vaults geschützt. Die Laufwerke in der wiederhergestellten Compute Engine-Instanz behalten standardmäßig ihre ursprünglichen Verschlüsselungseinstellungen bei, entweder von Google verwaltete Verschlüsselungsschlüssel oder die ursprünglichen CMEKs. Die für den Zugriff auf den CMEK des Tresors erforderlichen Berechtigungen werden dem Backup and DR-Dienst-Agent gemäß CMEK-Konzepten gewährt.

CMEK-Verarbeitung für die Wiederherstellung einzelner Laufwerke

Wenn Sie den Wiederherstellungsbereich Einzelne Festplatte auswählen, um eine einzelne Festplatte aus einer Compute Engine-Instanzsicherung wiederherzustellen, tritt das folgende Verhalten auf:

  • Standardverhalten: Für das neue Laufwerk, das aus der Sicherung erstellt wird, wird versucht, denselben Verschlüsselungsschlüssel wie das Quelllaufwerk der ursprünglichen Compute Engine-Instanz zu verwenden.

    • Wenn das Quelllaufwerk von Google verwaltete Verschlüsselung verwendet hat, wird auch das wiederhergestellte Laufwerk mit von Google verwalteter Verschlüsselung verschlüsselt.

    • Wenn für das Quelllaufwerk ein bestimmter CMEK verwendet wurde, wird für das wiederhergestellte Laufwerk versucht, denselben CMEK zu verwenden.

  • Nicht verfügbare Schlüssel: Wenn der ursprüngliche CMEK, der vom Quelldatenträger verwendet wird, im Zielprojekt oder in der Zielregion nicht zugänglich ist, z. B. aufgrund des Löschens von Schlüsseln, von Berechtigungsänderungen oder einer regionsübergreifenden Wiederherstellung, schlägt der Wiederherstellungsvorgang fehl, sofern Sie die Verschlüsselungseinstellungen nicht überschreiben.

  • Verschlüsselungseinstellungen überschreiben:Sie können die Verschlüsselungseinstellungen für das wiederhergestellte Laufwerk während der Wiederherstellung anhand der folgenden Anleitung ändern:

    Console

    • Im Abschnitt Target Disk Properties des Wiederherstellungsassistenten können Sie die Encryption-Einstellungen mit einer der folgenden Optionen ändern:

      • Wählen Sie einen anderen kundenverwalteten Verschlüsselungsschlüssel (CMEK) aus.

      • Zu von Google verwalteter Verschlüsselung wechseln

    gcloud

    • Wenn Sie den Befehl gcloud backup-dr backups restore disk mit dem Flag --source-instance-boot-disk oder --source-instance-disk-device-name verwenden:

      • Wenn Sie einen anderen CMEK für das wiederhergestellte Laufwerk angeben möchten, verwenden Sie das Flag --kms-key:
      --kms-key=projects/MY-KEY-PROJECT/locations/us-central1/keyRings/MY-RING/cryptoKeys/MY-NEW-KEY
      
      • Wenn Sie erzwingen möchten, dass das wiederhergestellte Laufwerk die von Google verwaltete Verschlüsselung verwendet, verwenden Sie das Flag --clear-encryption-key.
  • Berechtigungen für CMEK-Überschreibungen:

    • Wenn Sie die Verschlüsselung überschreiben, um einen neuen oder anderen CMEK zu verwenden, müssen Sie dafür sorgen, dass der Compute Engine-Dienst-Agent des Zielprojekts die Rolle Cloud KMS CryptoKey Encrypter/Decrypter (roles/cloudkms.cryptoKeyEncrypterDecrypter) für den angegebenen KMS-Schlüssel hat. Das Dienst-Agent-Konto hat das Format service-TARGET_PROJECT_NUMBER@compute-system.iam.gserviceaccount.com.

    • Diese Berechtigung ist erforderlich, damit Compute Engine das neue Laufwerk mit dem ausgewählten Schlüssel verschlüsseln kann.

Weitere Informationen zu Vorgängen zum Wiederherstellen von Datenträgern und zur Verwendung von Flags finden Sie unter Persistent Disk aus einem Backup Vault wiederherstellen.

Sicherung aus einem CMEK-fähigen Backup Vault wiederherstellen

Wenn Sie eine Sicherung aus einem CMEK-fähigen Backup Vault wiederherstellen, hängt die Verschlüsselung der wiederhergestellten Ressource von der Verschlüsselung der Quelle ab:

  • Wenn die Quellressource durch CMEK geschützt war:Die wiederhergestellte Ressource verwendet standardmäßig denselben CMEK-Schlüssel wie die Quelle. Beispiel:
    • Ein nichtflüchtiger Speicher von Compute Engine, der mit dem Schlüssel K1 verschlüsselt ist, wird auf einem Laufwerk wiederhergestellt, das mit K1 verschlüsselt ist.
    • Wenn eine VM mehrere Laufwerke hat, erbt jedes Laufwerk in der wiederhergestellten VM die Verschlüsselung des entsprechenden Quelllaufwerks. CMEK-verschlüsselte Laufwerke bleiben mit ihren ursprünglichen Schlüsseln verschlüsselt und von Google verwaltete verschlüsselte Laufwerke bleiben von Google verwaltet.
  • Wenn für die Quellressource die von Google verwaltete Verschlüsselung verwendet wurde:Für die wiederhergestellte Ressource wird standardmäßig die von Google verwaltete Verschlüsselung verwendet.

Sie können dieses Standardverhalten überschreiben, wenn Sie Compute Engine-Instanzen oder persistente Compute Engine-Festplatten mit der API oder der gcloud CLI wiederherstellen. Sie können beispielsweise eine Sicherung einer CMEK-geschützten Ressource in einer neuen Ressource wiederherstellen, die von Google verwaltete Verschlüsselung verwendet oder durch einen anderen CMEK-Schlüssel geschützt ist. Wenn Sie eine Ressource wiederherstellen möchten, die durch einen neuen CMEK-Schlüssel geschützt ist, muss der entsprechende Dienst-Agent (z.B. der Compute Engine-Dienst-Agent) für das Zielprojekt die Berechtigung roles/cloudkms.cryptoKeyEncrypterDecrypter für den neuen Zielschlüssel haben.

Regionsübergreifende Wiederherstellung mit CMEK durchführen

Da Cloud Key Management Service-Schlüssel regional sind, schlägt der Wiederherstellungsvorgang fehl, wenn Sie das Standardverhalten verwenden, wenn Sie eine regionenübergreifende Wiederherstellung durchführen (z. B. eine Instanz von asia-south1 nach asia-south2 wiederherstellen). Die Laufwerke der wiederhergestellten VM können nicht mit dem KMS-Schlüssel der Quellregion verschlüsselt werden.

Dies ist eine aktuelle Einschränkung in der Google Cloud Console. Wenn Sie eine CMEK-geschützte VM regionsübergreifend wiederherstellen möchten, müssen Sie die gcloud CLI, die API oder Terraform verwenden, um die Verschlüsselungseinstellungen zu überschreiben und einen neuen KMS-Schlüssel in der Zielregion anzugeben.

So stellen Sie eine Ressource wieder her, die durch einen neuen CMEK-Schlüssel geschützt ist:

  1. Schlüssel in der Zielregion erstellen:Erstellen Sie einen Cloud Key Management Service-Schlüssel in der Region, in der Sie die VM wiederherstellen (entweder im Zielprojekt oder in einem gemeinsam genutzten KMS-Projekt), falls Sie noch keinen haben.
  2. KMS-Berechtigungen erteilen:Erteilen Sie dem Compute Engine-Dienst-Agenten des Zielprojekts, in dem die VM wiederhergestellt wird, die Rolle Cloud KMS CryptoKey Encrypter/Decrypter (roles/cloudkms.cryptoKeyEncrypterDecrypter) für diesen Zielschlüssel.

  3. Wiederherstellung durchführen:Führen Sie die Wiederherstellung mit einer der folgenden Methoden aus und überschreiben Sie den KMS-Schlüssel für jedes Laufwerk:

gcloud

  1. Sicherungsdetails abrufen:Rufen Sie den Namen der Sicherung und die Gerätenamen der Festplatten aus der Sicherung mit dem Befehl gcloud backup-dr backups list ab:

    gcloud backup-dr backups list \
      --project=PROJECT_ID \
      --location=SOURCE_REGION \
      --backup-vault=BACKUP_VAULT_NAME \
      --filter="computeInstanceBackupProperties.sourceInstance~SOURCE_INSTANCE_NAME"
    

    Ersetzen Sie Folgendes:

    • PROJECT_ID: der Name des Projekts, in dem sich der Backup Vault befindet.
    • SOURCE_REGION: Der Speicherort des Backup Vaults.
    • BACKUP_VAULT_NAME: der Name des Backup Vaults, aus dem Sie Daten wiederherstellen möchten.
    • SOURCE_INSTANCE_NAME: der Name der Compute Engine-Quellinstanz.
  2. Wiederherstellungsbefehl ausführen:Führen Sie den Wiederherstellungsbefehl aus und überschreiben Sie den KMS-Schlüssel für jedes Laufwerk mit dem Parameter --create-disk.

    1. VM mit einem einzelnen Laufwerk wiederherstellen:

      gcloud backup-dr backups restore compute BACKUP_ID \
        --project=PROJECT_ID \
        --location=SOURCE_REGION \
        --backup-vault=BACKUP_VAULT_NAME \
        --data-source=DATA_SOURCE \
        --name=RESTORED_VM_NAME \
        --target-zone=TARGET_ZONE \
        --target-project=TARGET_PROJECT_ID \
        --create-disk=device-name=DEVICE_NAME,kms-key=projects/KMS_PROJECT_ID/locations/TARGET_REGION/keyRings/KEYRING/cryptoKeys/KEY_NAME
      

      Ersetzen Sie Folgendes:

      • BACKUP_ID: Die ID der Sicherung, die Sie wiederherstellen möchten.
      • PROJECT_ID: der Name des Projekts, in dem sich der Backup Vault befindet.
      • SOURCE_REGION: Der Speicherort des Backup Vaults.
      • BACKUP_VAULT_NAME: der Name des Backup Vaults, aus dem Sie Daten wiederherstellen möchten.
      • DATA_SOURCE: Die ID der Datenquelle, aus der Sie Daten wiederherstellen möchten.
      • RESTORED_VM_NAME: der Name der wiederhergestellten VM.
      • TARGET_ZONE: die Zone, in der die VM wiederhergestellt wird.
      • TARGET_PROJECT_ID: das Projekt, in dem die VM wiederhergestellt wird.
      • DEVICE_NAME: der Gerätename des Laufwerks.
      • KMS_PROJECT_ID: die ID des Projekts, in dem sich der Cloud Key Management Service-Schlüssel befindet.
      • TARGET_REGION: Die Region, in der sich der Cloud Key Management Service-Schlüssel befindet.
      • KEYRING: der Name des Cloud Key Management Service-Schlüsselbunds.
      • KEY_NAME: Der Name des Cloud Key Management Service-Schlüssels für Laufwerk 1.
    2. VM mit mehreren Laufwerken wiederherstellen:Geben Sie für jedes Laufwerk ein separates --create-disk-Flag an:

      gcloud backup-dr backups restore compute BACKUP_ID \
        --project=PROJECT_ID \
        --location=SOURCE_REGION \
        --backup-vault=BACKUP_VAULT_NAME \
        --data-source=DATA_SOURCE \
        --name=RESTORED_VM_NAME \
        --target-zone=TARGET_ZONE \
        --target-project=TARGET_PROJECT_ID \
        --create-disk=device-name=DEVICE_NAME_1,kms-key=projects/KMS_PROJECT_ID/locations/TARGET_REGION/keyRings/KEYRING/cryptoKeys/KEY_NAME_1 \
        --create-disk=device-name=DEVICE_NAME_2,kms-key=projects/KMS_PROJECT_ID/locations/TARGET_REGION/keyRings/KEYRING/cryptoKeys/KEY_NAME_2
      

      Ersetzen Sie Folgendes:

      • BACKUP_ID: Die ID der Sicherung, die Sie wiederherstellen möchten.
      • PROJECT_ID: der Name des Projekts, in dem sich der Backup Vault befindet.
      • SOURCE_REGION: Der Speicherort des Backup Vaults.
      • BACKUP_VAULT_NAME: der Name des Backup Vaults, aus dem Sie Daten wiederherstellen möchten.
      • DATA_SOURCE: Die ID der Datenquelle, aus der Sie Daten wiederherstellen möchten.
      • RESTORED_VM_NAME: der Name der wiederhergestellten VM.
      • TARGET_ZONE: die Zone, in der die VM wiederhergestellt wird.
      • TARGET_PROJECT_ID: das Projekt, in dem die VM wiederhergestellt wird.
      • DEVICE_NAME_1: der Gerätename von Laufwerk 1.
      • KMS_PROJECT_ID: die ID des Projekts, in dem sich der Cloud Key Management Service-Schlüssel befindet.
      • TARGET_REGION: Die Region, in der sich der Cloud Key Management Service-Schlüssel befindet.
      • KEYRING: der Name des Cloud Key Management Service-Schlüsselbunds.
      • KEY_NAME_1: Der Name des Cloud Key Management Service-Schlüssels für Laufwerk 1.
      • DEVICE_NAME_2: der Gerätename von Laufwerk 2.
      • KEY_NAME_2: Der Name des Cloud Key Management Service-Schlüssels für Laufwerk 2.

API

  1. Sicherungsdetails abrufen:Rufen Sie den Namen der Sicherung und die Gerätenamen der Festplatten ab, indem Sie eine GET-Anfrage zum Auflisten von Sicherungen senden:

    GET https://backupdr.googleapis.com/v1/projects/PROJECT_ID/locations/SOURCE_REGION/backupVaults/BACKUP_VAULT_NAME/dataSources/DATA_SOURCE/backups
    
  2. Wiederherstellungs-API ausführen:Senden Sie eine POST-Anfrage an den restore-URI der Sicherung.

    1. VM mit einem einzelnen Laufwerk wiederherstellen:

      POST https://backupdr.googleapis.com/v1/projects/PROJECT_ID/locations/SOURCE_REGION/backupVaults/BACKUP_VAULT_NAME/dataSources/DATA_SOURCE/backups/BACKUP_ID:restore
      

      Nutzlast:

      {
        "computeInstanceTargetEnvironment": {
          "project": "TARGET_PROJECT_ID",
          "zone": "TARGET_ZONE"
        },
        "computeInstanceRestoreProperties": {
          "name": "RESTORED_VM_NAME",
          "machineType": "projects/TARGET_PROJECT_ID/zones/TARGET_ZONE/machineTypes/e2-medium",
          "disks": [
            {
              "deviceName": "DEVICE_NAME",
              "diskEncryptionKey": {
              "kmsKeyName": "projects/KMS_PROJECT_ID/locations/TARGET_REGION/keyRings/KEYRING/cryptoKeys/KEY_NAME"
              }
            }
          ]
        }
      }
      
    2. VM mit mehreren Laufwerken wiederherstellen:

      POST https://backupdr.googleapis.com/v1/projects/PROJECT_ID/locations/SOURCE_REGION/backupVaults/BACKUP_VAULT_NAME/dataSources/DATA_SOURCE/backups/BACKUP_ID:restore
      

      Nutzlast:

      {
        "computeInstanceTargetEnvironment": {
          "project": "TARGET_PROJECT_ID",
          "zone": "TARGET_ZONE"
        },
        "computeInstanceRestoreProperties": {
          "name": "RESTORED_VM_NAME",
          "machineType": "projects/TARGET_PROJECT_ID/zones/TARGET_ZONE/machineTypes/e2-medium",
          "disks": [
            {
              "deviceName": "DEVICE_NAME_1",
              "diskEncryptionKey": {
                "kmsKeyName": "projects/KMS_PROJECT_ID/locations/TARGET_REGION/keyRings/KEYRING/cryptoKeys/KEY_NAME_1"
              }
            },
            {
              "deviceName": "DEVICE_NAME_2",
              "diskEncryptionKey": {
                "kmsKeyName": "projects/KMS_PROJECT_ID/locations/TARGET_REGION/keyRings/KEYRING/cryptoKeys/KEY_NAME_2"
              }
            }
          ]
        }
      }
      

Terraform

google_backup_dr_restore_workload-Ressource verwenden

  1. VM mit einem einzelnen Laufwerk wiederherstellen:

    resource "google_backup_dr_restore_workload" "restore_single" {
      location         = "SOURCE_REGION"
      backup_vault_id  = "BACKUP_VAULT_NAME"
      data_source_id   = "DATA_SOURCE"
      backup_id        = "BACKUP_ID"
    
      compute_instance_target_environment {
        project = "TARGET_PROJECT_ID"
        zone = "TARGET_ZONE"
      }
    
      compute_instance_restore_properties {
        name = "RESTORED_VM_NAME"
        machine_type = "zones/TARGET_ZONE/machineTypes/e2-medium"
        disks {
          device_name = "DEVICE_NAME"
          disk_encryption_key {
            kms_key_name = "projects/KMS_PROJECT_ID/locations/TARGET_REGION/keyRings/KEYRING/cryptoKeys/KEY_NAME"
          }
        }
      }
    }
    
  2. VM mit mehreren Laufwerken wiederherstellen:

    resource "google_backup_dr_restore_workload" "restore_multi" {
      location         = "SOURCE_REGION"
      backup_vault_id  = "BACKUP_VAULT_NAME"
      data_source_id   = "DATA_SOURCE"
      backup_id        = "BACKUP_ID"
    
      compute_instance_target_environment {
        project = "TARGET_PROJECT_ID"
        zone = "TARGET_ZONE"
      }
    
      compute_instance_restore_properties {
        name = "RESTORED_VM_NAME"
        machine_type = "zones/TARGET_ZONE/machineTypes/TARGET_MACHINETYPE"
        disks {
          device_name = "DEVICE_NAME_1"
          disk_encryption_key {
            kms_key_name = "projects/KMS_PROJECT_ID/locations/TARGET_REGION/keyRings/KEYRING/cryptoKeys/KEY_NAME_1"
          }
        }
    
        disks {
          device_name = "DEVICE_NAME_2"
          disk_encryption_key {
            kms_key_name = "projects/KMS_PROJECT_ID/locations/TARGET_REGION/keyRings/KEYRING/cryptoKeys/KEY_NAME_2"
          }
        }
      }
    }
    

Wenn der Cloud Key Management Service-Schlüssel, mit dem die Quellarbeitslast geschützt wird, während eines Wiederherstellungsvorgangs nicht verfügbar ist, schlägt die Wiederherstellung standardmäßig fehl. In diesem Fall müssen Sie die Verschlüsselungseinstellung mit der API oder der gcloud CLI überschreiben, indem Sie einen neuen CMEK-Schlüssel angeben oder den Verschlüsselungstyp für die wiederhergestellte Ressource in die von Google verwaltete Verschlüsselung ändern.

Wenn die Cloud Key Management Service-Schlüsselversion, die zum Verschlüsseln von Daten im Sicherungstresor verwendet wird, deaktiviert oder gelöscht wird, können Sie die Sicherung nicht wiederherstellen.

Leitfaden für Backup und DR Compute Engine

Nächste Schritte