備份工作負載

本頁面說明如何使用 GKE 備份服務,在 Google Kubernetes Engine (GKE) 中建立工作負載備份。

簡介

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

  • 設定備份:從備份叢集的 API 伺服器擷取的一組 Kubernetes 資源說明。
  • 磁碟區備份:一組磁碟區,對應於設定備份中找到的 PersistentVolumeClaim 資源。

如果備份方案定義了備份排程,系統會根據該排程自動建立備份。你也可以手動建立備份。舉例來說,您可能想在升級應用程式前備份工作負載。

事前準備

建立備份方案。

必要的角色

如要取得建立及管理備份所需的權限,請要求管理員在專案中授予您 GKE 備份管理員 (roles/gkebackup.backupAdmin) 角色,這是 GKE 備份管理員 (roles/gkebackup.admin) IAM 角色的子集。如要進一步瞭解如何授予角色,請參閱「管理專案、資料夾和組織的存取權」。

您或許也能透過自訂角色或其他預先定義的角色,取得必要權限。

建立手動備份

您可以使用 Google Cloud CLI 或 Google Cloud 控制台,手動為備份方案建立備份。

gcloud

執行下列指令:

gcloud beta container backup-restore backups create BACKUP \
    --project=PROJECT_ID \
    --location=LOCATION \
    --backup-plan=BACKUP_PLAN \
    WAIT_OPTION

更改下列內容:

  • BACKUP:要建立的備份名稱。
  • PROJECT_ID:專案的 ID。 Google Cloud
  • LOCATION:父項備份方案的運算區域。
  • BACKUP_PLAN:這個備份作業所衍生自的父項備份方案名稱。
  • WAIT_OPTION:定義指令應傳回的時間:

    • --async:服務確認收到後,指令就會立即傳回。幾乎會立即退回。
    • (預設):服務指示叢集中的代理程式開始備份程序後,指令就會傳回。通常會在幾秒內傳回。
    • --wait-for-completion:等待代理程式完成叢集中的備份作業。這可能需要幾分鐘的時間。

如需完整選項清單,請參閱gcloud beta container backup-restore backups create說明文件。

控制台

請按照下列操作說明,在 Google Cloud 控制台中手動建立備份:

  1. 前往 Google Cloud 控制台的「Google Kubernetes Engine」頁面。

    前往「Google Kubernetes Engine」

  2. 在導覽選單中,按一下「GKE 備份」。

  3. 按一下「備份方案」分頁標籤。

  4. 展開叢集,找出要建立備份的方案。

  5. 按一下「開始備份」。

  6. 輸入備份名稱和選填說明。

  7. (選用) 設定備份保留天數,超過這個天數後,備份就會自動刪除。

  8. (選用) 設定備份無法刪除的天數。

  9. 按一下「開始備份」。

查看備份

使用 gcloud CLI 或Google Cloud 控制台,查看備份及其詳細資料。

gcloud

如要列出備份方案的所有備份方案,請執行下列指令:

gcloud beta container backup-restore backups list \
    --project=PROJECT_ID \
    --location=LOCATION \
    --backup-plan=BACKUP_PLAN

只有 list 指令可以為 PROJECT_ID 和 - 以外的任何參數提供「-」值,做為萬用字元。如果您未指定指令列選項或設定屬性,- 是任何參數的預設值。

如需完整選項清單,請參閱 gcloud beta container backup-restore backups list 說明文件。

如要查看備份詳細資料,請執行下列指令:

gcloud beta container backup-restore backups describe BACKUP \
    --project=PROJECT_ID \
    --location=LOCATION \
    --backup-plan=BACKUP_PLAN

如需完整選項清單,請參閱gcloud beta container backup-restore backups describe說明文件。

控制台

如要在 Google Cloud 控制台中查看備份及其詳細資料,請按照下列操作說明進行:

  1. 前往 Google Cloud 控制台的「Google Kubernetes Engine」頁面。

    前往「Google Kubernetes Engine」

  2. 在導覽選單中,按一下「GKE 備份」。

  3. 按一下 [備份] 分頁標籤。

  4. 展開備份方案,然後按一下備份名稱。

查看備份索引

備份索引會提供備份中資源的相關資訊。您可以透過備份索引,判斷特定資源是否已備份。備份索引會顯示資源詳細資料,例如資源名稱、資源類型、群組和版本。

您可以使用 gcloud CLI 或Google Cloud 控制台查看備份索引。

gcloud

查看備份中每個資源的群組、版本、類型和名稱:

gcloud beta container backup-restore backups get-backup-index-download-url BACKUP \
    --project=PROJECT_ID \
    --location=LOCATION \
    --backup-plan=BACKUP_PLAN

這項指令會產生網址,方便您查看及下載備份索引。網址會在 10 分鐘後失效。

如需完整選項清單,請參閱 gcloud beta container backup-restore backups get-backup-index-download-url 說明文件。

