使用 Azure CLI 备份 Azure 文件共享

Azure CLI 提供了一个命令行体验,用于管理 Azure 资源。 它是构建自定义自动化以使用 Azure 资源的绝佳工具。 本文详细介绍了如何使用 Azure CLI 备份 Azure 文件共享。 也可以通过 Azure PowerShellAzure 门户执行这些步骤。

在本教程结束时,你将学会如何使用 Azure CLI 执行以下操作:

  • 创建恢复服务保管库
  • 为 Azure 文件共享启用备份
  • 为文件共享触发按需备份

先决条件

  • 如需在本地运行 CLI 参考命令,请安装 Azure CLI。 如果在 Windows 或 macOS 上运行,请考虑在 Docker 容器中运行 Azure CLI。 有关详细信息,请参阅如何在 Docker 容器中运行 Azure CLI

    • 如果使用的是本地安装,请使用 az login 命令登录到 Azure CLI。 若要完成身份验证过程,请遵循终端中显示的步骤。 有关其他登录选项,请参阅使用 Azure CLI 登录

    • 出现提示时,请在首次使用时安装 Azure CLI 扩展。 有关扩展详细信息,请参阅使用 Azure CLI 的扩展

    • 运行 az version 以查找安装的版本和依赖库。 若要升级到最新版本,请运行 az upgrade

  • 本教程需要 Azure CLI 版本 2.0.18 或更高版本。

创建恢复服务保管库

恢复服务保管库是一个实体,它为你提供跨所有备份项的合并视图和管理功能。 运行受保护资源的备份作业时,该作业会在恢复服务保管库中创建一个恢复点。 然后,可以使用其中一个恢复点将数据还原到给定的时间点。

若要创建恢复服务保管库,请按以下步骤操作:

  1. 保管库放在资源组中。 如果没有现有的资源组,请使用 az group create 新建一个。 在本教程中,我们将在中国北部区域中新建资源组 azurefiles

    az group create --name AzureFiles --location chinanorth --output table
    
    Location    Name
    ----------  ----------
    chinanorth      AzureFiles
    
  2. 使用 az backup vault create cmdlet 来创建保管库。 请为保管库指定与资源组相同的位置。

    下面的示例将在中国北部区域中创建名为 azurefilesvault 的恢复服务保管库。

    az backup vault create --resource-group azurefiles --name azurefilesvault --location chinanorth --output table
    
    Location    Name                ResourceGroup
    ----------  ----------------    ---------------
    chinanorth      azurefilesvault     azurefiles
    

为 Azure 文件共享启用备份

为了能够更好地理解此部分,你需要已有要为其配置备份的 Azure 文件共享。 如果没有,请使用 az storage share create 命令来创建 Azure 文件共享。

若要为文件共享启用备份,则需要创建一个保护策略来定义备份作业何时运行以及恢复点存储多长时间。 可以使用 az backup policy create cmdlet 来创建备份策略。

下面的示例使用 az backup protection enable-for-azurefileshare cmdlet 通过计划 1 备份策略为 afsaccount 存储帐户中的 azurefiles 文件共享启用备份:

az backup protection enable-for-azurefileshare --vault-name azurefilesvault --resource-group  azurefiles --policy-name schedule1 --storage-account afsaccount --azure-file-share azurefiles  --output table
Name                                  ResourceGroup
------------------------------------  ---------------
0caa93f4-460b-4328-ac1d-8293521dd928  azurefiles

输出中的“Name”属性对应于备份服务为“启用备份”操作创建的作业的名称。 若要跟踪此作业的状态,请使用 az backup job show cmdlet。

为文件共享触发按需备份

若要为文件共享触发按需备份,而不是等待备份策略在计划时间运行作业,请使用 az backup protection backup-now cmdlet。

需要定义以下参数来触发按需备份:

  • --container-name 是托管文件共享的存储帐户的名称。 若要检索容器的名称或易记名称,请使用 az backup container list 命令。
  • --item-name 是要为其触发按需备份的文件共享的名称。 若要检索已备份项的名称或易记名称,请使用 az backup item list 命令。
  • --retain-until 指定恢复点保持期截止日期。 应将此值设置为 UTC 时间格式 (dd-mm-yyyy)。

下面的示例为 afsaccount 存储帐户中的 azurefiles 文件共享触发按需备份,保持期截止日期为 2020 年 1 月 20 日。

az backup protection backup-now --vault-name azurefilesvault --resource-group azurefiles --container-name "StorageContainer;Storage;AzureFiles;afsaccount" --item-name "AzureFileShare;azurefiles" --retain-until 20-01-2020 --output table
Name                                  ResourceGroup
------------------------------------  ---------------
9f026b4f-295b-4fb8-aae0-4f058124cb12  azurefiles

输出中的“Name”属性对应于备份服务为“按需备份”操作创建的作业的名称。 若要跟踪此作业的状态,请使用 az backup job show cmdlet。

后续步骤