View a markdown version of this page

Como as regras de gerenciamento do ciclo de vida funcionam para os recursos de imagem do Image Builder - EC2 Image Builder

As traduções são geradas por tradução automática. Em caso de conflito entre o conteúdo da tradução e da versão original em inglês, a versão em inglês prevalecerá.

Como as regras de gerenciamento do ciclo de vida funcionam para os recursos de imagem do Image Builder

As regras de ciclo de vida mantêm suas imagens atualizadas e reduzem os custos de infraestrutura, como armazenamento de instantâneos para AMIs de saída e armazenamento de repositórios Amazon ECR para contêineres.

As políticas de ciclo de vida oferecem suporte aos seguintes tipos de regras:

Descontinuar regra

Define o status do recurso de imagem do Image Builder como Deprecated. Os pipelines do Image Builder ainda serão executados para imagens obsoletas. Opcionalmente, você pode definir o tempo de suspensão de uso das AMIs associadas sem afetar sua capacidade de iniciar novas instâncias.

AMIs obsoletas não aparecem em pesquisas gerais. Por exemplo, o describe-images comando Amazon EC2 exclui AMIs obsoletas dos resultados. Para encontrar uma AMI obsoleta, especifique sua ID de AMI diretamente.

nota

Essa regra não se aplica a imagens baseadas em contêineres.

Desabilitar regra

Define o status do recurso de imagem do Image Builder como Disabled. Isso impede que os pipelines do Image Builder sejam executados para essa imagem. Opcionalmente, você pode desativar a AMI associada para evitar a execução de novas instâncias.

Uma AMI desativada se torna privada e não executa mais novas instâncias. Contas, organizações ou unidades organizacionais que anteriormente tinham acesso compartilhado perdem esse acesso.

nota

Essa regra não se aplica a imagens baseadas em contêineres.

Excluir regra

Exclui os recursos de imagem por idade ou por contagem. Você define o limite de acordo com suas necessidades. Quando um recurso de imagem do Image Builder ultrapassar o limite, ele será removido. Opcionalmente, você poderá cancelar o registro das AMIs associadas ou excluir os snapshots dessas AMIs. Você também poderá especificar tags para os recursos que deseja reter além do limite.

Para imagens de contêiner, essa regra exclui o recurso de imagem de contêiner do Image Builder. Você também pode remover imagens de contêineres dos repositórios ECR para evitar o lançamento de novos contêineres.

Prioridade da regra e ordem de avaliação

Quando uma política tem vários tipos de regras, o Image Builder avalia cada recurso nesta ordem:

  1. Descontinuar regra

  2. Desabilitar regra

  3. Excluir regra

Importante

Somente uma ação se aplica a cada recurso por execução. Se um recurso corresponder a uma regra obsoleta, o Image Builder a desaprovará e ignorará as regras de desativação e exclusão desse recurso durante a mesma execução. Em execuções subsequentes, o Image Builder avalia o recurso em relação a outras regras, se ele atender aos critérios.

Esse pedido prioritário oferece suporte a uma estratégia de ciclo de vida progressiva. Por exemplo, você pode configurar uma política para descontinuar as imagens após 90 dias, desativá-las após 120 dias e excluí-las após 180 dias. Cada execução aplica somente a ação de correspondência de maior prioridade.

A imagem indica que ignoram a avaliação da regra

O Image Builder ignora imagens em determinados estados para evitar ações duplicadas:

  • Regra de descontinuação — O Image Builder ignora imagens que já estão obsoletas, desativadas, com falha ou canceladas.

  • Regra de desativação — O Image Builder ignora imagens que já estão desativadas, com falha ou que foram canceladas.

  • Regra de exclusão — O Image Builder avalia imagens em qualquer estado para exclusão, sujeita às regras de retenção e exclusões.

Regras de exclusão do ciclo de vida da AMI

As regras de exclusão protegem AMIs específicas das ações do ciclo de vida. Configure as regras de exclusão no Console de gerenciamento da AWS, na API ou no AWS CLI.

As políticas de ciclo de vida oferecem suporte a esses tipos de regras de exclusão:

  • Tag-based exclusão — Exclui recursos de imagem do Image Builder com tags específicas (até 50 tags). Para obter mais informações sobre como as tags funcionam em diferentes níveis de recursos, consulteTags como seletores de recursos versus regras de exclusão.

  • Exclusão pública de AMIs — exclui AMIs compartilhadas publicamente.

  • Última exclusão lançada — exclui as AMIs que iniciaram uma instância dentro de um período de tempo especificado.

    nota

    O Amazon EC2 relata a hora do último lançamento com um atraso de 24 horas. Os lançamentos nas últimas 24 horas podem não ser refletidos quando a verificação de exclusão é executada.

  • Exclusão de região — Exclui AMIs em particular. Regiões da AWS

  • Exclusão de conta compartilhada — exclui AMIs compartilhadas com determinadas. Contas da AWS

nota

O Image Builder ignora imagens com uma compilação em andamento (estado pendente, de criação, construção, importação, teste, distribuição ou integração). O Image Builder avalia essas imagens na próxima execução programada.

Ordem de avaliação da regra de exclusão da AMI

