備份工作負載

本文說明如何為 Google Distributed Cloud (GDC) Air-gapped 中的叢集工作負載建立手動備份、查看現有備份,以及刪除現有備份。

事前準備

應用程式操作人員 (AO) 使用者只能從現有的備份方案執行手動備份。

要求 IAM 角色

如要建立、查看及刪除備份,請要求機構 IAM 管理員或專案 IAM 管理員授予您下列其中一個角色:

  • 使用者叢集備份管理員 (user-cluster-backup-admin):在使用者叢集中建立、取得、列出、監控、更新、修補及刪除備份資源,例如備份和還原方案。請與機構 IAM 管理員聯絡,要求對方授予這個角色。

  • 備份建立者 (backup-creator):建立、取得、列出、監控、更新、修補及刪除手動備份要求和手動還原要求。請與專案 IAM 管理員聯絡,要求授予這個角色。

建立手動備份

如果備份方案定義了備份排程,系統會根據該排程自動建立備份。您也可以在備份方案排程範圍外手動建立備份。舉例來說,您可能想在升級應用程式前備份工作負載。備份內容不包含叢集設定資訊,例如節點設定、節點集區、初始叢集大小或已啟用的功能。

備份作業會擷取兩種形式的資料:

  • 設定備份:從要備份的叢集 API 伺服器擷取的一組 Kubernetes 資源說明。
  • 磁碟區備份PersistentVolumeClaims 的備份。

控制台

  1. 登入 GDC 控制台。
  2. 在導覽選單中,按一下「Backup for Clusters」(叢集備份)
  3. 按一下「備份方案」分頁標籤。
  4. 按一下要用於備份的方案。
  5. 按一下「開始備份」
  6. 輸入備份名稱和說明 (選填)。
  7. 設定備份保留天數。備份檔會在達到天數上限後自動刪除。
  8. 設定備份無法刪除的天數。
  9. 按一下「啟動」

API

手動備份必須參照現有的備份方案,才能進行備份設定,且備份必須透過發出 ManualClusterBackupRequest 建立。

以下是 ManualClusterBackupRequest 的範例:

apiVersion: backup.gdc.goog/v1
kind: ManualClusterBackupRequest
metadata:
  name: manualbackuprequest-test
  namespace: PROJECT_NAME
spec:
  clusterBackupName: "backup-test"
  clusterBackupPlanRef: "backupplan-test"
  deleteLockDays: 5
  retainDays: 6

PROJECT_NAME 替換為您的 GDC 專案名稱。

這個範例包含下列值:

說明
clusterBackupName 要建立的備份名稱。
clusterBackupPlanRef 用於備份設定的 ClusterBackupPlan 名稱。備份方案必須與 ManualClusterBackupRequest 位於相同命名空間。
deleteLockDays 在備份建立後指定的天數內,禁止刪除任何備份。這會覆寫 ClusterBackupPlan 中的 retentionPolicy
retainDays 備份建立後,系統會在達到指定天數時刪除備份。這個值會覆寫 ClusterBackupPlan 中的 retentionPolicy。 資料保留政策不會覆寫儲存位置的資料保留政策,且不得超過 90 天。

查看備份

具備使用者叢集備份管理員 (user-cluster-backup-admin) 角色的使用者可以查看機構中的所有備份。 具備備份建立者 (backup-creator) 角色的使用者可以查看專案中的所有備份。

控制台

  1. 登入 GDC 控制台。
  2. 在導覽選單中,按一下「Backup for Clusters」(叢集備份)
  3. 按一下「選取專案」,然後根據您的角色選取機構或專案:
    • 使用者叢集備份管理員:選取機構可查看機構中的所有備份,選取專案則可查看專案中的所有備份。
    • 備份建立者:選取專案即可查看專案中的所有備份。
  4. 按一下 [備份] 分頁標籤。
  5. 按一下清單中的備份項目,即可查看詳細資料。

kubectl

查看備份清單:

kubectl get clusterBackups

輸出範例如下:

NAME            STATE
backup-test   Succeeded

刪除備份

您無法透過與 Kubernetes API 伺服器的一般互動刪除備份。如要刪除備份,請使用 GDC 控制台或發出 DeleteClusterBackupRequest

控制台

從「備份」分頁標籤刪除備份:

  1. 登入 GDC 控制台。
  2. 在導覽選單中,按一下「Backup for Clusters」(叢集備份)
  3. 按一下「選取專案」,然後根據您的角色選取機構或專案:
    • 使用者叢集備份管理員:選取機構可查看機構中的所有備份,或選取專案可查看專案中的所有備份。
    • 備份建立者:選取專案即可查看專案中的所有備份。
  4. 按一下 [備份] 分頁標籤。
  5. 找出要刪除的備份,然後按一下旁邊的三點選單圖示。
  6. 在文字欄位中輸入備份名稱。
  7. 按一下「刪除備份」按鈕,即可刪除這項備份。

或者,您也可以在查看備份方案時,按一下備份名稱來刪除備份:

  1. 登入 GDC 控制台。
  2. 在導覽選單中,按一下「Backup for Clusters」(叢集備份)
  3. 按一下「選取專案」,然後視您的角色選取機構或專案:
    • 使用者叢集備份管理員:選取機構可查看機構中的所有備份方案,選取專案則可查看專案中的所有備份方案。
    • 備份建立者:選取專案即可查看專案中的所有備份方案。
  4. 按一下「備份方案」分頁標籤。
  5. 按一下要刪除備份內容的備份方案名稱。
  6. 按一下 [備份] 分頁標籤。
  7. 按一下要刪除的備份名稱。
  8. 按一下「刪除備份」按鈕。
  9. 在文字欄位中輸入備份名稱。
  10. 按一下「刪除」按鈕,即可刪除備份。

kubectl

傳送 DeleteClusterBackupRequest 要求:

apiVersion: backup.gdc.goog/v1
kind: DeleteClusterBackupRequest
metadata:
  name: deletebackuprequest-test
  namespace: PROJECT_NAME
spec:
  clusterBackupRef: "backup-test"

PROJECT_NAME 替換為您的 GDC 專案名稱。

這個範例包含下列值:

  • backupName:要刪除的備份名稱。備份必須與 DeleteClusterBackupRequest 位於相同命名空間。
  • DeleteClusterBackupRequest:從叢集刪除備份自訂資源,並從備份儲存位置移除與該備份相關聯的所有構件,包括磁碟區資料。

後續步驟