Exclusão reversível para contêineres

A eliminação suave de contêineres protege seus contêineres contra exclusão acidental, mantendo os contêineres excluídos na conta de armazenamento por um período especificado. Durante o período de retenção, você pode restaurar um contêiner excluído temporariamente e seu conteúdo ao estado que o contêiner tinha no momento em que foi excluído. Depois que o período de retenção expirar, o contêiner e seu conteúdo serão excluídos permanentemente.

A exclusão reversível do container faz parte de uma estratégia abrangente de proteção de dados na própria conta. Para obter a proteção ideal para sua conta de armazenamento, a Microsoft recomenda habilitar os seguintes recursos de proteção de dados:

Para proteção contra cenários mais amplos de perda de dados, como exclusão acidental de conta ou ransomware, considere habilitar Backup do Azure além de recursos na conta. Para saber mais sobre as recomendações da Microsoft para proteção de dados baseadas na sua carga de trabalho, veja Visão Geral de Proteção de Dados.

Tip

Para habilitar a exclusão reversível de blobs e contêineres em escala, use a Política do Azure interna Configurar a exclusão reversível para blobs e contêineres em contas de armazenamento.

Como funciona a exclusão leve de contêineres

Ao ativar a eliminação suave de contêineres, especifique um período de retenção para contêineres excluídos entre 1 e 365 dias. O período de retenção padrão é de sete dias. Escolha um mínimo de sete dias e aumente o período de retenção conforme necessário com base no volume de dados e no tempo que pode levar para detectar e responder a eventos de perda de dados.

Durante o período de retenção, você pode recuperar um contêiner excluído chamando a operação Restaurar Contêiner. Quando você restaura um contêiner, os blobs do contêiner e todas as versões de blob e instantâneos também são restaurados.

Aviso

A exclusão temporária de contêiner pode restaurar somente contêineres inteiros e seu conteúdo no momento da exclusão. Para restaurar um blob excluído quando seu contêiner pai não está excluído, você deve usar blob soft delete ou blob versioning. Quando você restaura um contêiner, você deve restaurá-lo para seu nome original. Se você usar o nome original para criar um novo container, não poderá restaurar o container excluído temporariamente.

O diagrama a seguir mostra como um contêiner excluído pode ser restaurado quando a exclusão temporária de contêineres está habilitada:

Diagrama mostrando como um contêiner com deleção suave é restaurado quando a exclusão suave do contêiner é ativada.

Após o término do período de retenção, o Armazenamento do Azure exclui permanentemente o contêiner e você não pode recuperá-lo. A contagem do período de retenção começa quando o contêiner é excluído. Você pode alterar o período de retenção a qualquer momento, mas a nova configuração se aplica somente aos contêineres excluídos após a atualização. Contêineres que já foram deletados são removidos permanentemente com base no período de retenção que estava em vigor quando foram originalmente excluídos.

Desativar a exclusão reversível do contêiner não faz com que os contêineres com exclusão reversível existentes sejam excluídos permanentemente. Eles são deletados permanentemente com base no período de retenção aplicado no momento em que foram excluídos.

A exclusão temporária de contêineres está disponível para os seguintes tipos de contas de armazenamento:

  • Contas de armazenamento v1 e v2 de uso geral
  • Contas de armazenamento de blob de blocos
  • Contas de armazenamento de Blobs

Também há suporte para contas de armazenamento com um namespace hierárquico habilitado para uso com o Azure Data Lake Storage.

A versão 2019-12-12 ou posterior da API REST do Armazenamento do Azure dá suporte à exclusão temporária de contêineres.

O papel embutido menos privilegiado para restaurar um contêiner com exclusão reversível é o Contribuidor de Dados de Blob de Armazenamento.

Importante

A exclusão reversível de contêineres não protege contra a exclusão de uma conta de armazenamento, mas apenas contra a exclusão de contêineres nessa conta. Para proteger uma conta de armazenamento contra a exclusão, configure um bloqueio no recurso de conta de armazenamento. Para saber mais sobre como bloquear recursos do Azure Resource Manager, confira Bloquear recursos para impedir alterações inesperadas.

Considerações sobre a carga de trabalho

