Descontinuar uma AMI - Amazon Elastic Compute Cloud

Descontinuar uma AMI

É possível defasar uma AMI para indicar que ela está desatualizada e não deve ser usada. Também é possível especificar uma data de defasagem futura para uma AMI, indicando quando a AMI estará desatualizada. Por exemplo, é possível defasar uma AMI cuja manutenção não está mais ativa ou pode defasar uma AMI que foi substituída por uma versão mais recente. Por padrão, as AMIs defasadas não aparecem nas listagens de AMI, impedindo que novos usuários usem AMIs desatualizadas. No entanto, os usuários existentes e os serviços de inicialização, como modelos de inicialização e grupos do Auto Scaling, podem continuar usando uma AMI defasada especificando seu ID. Para excluir a AMI, de modo que usuários e serviços não possam usá-la, é necessário cancelar o registro dela.

Depois que uma AMI estiver defasada:

  • Para usuários de AMI, a AMI defasada não aparece nas chamadas de API DescribeImages, a menos que você especifique o ID dela ou especifique que AMIs defasadas devem ser exibidas. Os proprietários da AMI continuam a ver AMIs defasadas nas chamadas de API DescribeImages.

  • Para usuários de AMI, a AMI defasada não está disponível para seleção no console do EC2. Por exemplo, uma AMI defasada não é exibida no catálogo da AMI no assistente de inicialização de instância. Os proprietários da AMI continuam a ver AMIs defasadas no console do EC2.

  • Para os usuários da AMI, se você souber o ID de uma AMI defasada, poderá continuar a iniciar instâncias usando a AMI defasada com a API, a CLI ou os SDKs.

  • Os serviços de inicialização, como modelos de inicialização e grupos do Auto Scaling, podem continuar referenciando a AMIs defasadas.

  • As instâncias do EC2 que foram iniciadas usando uma AMI que posteriormente é defasada não são afetadas e podem ser interrompidas, iniciadas e reinicializadas.

É possível defasar AMIs privadas e públicas.

Também é possível criar políticas de AMI apoiadas pelo EBS Amazon Data Lifecycle Manager para automatizar a defasagem das AMIs apoiadas pelo EBS. Para obter mais informações, consulte Automatizar ciclos de vida da AMI.

nota

Por padrão, a data de descontinuação de todas as AMIs públicas é definida como dois anos a partir da data de criação da AMI. É possível definir a data de descontinuação para antes de dois anos. Para cancelar a data de descontinuação ou adiá-la para uma data posterior, você deve tornar a AMI privada compartilhando-a somente com contas específicas da AWS.

Custos

Quando você defasar uma AMI, a AMI não será excluída. O proprietário da AMI continuará pagando pelos snapshots da AMI. Para parar de pagar pelos instantâneos, o proprietário da AMI deve excluir a AMI cancelando o registro dela.

Limitações

  • Para defasar uma AMI, é necessário ser o proprietário da AMI.

Descontinuar uma AMI

É possível defasar uma AMI em uma data e hora específicas. É necessário ser o proprietário da AMI para executar esse procedimento.

Console
Para descontinuar uma AMI em uma data específica
  1. Abra o console do Amazon EC2 em https://console.aws.amazon.com/ec2/.

  2. No navegador à esquerda, escolha AMIs.

  3. Na barra de filtros, escolha Owned by me (Sou proprietário).

  4. Selecione a AMI e escolha Actions (Ações), Manage AMI Deprecation (Gerenciar descontinuação da AMI). É possível selecionar várias AMIs para definir a mesma data de descontinuação de várias AMIs de uma só vez.

  5. Selecione a caixa de seleção Enable (Habilitar) e, em seguida, insira a data e a hora de descontinuação.

    O limite superior para a data de descontinuação é daqui a 10 anos, exceto para AMIs públicas, em que o limite superior é de 2 anos após a data de criação. Você não pode especificar uma data no passado.

  6. Escolha Salvar.

AWS CLI
Para descontinuar uma AMI em uma data específica

