本頁說明如何將 AlloyDB 備份至備份保存庫。將備份傳送至 backup vault,即可確保備份不可變更,並強制執行保留設定。
在 Google Cloud 控制台中,您可以套用備份方案,將 AlloyDB for PostgreSQL 叢集備份至備份保存庫。您可以透過下列兩種方式備份。這兩種方法都能讓您將備份安全地儲存在備份保存庫中,在資料遺失或其他意外事件發生時,提供可靠的 AlloyDB 叢集復原方式。
- 排定的備份:您可以設定以特定間隔 (例如每天、每週、每月或每年) 自動備份 AlloyDB for PostgreSQL 叢集。
- 隨選備份。您可以視需要建立隨選備份。 隨需備份適用於在對資料庫進行重大變更前建立備份,或用於臨時資料保護。
事前準備
在 AlloyDB for PostgreSQL 叢集所在位置啟用備份和災難復原服務 API。
在 bucket 上設定 Observability Analytics,監控備份和災難復原備份工作。
備份使用者的 IAM 角色和權限
如要取得設定排程備份或執行隨選備份所需的權限,請要求管理員在備份保存庫專案中授予您下列 IAM 角色:
- 備份和災難復原備份使用者 (
roles/backupdr.backupUser) - 檢視者 (
roles/viewer)
如要進一步瞭解如何授予角色,請參閱「管理專案、資料夾和組織的存取權」。
這些預先定義的角色具備設定排程備份或執行隨選備份所需的權限。如要查看確切的必要權限,請展開「Required permissions」(必要權限) 部分:
所需權限
如要設定排程備份或執行隨選備份,您必須具備下列權限:
-
backupdr.backupPlans.list -
backupdr.backupPlanAssociations.createForAlloydbCluster -
backupdr.backupPlanAssociations.fetchForAlloydbCluster -
backupdr.backupPlanAssociations.list -
backupdr.backupPlanAssociations.getForAlloydbCluster -
backupdr.backupPlanAssociations.triggerBackupForAlloydbCluster -
backupdr.backupPlanAssociations.deleteForAlloydbCluster -
backupdr.backupPlans.useForAlloydbCluster -
backupdr.locations.list -
backupdr.operations.get -
cloudasset.assets.searchAllResources
下表列出各項 API 呼叫所需的動態權限:
| 資源 | 要對資源執行的動作 | 各項 API 呼叫所需的權限 | 需要指派的專案 |
|---|---|---|---|
| backup vault | 建立 BackupVault | backupdr.backupVaults.create | 管理員專案 |
| 刪除 BackupVault | backupdr.backupVaults.delete | 管理員專案 | |
| 更新 BackupVault | backupdr.backupVaults.update | 管理員專案 | |
| 列出 BackupVault | backupdr.backupVaults.list | 管理員專案 | |
| 取得 BackupVault | backupdr.backupVaults.get | 管理員專案 | |
| 備份方案 | 建立 BackupPlan | backupdr.backupPlans.create | 管理員專案 |
| 刪除 BackupPlan | backupdr.backupPlans.delete | 管理員專案 | |
| 取得 BackupPlan | backupdr.backupPlans.get | 管理員專案 | |
| 列出備份方案 | backupdr.backupPlans.list | 管理員專案 | |
| 備份方案關聯 | 建立備份方案關聯 | backupdr.backupPlanAssociations.createForAlloydbCluster | 工作負載專案 |
| 刪除備份方案關聯 | backupdr.backupPlanAssociations.deleteForAlloydbCluster | 工作負載專案 | |
| 在備份方案關聯中觸發隨選備份 | backupdr.backupPlanAssociations.triggerBackupForAlloydbCluster | 工作負載專案 | |
| 取得備份方案關聯 | backupdr.backupPlanAssociations.getForAlloydbCluster | 工作負載專案 | |
| 列出備份方案關聯 | backupdr.backupPlanAssociations.list | 工作負載專案 | |
| 擷取備份方案關聯 | backupdr.backupPlanAssociations.fetchForAlloydbCluster | 工作負載專案 | |
| 資料來源 | 取得 DataSource | backupdr.bvdataSources.get | 管理員專案 |
| 列出資料來源 | backupdr.bvdataSources.list | 管理員專案 | |
| PiTR 還原 | backupdr.bvdataSources.useReadOnlyForAlloydbCluster | 管理員專案 | |
| 備份 | 取得備份 | backupdr.bvbackups.get | 管理員專案 |
| 列出備份 | backupdr.bvbackups.list | 管理員專案 | |
| 刪除備份 | backupdr.bvbackups.delete | 管理員專案 | |
| 還原備份 | backupdr.bvbackups.useReadOnlyForAlloydbCluster | 管理員專案 | |
| 資料來源參照 | 取得資料來源參照 | backupdr.dataSourceReferences.getForAlloydbCluster | 工作負載專案 |
| 擷取資料來源參照 | backupdr.dataSourceReferences.fetchForAlloydbCluster | 工作負載專案 | |
| 作業 | 可列出作業 | backupdr.operations.list | 各自的專案 |
| Get 作業 | backupdr.operations.get | 各自的專案 |
在 AlloyDB for PostgreSQL 專案中授予備份儲存空間存取權
如要在備份保存庫建立所在專案以外的專案中備份 AlloyDB 叢集,您必須在 AlloyDB 專案中,將 Backup and DR AlloyDB Operator (roles/backupdr.alloydbOperator) IAM 角色授予備份保存庫服務代理。如果備份儲存所在的備份 vault 專案與 AlloyDB 專案不同,請在 AlloyDB 專案中,將角色指派給備份 vault 服務代理。
如要在建立 backup vault 的專案中備份 AlloyDB 叢集,不需要授予任何角色。
如要瞭解如何授予 backup vault 服務代理備份專案中的角色,請參閱「授予服務代理角色」。
設定排程備份
如要為 AlloyDB 叢集設定排定的備份,請按照下列操作說明進行。
控制台
前往 Google Cloud 控制台的 Backup and DR「Vaulted backups」(已封存備份) 頁面。
按一下「排定備份時程」。
在「資源類型」清單中,選取「AlloyDB」。
在「專案」清單中,選取 AlloyDB 叢集所在的專案。
從「Region」(區域) 清單中,選取叢集所在的區域。
在「資源」清單中,按一下「瀏覽」。選擇要備份的 AlloyDB 叢集,然後按一下「完成」。
按一下「繼續」。
在「備份方案」清單中,按一下「選取」。
選擇要用來保護 AlloyDB 叢集的備份方案。
按一下 [完成]。
查看備份詳細資料,然後按一下「排程」。
gcloud
設定排程備份。
gcloud backup-dr backup-plan-associations create BACKUP_PLAN_ASSOCIATION_NAME \ --location=ALLOYDB_REGION \ --project=ALLOYDB_PROJECT_ID \ --resource=projects/ALLOYDB_PROJECT_ID/clusters/ALLOYDB_CLUSTER_ID \ --resource-type=alloydb.googleapis.com/Cluster \ --backup-plan=projects/PROJECT_ID/locations/LOCATION/backupPlans/BACKUP_PLAN更改下列內容:
BACKUP_PLAN_ASSOCIATION_NAME:備份方案關聯的名稱。ALLOYDB_REGION:AlloyDB 叢集所在的區域。ALLOYDB_PROJECT_ID:AlloyDB 叢集所在的專案名稱。ALLOYDB_CLUSTER_ID:AlloyDB 叢集 ID。PROJECT_ID:備份計畫所在的專案名稱。LOCATION:叢集位置。
列出已排定備份時間的叢集
如要列出已排定備份作業的 AlloyDB 叢集,請按照下列操作說明執行。
控制台
前往 Google Cloud 控制台的 Backup and DR「Vaulted backups」(已封存備份) 頁面。
在表格頂端,依序選取「篩選表格」>「資源類型」。 選取「AlloyDB」AlloyDB。這樣一來,系統就會篩選顯示內容,只顯示已套用備份方案,且備份儲存於專案 backup vault 的 AlloyDB 叢集。
gcloud
列出已排定備份作業的 AlloyDB 叢集:
gcloud backup-dr backup-plan-associations fetch-for-resource-type alloydb.googleapis.com/Cluster \
--location=LOCATION \
--project=PROJECT_ID
更改下列內容:
- LOCATION:排定備份的位置。
- PROJECT_ID:AlloyDB 叢集所在的專案名稱。
建立按照需求執行的備份
如要為 AlloyDB 叢集啟動備份方案的隨需備份,請立即觸發所選備份規則。按照需求執行的備份通常只會擷取上次備份後變更的資料 (增量備份)。
建立隨需備份時,您可以從與 AlloyDB 叢集相關聯的備份方案中選擇規則。這項規則會決定何時刪除隨需備份。您可以在「工作」頁面查看備份工作狀態。詳情請參閱「在 Google Cloud 控制台中監控備份與還原作業」。
請按照下列操作說明建立隨選備份。
控制台
前往 Google Cloud 控制台的 Backup and DR「Vaulted backups」(已封存備份) 頁面。
「已封存的備份」頁面只會列出符合下列條件的資料資源:已套用備份方案,而且備份儲存於專案中的 backup vault。
選取要備份的資源。從選單或資源的詳細資料頁面中,選取「建立隨選備份」。
使用下列其中一個選項,指定備份的刪除時間:
- 依據自訂保留期限 (搶先版):在備份方案中新增自訂隨需保留期限,預設為備份 vault 的最短強制保留期限加上 30 天。
- 依據現有備份規則:從「在以下時間後刪除備份」下拉式選單中選取現有規則。
按一下「建立」,開始建立隨選備份。
如要查看隨選備份工作的狀態,請按一下「通知」。
gcloud
使用下列任一選項建立隨選備份:
依據備份規則:
gcloud backup-dr backup-plan-associations trigger-backup BACKUP_PLAN_ASSOCIATION_NAME \ --backup-rule-id=RULE_ID \ --project=PROJECT_ID \ --location=LOCATION \ [--no-async]根據自訂保留期限:
gcloud backup-dr backup-plan-associations trigger-backup BACKUP_PLAN_ASSOCIATION_NAME \ --custom-retention-days=CUSTOM_RETENTION \ --project=PROJECT_ID \ --location=LOCATION \ --labels=LABELS更改下列內容:
指令。BACKUP_PLAN_ASSOCIATION_NAME:備份方案關聯的名稱。RULE_ID:您要建立關聯的備份規則名稱,以便執行隨選備份。PROJECT_ID:專案名稱。LOCATION:排定備份的位置。CUSTOM_RETENTION:這項隨選備份的自訂保留期限 (以天為單位)。這個值必須大於或等於 backup vault 保留時間,且小於或等於備份方案中設定的 max-custom-on-demand-retention-days 值 (如果未設定 max-custom-on-demand-retention-days,則為 vault 保留時間 + 30 天)。LABELS:備份的選用標籤,以半形逗號分隔的鍵/值組合,例如webserver=backend,media=images。
變更套用至 AlloyDB 叢集的備份方案
您可以將套用至 AlloyDB 叢集的備份方案變更為其他備份方案。其他備份方案必須符合下列條件:
- 使用同一個備份保存庫
- 與 AlloyDB 叢集位於相同區域
請按照下列操作說明,變更與 AlloyDB 叢集相關聯的備份方案。
控制台
前往 Google Cloud 控制台的「備份和災難復原」「Vaulted backups」(已封存備份) 頁面。
「已封存的備份」頁面只會列出符合下列條件的資料資源:已套用備份方案,而且備份儲存於專案中的 backup vault。
選取要改用其他方案的備份資料。在備份的備份詳細資料頁面中,或從 選單中,選取「變更備份方案」。「選取備份方案」視窗只會列出適用於這個叢集的備份方案。
選取備份方案,然後按一下「套用」。
gcloud
變更指派的備份方案。
gcloud backup-dr backup-plan-associations update BACKUP_PLAN_ASSOCIATION_NAME \ --workload-project=ALLOYDB_PROJECT_ID \ --location=ALLOYDB_REGION \ --backup-plan=BACKUP_PLAN \ --project=PROJECT_ID更改下列內容:
BACKUP_PLAN_ASSOCIATION_NAME:備份方案關聯資源的名稱。ALLOYDB_PROJECT_ID:AlloyDB 叢集的專案 ID。ALLOYDB_REGION:AlloyDB 叢集的位置。BACKUP_PLAN:要切換的備份計畫名稱。PROJECT_ID:所選備份計畫的專案 ID。
取消保護 AlloyDB 叢集
如要取消保護 AlloyDB 叢集,請移除套用至叢集的備份方案。從 AlloyDB 叢集移除備份方案時,不會刪除使用備份方案期間建立的任何備份。在備份過期前,您仍可存取及管理這些備份。
如要取消保護 AlloyDB 叢集,請按照這些操作說明操作。
控制台
前往 Google Cloud 控制台的 Backup and DR「Vaulted backups」(已封存備份) 頁面。
按一下要移除備份計畫的資料庫名稱。
選取「移除備份方案」。
gcloud
取消保護 AlloyDB 叢集。
gcloud backup-dr backup-plan-associations delete BACKUP_PLAN_ASSOCIATION_NAME \
--project=PROJECT_ID \
--location=LOCATION
更改下列內容:
- BACKUP_PLAN_ASSOCIATION_NAME:要刪除的備份方案關聯名稱。
- PROJECT_ID:專案名稱。
- LOCATION:排定備份作業的位置。