建立及管理金庫資源的備份方案

總覽

本頁說明如何為封存資源建立及管理備份計畫。如要瞭解備份方案的用途和使用方式,請參閱控制台中的備份方案 Google Cloud

事前準備

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

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

所需權限

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

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

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

如要瞭解如何授予使用者在特定專案中套用備份方案的權限 (但無法建立備份方案),請參閱「備份使用者的 IAM 角色和權限」。

建立備份方案

請按照下列操作說明,為封存的資源建立備份方案。

主控台

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

    前往備份方案

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

  3. 在「資源類型」部分,選取下列任一選項:

    • Compute Engine:適用於 Compute Engine 執行個體
    • 磁碟:適用於連結至 Compute Engine 執行個體的磁碟。
    • Cloud SQL:適用於 Cloud SQL 執行個體 (預覽版)。
  4. 在「備份計畫名稱」欄位中,輸入備份計畫的名稱。備份方案建立後,就無法變更方案名稱。

  5. 在「備份方案說明」欄位中,輸入備份方案的說明 (選填)。

  6. 從「區域」清單中選取備份計畫區域。備份方案是在這個區域建立。您可以保護與備份方案位於相同區域的資源。

  7. 從「Backup vault」(備份保存庫) 清單中,選取要用來儲存備份的備份保存庫。

  8. 「新增備份規則」部分已預設備份規則。

    1. 如要使用這項規則,且沒有其他備份規則,請繼續設定資料庫記錄檔備份
    2. 如要新增一或多個備份規則,請按一下「新增規則」
    3. 在「新增備份規則」窗格中,輸入備份規則資訊,然後按一下「儲存」

      • 為備份規則命名:輸入備份規則的名稱。
      • 選擇建立備份的時間:指定備份的週期和頻率。
      • 時間範圍:選取備份工作的「時區」、「開始時間」和「結束時間」
      • 選擇備份要保留多久再刪除:輸入備份要保留的天數,之後系統就會刪除備份。請注意,這個值必須大於或等於備份儲存空間的最短強制保留期限
  9. 如果您保護的是資料庫執行個體,系統會顯示「設定資料庫記錄檔備份」。您可以透過預先寫入記錄檔封存功能,啟用特定時間點的資料復原功能,時間的最小單位不到一秒。設定後即無法變更。勾選方塊,然後選取資料庫記錄保留時間。

  10. 點選「建立」

gcloud

  1. 為 Compute Engine 執行個體建立備份方案,每小時備份一次。

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

    更改下列內容:

    + `BACKUP_PLAN_NAME`: the name of the backup plan.
    + `PROJECT_ID`: the name of the project where you
    want to create the backup plan.
    + `RESOURCE_TYPE`: the resource type to be protected
    by the backup plan. Values are: `compute.googleapis.com/Instance`, `compute.googleapis.com/Disk`, `sqladmin.googleapis.com/Instance`.
    + `LOCATION`: the location where you want to create
    the backup plan.
    + `BACKUPVAULT_NAME`: the name of the
     backup vault that you want to use for backup storage.
    + `RULE_NAME`: the name of the backup rule.
    + `BACKUP_RETENTION`: the retention period of the
    backup. Note that the backup retention period must be equal to or
    greater than the backup vault enforced minimum retention
    period.
    + `RECURRENCE`: the frequency at which backups to
    be created. It can be hourly, daily, weekly, monthly, or yearly.
    + `HOURS`: the frequency of the hourly backups.
    Specify this value only if you set the recurrence to hourly.
    The minimum hourly is always set to six hours.
    + `TIME_ZONE`: the time zone for the backup plan,
    such as UTC. Use the
    [IANA time zone](https://en.wikipedia.org/wiki/List_of_tz_database_time_zones)
    format to include the timezone for the backup plan.
    + `START_TIME`: the start time is the hour of the
    day in a 24 hour format. The start time must be before the end time
    and is inclusive for the backup window.
    + `END_TIME`: the end time is the hour of the day
    in a 24 hour format. The end time must be after the start time and
    is exclusive for the backup window.
    

    範例:每六小時備份一次 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
    

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

  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
      }
    }
  }
}

列出備份方案

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

主控台

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

    前往備份方案

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

gcloud

  1. 列出備份方案。

      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:備份方案建立所在的專案名稱。

後續步驟