建立排程備份方案

本文說明如何建立排定的備份方案,在 Google Distributed Cloud (GDC) 實體隔離方案中,按照定義的時間表備份虛擬機器 (VM) 工作負載。

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

本文適用於管理 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 備份方案的範圍:

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

使用清單建立 VM 備份方案

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

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
        maxConcurrency: MAX_CONCURRENCY

更改下列內容:

  • BACKUP_PLAN_NAME:備份方案名稱。
  • BACKUP_PLAN_NAMESPACE:包含備份方案的命名空間。
  • BACKUP_TEMPLATE_NAME:虛擬機器備份方案範本,指向在「建立 VM 備份方案範本」中建立的相關備份存放區。
  • VM_NAME:selectedVirtualMachines 欄位中的 VM 名稱清單。這份 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:運用基礎儲存空間供應器的備份和還原功能。如果 includeVolumeData 為 true,請使用這個選項。
    • LocalSnapshotOnly:只在本機儲存系統上建立磁碟區的時間點副本。
  • CRON_SCHEDULE:定義所選備份排程的 Cron 運算式。舉例來說,如果 cron 值為 0 */12 * * *,系統會每 12 小時建立一次備份。排定備份作業的最短間隔時間為 10 分鐘。

  • MAX_CONCURRENCY:指定備份方案中,可同時存在的排定備份數量上限。如果指定這項設定,則在任何時間點,這項備份方案中處於有效狀態的排定備份數量,都不得超過這個值。如未指定,則預設為 2。值必須介於 1 至 7 之間。

使用標籤建立 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
        maxConcurrency: MAX_CONCURRENCY

更改下列內容:

  • BACKUP_PLAN_NAME:備份方案名稱。
  • BACKUP_PLAN_NAMESPACE:包含備份方案的命名空間。
  • BACKUP_TEMPLATE_NAME:虛擬機器備份方案範本,指向在「建立 VM 備份方案範本」中建立的相關備份存放區。
  • KEY: VALUE:標籤選取器,可將指定標籤與含有該標籤的任何 VM 配對。這項備份方案會備份在相同命名空間中找到的任何相符 VM。這個物件必須採用 keys:string, values:string 格式。
  • VOLUME_STRATEGY:要執行的磁碟區備份類型。請務必使用下列其中一個值:
    • ProvisionerSpecific:運用基礎儲存空間供應器的備份和還原功能。如果 includeVolumeData 為 true,請使用這個選項。
    • LocalSnapshotOnly:只在本機儲存系統上建立磁碟區的時間點副本。
  • CRON_SCHEDULE:定義所選備份排程的 Cron 運算式。舉例來說,如果 cron 值為 0 */12 * * *,系統會每 12 小時建立一次備份。
  • MAX_CONCURRENCY:指定備份方案中,可同時存在的排定備份數量上限。如果指定這項設定,則在任何時間點,這項備份方案中處於有效狀態的排定備份數量,都不得超過這個值。如未指定,則預設為 2。值必須介於 1 至 7 之間。

查看備份方案

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

控制台

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

  1. 登入 GDC 控制台。
  2. 在導覽選單中,依序點選「Backup for Virtual Machines」>「備份方案」。
  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:專案名稱。

後續步驟