从备份保险库恢复磁盘

本页面可帮助您在 Google Cloud 控制台中从备份保险库恢复磁盘。

准备工作

  • 为执行恢复操作的目标项目中的保险库的备份保险柜服务代理授予 Backup and DR Disk Operator (roles/backupdr.diskOperator) IAM 角色。

  • 如果您要恢复使用客户管理的加密密钥 (CMEK) 加密的磁盘,或者要恢复将使用 CMEK 加密的磁盘,请向目标项目的 Compute Engine 服务账号 (service-<var>TARGET_PROJECT_NUMBER</var>@compute-system.iam.gserviceaccount.com) 授予 Cloud Key Management Service CryptoKey Encrypter/Decrypter 角色 (roles/cloudkms.cryptoKeyEncrypterDecrypter)。必须针对将用于加密恢复的磁盘的 KMS 密钥授予此权限。默认情况下,恢复的磁盘使用与源磁盘相同的 KMS 密钥,但您可以在恢复期间替换此设置并指定其他密钥。

    如需详细了解 CMEK 权限,请参阅客户管理的加密密钥 (CMEK){

  • 为在备份保险库项目中执行恢复操作的用户授予以下 IAM 角色。

    • 备份保险柜和目标项目的 Backup and DR Restore User (roles/backupdr.restoreUser)。
    • 仅针对目标资源的 Compute Viewer (roles/compute.viewer)。

    这些预定义角色包含访问磁盘所在项目的备份保险库所需的权限。如需了解特定权限,请参阅以下列表。

    • backupdr.bvbackups.restore
    • backupdr.disk.restoreFromBackupVault
    • backupdr.backupVaults.get
    • backupdr.backupVaults.list
    • backupdr.bvbackups.list
    • backupdr.bvdataSources.get
    • backupdr.bvdataSources.list
    • backupdr.bvbackups.get

    如需详细了解如何授予角色,请参阅管理对项目、文件夹和组织的访问权限

恢复磁盘

请按照以下说明恢复 Compute Engine 实例使用的磁盘。

如需详细了解 CMEK 权限,请参阅客户管理的加密密钥 (CMEK){

控制台

  1. 在 Google Cloud 控制台中,前往已归档的备份页面。

    前往“受保管的备份”页面

    此处列出了所有具有保险库备份的 Compute Engine 实例。在资源类型列中,磁盘标记为磁盘

  2. 选择要恢复的备份。从备份的备份详情页面或磁盘的 菜单中:

    1. 选择磁盘资源类型
    2. 选择资源名称
    3. 浏览以选择要恢复的备份。
    4. 恢复项目名称会预先填充当前项目,但如果您想恢复到其他位置,可以浏览到其他项目。
    5. 点击恢复。您可以通过通知铃查看和监控恢复作业。
    6. 恢复的磁盘会显示在 Compute Engine 的存储 > 磁盘列表中,其原始名称后跟时间和日期戳。

gcloud

  1. 如果尚未授予,请向要恢复的磁盘授予 Backup and DR Disk Operator (roles/backupdr.DiskOperator) IAM 角色。

  2. 如需获取备份保险库服务账号,请使用以下命令。

      gcloud backup-dr backup-vaults describe BACKUPVAULT_NAME
      --location=LOCATION
    

    替换以下内容:

    • BACKUPVAULT_NAME:您要从中恢复数据的备份保险柜名称。
    • LOCATION:备份保险柜的位置。
  3. 如需恢复磁盘,请使用以下命令。

    • 恢复与工作负载项目位于同一项目中的磁盘,并指定备份 ID。

        gcloud backup-dr backups restore disk test-backup-id \
        --project=PROJECT \
        --location=LOCATION \
        --backup-vault=BACKUPVAULT_NAME \
        --data-source=DATA_SOURCE\
        --name=NAME \
        --target-zone=TARGET_ZONE \
        --target-project=TARGET_PROJECT
      
    • 使用备份完整资源网址恢复与工作负载项目位于同一项目中的磁盘。

        gcloud backup-dr backups restore disk 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
      

      替换以下内容:

      • PROJECT:备份保险柜项目的名称。
      • LOCATION:备份保险柜的位置。
      • BACKUPVAULT_NAME:您要从中恢复数据的备份保险柜名称。
      • DATA_SOURCE:您要从中恢复数据的数据源名称。
      • NAME:已恢复的磁盘的名称。
      • TARGET_ZONE:磁盘恢复到的区域。
      • TARGET_PROJECT:磁盘恢复到的项目。