管理備份方案

備份方案總覽

本頁說明如何建立及管理儲存在 backup vault 中的備份資料備份方案。如要瞭解備份方案的用途和使用方式,請參閱控制台中的備份方案 Google Cloud

事前準備

如要取得建立及管理備份方案所需的權限,請要求管理員授予備份儲存空間專案的「備份和災難復原使用者 V2」 (roles/backupdr.userv2) IAM 角色。如要進一步瞭解如何授予角色,請參閱「管理專案、資料夾和組織的存取權」。

這個預先定義的角色具備建立及管理備份方案所需的權限。如要查看確切的必要權限,請展開「Required permissions」(必要權限) 部分:

所需權限

如要建立及管理備份方案,必須具備下列權限:

  • backupdr.backupPlans.create
  • backupdr.backupPlans.list
  • backupdr.backupPlans.get
  • backupdr.backupPlans.delete
  • backupdr.backupVaults.associate

您或許還可透過自訂角色或其他預先定義的角色取得這些權限。

如要瞭解如何授予使用者在特定專案中套用備份方案的權限 (但無法建立備份方案),請參閱備份使用者的身分與存取權管理角色和權限

建立備份方案

請按照下列操作說明,為封存備份建立備份方案:

控制台

  1. 前往 Google Cloud 控制台的「備份計畫」頁面。

    前往備份方案

  2. 按一下「建立備份方案」

  3. 在「Resource Type」(資源類型) 清單中,選取目標資源。

  4. 在「名稱」欄位中輸入專屬名稱,並在「說明」欄位中輸入說明 (選填)。

  5. 在「位置」部分,從「區域」清單中選取方案生效的區域。

  6. 在「目的地」部分,從「備份保存庫」清單中選取儲存資料的備份保存庫。

  7. 如要設定備份規則,請完成下列步驟:

    1. 按一下「Add rule」(新增規則)

    2. 從「Recurrence」(週期) 清單中選取週期頻率。

    3. 在「備份時間範圍」中,選取開始時間和結束時間。

    4. 在「保留期限」欄位中輸入保留期限。

    5. 在「隨需備份保留期限」部分,於「自訂隨需備份的最長保留期限」欄位中輸入天數值,即可為使用這個備份方案建立的隨需備份設定保留期限上限。如未指定,預設上限為 vault 的最短強制保留期限加上 30 天。可輸入的最大值為 3,653 (3653) 天。

    6. 如果是資料庫,請將「資料庫記錄」切換鈕設為開啟,啟用交易記錄保護功能。

  8. 點選「建立」

備份方案及其連結的 backup vault 必須位於同一專案。

gcloud

為 Compute Engine 執行個體建立備份規則的備份方案。

    gcloud backup-dr backup-plans create BACKUP_PLAN_NAME 
--location=REGION
--resource-type=RESOURCE_TYPE
--project=PROJECT_ID
--backup-vault=BACKUPVAULT_NAME
--backup-rule=rule-id=RULE_NAME,recurrence=RECURRENCE,hourly-frequency=HOURS,time-zone=TIME_ZONE,backup-window-start=START_TIME,backup-window-end=END_TIME,retention-days=BACKUP_RETENTION