Considere os seguintes pontos antes de ativar a eliminação suave do contêiner em contas existentes:

  • A ativação não é retroativa: A eliminação suave de contêineres protege apenas contêineres que você exclui depois de habilitá-la. Você não pode recuperar contêineres excluídos antes de ativá-los.

  • Os contêineres são restaurados apenas com seu nome original: Você pode restaurar um contêiner excluído temporariamente apenas com o nome que ele tinha quando foi excluído. Se você criar um novo contêiner com esse nome, deve renomeá-lo ou excluí-lo antes de restaurar.

  • O período de retenção mais curto tem precedência: A exclusão suave do contêiner e a exclusão suave do blob têm períodos de retenção independentes. Se a retenção de blob soft delete for menor que a retenção soft delete do container, os blobs dentro de um container restaurado podem já estar permanentemente excluídos antes do término do período de retenção do container. Alinhe os dois períodos de retenção para evitar restaurar um contêiner com blobs ausentes.

  • As mudanças na retenção não são retroativas: Alterar o período de retenção se aplica apenas a contêineres excluídos após a atualização. Contêineres já excluídos de forma reversível mantêm o período de retenção que estava em vigor quando foram excluídos.

  • Estender a retenção em um contêiner já com exclusão reversível requer uma nova exclusão: Para aplicar um período de retenção mais longo a um contêiner que já está com exclusão reversível, restaure-o e exclua-o novamente com o novo período de retenção em vigor.

  • Desativar a exclusão reversível não elimina os contêineres excluídos de forma reversível existentes: Quando você desativa a exclusão reversível de contêiner, o serviço não remove imediatamente contêineres que já foram excluídos de forma reversível. Eles persistem e permanecem recuperáveis até que seu período original de retenção expire.

  • Contas HNS não podem enumerar contêineres excluídos temporariamente: Em contas com namespace hierárquico, você não pode listar quais contêineres foram excluídos temporariamente. A restauração exige saber o nome original exato do contêiner.

  • Bloqueia a atualização de uma conta de namespace plano para um namespace hierárquico (ADLS): A migração para um namespace hierárquico é bloqueada enquanto a eliminação suave do contêiner está ativada. Desative antes de migrar e depois reative após a migração terminar.

Suporte a funcionalidades

O suporte para esse recurso pode ser afetado ao habilitar o Data Lake Storage Gen2, o protocolo NFS (Sistema de Arquivos de Rede) 3.0 ou o protocolo SFTP (Protocolo de Transferência de Arquivo SSH). Se você tiver habilitado qualquer um desses recursos, consulte o Suporte a recursos de Armazenamento de Blobs nas contas de Armazenamento do Azure para avaliar o suporte para esse recurso.

Preços e cobrança

Não há cobrança adicional para habilitar a exclusão reversível do contêiner. Você paga pelos dados em contêineres com deleção suave na mesma taxa que dados ativos.

Para minimizar custos, defina o menor período de retenção que dê tempo suficiente para sua equipe detectar e recuperar dados após uma exclusão acidental. A Microsoft recomenda um mínimo de sete dias, mas você deve ajustar esse valor com base no volume de dados da sua carga de trabalho e nos requisitos.

Monitoramento e solução de problemas

Monitore eventos de exclusão de contêineres usando registros de atividade do Azure Monitor. Para visualizar contêineres excluídos temporariamente no portal do Azure, ative Mostrar contêineres excluídos no navegador de Armazenamento. De forma programática, use a operação List Containers com include=deleted.

  • Meu contêiner excluído temporariamente não está visível: Contêineres excluídos temporariamente são ocultos por padrão. No portal do Azure, ative Mostrar contêineres excluídos no navegador de Armazenamento. Via API, chame List Containers com include=deleted. Se o contêiner ainda não aparecer, confirme que a exclusão reversível do contêiner foi ativada antes de o contêiner ser excluído e que o período de retenção não tenha expirado.

  • Não consigo restaurar meu contêiner porque o nome já está tomado: Você criou um novo contêiner com o mesmo nome depois que o original foi deletado. Você só pode restaurar um contêiner com seu nome original, então renomeie ou exclua primeiro o contêiner conflitante e depois restaure.

  • Não consigo encontrar meu contêiner excluído temporariamente em uma conta HNS: Contas com namespace hierárquico não suportam enumerar contêineres excluídos temporariamente. A restauração requer o nome original exato do contêiner.

  • Minha atualização para um namespace hierárquico (ADLS) está bloqueada: A exclusão reversível do contêiner bloqueia a migração para um namespace hierárquico. Desative a eliminação suave do container, realize a migração e depois reative-a após a conclusão da migração.

  • Preciso restaurar vários contêineres ao mesmo tempo: Restauração em massa não está disponível no portal do Azure. Use o Azure PowerShell ou a CLI do Azure para automatizar a restauração em vários contêineres.

  • Preciso desabilitar a exclusão reversível em larga escala após tê-la habilitado de forma excessivamente ampla: Consulte Habilitar a exclusão reversível para contêineres para obter instruções sobre como desabilitar a exclusão reversível usando várias ferramentas.

Próximas etapas