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

配置生命周期管理策略

Azure 存储生命周期管理可提供基于规则的策略,用于将 blob 数据转移到最适合的访问层,或在数据生命周期结束时使数据过期。 生命周期策略作用于基础 blob,并且可以选择作用于 blob 的版本还是快照。 有关生命周期管理策略的详细信息,请参阅通过自动管理数据生命周期来优化成本

生命周期管理策略由一个或多个规则组成,这些规则定义了一组根据所满足的条件要执行的操作。 对于基础 blob,可以选择检查以下条件之一:

  • 自创建 blob 以来经过的天数。
  • 自上次修改 blob 以来经过的天数。
  • 自上次访问 blob 以来经过的天数。 若要在操作中使用此条件,必须先启用访问时间跟踪(可选)

当所选条件为 true 时,管理策略将执行指定操作。 例如,如果已经定义一项操作(将 30 天内未经修改的 blob 从热层移至冷层),则生命周期管理策略将会在自上次对该 blob 执行写入操作过去 30 天后移动此 blob。

对于 blob 快照或版本,所要检查的条件是自创建快照或版本以来经过的天数。

启用访问时间跟踪(可选)

在配置生命周期管理策略之前,可以选择启用 blob 访问时间跟踪。 启用访问时间跟踪时,生命周期管理策略可能会根据上次通过读取或写入操作访问 blob 的时间加入一项操作。

若要通过 Azure 门户启用上次访问时间跟踪,请执行以下步骤:

  1. 导航到 Azure 门户中的存储帐户。

  2. 在“数据管理”部分,选择“生命周期管理”。

    该屏幕截图显示了如何在 Azure 门户中启用上次访问跟踪。

使用 daysAfterLastAccessTimeGreaterThan 属性来指定应当在自上次访问经过多少天后,对 Blob 执行操作。

创建或管理策略

可以使用 Azure 门户、PowerShell、Azure CLI 或 Azure 资源管理器模板来添加、编辑或删除生命周期管理策略。

可以在 Azure 门户中通过两种方式添加策略。

列表视图

  1. 在 Azure 门户中导航到存储帐户。

  2. 在“数据管理”下,选择“生命周期管理”以查看或更改生命周期管理策略。

  3. 选择“列表视图”选项卡。

  4. 选择“添加规则”并在“详细信息”表单上为你的规则命名。 你还可以设置“规则范围”、“Blob 类型”和“Blob 子类型”值。 下面的示例设置筛选 Blob 的范围。 这将导致添加“筛选器集”选项卡。

    Azure 门户中的“生命周期管理”>“添加规则”>“详细信息”页

  5. 选择“基础 Blob”以设置规则的条件。 在以下示例中,如果 Blob 有 30 天未修改,它们将转移到冷存储。

    Azure 门户中的“生命周期管理”>“基础 Blob”页

    只有在启用访问时间跟踪后,才可以使用“上次访问”选项。 若要了解如何启用访问跟踪,请参阅启用访问时间跟踪(可选)

  6. 如果你在“详细信息”页上选择了“使用筛选器限制 Blob” ,请选择“筛选器集”来添加可选筛选器。 下方示例筛选的是 sample-container 容器中名称以 log 开头的 Blob。

    Azure 门户中的生命周期管理筛选器集页

  7. 选择“添加”以添加新策略。

代码视图

  1. 在 Azure 门户中导航到存储帐户。
  2. 在“数据管理”下,选择“生命周期管理”以查看或更改生命周期管理策略。
  3. 选择“代码视图”选项卡。在此选项卡上,你可以定义 JSON 生命周期管理策略。

下方 JSON 示例定义了以下生命周期策略:将名称以 log 开头的块 Blob 移动到冷层,但前提是该 Blob 已有超过 30 天时间未经修改。

{
  "rules": [
    {
      "enabled": true,
      "name": "move-to-cool",
      "type": "Lifecycle",
      "definition": {
        "actions": {
          "baseBlob": {
            "tierToCool": {
              "daysAfterModificationGreaterThan": 30
            }
          }
        },
        "filters": {
          "blobTypes": [
            "blockBlob"
          ],
          "prefixMatch": [
            "sample-container/log"
          ]
        }
      }
    }
  ]
}

必须完整读取或写入生命周期管理策略。 不支持部分更新。

注意

每个规则最多可以有 10 个区分大小写的前缀和 10 个 Blob 索引标记条件。

注意

如果为存储帐户启用了防火墙规则,生命周期管理请求可能会被阻止。 可以通过针对受信任的 Microsoft 服务提供例外来取消阻止这些请求。 有关详细信息,请参阅“配置防火墙和虚拟网络”中的“例外”部分。

注意

生命周期管理策略无法更改使用加密范围的 Blob 层。

请参阅