更改下列內容:

  • BACKUP_PLAN_NAME:備份方案名稱。

  • REGION:要建立備份計畫的 Google Cloud 區域。

  • RESOURCE_TYPE:備份方案要保護的資源類型。Values are:

    • compute.googleapis.com/Instance

    • compute.googleapis.com/Disk

    • sql.googleapis.com/Instance

    • alloydb.googleapis.com/Cluster

    • file.googleapis.com/Instance

  • PROJECT_ID:備份保存庫所在的專案名稱。

  • BACKUPVAULT_NAME:要用於備份儲存空間的備份保存庫名稱。

  • RULE_NAME:備份規則的名稱。

  • RECURRENCE:建立備份的頻率。頻率可以是每小時、每日、每週、每月或每年。

  • HOURS:每小時備份的頻率。 只有在將週期設為每小時時,才指定這個值。 最低時數一律為六小時。

  • TIME_ZONE:備份計畫的時區,例如世界標準時間。使用 IANA 時區格式,加入備份方案的時區。

  • START_TIME:開始時間是以 24 小時制表示的時間,開始時間必須早於結束時間,且包含在備份時間內。

  • END_TIME:結束時間是以 24 小時制表示的時間,結束時間必須晚於開始時間,且不包含在備份時間範圍內。

  • BACKUP_RETENTION:備份的保留期限。請注意,備份保留期限必須等於或大於備份保存庫強制執行的最短保留期限。

  • MAX_ONDEMAND_RETENTION:選用的 max-custom-on-demand-retention-days 旗標會設定允許的最長自訂保留期限 (以天為單位),並限制使用者透過這個備份方案建立的隨需備份保留期限。

  • LOG_RETENTION:資料庫交易記錄 (時間點復原) 的保留天數。這個旗標僅適用於 AlloyDB 和 Cloud SQL 工作負載。指定的持續時間必須大於或等於目的地備份儲存空間的最短強制保留期限。

Terraform

您可以使用 Terraform 資源建立備份方案,並設定每小時、每日、每週、每月或每年的備份頻率。


# Before creating a backup plan, you need to create backup vault (google_backup_dr_backup_vault).
resource "google_backup_dr_backup_plan" "default" {
  provider       = google-beta
  location       = "us-central1"
  backup_plan_id = "my-bp"
  resource_type  = "compute.googleapis.com/Instance"
  backup_vault   = google_backup_dr_backup_vault.default.name
  # log_retention_days = 2 # Only applicable for Cloud SQL

  backup_rules {
    rule_id               = "rule-1"
    backup_retention_days = 5

    standard_schedule {
      recurrence_type  = "HOURLY"
      hourly_frequency = 6
      time_zone        = "UTC"

      backup_window {
        start_hour_of_day = 0
        end_hour_of_day   = 24
      }
    }
  }
}

備份規則的備份方案範例

  • 每六小時備份一次 Compute Engine 執行個體,並將備份檔儲存 11 天。

       gcloud backup-dr backup-plans create bp-hourly 
    --project=test-project --location=us-central1
    --resource-type=compute.googleapis.com/Instance
    --backup-vault=test-bv
    --backup-rule=rule-id=rule-hourly,recurrence=HOURLY,hourly-frequency=6,backup-window-start=5,backup-window-end=12,retention-days=11

  • 每天上午 5 點至下午 12 點之間備份磁碟,並將備份儲存 12 天。

          gcloud backup-dr backup-plans create bp-daily 
    --project=test-project --location=us-central1
    --resource-type=compute.googleapis.com/Disk
    --backup-vault=test-bv
    --backup-rule=rule-id=rule-daily,recurrence=DAILY,backup-window-start=5,backup-window-end=12,retention-days=12

  • 在週一和週三上午 5 點到中午 12 點之間備份 Compute Engine 執行個體,並將備份檔儲存 13 天。

          gcloud backup-dr backup-plans create bp-weekly 
    --project=test-project --location=us-central1
    --resource-type=compute.googleapis.com/Instance
    --backup-vault=test-bv
    --backup-rule=rule-id=rule-weekly,recurrence=WEEKLY,days-of-week='MON WED',backup-window-start=5,backup-window-end=12,retention-days=13

  • 每月 1 號和 15 號上午 5 點至中午 12 點之間備份磁碟,並將備份檔儲存 14 天。

          gcloud backup-dr backup-plans create bp-monthly 
    --project=test-project --location=us-central1
    --resource-type=compute.googleapis.com/Disk
    --backup-vault=test-bv
    --backup-rule=rule-id=rule-monthly,recurrence=MONTHLY,days-of-month='1 15',backup-window-start=5,backup-window-end=12,retention-days=14

  • 每年 3 月、6 月、9 月和 12 月的 10 號、20 號和 30 號備份 Compute Engine 執行個體,並將備份檔儲存 16 天。

          gcloud backup-dr backup-plans create bp-yearly 
    --project=test-project --location=us-central1
    --resource-type=compute.googleapis.com/Instance
    --backup-vault=test-bv
    --backup-rule=rule-id=rule-yearly,recurrence=YEARLY,months='MAR JUN SEP DEC',days-of-month='10 20 30',backup-window-start=5,backup-window-end=12,retention-days=16

  • 每天凌晨 2 點到 8 點之間備份 AlloyDB 叢集,備份保留期限為 30 天,交易記錄保留期限為 13 天,以供時間點復原 (PITR)。

          gcloud backup-dr backup-plans create bp-alloydb-daily 
    --project=test-project --location=us-central1
    --resource-type=alloydb.googleapis.com/Cluster
    --backup-vault=test-bv
    --log-retention-days=13
    --backup-rule=rule-id=rule-alloydb,recurrence=DAILY,backup-window-start=2,backup-window-end=8,retention-days=30