Usar o comando disable-image-deprecation. Especifique o ID da AMI e a data e hora nas quais a AMI será defasada. Se você especificar um valor para segundos, o Amazon EC2 arredondará os segundos para o minuto mais próximo.

O limite superior para deprecate-at é daqui a 10 anos, exceto para AMIs públicas, em que o limite superior é de 2 anos após a data de criação. Você não pode especificar uma data no passado.

aws ec2 enable-image-deprecation \ --image-id ami-1234567890abcdef0 \ --deprecate-at "2021-10-15T13:17:12.000Z"

Saída esperada

{ "Return": "true" }

Verificar quando uma AMI foi usada pela última vez

LastLaunchedTime é um carimbo de data/hora que indica quando sua AMI foi usada pela última vez para iniciar uma instância. AMIs que não tenham sido usadas recentemente para iniciar uma instância podem ser boas candidatas para descontinuação ou cancelamento de registro.

nota
  • Quando uma AMI é usada para iniciar uma instância, há um atraso de 24 horas antes que o uso seja incluído em relatórios.

  • Os dados de lastLaunchedTime estão disponíveis a partir de abril de 2017.

Console
Como visualizar a última hora de início de uma AMI
  1. Abra o console do Amazon EC2 em https://console.aws.amazon.com/ec2/.

  2. No navegador à esquerda, escolha AMIs.

  3. Na barra de filtros, escolha Owned by me (Sou proprietário).

  4. Selecione a AMI e marque o campo Deprecation time (Hora da descontinuação). Se você marcou a caixa de seleção ao lado da AMI, ele estará localizado na guia Details (Detalhes). O campo mostra a data e a hora em que a AMI foi usada pela última vez para iniciar uma instância.

AWS CLI
Como visualizar a última hora de início de uma AMI

Execute o comando describe-image-attribute e especifique --attribute lastLaunchedTime. É necessário ser o proprietário da AMI para executar esse comando.

aws ec2 describe-image-attribute \ --image-id ami-1234567890example \ --attribute lastLaunchedTime

Exemplo de saída

{ "LastLaunchedTime": { "Value": "2022-02-10T02:03:18Z" }, "ImageId": "ami-1234567890example", }

Descrever AMIs defasadas

É possível visualizar a data e a hora de descontinuação de uma AMI e filtrar todas as AMIs por data de descontinuação. Também é possível usar a AWS CLI para descrever todas as AMIs que foram descontinuadas, em que a data da descontinuação já passou.

Console
Para visualizar a data de descontinuação de uma AMI
  1. Abra o console do Amazon EC2 em https://console.aws.amazon.com/ec2/.

  2. No navegador, escolha AMIs e, em seguida, selecione a AMI.

  3. Selecione o campo Deprecation time (Hora da descontinuação) (se você marcou a caixa de seleção ao lado da AMI, ele estará localizado na guia Details (Detalhes)). O campo mostra a data e a hora de descontinuação da AMI. Se o campo estiver vazio, a AMI não estará descontinuada.

Para filtrar AMIs por data de descontinuação
  1. Abra o console do Amazon EC2 em https://console.aws.amazon.com/ec2/.

  2. No navegador à esquerda, escolha AMIs.

  3. Na barra de filtros, escolha Owned by me (Sou proprietário) ou Private images (Imagens privadas) (as imagens privadas incluem AMIs compartilhadas com você e de sua propriedade).

  4. Na Search bar (Barra de pesquisa), insira Deprecation time (à medida que você insere as letras, o filtro Deprecation time (Hora da descontinuação) aparece) e, em seguida, escolha um operador e uma data e hora.

AWS CLI

