Quero saber por que o Amazon Elastic Compute Cloud (Amazon EC2) encerrou inesperadamente minha instância do EC2.
Resolução
Observação: se você receber erros ao executar comandos da AWS Command Line Interface (AWS CLI), consulte Solução de problemas da AWS CLI. Além disso, verifique se você está usando a versão mais recente da AWS CLI.
Instâncias sob demanda
Observação: você ainda pode incorrer em cobranças após o Amazon EC2 excluir sua instância.
Para analisar as informações sobre quando e como o Amazon EC2 excluiu sua instância sob demanda, verifique seu histórico de eventos do AWS CloudTrail para ver o evento TerminateInstances. Ou, no console do CloudTrail, escolha Nome do recurso e insira o ID da instância para ver todas as chamadas de API relacionadas à sua instância. Verifique os detalhes do evento para obter informações sobre a hora em que a instância foi encerrada e qual usuário encerrou a instância.
Observação: é possível usar o AWS CloudTrail para pesquisar o histórico de eventos somente dos últimos 90 dias. Para mais informações, consulte Como posso usar o CloudTrail para analisar quais chamadas e ações de API ocorreram em minha conta da AWS?
O Amazon EC2 também pode encerrar suas instâncias sob demanda pelos seguintes motivos:
- Desligamento do sistema operacional (SO)
- Falhas na inicialização da instância
- Rescisão de software de terceiros
Desligamento no nível do sistema operacional
É possível definir o comportamento de desligamento da sua instância do EC2 como Encerrar. Neste cenário, quando você executa um comando de desligamento em nível de sistema operacional, como shutdown ou poweroff, a instância é encerrada pelo Amazon EC2. O CloudTrail não registra um evento quando o Amazon EC2 exclui sua instância dessa forma.
Para verificar o comportamento de desligamento da sua instância, execute o seguinte comando describe-instance-attribute da AWS CLI:
aws ec2 describe-instance-attribute --instance-id example-instance-id --attribute instanceInitiatedShutdownBehavior
Observação: substitua example-instance-id pelo ID da sua instância.
Se você definiu o atributo DeleteOnTermination como Falso e manteve o volume raiz, use uma instância de resgate para verificar os logs no nível do sistema operacional, como /var/log/messages logs ou /var/log/audit/audit.log. Isso permite identificar quem executou o comando de desligamento e quando. Para ver as etapas sobre como executar uma instância de recuperação, consulte Usar uma instância de recuperação para editar manualmente o arquivo em Por que minha instância do EC2 do Linux entra no modo de emergência quando tento inicializá-la?
Falha na inicialização da instância do EC2
Quando você executa uma instância do EC2, ela pode falhar ao iniciar ou ser encerrada automaticamente pelos seguintes motivos:
- Você não anexou corretamente o volume do Amazon Elastic Block Store (Amazon EBS) à instância.
- O volume do Amazon EBS anexado à instância do EC2 está com o status de Erro.
- Você anexou um volume criptografado do EBS à instância, mas não tem permissão para acessar a chave de decodificação do AWS Key Management Service (AWS KMS).
Rescisão de software de terceiros
Softwares de terceiros podem encerrar suas instâncias do EC2 por vários motivos. Verifique se o usuário do nome do recurso da Amazon (ARN) ou do AWS Identity and Access Management (AWS IAM) que executou o evento TerminateInstances está relacionado ao seu software de terceiros.
Por exemplo, o Karpenter tem controles de interrupção que podem excluir suas instâncias do EC2. Para obter mais informações, consulte Interrupção no site da Karpenter.
Instâncias spot
Se o preço da Instância Spot aumentar acima do preço de oferta, você perderá sua capacidade de Instância Spot. Ou, se o Amazon EC2 não conseguir atender às restrições de solicitação spot, o Amazon EC2 encerrará a instância spot.
Para determinar se o Amazon EC2 encerrou uma instância spot, verifique seu histórico de eventos do CloudTrail para ver se há eventos BidEvictedEvent.
Instâncias em grupos do Amazon EC2 Auto Scaling
O Amazon EC2 Auto Scaling pode encerrar instâncias em um grupo do Amazon EC2 Auto Scaling pelos seguintes motivos:
- A instância do EC2 está marcada como não íntegra.
- Há um evento de redução vertical de escala do grupo do Amazon EC2 Auto Scaling.
Observação: por padrão, os ambientes do AWS Elastic Beanstalk usam grupos do Amazon EC2 Auto Scaling para executar instâncias do EC2.
Informações relacionadas
Como faço para recriar uma instância do EC2 encerrada?
Solucionar problemas de encerramento de instâncias do Amazon EC2