本頁面說明如何從 Google Distributed Cloud (GDC) 氣隙環境中的現有備份建立虛擬機器 (VM)。
建立備份後,您可以為該備份建立還原作業,啟動整個 VM 的還原程序。還原的 VM 和相關聯的磁碟會根據您在 GDC 控制台中指定的「New VM instance name」(新的 VM 執行個體名稱) ,或應用程式開發介面 (API) 中的 restoredResourceName
,採用不同的名稱。
還原備份時,系統會還原整個 VM。建立資源後,實際還原應用程式功能時,會受到 VM 作業系統或映像檔的影響。
事前準備
如要從備份建立 VM,您必須具備下列條件:
- 現有備份。詳情請參閱「建立備份計畫」。
必要的身分與存取權角色:
- 專案虛擬機器管理員:管理專案命名空間中的 VM。請專案 IAM 管理員授予您專案 VirtualMachine 管理員 (
project-vm-admin
) 角色。 - 備份建立者:建立手動備份及還原。請專案 IAM 管理員授予您備份建立者 (
backup-creator
) 角色。 - 專案檢視者:具備專案命名空間內所有資源的唯讀存取權。請專案 IAM 管理員授予您專案檢視者 (
project-viewer
) 角色。
- 專案虛擬機器管理員:管理專案命名空間中的 VM。請專案 IAM 管理員授予您專案 VirtualMachine 管理員 (
建立 VM 的還原作業
使用 GDC 控制台或 API 還原 VM 備份。
控制台
- 登入 GDC 控制台。
- 在導覽選單中,按一下「Backup for Virtual Machines」(虛擬機器備份)。
- 選取專案。
- 按一下 [備份] 分頁標籤。
- 在備份清單中找出要還原的備份,然後按一下「還原」。
- 在「New VM instance name」(新的 VM 執行個體名稱) 欄位中,輸入新目標虛擬執行個體的名稱,以便還原備份。
- 選用:在「New VM instance」(新的 VM 執行個體) 說明欄位中輸入說明。
- 輸入還原作業的名稱。
- 按一下「還原」。
API
定義 VirtualMachineRestoreRequest
自訂資源,啟動還原程序。virtualMachineBackup
欄位中參照的備份是指 VirtualMachineBackupRequest
產生的 VirtualMachineBackup
自訂資源。以下是 VirtualMachineRestoreRequest
的範例:
定義 VirtualMachineRestoreRequest
自訂資源,啟動還原程序:
apiVersion: virtualmachine.gdc.goog/v1
kind: VirtualMachineRestoreRequest
metadata:
name: RESTORE_REQUEST_NAME
namespace: PROJECT_NAME
spec:
virtualMachineBackup: VM_BACKUP_NAME
restoreName: RESTORE_NAME
restoredResourceName: RESTORED_RESOURCE_NAME
restoredResourceDescription: RESTORED_RESOURCE_DESCRIPTION
更改下列內容:
VM_BACKUP_NAME
:要從中還原的VirtualMachineBackup
名稱。PROJECT_NAME
:GDC 專案的名稱。RESTORE_REQUEST_NAME
:要為啟動的還原要求指定的名稱。RESTORE_NAME
:要為啟動的還原作業指定的名稱。RESTORED_RESOURCE_NAME
:要為還原的 VM 命名。RESTORED_RESOURCE_DESCRIPTION
:說明執行還原作業的原因。
還原作業完成後,系統會建立新的 VM,其設定和磁碟狀態與備份相同。
查看 VM 還原作業
使用 GDC 控制台查看還原清單:
- 登入 GDC 控制台。
- 在導覽選單中,按一下「Backup for Virtual Machines」(虛擬機器備份)。
- 選取專案。
- 按一下「還原」分頁標籤。
- 按一下清單中的還原作業,即可查看詳細資料。
刪除還原項目
使用 GDC 控制台或 kubectl
刪除還原作業。
控制台
- 登入 GDC 控制台。
- 在導覽選單中,按一下「Backup for Virtual Machines」(虛擬機器備份)。
- 選取專案。
- 按一下「還原」分頁標籤。
- 在還原清單中,找出要刪除的還原作業,然後按一下「刪除還原」。
- 在「Restore name」(還原名稱) 欄位中,輸入要刪除的還原名稱。
- 按一下「刪除」。
kubectl
列出現有還原作業:
kubectl get virtualmachinerestores.virtualmachine.gdc.goog -n PROJECT_NAME
將
PROJECT_NAME
替換為專案名稱。在清單中找出要刪除的還原作業。
刪除還原項目:
kubectl delete virtualmachinerestores.virtualmachine.gdc.goog RESTORE_NAME -n PROJECT_NAME
更改下列內容:
RESTORE_NAME
:還原作業的名稱。PROJECT_NAME
:專案名稱。