S3: Objetos de versão desatualizada do S3

Esta regra identifica buckets Amazon S3 que:

  • Possuem versionamento habilitado

  • Contêm versões não atuais (noncurrent versions)

  • Atendem ao critério de idade configurado

  • Atendem aos filtros de tag definidos

O objetivo é identificar acúmulo de versões antigas que geram custo recorrente desnecessário.


Contexto da regra e impacto no negócio

Quando o versionamento está habilitado:

  • Toda alteração cria uma nova versão

  • Versões antigas permanecem armazenadas

  • Custos de storage aumentam continuamente

Problemas comuns:

  • Falta de política de retenção

  • Acúmulo de versões obsoletas

  • Crescimento silencioso de storage

Impacto:

  • Custo recorrente invisível

  • Storage duplicado

  • Falta de governança de retenção

Classificação: ECONOMIA + GOVERNANÇA


Detalhamento técnico da regra

A regra avalia todos os buckets da conta (escopo global).


Como a regra é executada

  1. Executa:

  2. Para cada bucket:

    • Obtém tags:

    • Aplica filtros de tag.

    • Verifica versionamento:

      Condição:

    • Lista versões:

    • Filtra versões não atuais:

    • Aplica filtro de idade:

  3. Bucket é sinalizado quando houver ao menos uma versão não atual que atenda ao critério temporal.


Lógica aplicada

Um bucket será sinalizado quando:


Campos analisados

Bucket S3:

  • Name

  • Tags

  • Versioning.Status

  • ARN

Versões analisadas:

  • IsLatest

  • DeleteMarker

  • LastModified


Parâmetros considerados na busca

APIs utilizadas:

  • s3:ListBuckets

  • s3:GetBucketTagging

  • s3:GetBucketVersioning

  • s3:ListObjectVersions

Parâmetros configuráveis:

  • period.days

  • period.operator (greater_than / less_than)

  • Filtros de tag


Período Avaliado (Filtro Temporal)

Período Avaliado: 15 dias

Baseado em:

Configuração padrão é de identificar versões desatualizadas de objetos dentro do período de 15 dias, objetos que não estão seguindo a boa prática de marcador de exclusão para versionamento de objetos S3, ajudando a otimizar custos.

Esse parâmetro de avaliação pode ser ajustado nas configurações das regras.


Intervalo de Análise

Execução padrão: a cada 8 horas.


Calculo de Savings

Versões não atuais representam custo adicional de armazenamento.

Seguindo o padrão das regras de recurso potencialmente eliminável:

Fórmula Oficial de Savings

Interpretação

O savings considera:

  • 100% do custo associado ao armazenamento das versões não atuais

  • Campo do CUR:

Serviço relacionado:


Exemplo de Impacto

Cenário:

  • Bucket com 3 TB em versões antigas

  • Custo mensal associado: $1.800

Savings estimado:

Caso sejam aplicadas políticas de expiração.


Dicas de uso e boas práticas para o usuário

Antes de remover versões:

  • Validar se há dependência de rollback.

  • Confirmar política de retenção.

  • Avaliar requisitos legais.

Boas práticas:

  • Implementar lifecycle para:

    • Expirar versões não atuais após X dias

    • Transicionar para Glacier

  • Definir padrão organizacional de retenção.

  • Monitorar crescimento via S3 Storage Lens.

Exceções possíveis:

  • Buckets de compliance.

  • Ambientes regulados.

  • Requisitos de auditoria.


Last updated