更新 Azure Cosmos DB 定期備份儲存體備援
適用於:NoSQL MongoDB Cassandra Gremlin 資料表
Azure Cosmos DB 定期模式備份資料會以不同方式複寫。 如果主要區域支援配對區域,那麼依預設,Azure Cosmos DB 將定期模式備份資料儲存至異地備援 Blob 儲存體中,並複寫至配對區域。 您可以覆寫預設的備份儲存體備援。 或者,如果您使用非配對區域,則必須明確選擇備份儲存體備援。 本文說明如何使用 Azure CLI 和 PowerShell 來更新備份儲存體備援。 也說明如何在帳戶上設定 Azure 原則,以強制執行必要的儲存體備援。
必要條件
更新儲存體備援
使用下列步驟更新備份儲存體備援。
登入 Azure 入口網站並瀏覽至 Azure Cosmos DB 帳戶。
開啟 [備份 & 還原] 窗格,更新備份儲存體備援,然後選取 [提交]。 完成此作業需要幾分鐘。
確保您擁有最新版的 Azure CLI,或是高於或等於 2.30.0 的版本。 如果您已安裝 cosmosdb-preview
延伸模組,請務必移除。
使用 az cosmosdb locations show
命令來取得帳戶所在區域中可用的備份備援選項。
az cosmosdb locations show \
--location <region-name>
輸出應包括類似於此範例的 JSON:
{
"id": "subscriptionId/<Subscription_ID>/providers/Microsoft.DocumentDB/locations/eastus/",
"name": "East US",
"properties": {
"backupStorageRedundancies": [
"Geo",
"Zone",
"Local"
],
"isResidencyRestricted": false,
"supportsAvailabilityZone": true
},
"type": "Microsoft.DocumentDB/locations"
}
注意
上述命令顯示特定區域中可用的備份備援清單。 backupStorageRedundancies
屬性中顯示支援的值。 例如,某些區域最多可支援三個備援選項: Geo、 Zone和 Local。 其他區域可能支援這些選項的子集。 更新之前,請選擇使用 Azure Cosmos DB 帳戶全部區域中支援的備份儲存體備援選項。
使用 az cosmosdb update
命令,搭配所選的備份備援選項,在現有的帳戶上更新備份備援。
az cosmosdb update \
--resource-group <resource-group-name> \
--name <account_name> \
--backup-redundancy Zone
或是使用 az cosmosdb create
命令,以所選的備份備援選項建立新帳戶。
az cosmosdb create \
--resource-group <resource-group-name> \
--name <account-name> \
--backup-redundancy Geo \
--locations regionName=<azure-region>
安裝最新版的 Azure PowerShell,或是高於或等於 1.4.0 的版本。
$parameters = @{
Name = "Az.CosmosDB"
RequiredVersion = "1.4.0"
}
Install-Module @parameters
使用 Get-AzCosmosDBLocation
cmdlet 來取得帳戶所在區域中可用的備份備援選項。
$parameters = @{
Location = "<azure-region>"
}
(Get-AzCosmosDBLocation @parameters).Properties
輸出應包括類似於此範例的內容:
SupportsAvailabilityZone IsResidencyRestricted BackupStorageRedundancies
------------------------ --------------------- -------------------------
True False {Geo, Zone, Local}
注意
上述命令顯示特定區域中可用的備份備援清單。 BackupStorageRedundancies
屬性中顯示支援的值。 例如,某些區域最多可支援三個備援選項: Geo、 Zone和 Local。 其他區域可能支援這些選項的子集。 更新之前,請選擇使用 Azure Cosmos DB 帳戶全部區域中支援的備份儲存體備援選項。
使用 Update-AzCosmosDBAccount
cmdlet,搭配所選的備份備援選項,在現有的帳戶上更新備份備援:
$parameters = @{
ResourceGroupName "<resource-group-name>"
Name = "<account-name>"
BackupStorageRedundancy = "Zone"
}
Update-AzCosmosDBAccount @parameters
或是使用 New-AzCosmosDBAccount
cmdlet,以所選的備份備援選項建立新帳戶:
$parameters = @{
ResourceGroupName = "<resource-group-name>"
Name = "<account-name>"
Location = "<azure-region>"
BackupPolicyType = "Periodic"
BackupStorageRedundancy = "Geo"
}
New-AzCosmosDBAccount @parameters
新增備份儲存體備援的 Azure 原則
Azure 原則有助於強制執行組織標準及大規模評估合規性。 如需詳細資訊,請參閱何謂 Azure 原則?。
下列範例示範如何新增 Azure Cosmos DB 帳戶的 Azure 原則,以驗證 (使用 audit
) 其備份備援已設定為 Local
。
"parameters": {},
"policyRule": {
"if": {
"allOf": [
{
"field": "Microsoft.DocumentDB/databaseAccounts/backupPolicy.periodicModeProperties.backupStorageRedundancy",
"match": "Local"
}
]
},
"then": {
"effect": "audit"
}
}
下一步