你当前正在访问 Microsoft Azure Global Edition 技术文档网站。 如果需要访问由世纪互联运营的 Microsoft Azure 中国技术文档网站,请访问 https://docs.azure.cn。
本文介绍如何使用 Azure 门户为 Azure Data Lake Storage 配置保管库备份。
Prerequisites
在为 Azure Data Lake Storage 配置保管库备份之前,请确保满足以下先决条件:
- 存储帐户必须位于 受支持的区域和所需类型中。
- 目标帐户不得具有与恢复点中的容器名称相同的容器;否则,还原作将失败。
- 在 Azure Data Lake Storage 帐户所在的同一区域中标识或 创建备份保管库 。
- 为 Azure Data Lake Storage 创建一个备份策略 ,用于定义备份计划和保留范围。
- 向存储帐户上的备份保管库授予权限。
Note
- 此功能目前仅在特定区域中可用。 请参阅 支持的区域。
- 保管备份只能还原到不同的存储帐户。
若要详细了解支持的方案、限制和可用性,请参阅支持矩阵。
为 Azure Data Lake Storage 配置托管备份
可以在多个 Azure Data Lake Storage 上配置备份。
若要配置保管库备份,请执行以下步骤:
在 Azure 门户中,转到 “备份保管库”,然后选择“ + 备份”。
在“ 配置备份 ”窗格的“ 基本信息 ”选项卡上,查看 “数据源类型 ”已选为 Azure Data Lake Storage。
在 “备份策略 ”选项卡上的 “备份策略”下,选择要用于数据保留的策略,然后选择“ 下一步”。 如果要创建新的备份策略,请选择“ 新建”。 了解如何 创建备份策略。
在 “数据源 ”选项卡上,选择“ 添加”。
在“选择存储帐户容器”窗格中,提供备份实例名称,然后单击“存储帐户”下的“选择”。
在“选择启用了分层命名空间的存储帐户”窗格中,从列表中与保管库位于同一区域的订阅中选择具有 Azure Data Lake Storage 的存储帐户。
在 “选择存储帐户容器 ”窗格中,可以备份所有容器或选择特定的容器。
添加资源后,备份就绪情况验证将启动。 如果分配了所需的角色,则验证会成功并显示 “成功 ”消息。
缺少访问权限时会显示错误消息。 请参阅 “授予权限”部分。
如果所选存储帐户没有 存储帐户备份参与者 角色,则会出现验证错误。 查看错误消息并执行必要的措施。
Error Cause 建议的措施 角色分配未完成 未分配“存储帐户备份参与者”角色,以及存储帐户对保管库所需的其他角色。 选择角色,然后选择“ 分配缺少的角色 ”以自动将所需角色分配给备份保管库并触发自动重新验证。
如果角色传播需要 10 分钟以上,则验证可能会失败。 在这种情况下,需要等待几分钟,然后选择“重新验证”,重新进行验证。
你需要为各种操作分配以下类型的权限:
- 资源级 权限:用于备份资源组中的单个帐户。
- 资源组 或 订阅级 权限:用于备份资源组中的多个帐户。
- 更高级别 的权限:用于减少所需的角色分配数。
订阅级别支持的角色分配的最大计数为 4,000。 详细了解 Azure Role-Based 访问控制限制。角色分配的权限不足 保管库缺少配置备份所需的角色,而且您的权限不足以分配所需的角色。 下载角色分配模板,然后与有权为存储帐户分配角色的用户共享。 查看配置详细信息,然后选择“ 配置备份”。
可以在 备份实例下跟踪备份配置的进度。 完成备份配置后,Azure 备份会根据备份策略计划触发备份作,以创建恢复点。 备份可能需要至少 30-40 分钟,因为备份依赖于每隔 15 分钟拍摄的快照,并且需要两个快照来检测更改,然后再触发备份。
了解如何 监视备份作业。
本文介绍如何使用 PowerShell 为 Azure Data Lake Storage 配置保管库备份。
Prerequisites
在为 Azure Data Lake Storage 配置保管库备份之前,请确保满足以下先决条件:
- 安装 Azure PowerShell 版本 Az 14.6.0。 了解如何安装 Azure PowerShell。
- 确定或 创建备份保管库 以配置 Azure Data Lake Storage 备份。
- 查看 Azure Data Lake Storage 备份 支持的方案 。
- 为 Azure Data Lake Storage 创建一个备份策略 ,用于定义备份计划和保留范围。
使用 PowerShell 为 Azure Data Lake Storage 配置保管库备份
创建保管库和备份策略后,请查看以下部分,为 Azure Data Lake Storage 配置保管库备份:
- 获取要保护的 Data Lake Storage 所在存储帐户的 ARM ID
- 向备份保管库授予权限
- 触发备份配置请求
获取要保护的 Data Lake Storage 所在存储帐户的 ARM ID
为 Azure Data Lake Storage 配置保管库备份需要存储帐户的 Azure 资源管理器 (ARM) ID。 此 ID 用于识别包含您要保护的 Data Lake Storage 的存储帐户。 例如,使用不同订阅中的资源组 adlsrg 中的存储帐户 PSTestSA。
若要提取存储帐户的 ARM ID,请运行以下示例 cmdlet:
$SAId = "/subscriptions/xxxxxxxx-xxxx-xxxx-xxxx/resourcegroups/adlsrg/providers/Microsoft.Storage/storageAccounts/PSTestSA"
向存储帐户上的备份保管库授予权限
备份保管库需要对存储帐户拥有权限才能在存储帐户中存在的 Data Lake Storage 上启用备份。 保管库的系统分配托管标识用于分配此类权限。
需要通过 Azure 基于角色的访问控制(RBAC)将所需权限分配给由托管系统标识(MSI)表示的已创建保管库及相关的存储帐户。
了解如何使用 Azure Data Lake Storage 的 Azure 门户向备份保管库授予权限。
触发对保管库备份配置的请求
设置所有相关权限后,通过运行以下 cmdlet 配置 Azure Date Lake Storage 保管库备份:
创建新的备份配置对象以指定要备份的容器集。
若要备份所有容器,请传递
-IncludeAllContainer参数。 对于特定容器,请将容器列表传递给-VaultedBackupContainer参数。$backupConfig=New-AzDataProtectionBackupConfigurationClientObject -DatasourceType AzureDataLakeStorage -IncludeAllContainer -StorageAccountResourceGroupName "StorageRG" -StorageAccountName "testpscmd"使用你通过
Initialize-AzDataProtectionBackupInstancecmdlet 创建的相关保管库、策略、存储帐户和备份配置对象来准备请求。$instance=Initialize-AzDataProtectionBackupInstance -DatasourceType AzureDataLakeStorage -DatasourceLocation $TestBkpVault.Location -PolicyId $adlsBkpPol.Id -DatasourceId $SAId -BackupConfiguration $backupConfig提交请求以使用
New-AzDataProtectionBackupInstancecmdlet 触发备份配置。New-AzDataProtectionBackupInstance -ResourceGroupName "StorageRG" -VaultName $TestBkpVault.Name -BackupInstance $instance
本文介绍如何使用 Azure CLI 为 Azure Data Lake Storage 配置保管库备份。
Prerequisites
在为 Azure Data Lake Storage 配置保管库备份之前,请确保满足以下先决条件:
- 确定或 创建备份保管库 以配置 Azure Data Lake Storage 备份。
- 查看 Azure Data Lake Storage 备份 支持的方案 。
- 为 Azure Data Lake Storage 创建一个备份策略 ,用于定义备份计划和保留范围。
使用 Azure CLI 为 Azure Data Lake Storage 配置保管库备份
创建保管库和备份策略后,请查看以下部分,为 Azure Data Lake Storage 配置保管库备份:
- 获取要保护的 Data Lake Storage 所在存储帐户的 ARM ID
- 向备份保管库授予权限
- 触发备份配置请求
重要
当为 Data Lake Storage 备份配置存储帐户后,会影响一些功能,例如 更改馈送 和 删除锁。 了解详细信息。
获取要保护的 Data Lake Storage 所在存储帐户的 ARM ID
为 Azure Data Lake Storage 配置保管库备份需要存储帐户的 Azure 资源管理器 (ARM) ID。 此 ID 用于识别包含您要保护的 Data Lake Storage 的存储帐户。 例如,在 Southeast Asia 区域中不同订阅的资源组 adlsrg 中使用存储帐户 CLITestSA。
若要提取存储帐户的 ARM ID,请运行以下命令:
"/subscriptions/xxxxxxxx-xxxx-xxxx-xxxx/resourcegroups/adlsrg/providers/Microsoft.Storage/storageAccounts/CLITestSA"
向存储帐户上的备份保管库授予权限
备份保管库需要对存储帐户拥有权限才能在存储帐户中存在的 Data Lake Storage 上启用备份。 保管库的系统分配托管标识用于分配此类权限。
需要通过 Azure 基于角色的访问控制(RBAC)将所需权限分配给由托管系统标识(MSI)表示的已创建保管库及相关的存储帐户。
了解如何使用 Azure Data Lake Storage 的 Azure 门户向备份保管库授予权限。
触发对保管库备份配置的请求
设置所有相关权限后,通过运行以下示例 cmdlet 配置 Azure Date Lake Storage 保管库备份:
通过使用
az dataprotection backup-instance initialize命令创建的相关保管库、策略、存储帐户以及备份配置对象来准备请求。az dataprotection backup-instance initialize --datasource-type AzureDataLakeStorage -l southeastasia --policy-id "/subscriptions/aaaa0a0a-bb1b-cc2c-dd3d-eeeeee4e4e4e/resourceGroups/testBkpVaultRG/providers/Microsoft.DataProtection/backupVaults/TestBkpVault/backupPolicies/AdlsPolicy1" --datasource-id "/subscriptions/aaaa0a0a-bb1b-cc2c-dd3d-eeeeee4e4e4e/resourcegroups/adlsrg/providers/Microsoft.Storage/storageAccounts/CLITestSA" > backup_instance.json使用
az dataprotection backup-instance create命令提交请求以触发备份配置。az dataprotection backup-instance create -g adlsrg--vault-name TestBkpVault --backup-instance backup_instance.json以下示例 JSON 为具有指定策略和容器列表的指定存储帐户配置 Azure Data Lake Storage 备份。
{ "properties": { "friendlyName": " adlsbackup", "dataSourceInfo": { "resourceID": "/subscriptions/ xxxxxxx-xxxx-xxxx-xxxx /resourceGroups/adlsrg/providers/Microsoft.Storage/storageAccounts/adlsbackup", "resourceUri": "/subscriptions/ xxxxxxx-xxxx-xxxx-xxxx /resourceGroups/adlsrg/providers/Microsoft.Storage/storageAccounts/adlsbackup", "datasourceType": "Microsoft.Storage/storageAccounts/adlsBlobServices", "resourceName": " adlsbackup", "resourceType": "Microsoft.Storage/storageAccounts", "resourceLocation": "francesouth", "objectType": "Datasource" }, "policyInfo": { "policyId": "/subscriptions/ xxxxxxxx-xxxx-xxxx-xxxx/resourceGroups/adlsrg/providers/Microsoft.DataProtection/backupVaults/ TestBkpVault/backupPolicies/AdlsPolicy1", "policyParameters": { "backupDatasourceParametersList": [ { "containersList": [ "container7", "container8" ], "objectType": "AdlsBlobBackupDatasourceParameters" } ] } }, "protectionStatus": { "status": "ProtectionConfigured" }, "currentProtectionState": "ProtectionConfigured", "provisioningState": "Succeeded", "objectType": "BackupInstance" }, "id": "/subscriptions/ xxxxxxxx-xxxx-xxxx-xxxx /resourceGroups/adlsrg/providers/Microsoft.DataProtection/backupVaults/ TestBkpVault/backupInstances/adlsbackup", "name": " adlsbackup", "type": "Microsoft.DataProtection/backupVaults/backupInstances" }