你当前正在访问 Microsoft Azure Global Edition 技术文档网站。 如果需要访问由世纪互联运营的 Microsoft Azure 中国技术文档网站,请访问 https://docs.azure.cn

为 Azure Data Lake Storage 配置保管库备份

本文介绍如何使用 Azure 门户为 Azure Data Lake Storage 配置保管库备份。

Prerequisites

在为 Azure Data Lake Storage 配置保管库备份之前,请确保满足以下先决条件:

Note

  • 此功能目前仅在特定区域中可用。 请参阅 支持的区域
  • 保管备份只能还原到不同的存储帐户。

若要详细了解支持的方案、限制和可用性,请参阅支持矩阵

为 Azure Data Lake Storage 配置托管备份

可以在多个 Azure Data Lake Storage 上配置备份。

若要配置保管库备份,请执行以下步骤:

  1. Azure 门户中,转到 “备份保管库”,然后选择“ + 备份”。

  2. 在“ 配置备份 ”窗格的“ 基本信息 ”选项卡上,查看 “数据源类型 ”已选为 Azure Data Lake Storage

  3. “备份策略 ”选项卡上的 “备份策略”下,选择要用于数据保留的策略,然后选择“ 下一步”。 如果要创建新的备份策略,请选择“ 新建”。 了解如何 创建备份策略

  4. “数据源 ”选项卡上,选择“ 添加”。

    屏幕截图显示了如何添加要备份的资源。

  5. “选择存储帐户容器”窗格中,提供备份实例名称,然后单击“存储帐户”下的“选择”。

    屏幕截图显示如何提供备份实例名称。

  6. 在“选择启用了分层命名空间的存储帐户”窗格中,从列表中与保管库位于同一区域的订阅中选择具有 Azure Data Lake Storage 的存储帐户。

    屏幕截图显示了存储帐户的选择。

  7. “选择存储帐户容器 ”窗格中,可以备份所有容器或选择特定的容器。

    添加资源后,备份就绪情况验证将启动。 如果分配了所需的角色,则验证会成功并显示 “成功 ”消息。

    屏幕截图显示了角色分配的成功消息。

    缺少访问权限时会显示错误消息。 请参阅 “授予权限”部分

    如果所选存储帐户没有 存储帐户备份参与者 角色,则会出现验证错误。 查看错误消息并执行必要的措施。

    Error Cause 建议的措施
    角色分配未完成 未分配“存储帐户备份参与者”角色,以及存储帐户对保管库所需的其他角色 选择角色,然后选择“ 分配缺少的角色 ”以自动将所需角色分配给备份保管库并触发自动重新验证。

    如果角色传播需要 10 分钟以上,则验证可能会失败。 在这种情况下,需要等待几分钟,然后选择“重新验证”,重新进行验证。

    你需要为各种操作分配以下类型的权限:

    - 资源级 权限:用于备份资源组中的单个帐户。
    - 资源组订阅级 权限:用于备份资源组中的多个帐户。
    - 更高级别 的权限:用于减少所需的角色分配数。

    订阅级别支持的角色分配的最大计数为 4,000详细了解 Azure Role-Based 访问控制限制
    角色分配的权限不足 保管库缺少配置备份所需的角色,而且您的权限不足以分配所需的角色。 下载角色分配模板,然后与有权为存储帐户分配角色的用户共享。
  8. 查看配置详细信息,然后选择“ 配置备份”。

可以在 备份实例下跟踪备份配置的进度。 完成备份配置后,Azure 备份会根据备份策略计划触发备份作,以创建恢复点。 备份可能需要至少 30-40 分钟,因为备份依赖于每隔 15 分钟拍摄的快照,并且需要两个快照来检测更改,然后再触发备份。

了解如何 监视备份作业

本文介绍如何使用 PowerShell 为 Azure Data Lake Storage 配置保管库备份。

Prerequisites

在为 Azure Data Lake Storage 配置保管库备份之前,请确保满足以下先决条件:

使用 PowerShell 为 Azure Data Lake Storage 配置保管库备份

创建保管库和备份策略后,请查看以下部分,为 Azure Data Lake Storage 配置保管库备份:

  1. 获取要保护的 Data Lake Storage 所在存储帐户的 ARM ID
  2. 向备份保管库授予权限
  3. 触发备份配置请求

获取要保护的 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 保管库备份:

  1. 创建新的备份配置对象以指定要备份的容器集。

    若要备份所有容器,请传递 -IncludeAllContainer 参数。 对于特定容器,请将容器列表传递给 -VaultedBackupContainer 参数。

    $backupConfig=New-AzDataProtectionBackupConfigurationClientObject -DatasourceType AzureDataLakeStorage -IncludeAllContainer -StorageAccountResourceGroupName "StorageRG" -StorageAccountName "testpscmd"
    
  2. 使用你通过 Initialize-AzDataProtectionBackupInstance cmdlet 创建的相关保管库、策略、存储帐户和备份配置对象来准备请求。

    $instance=Initialize-AzDataProtectionBackupInstance -DatasourceType AzureDataLakeStorage -DatasourceLocation $TestBkpVault.Location -PolicyId $adlsBkpPol.Id -DatasourceId $SAId -BackupConfiguration $backupConfig
    
  3. 提交请求以使用 New-AzDataProtectionBackupInstance cmdlet 触发备份配置。

    New-AzDataProtectionBackupInstance -ResourceGroupName "StorageRG" -VaultName $TestBkpVault.Name -BackupInstance $instance
    

本文介绍如何使用 Azure CLI 为 Azure Data Lake Storage 配置保管库备份。

Prerequisites

在为 Azure Data Lake Storage 配置保管库备份之前,请确保满足以下先决条件:

使用 Azure CLI 为 Azure Data Lake Storage 配置保管库备份

创建保管库和备份策略后,请查看以下部分,为 Azure Data Lake Storage 配置保管库备份:

  1. 获取要保护的 Data Lake Storage 所在存储帐户的 ARM ID
  2. 向备份保管库授予权限
  3. 触发备份配置请求

重要

当为 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 保管库备份:

  1. 通过使用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
    
  2. 使用 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"
    }
    
    

后续步骤