本文說明如何使用 REST API 為 Azure Blob 建立 Azure 資料保護備份原則。
Azure 備份原則通常會控管備份的保留期和排程。 由於 Blob 的作業備份本質上是連續的,因此您不需要排程執行備份。 基本上需要原則才能指定保留期間。 您可以重複使用備份原則,設定將多個儲存體帳戶備份至保存庫。
重要
在您繼續建立原則並設定 Azure Blob 的備份之前,請參閱本節。
本文說明如何在儲存體帳戶中建立 Blob 的原則。 瞭解使用 REST API 為 Azure 復原服務保存庫建立備份原則的流程。
注意
若還原期間較長,可能會導致還原作業需要較久時間才能完成。 此外,還原一組資料所需的時間,取決於在還原期間所進行的寫入和刪除作業數目。 例如,假設有個帳戶包含一百萬個物件,而且每日會新增 3,000 個物件並刪除 1,000 個物件,則大約需要兩小時,才能還原至過去 30 天的某個時間點。 若帳戶的變動率達到此種程度,則不建議保留期間和還原作業超出過去 90 天。
在此文章中,您將了解:
- 建立原則
- 建立要求本文
- 回覆
建立原則
若要建立 Azure 備份原則,請使用下列 PUT 作業:
PUT https://management.azure.com/Subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DataProtection/backupVaults/{vaultName}/backupPolicies/{policyName}?api-version=2021-01-01
{policyName} 和 {vaultName} 都會在 URI 中提供。 您可以找到要求本文的其他資訊。
重要
目前不支援更新或修改現有的原則。 因此,您可以改為建立具有所需詳細資料的新原則,並將其指派給相關的備份執行個體。
建立要求本文
例如,若要建立 blob 備份的原則,請使用要求本文的以下元件:
| 名稱 | 必要 | 類型 | 描述 |
|---|---|---|---|
properties |
True | BaseBackupPolicy:BackupPolicy | BaseBackupPolicyResource 屬性 |
如需要求本文中的完整定義清單,請參閱備份原則 REST API 文件。
要求本文範例
下列要求本文會定義 blob 備份的備份原則。
原則規定:
- 保留期間為 30 天。
- 資料存放區是「作業存放區」。
{
"properties": {
"datasourceTypes": [
"Microsoft.Storage/storageAccounts/blobServices"
],
"objectType": "BackupPolicy",
"policyRules": [
{
"name": "Default",
"objectType": "AzureRetentionRule",
"isDefault": true,
"lifecycles": [
{
"deleteAfter": {
"duration": "P30D",
"objectType": "AbsoluteDeleteOption"
},
"sourceDataStore": {
"dataStoreType": "OperationalStore",
"objectType": "DataStoreInfoBase"
}
}
]
}
]
}
}
若要使用保存庫備份來設定備份原則,請使用下列 JSON 指令碼:
{
"id": "/subscriptions/495944b2-66b7-4173-8824-77043bb269be/resourceGroups/Blob-Backup/providers/Microsoft.DataProtection/BackupVaults/yavovaultecy01/backupPolicies/TestPolicy",
"name": "TestPolicy",
"type": "Microsoft.DataProtection/BackupVaults/backupPolicies",
"properties": {
"policyRules": [
{
"name": "Default",
"objectType": "AzureRetentionRule",
"isDefault": true,
"lifecycles": [
{
"deleteAfter": {
"duration": "P30D",
"objectType": "AbsoluteDeleteOption"
},
"sourceDataStore": {
"dataStoreType": "OperationalStore",
"objectType": "DataStoreInfoBase"
},
"targetDataStoreCopySettings": []
}
]
},
{
"name": "Default",
"objectType": "AzureRetentionRule",
"isDefault": true,
"lifecycles": [
{
"deleteAfter": {
"duration": "P7D",
"objectType": "AbsoluteDeleteOption"
},
"sourceDataStore": {
"dataStoreType": "VaultStore",
"objectType": "DataStoreInfoBase"
},
"targetDataStoreCopySettings": []
}
]
},
{
"name": "BackupDaily",
"objectType": "AzureBackupRule",
"backupParameters": {
"backupType": "Discrete",
"objectType": "AzureBackupParams"
},
"dataStore": {
"dataStoreType": "VaultStore",
"objectType": "DataStoreInfoBase"
},
"trigger": {
"schedule": {
"timeZone": "UTC",
"repeatingTimeIntervals": [
"R/2024-05-08T14:00:00+00:00/P1D"
]
},
"taggingCriteria": [
{
"isDefault": true,
"taggingPriority": 99,
"tagInfo": {
"id": "Default_",
"tagName": "Default"
}
}
],
"objectType": "ScheduleBasedTriggerContext"
}
}
],
"datasourceTypes": [
"Microsoft.Storage/storageAccounts/blobServices"
],
"objectType": "BackupPolicy",
"name": "TestPolicy"
}
}
重要
支援的時間格式僅限 DateTime。 不支援單獨的 Time 格式。
回覆
備份原則的建立/更新是一項非同步作業,並會在作業成功時傳回 OK。
| 名稱 | 類型 | 描述 |
|---|---|---|
| 200 OK | BaseBackupPolicyResource | 確定 |
範例回應
當作業完成時,它會在回應本文中傳回 200 (確定) 以及原則內容。
{
"id": "/subscriptions/xxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx/resourceGroups//TestBkpVaultRG/providers/Microsoft.RecoveryServices/vaults/testBkpVault/backupPolicies/TestBlobPolicy",
"name": "TestBlobPolicy",
"type": "Microsoft.DataProtection/backupVaults/backupPolicies",
"properties": {
"policyRules": [
{
"lifecycles": [
{
"deleteAfter": {
"objectType": "AbsoluteDeleteOption",
"duration": "P30D"
},
"sourceDataStore": {
"dataStoreType": "OperationalStore",
"objectType": "DataStoreInfoBase"
}
}
],
"isDefault": true,
"name": "Default",
"objectType": "AzureRetentionRule"
}
],
"datasourceTypes": [
"Microsoft.Storage/storageAccounts/blobServices"
],
"objectType": "BackupPolicy"
}
}
下一步
為儲存體帳戶中的 blob 啟用保護。
如需 Azure 備份 REST API 的詳細資訊,請參閱下列文件:
- Azure 資料保護 REST API
- Get started with Azure REST API (開始使用 Azure REST API)
- 管理備份和還原作業