Quando você descreve todas as AMIs usando o comando describe-images, os resultados são diferentes, dependendo se você é usuário da AMI ou proprietário da AMI.

  • Se você for um usuário da AMI:

    Por padrão, quando você descreve todas as AMIs usando o comando describe-images, as AMIs defasadas das quais você não é proprietário, mas que são compartilhadas com você, não são exibidas nos resultados. Isso acontece porque o padrão é --no-include-deprecated. Para incluir AMIs defasadas nos resultados, é necessário especificar o parâmetro --include-deprecated.

  • Se você for o proprietário da AMI:

    Quando você descreve todas as AMIs usando o comando describe-images, todas as AMIs das quais você é proprietário, inclusive AMIs defasadas, são exibidas nos resultados. Não é necessário especificar o parâmetro --include-deprecated. Além disso, não é possível excluir AMIs defasadas que você possui dos resultados usando --no-include-deprecated.

Se uma AMI estiver defasada, o campo DeprecationTime é exibido nos resultados.

nota

Uma AMI defasada é uma AMI cuja data de defasagem já passou. Se você tiver definido a data de defasagem como uma data futura, a AMI ainda não está defasada.

Para incluir todas as AMIs descontinuadas ao descrever todas as AMIs

Use o comando describe-images e especifique o parâmetro --include-deprecated para incluir nos resultados todas as AMIs defasadas das quais você não é proprietários.

aws ec2 describe-images \ --region us-east-1 \ --owners 123456example --include-deprecated
Para descrever a data de descontinuação de uma AMI

Use o comando describe-images e especifique o ID da AMI.

Se você especificar --no-include-deprecated com o ID da AMI, os resultados retornarão a AMI defasada.

aws ec2 describe-images \ --region us-east-1 \ --image-ids ami-1234567890EXAMPLE

Saída esperada

O campo DeprecationTime exibe a data definida para a defasagem da AMI. Se não houver data para a defasagem da AMI não estiver definida, o campo DeprecationTime não será exibido na saída.

{ "Images": [ { "VirtualizationType": "hvm", "Description": "Provided by Red Hat, Inc.", "PlatformDetails": "Red Hat Enterprise Linux", "EnaSupport": true, "Hypervisor": "xen", "State": "available", "SriovNetSupport": "simple", "ImageId": "ami-1234567890EXAMPLE", "DeprecationTime": "2021-05-10T13:17:12.000Z" "UsageOperation": "RunInstances:0010", "BlockDeviceMappings": [ { "DeviceName": "/dev/sda1", "Ebs": { "SnapshotId": "snap-111222333444aaabb", "DeleteOnTermination": true, "VolumeType": "gp2", "VolumeSize": 10, "Encrypted": false } } ], "Architecture": "x86_64", "ImageLocation": "123456789012/RHEL-8.0.0_HVM-20190618-x86_64-1-Hourly2-GP2", "RootDeviceType": "ebs", "OwnerId": "123456789012", "RootDeviceName": "/dev/sda1", "CreationDate": "2019-05-10T13:17:12.000Z", "Public": true, "ImageType": "machine", "Name": "RHEL-8.0.0_HVM-20190618-x86_64-1-Hourly2-GP2" } ] }

Cancelar a defasagem de uma AMI

É possível cancelar a descontinuação de uma AMI, o que remove a data e a hora do campo Deprecation time (Hora da descontinuação) (console) ou o campo DeprecationTime da saída describe-images (AWS CLI). É necessário ser o proprietário da AMI para executar esse procedimento.

Console
Para cancelar a descontinuação de uma AMI
  1. Abra o console do Amazon EC2 em https://console.aws.amazon.com/ec2/.

  2. No navegador à esquerda, escolha AMIs.

  3. Na barra de filtros, escolha Owned by me (Sou proprietário).

  4. Selecione a AMI e escolha Actions (Ações), Manage AMI Deprecation (Gerenciar descontinuação da AMI). É possível selecionar várias AMIs para cancelar a descontinuação de várias AMIs de uma só vez.

  5. Desmarque a caixa de seleção Enable (Habilitar) e escolha Save (Salvar).

AWS CLI
Para cancelar a descontinuação de uma AMI

Use o comando disable-image-deprecation e especifique o ID da AMI.

aws ec2 disable-image-deprecation \ --image-id ami-1234567890abcdef0

Saída esperada

{ "Return": "true" }