建立排程備份方案

本文說明如何建立排程備份計畫,在 Google Distributed Cloud (GDC) 實體隔離環境中,依據定義的排程備份虛擬機器 (VM) 工作負載。

備份方案會提供備份的設定和位置。備份方案包含備份設定,包括來源 VM 和要備份的 VM 選項。備份方案會定義 VM 備份的定期排程。每個以 VM 為基礎的備份方案都會參照目標 VM 或 VM 磁碟資源,並使用 ProtectedApplication 資源中定義的標籤選取器進行備份。

本文適用於平台管理員或應用程式運算子群組的開發人員,這些人員負責管理 VM 備份作業。詳情請參閱 GDC 氣隙環境適用的目標對象說明文件

事前準備

如要建立 VM 備份方案,您必須具備下列條件:

要求 IAM 權限

如要管理 VM 備份資源的生命週期,包括在使用者叢集中建立、查看及刪除備份和還原方案,請要求機構 IAM 管理員授予您機構備份管理員 (organization-backup-admin) 角色。這個角色可讓您設定及執行 VM 資料保護策略。

為 VM 建立備份方案範本

如要規劃備份作業,請建立 VirtualMachineBackupPlanTemplate 自訂資源。以下是 VirtualMachineBackupPlanTemplate 的範例:

   apiVersion: virtualmachine.gdc.goog/v1
   kind: VirtualMachineBackupPlanTemplate
   metadata:
     name: BACKUP_TEMPLATE_NAME
     namespace: PROJECT_NAME
   spec:
     backupRepository: "BACKUP_REPOSITORY_NAME"

更改下列內容:

  • BACKUP_TEMPLATE_NAME:備份計畫範本的名稱。
  • PROJECT_NAME:要在其中建立範本的專案名稱。

  • BACKUP_REPOSITORY_NAME:在上一個章節中建立的存放區名稱。

為 VM 建立定義的備份方案

如要依指定範圍,在定義的排程中建立 VM 備份,您必須使用 API 建立 VirtualMachineBackupPlan 資源。這個資源會指定 VM 備份的範圍,以及定義備份建立頻率的 cron 排程。

您可以透過兩種方式設定 VM 備份方案的範圍:

  • 使用清單:以清單形式指定要備份的虛擬機器或虛擬機器磁碟。備份目標會列在 selectedVirtualMachinesselectedVirtualMachineDisks 欄位中。
  • 使用標籤:提供標籤,選取包含該標籤值的所有虛擬機器或虛擬機器磁碟。任何相符的 VM 都會透過這項備份方案備份。

使用清單建立 VM 備份方案

如要使用清單方法建立 VM 備份方案,請在 selectedVirtualMachinesselectedVirtualMachineDisks 欄位中指定備份目標:

apiVersion: virtualmachine.gdc.goog/v1
kind: VirtualMachineBackupPlan
metadata:
    name: BACKUP_PLAN_NAME
    namespace: BACKUP_PLAN_NAMESPACE
spec:
    virtualMachineBackupPlanTemplate: BACKUP_TEMPLATE_NAME
    backupConfig:
        backupScope:
            selectedVirtualMachines:
                - resourceName: VM_NAME
            selectedVirtualMachineDisks:
                - resourceName: VM_DISK_NAME
        volumeStrategy: VOLUME_STRATEGY
    backupSchedule:
        cronSchedule: CRON_SCHEDULE
        paused: false