O EC2 Image Builder AMI-level avalia as regras de exclusão exclusionRules.amis () na AMI de saída depois de determinar a elegibilidade para uma ação de ciclo de vida. Essas regras se aplicam ao recurso Amazon EC2 AMI, não ao recurso de imagem Image Builder. A contagem de retenção é executada separadamente. Uma AMI excluída não consome um slot de retenção. O Image Builder verifica as condições em ordem e ignora a AMI na primeira partida:

  1. Exclusão de região — verifica se a AMI está em uma região excluída.

  2. Exclusão pública da AMI — verifica se a AMI é pública e se a isPublic exclusão está ativada.

  3. Exclusão de tags — Verifica se a AMI tem tags que correspondem ao mapa de tags de exclusão.

  4. Exclusão de conta compartilhada — verifica se a AMI é compartilhada com as contas listadas na exclusão.

  5. Última exclusão lançada — verifica se a AMI foi lançada dentro da janela de tempo excluída.

Nos detalhes do recurso de execução, as AMIs ignoradas exibem um SKIPPED status com um motivo que indica qual condição de exclusão correspondeu.

Tags como seletores de recursos versus regras de exclusão

As tags têm dois propósitos distintos nas políticas de ciclo de vida. Cada mecanismo de tag opera em um nível de recurso específico:

  • Imagem do Image Builder — O recurso do Image Builder que rastreia uma construção (formato ARN:arn:aws:imagebuilder:region:account:image/name/version). Gerencie tags nesse recurso por meio do Image Builder.

  • AMI de saída ou imagem de contêiner — A imagem de contêiner subjacente do Amazon EC2 AMI ou Amazon ECR que o Image Builder produz. Gerencie tags nesses recursos por meio do Amazon EC2 ou do Amazon ECR, respectivamente.

Etiquetas como seletores de recursos (escopo da política)

Tag-based a seleção de recursos avalia as tags somente no recurso de imagem do Image Builder, não nas AMIs ou contêineres de saída. O Image Builder usa essas tags para encontrar recursos aos quais a política se aplica.

Configure a seleção de recursos com base em tags no resourceSelection.tagMap campo. Cada entrada é um par de valores-chave. A política seleciona imagens do Image Builder que correspondam a qualquer par de chave-valor de tag (lógica OR) especificado. O Image Builder não avalia imagens sem as tags correspondentes.

Tags como regras de exclusão (exceções em nível de regra)

As etiquetas de exclusão funcionam na direção oposta. Depois que o Image Builder seleciona recursos com base no escopo da política, ele verifica cada recurso em relação às regras de exclusão antes de realizar qualquer ação. Configure as tags de exclusão em dois níveis, cada um operando em um tipo de recurso diferente:

exclusionRules.tagMap

Avalia as tags somente no recurso de imagem do Image Builder. Não verifica tags em AMIs ou contêineres subjacentes. Se uma tag de imagem do Image Builder corresponder a uma entrada (correspondência exata de chave e valor), o Image Builder ignorará a imagem e todos os recursos de saída associados.

exclusionRules.amis.tagMap

Avalia as tags na AMI de saída (o EC2-level recurso da Amazon) durante o processamento do recurso associado. Use isso para excluir AMIs de saída específicas com base em suas tags do Amazon EC2 (por exemplo, tags aplicadas por meio de configurações de distribuição ou diretamente por meio do Amazon EC2).

Importante

Selecione recursos e exclusionRules.tagMap não avalie tags em AMIs de saída (tags do Amazon EC2) ou contêineres (tags do Amazon ECR). Para excluir AMIs de saída com base nas tags do Amazon EC2, use. exclusionRules.amis.tagMap

exemplo Seletor de tags e exclusão trabalhando juntos

Uma política com essas configurações:

  • Tag de seleção de recursos: Environment: Production (avaliada nos recursos de imagem do Image Builder)

  • Image-level tag de exclusão (exclusionRules.tagMap): Retain: True (avaliada nos recursos de imagem do Image Builder)

  • AMI-level tag de exclusão (exclusionRules.amis.tagMap): SharedWith: Partner (avaliada nas AMIs de saída)

O Image Builder executa estas etapas:

  1. Seleção de recursos — O Image Builder encontra todos os recursos de imagem do Image Builder marcadosEnvironment: Production.

  2. Image-level exclusão — O Image Builder verifica a tag Retain: True em cada imagem selecionada do Image Builder. O Image Builder ignora imagens com essa tag, incluindo seus recursos de saída.

  3. AMI-level exclusão — O Image Builder verifica as AMIs de saída (recursos do Amazon EC2) das imagens restantes da tag. SharedWith: Partner As AMIs com essa tag são ignoradas.

Como a retenção é calculada

Quando você define as configurações de retenção para regras de exclusão, os filtros AGE e COUNT são avaliados em relação aos recursos de imagem do Image Builder, não diretamente em relação às AMIs ou contêineres de saída.

Importante

O filtro AGE usa a data de criação do recurso de imagem do Image Builder (definida quando a compilação é concluída), não a AMI de saída ou a data de criação do contêiner. O filtro COUNT conta os recursos de imagem do Image Builder por versão da receita, não as AMIs ou os contêineres de saída.