控制台

按照下列操作說明,在 Google Cloud 控制台中查看備份索引及其詳細資料:

  1. 前往 Google Cloud 控制台的「Google Kubernetes Engine」頁面。

    前往 Google Kubernetes Engine。

  2. 在導覽選單中,按一下「GKE 備份」。

  3. 按一下 [備份] 分頁標籤。

  4. 展開備份方案,然後按一下備份名稱。

  5. 按一下「備份索引」。

查看磁碟區備份

當代理程式在備份範圍內遇到 PersistentVolumeClaims 時,會自動建立磁碟區備份資源。每個磁碟區備份都對應至一個永久磁碟快照。這些資源是由代理程式在備份作業中自動建立及管理。您可以使用 gcloud CLI 或 Google Cloud 控制台,查看磁碟區備份及其詳細資料。

gcloud

如要列出備份的所有磁碟區備份,請執行下列指令:

gcloud beta container backup-restore volume-backups list \
    --project=PROJECT_ID \
    --location=LOCATION \
    --backup-plan=BACKUP_PLAN \
    --backup=BACKUP

如需完整選項清單,請參閱gcloud beta container backup-restore volume-backups list 說明文件。

如要查看磁碟區備份的詳細資料,請執行下列指令:

gcloud beta container backup-restore volume-backups describe VOLUME_BACKUP \
    --project=PROJECT_ID \
    --location=LOCATION \
    --backup-plan=BACKUP_PLAN \
    --backup=BACKUP

如需完整選項清單,請參閱 gcloud beta container backup-restore volume-backups describe 說明文件。

控制台

請按照下列操作說明,在 Google Cloud 控制台中查看磁碟區備份詳細資料:

  1. 前往 Google Cloud 控制台的「Google Kubernetes Engine」頁面。

    前往「Google Kubernetes Engine」。

  2. 在導覽選單中,點選「GKE 備份」。

  3. 按一下 [備份] 分頁標籤。

  4. 展開備份方案,然後按一下備份名稱。

  5. 按一下「Storage contents」分頁標籤。

    備份會顯示下列儲存空間內容詳細資料:永久磁碟區要求名稱、永久磁碟區名稱、命名空間、磁碟控制代碼、磁碟區類型和磁碟區備份名稱。

  6. 按一下「磁碟區備份」,即可查看磁碟區備份詳細資料。

更新備份

你可能想編輯備份資訊,例如說明或標籤。變更說明或標籤不會影響備份的處理方式。

您可能也想修改備份的保留政策,例如備份保留時間長度,或備份無法刪除的時間長度。您只能增加資料保留政策參數。

使用 gcloud CLI 或Google Cloud 控制台更新備份。

gcloud

如要更新備份 (例如新增說明),請執行下列指令:

gcloud beta container backup-restore backups update BACKUP\
    --project=PROJECT_ID \
    --location=LOCATION \
    --backup-plan=BACKUP_PLAN \
    --description=DESCRIPTION

如需完整選項清單,請參閱gcloud beta container backup-restore backups update說明文件。

控制台

如要在 Google Cloud 控制台中更新備份,請按照下列步驟操作:

  1. 前往 Google Cloud 控制台的「Google Kubernetes Engine」頁面。

    前往「Google Kubernetes Engine」

  2. 在導覽選單中,按一下「GKE 備份」。

  3. 按一下 [備份] 分頁標籤。

  4. 展開備份方案,然後按一下備份名稱。

  5. 按一下「編輯」,編輯備份區段,然後按一下「儲存變更」。

刪除備份

你可以透過下列兩種方式刪除備份:

  • 如果備份方案定義了保留期限,系統會在期限到期後自動刪除該方案建立的備份。
  • 你可以手動刪除備份。

如果這個備份的備份方案定義了備份的最短生命週期 (使用 --backup-delete-lock-days 旗標設定),則在該生命週期到期之前,無法刪除為這個方案建立的備份 (無論是自動或手動刪除)。

您可以使用 gcloud CLI 或Google Cloud 控制台,手動刪除備份。

gcloud

如要刪除備份,請執行下列指令:

gcloud beta container backup-restore backups delete BACKUP \
    --project=PROJECT_ID \
    --location=LOCATION \
    --backup-plan=BACKUP_PLAN

如需完整選項清單,請參閱gcloud beta container backup-restore backups delete說明文件。

控制台

請按照下列操作說明,在 Google Cloud 控制台中刪除備份:

  1. 前往 Google Cloud 控制台的「Google Kubernetes Engine」頁面。

    前往「Google Kubernetes Engine」

  2. 在導覽選單中,點選「GKE 備份」。

  3. 按一下 [備份] 分頁標籤。

  4. 展開方案,然後按一下備份名稱。

  5. 按一下「刪除備份」。

  6. 輸入備份方案名稱,然後在確認對話方塊中按一下「刪除備份」。

後續步驟