Configurar uma política de gerenciamento do ciclo de vida

O gerenciamento do ciclo de vida do Armazenamento de Blobs do Azure oferece uma política baseada em regras que você pode usar para fazer a transição de dados de blob nas camadas de acesso apropriadas ou para expirar dados no final do ciclo de vida dos dados. Uma política de ciclo de vida atua em um blob de base e, opcionalmente, nas versões ou nos instantâneos de blob. Para obter mais informações sobre políticas de gerenciamento do ciclo de vida, confira Otimizar custos ao gerenciar automaticamente o ciclo de vida de dados.

Uma política de gerenciamento do ciclo de vida é composta de uma ou mais regras que definem um conjunto de ações a serem tomadas com base em uma condição atendida. Em um blob de base, você pode escolher verificar uma das seguintes condições:

Quando a condição selecionada for verdadeira, a política de gerenciamento executará a ação especificada. Por exemplo, se você definiu uma ação para mover um blob que não foi modificado por 30 dias da camada de acesso frequente para a camada de acesso esporádico, a política de gerenciamento do ciclo de vida move o blob 30 dias após a última operação de gravação desse blob.

Para um instantâneo ou versão de blob, a condição verificada é o número de dias desde a criação do instantâneo ou da versão.

Habilitar opcionalmente o rastreamento de tempo de acesso

Antes de configurar uma política de gerenciamento do ciclo de vida, você pode optar por habilitar o rastreamento de tempo de acesso a blob. Quando o rastreamento de tempo de acesso está habilitado, uma política de gerenciamento do ciclo de vida pode incluir uma ação com base no horário do último acesso do blob com uma operação de leitura ou gravação. Para minimizar o impacto na latência de acesso de leitura, somente a primeira leitura das últimas 24 horas atualiza o horário do último acesso. As leituras subsequentes no mesmo período de 24 horas não atualizam o horário do último acesso. Se um blob for modificado entre leituras, o horário do último acesso será o mais recente dos dois valores.

Se o rastreamento de hora do último acesso não estiver habilitado, o daysAfterLastAccessTimeGreaterThan usará a data em que a política de ciclo de vida foi habilitada em vez da propriedade LastAccessTime do blob. Essa data também é usada quando a propriedade LastAccessTime é um valor nulo. Para obter mais informações sobre como usar o rastreamento de hora do último acesso, confira Mover dados com base na hora do último acesso.

Para habilitar o rastreamento de tempo do último acesso com o portal do Azure, siga estas etapas:

  1. Navegue até sua conta de armazenamento no portal do Azure.

  2. Na seção Gerenciamento de dados, selecione Gerenciamento do ciclo de vida.

  3. Marque a caixa de seleção "Habilitar rastreamento de acesso"

    Captura de tela mostrando como habilitar o rastreamento do último acesso no portal do Azure.

Use a propriedade daysAfterLastAccessTimeGreaterThan para especificar o número de dias do último acesso após o qual uma ação deve ser efetuada em um blob.

Criar um gerenciar uma política

Você pode adicionar, editar ou remover uma política de gerenciamento do ciclo de vida com o portal do Azure, o PowerShell, a CLI do Azure ou um modelo do Azure Resource Manager.

Há duas maneiras de adicionar uma política através do portal do Azure.

Modo de exibição de lista

  1. No portal do Azure, navegue até sua conta de armazenamento.

  2. Em Gerenciamento de dados, escolha Gerenciamento de ciclo de vida para ver ou mudar as políticas de gerenciamento do ciclo de vida.

  3. Selecione a guia Exibição da Lista.

  4. Selecione Adicionar uma regra e nomeie sua regra no formulário Detalhes. Você também pode definir o Escopo da regra, o Tipo de blobe os valores do Subtipo de blob. O exemplo a seguir define o escopo para filtrar blobs. Isso faz com que a guia Conjunto de filtros seja adicionada.

O gerenciamento do ciclo de vida adiciona uma página de detalhes da regra no portal do Azure

  1. Selecione Blobs de base para definir as condições para a regra. No exemplo a seguir, os blobs são movidos para a camada de armazenamento esporádico, caso não tenham sido modificados por 30 dias.

Página de blobs de base de gerenciamento do ciclo de vida no portal do Azure

A opçãoÚltima acessada só estará disponível se você tiver habilitado o rastreamento de tempo de acesso e tiver selecionado Bloquear blobs como o tipo de blob. Para saber como habilitar o rastreamento de acesso, confira Habilitar opcionalmente o rastreamento de tempo de acesso.

  1. Se você selecionou Limitar BLOBS com filtros na página Detalhes, selecione Conjunto de filtros para adicionar um filtro opcional. O exemplo a seguir filtra em blobs com nome que começa com log em um contêiner chamado de sample-container.

Página conjunto de filtros do gerenciamento do ciclo de vida no portal do Azure

  1. Selecione Adicionar para adicionar a nova política.

Tenha em mente que uma política de gerenciamento do ciclo de vida não excluirá a versão atual de um blob até que todas as versões anteriores ou instantâneos associados a esse blob tenham sido excluídos. Se os blobs em sua conta de armazenamento tiverem versões ou instantâneos anteriores, você deverá selecionar Blobs base, Instantâneos e Versões na seção Subtipo de Blob quando estiver especificando uma ação de exclusão como parte da política.

Visualização do código

  1. No portal do Azure, navegue até sua conta de armazenamento.
  2. Em Gerenciamento de dados, escolha Gerenciamento de ciclo de vida para ver ou mudar as políticas de gerenciamento do ciclo de vida.
  3. Escolha a guia Exibição de código. Nela, você pode definir uma política de gerenciamento do ciclo de vida no JSON.

A amostra de JSON a seguir define uma política de ciclo de vida que move um blob de blocos cujo nome começa com log para a camada de acesso esporádico se fizer mais de 30 dias desde que o blob tenha sido modificado.

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

Confira também