本頁面說明如何在 Google Cloud 控制台中,從備份金庫還原 Compute Engine 執行個體。
事前準備
在執行還原作業的目標專案中,為金鑰庫的備份金鑰庫服務代理人授予備份和災難復原 Compute Engine 操作者 (
roles/backupdr.computeEngineOperator
) IAM 角色。如果您使用共用虛擬私有雲,請為 VPC 主專案中的儲存庫備份金庫服務代理程式授予 Compute 網路使用者 (
roles/compute.networkUser
) IAM 角色。請為在備份金庫專案中執行還原作業的使用者,授予下列 IAM 角色。
- 備份金庫和目標專案的備份和災難復原還原使用者 (
roles/backupdr.restoreUser
)。 - Compute 檢視器 (
roles/compute.viewer
) 僅適用於目標。
這些預先定義的角色包含存取 Compute Engine 專案中備份金庫所需的權限。如需特定權限,請參閱下列清單。
backupdr.bvbackups.restore
backupdr.compute.restoreFromBackupVault
backupdr.backupVaults.get
backupdr.backupVaults.list
backupdr.bvbackups.list
backupdr.bvdataSources.get
backupdr.bvdataSources.list
backupdr.bvbackups.get
如要進一步瞭解如何授予角色,請參閱「管理專案、資料夾和機構的存取權」。
- 備份金庫和目標專案的備份和災難復原還原使用者 (
還原 Compute Engine 執行個體
請按照下列操作說明還原 VM 執行個體。
主控台
在 Google Cloud 控制台中,前往「Vault 備份」頁面。
這裡會列出所有含有保險庫備份的 Compute Engine 執行個體。
按一下動作圖示,選取「還原」動作。系統會顯示「Restore page」,您可以選取下列還原選項:
- 選取資源名稱。
- 選取備份建立時間。
- 選取要還原 VM 的專案名稱。
按一下 [繼續]。
- 接下來會顯示「Create a new VM instance from a backup」頁面,其中的 VM 屬性會根據來源 VM 屬性預先填入。您可以修改屬性來建立新的 VM,例如變更「區域」或「機器類型」的選項。
按一下「建立」,即可透過所選備份建立新的 VM。
gcloud
如果尚未授予,請將備份和災難復原 Compute Engine 操作員 (
roles/backupdr.computeEngineOperator
) IAM 角色授予 VM 復原專案中的 backup vault 服務代理。如要取得備份金庫服務帳戶,請使用下列指令。
gcloud backup-dr backup-vaults describe BACKUPVAULT_NAME --location=LOCATION
更改下列內容:
- BACKUPVAULT_NAME:要從中還原資料的備份金鑰庫名稱。
- LOCATION:備份金庫的位置。
如要還原 VM 執行個體,請使用下列指令。
在備份 ID 的工作負載專案中還原 VM。
gcloud backup-dr backups restore compute 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
使用備份完整資源網址,在與工作負載專案相同的專案中還原 VM。
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
還原具有自訂服務帳戶和網路設定的 VM 執行個體。
gcloud backup-dr backups restore compute 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 \ --network-interface=network=NETWORK,subnet=SUBNET \ --service-account=SERVICE_ACCOUNT \ --scopes=SCOPE
更改下列內容:
- PROJECT:備份金庫專案的名稱。
- LOCATION:備份金庫的位置。
- BACKUPVAULT_NAME:要從中還原資料的備份金鑰庫名稱。
- DATA_SOURCE:您要從中還原資料的資料來源名稱。
- NAME:已還原的 VM 名稱。
- TARGET_ZONE:VM 的還原地區。
- TARGET_PROJECT:VM 還原所在的專案。
- NETWORK:VM 的網路 URI。
- SUBNET:VM 的子網路 URI。
- SERVICE_ACCOUNT:已還原 VM 的服務帳戶。
- SCOPE:服務帳戶的授權範圍。
如要覆寫其他 VM 屬性,請參閱「Google Cloud CLI 指令的備份與災難復原服務總覽」。
備份和災難復原 Compute Engine 指南
- 建立及管理保管庫備份的備份方案
- 檢查雲端憑證
- 探索及保護 Compute Engine 執行個體
- 掛載 Compute Engine 永久磁碟的備份映像檔
- 還原 Compute Engine 執行個體
- 匯入 Persistent Disk 快照映像檔