O cálculo da retenção depende de como você especifica as versões da receita no escopo da política:

Versão específica (por exemplo,1.0.0)

A contagem de retenção se aplica às imagens do Image Builder criadas com essa versão exata da receita. O Image Builder retém primeiro as imagens mais recentes (por data de criação).

Padrão de versão curinga (por exemplo,1.x.x)

A contagem de retenção se aplica de forma independente por versão de receita correspondente. Por exemplo, 1.x.x com uma contagem de retenção de 5, retém as 5 imagens mais recentes para1.0.0, as 5 mais recentes para 1.1.0 e assim por diante.

Tag-based seleção de recursos

Com a seleção de recursos baseada em tags (consulteTags como seletores de recursos versus regras de exclusão), a retenção também é calculada por versão da receita. O Image Builder classifica as imagens mais recentes primeiro em cada versão e aplica as contagens de retenção de forma independente por grupo de versões.

Age-based versus filtros de exclusão baseados em contagem

As regras de exclusão usam um dos dois tipos de filtro para determinar a elegibilidade de exclusão:

AGEfiltrar

Retém imagens do Image Builder mais recentes do que o limite de idade especificado (em dias, semanas, meses ou anos a partir da data de criação da imagem do Image Builder). Você pode configurar retainAtLeast para manter um número mínimo das imagens mais recentes por versão da receita, independentemente da idade.

COUNTfiltrar

Retém as imagens mais recentes do N Image Builder por versão da receita. Todas as imagens além da contagem especificada se qualificam para exclusão.

Outros comportamentos de retenção se aplicam:

  • Imagens com falha ou cancelamento do Image Builder não contam para os limites de retenção e sempre se qualificam para exclusão.

  • O Image Builder processa primeiro as imagens mais recentes e aplica as contagens de retenção antes de avaliar a elegibilidade para exclusão.

Como as ações do ciclo de vida afetam os recursos associados

As ações do ciclo de vida em uma imagem do Image Builder afetam as AMIs ou contêineres de saída associados, dependendo do tipo de regra e da configuração:

Descontinuar

Define o status do recurso de imagem do Image Builder como Deprecated. Você também pode descontinuar as AMIs de saída associadas. As AMIs obsoletas não aparecem em pesquisas gerais, mas permanecem utilizáveis pelo ID da AMI. O Image Builder adiciona uma DeprecatedBy: EC2 Image Builder tag a cada AMI obsoleta.

Aplica-se somente a AMI-based imagens, não a contêineres.

Disable (Desabilitar)

Define o status do recurso de imagem do Image Builder como Disabled. Você também pode desativar as AMIs de saída associadas. As AMIs desativadas se tornam privadas e não lançam mais novas instâncias.

Aplica-se somente a AMI-based imagens, não a contêineres.

Delete

Exclui o recurso de imagem do Image Builder. Você também pode remover:

  • AMIs de saída distribuídas para outros Regiões da AWS e contas

  • Instantâneos associados a essas AMIs

  • Contêineres distribuídos para repositórios do Amazon ECR

Aplica-se tanto às imagens AMI-based baseadas em contêineres.

nota

O Image Builder toma decisões sobre as ações do ciclo de vida no nível da imagem. Os recursos de saída associados (AMIs, instantâneos, contêineres) mudam somente se você configurou a regra para incluí-los.

Transições de estado de recursos permitidas

As políticas de ciclo de vida e os recursos de imagem de transição da StartResourceStateUpdate API entre esses estados:

Disponível → Obsoleto

Marca uma imagem disponível como obsoleta. A imagem permanece utilizável pela AMI ID, mas não aparece em pesquisas gerais. O Image Builder adiciona uma DeprecatedBy: EC2 Image Builder tag para rastreamento.

Disponível ou obsoleto → Desativado

Torna a AMI privada e impede a execução de novas instâncias. Se a AMI foi descontinuada anteriormente, o Image Builder remove a tag obsoleta porque a imagem foi movida para um estado mais restritivo.

Qualquer estado que não seja de construção → Excluído

Cancela o registro da AMI ou exclui a imagem do contêiner do ECR. Você pode incluir instantâneos associados ou contêineres subjacentes para exclusão.

Obsoleto ou desativado → Disponível

A StartResourceStateUpdate API retorna uma imagem obsoleta ou desativada ao estado disponível. Isso reverte a suspensão de uso, reativa a AMI e remove a data e a tag da suspensão de uso. DeprecatedBy Essa transição funciona somente por meio da API manual, não da execução automática de políticas.

nota

As imagens que estão sendo criadas atualmente (em estado pendente, de criação, construção, importação, teste, distribuição ou integração) não mudam de estado. Uma atualização manual do estado em uma imagem com uma compilação ativa falha com um erro.

Veja os detalhes das regras de uma política de ciclo de vida

No console, a página de detalhes da política de ciclo de vida tem uma Guia Regras que mostra os detalhes da regra da política.

No AWS CLI, execute o comando get-lifecycle-policy. A resposta inclui todas as ações (regras) configuradas com suas configurações.