更改下列內容:

  • BACKUP_PLAN_NAME:備份方案名稱。
  • BACKUP_PLAN_NAMESPACE:包含備份計畫的命名空間。
  • BACKUP_TEMPLATE_NAME:虛擬機器備份計畫範本,指向在「建立 VM 備份計畫範本」中建立的相關備份存放區。
  • VM_NAME:在 selectedVirtualMachines 欄位中,以清單形式指定 VM 名稱。這份 VM 清單會由這個虛擬機器備份方案備份。如果指定多部 VM,清單格式必須如下:

    selectedVirtualMachines:
        - resourceName: "virtualmachine"
        - resourceName: "virtualmachine-2"
        ...
        - resourceName: "virtualmachine-n"
    
  • VM_DISK_NAME:這個虛擬機器備份方案要備份的 VM 磁碟。如果指定多個 VM 磁碟,清單必須採用下列格式:

    selectedVirtualMachineDisks:
        - resourceName: "disk-1"
        - resourceName: "disk-2"
        ...
        - resourceName: "disk-n"
    
  • VOLUME_STRATEGY:要執行的磁碟區備份類型。您必須使用下列其中一個值:

    • ProvisionerSpecific:利用基礎儲存空間佈建工具的備份和還原功能。如果 includeVolumeDatatrue,請使用這個選項。
    • LocalSnapshotOnly:只在本地儲存系統本身建立磁碟區的時間點副本。
  • CRON_SCHEDULE:定義所選備份時間表的 Cron 運算式。舉例來說,如果 cron 值為 0 */12 * * *,系統每 12 小時就會建立一次備份。

使用標籤建立 VM 備份方案

如要使用標籤方法建立 VM 備份方案,請在 vmResourceLabelSelector 欄位中指定與要備份的目標 VM 相符的標籤:

apiVersion: virtualmachine.gdc.goog/v1
kind: VirtualMachineBackupPlan
metadata:
    name: BACKUP_PLAN_NAME
    namespace: BACKUP_PLAN_NAMESPACE
spec:
    virtualMachineBackupPlanTemplate: BACKUP_TEMPLATE_NAME
    backupConfig:
        backupScope:
            vmResourceLabelSelector:
                KEY: VALUE
        volumeStrategy: VOLUME_STRATEGY
    backupSchedule:
        cronSchedule: CRON_SCHEDULE
        paused: false

更改下列內容:

  • BACKUP_PLAN_NAME:備份方案名稱。
  • BACKUP_PLAN_NAMESPACE:包含備份計畫的命名空間。
  • BACKUP_TEMPLATE_NAME:虛擬機器備份計畫範本,指向在「建立 VM 備份計畫範本」中建立的相關備份存放區。
  • KEY: VALUE:標籤選取器,可將指定標籤與包含該標籤的任何 VM 相符。這項備份方案會備份同一命名空間中找到的所有相符 VM。這個物件的格式必須為 keys:string, values:string
  • VOLUME_STRATEGY:要執行的磁碟區備份類型。請務必使用下列其中一個值:
    • ProvisionerSpecific:利用基礎儲存空間佈建工具的備份和還原功能。如果 includeVolumeDatatrue,請使用這個選項。
    • LocalSnapshotOnly:只在本地儲存系統本身建立磁碟區的時間點副本。
  • CRON_SCHEDULE:定義所選備份時間表的 Cron 運算式。舉例來說,如果 cron 值為 0 */12 * * *,系統每 12 小時就會建立一次備份。

查看備份方案

使用 GDC 控制台或 kubectl 查看備份方案。

控制台

使用 GDC 控制台查看備份方案清單。

  1. 登入 GDC 控制台。
  2. 在導覽選單中,依序點選「Backup for Virtual Machines」>「Backup plans」(虛擬機器備份 > 備份計畫)
  3. 選取專案。
  4. 按一下清單中的備份方案,即可查看詳細資料。

kubectl

列出備份方案並使用 kubectl 查看詳細資料,即可查看備份方案。

  1. 列出現有備份方案:

    kubectl get backupplans.backup.gdc.goog -n PROJECT_NAME
    
  2. 在清單中找出要查看的備份方案。

  3. 查看備份方案詳細資料:

    kubectl describe backupplans.backup.gdc.goog BACKUP_PLAN_NAME -n PROJECT_NAME
    

    更改下列內容:

    • BACKUP_PLAN_NAME:備份方案名稱。
    • PROJECT_NAME:專案名稱。

後續步驟