建立沒有備份規則的備份方案

建立不含備份規則的備份方案。如果已設定 max_custom_on_demand_retention_days,備份方案可以有效,不必有排定的規則。

   gcloud backup-dr backup-plans create BACKUP_PLAN_NAME \
      --location=REGION \
      --resource-type=RESOURCE_TYPE \
      --project=PROJECT_ID \
      --backup-vault=BACKUPVAULT_NAME \
      --max-custom-on-demand-retention-days=MAX_ONDEMAND_RETENTION

列出備份方案

請按照下列操作說明列出備份方案。

控制台

前往 Google Cloud 控制台的「備份計畫」頁面。

前往備份方案

「備份方案」頁面會列出專案中的所有備份方案。

gcloud

列出備份方案。

    gcloud backup-dr backup-plans list 
--location=LOCATION
--project=PROJECT_ID

更改下列內容:

  • LOCATION:備份方案的位置。

  • PROJECT_ID:備份計畫建立所在專案的名稱。

查看備份方案詳細資料

請按照下列操作說明查看備份方案詳細資料。

控制台

  1. 前往 Google Cloud 控制台的「備份計畫」頁面。

    前往備份方案

  2. 在備份方案清單中,按一下要查看的備份方案名稱。

    備份方案包含下列資訊:

    • 資源類型

    • 備份方案詳細資料

    • backup vault 名稱

    • 備份儲存空間位置

    • 備份保留期限

gcloud

  1. 查看備份方案詳細資料。

    gcloud backup-dr backup-plans describe BACKUP_PLAN_NAME \
      --location=LOCATION \
      --project=PROJECT_ID
    

    更改下列內容:

    • BACKUP_PLAN_NAME:備份方案名稱。

    • LOCATION:備份計畫的位置。

    • PROJECT_ID:備份計畫建立所在專案的名稱。

刪除備份方案

如果備份方案正在保護資源,就無法刪除。如要刪除備份方案,請先從資源中移除備份方案,然後再刪除。

如果刪除備份方案:

  • 套用方案時建立的備份不會受到影響。備份會在保留期限屆滿時過期,過期前皆可存取。
  • 參照這項方案的自動化動作都將失效。

請按照下列操作說明刪除備份方案。

控制台

  1. 前往 Google Cloud 控制台的「備份計畫」頁面。

    前往備份方案

  2. 在備份方案清單中,按一下要刪除的備份方案名稱。

  3. 點選「刪除」。

  4. 在出現的重疊視窗中,確認要刪除備份方案及其內容。

  5. 點選「刪除」。

gcloud

  1. 刪除備份方案。

       gcloud backup-dr backup-plans delete BACKUP_PLAN_NAME \
       --location=LOCATION \
       --project=PROJECT_ID
    

    更改下列內容:

    • BACKUP_PLAN_NAME:要刪除的備份計畫名稱。

    • LOCATION:備份計畫的位置。

    • PROJECT_ID:備份計畫建立所在專案的名稱。

後續步驟