Por que o Amazon EC2 Auto Scaling encerrou uma instância?

8 minuto de leitura
0

Meu grupo do Auto Scaling do Amazon Elastic Compute Cloud (Amazon EC2) encerrou uma instância. No entanto, não vejo motivo para o encerramento no console do Amazon EC2.

Breve descrição

O Amazon EC2 Auto Scaling depende das verificações de integridade do Amazon EC2 ou do Elastic Load Balancing (ELB) para determinar o estado de integridade de uma instância. Você pode ver todas as ações de escalabilidade de um grupo do Auto Scaling, incluindo substituições de verificação de integridade, em Histórico de atividades no console do Amazon EC2.

Resolução

Para determinar suas etapas de solução de problemas, use a descrição da instância na visualização de Histórico de atividades.

Primeiro, encontre a descrição e a causa do encerramento da instância:

  1. Abra o console do Amazon EC2.
  2. No painel de navegação, em Auto Scaling, escolha Grupos do Auto Scaling. Em seguida, selecione o grupo da sua instância.
  3. Escolha a visualização Atividade e, em seguida, pesquise o evento de encerramento da instância no Histórico de atividades.
  4. Observe a Descrição e a Causa do evento de encerramento da instância.

Para solucionar o motivo do encerramento da sua instância, consulte os exemplos de Descrição a seguir.

"Uma instância foi retirada de serviço em resposta a uma verificação de integridade do EC2 indicando que ela foi encerrada ou interrompida"

O Amazon EC2 Auto Scaling encerra instâncias interrompidas e reinicializadas. Para determinar se um usuário parou ou reinicializou manualmente a instância, verifique o histórico do AWS CloudTrail:

  1. Abra o console do AWS CloudTrail.
  2. No painel de navegação, selecione Histórico de eventos.
  3. Verifique o histórico das chamadas de API TerminateInstances, StopInstances ou RebootInstances.

"Uma instância foi retirada de serviço em resposta a uma falha na verificação de status da instância do EC2"

Encontre falhas na verificação da instância ou do sistema com as métricas do Amazon CloudWatch:

  1. Abra o console do Amazon CloudWatch.
  2. No painel de navegação, escolha Métricas e, em seguida, escolha Todas as métricas.
  3. Escolha EC2 no painel de métricas e, em seguida, escolha Métricas por instância.
  4. Digite o instance-id e escolha StatusCheckFailed_Instance, StatusCheckFailed_System ou StatusCheckFailed para visualizar os gráficos de métricas.

"Uma instância foi retirada de serviço em resposta a uma falha na verificação de integridade do sistema ELB"

Se você ativou as verificações de integridade do Elastic Load Balancing para seu grupo do Auto Scaling, o Amazon EC2 Auto Scaling executará as verificações de integridade do Elastic Load Balancing e do EC2. Em seguida, o serviço encerrará as instâncias que falham em qualquer verificação de integridade. Verifique se o seu grupo do Auto Scaling tem as verificações de integridade do Elastic Load Balancing ativadas:

  1. Abra o console do Amazon EC2.
  2. No painel de navegação, em Auto Scaling, escolha Grupos do Auto Scalinge, em seguida, escolha o grupo da instância.
  3. Escolha a exibição Detalhes e, em seguida, observe o Tipo de verificação de integridade.
  4. Se o tipo de verificação de integridade for "EC2, ELB", o Grupo do Auto Scaling está com as verificações de integridade do Elastic Load Balancing ativadas.

Para obter mais informações, consulte Uma instância foi retirada de serviço em resposta a uma falha na verificação de integridade do sistema Elastic Load Balancing.

Em alguns casos, um grupo do Auto Scaling tem vários grupos-alvo ou balanceadores de carga anexados. Nesse caso, para que o Amazon EC2 Auto Scaling considere uma instância íntegra, todos os grupos-alvo e balanceadores de carga devem relatá-la como íntegra.

  1. No painel de navegação, em Auto Scaling, escolha Grupos do Auto Scaling.
  2. Escolha o grupo da instância e, em seguida, escolha a visualização Detalhes.
  3. Observe se há mais de um balanceador de carga conectado em Balanceadores de carga ou Grupos de destino.
  4. Selecione o Grupo de destino ou o Balanceador de carga.
  5. No painel de navegação, em Balanceamento de carga, escolha Grupos de destino, selecione seu grupo de destino e escolha Monitoramento.
  6. Para confirmar se uma instância está falhando nas verificações de integridade, verifique os gráficos de métricas Hosts íntegros e Hosts não íntegros.

Verifique o histórico do CloudTrail para determinar se um processo suspenso atrasou o encerramento de uma instância não íntegra até que o processo fosse retomado:

  1. Abra o console do AWS CloudTrail.
  2. No painel de navegação, selecione Histórico de eventos.
  3. Verifique o histórico das chamadas de API SuspendProcesses e ResumeProcesses.

"Uma instância foi retirada de serviço em resposta a um aviso de interrupção da EC2 Spot Instance."

O Amazon EC2 Auto Scaling encerra as instâncias spot quando ocorre uma das seguintes condições:

  • A capacidade não está mais disponível.
  • O preço spot excede o preço máximo que você especificou para as instâncias.

O Histórico de atividades pode mostrar que a instância foi removida do serviço devido a uma verificação de integridade. Para verificar o motivo do encerramento, verifique o status das Solicitações spot:

  1. Abra o console do Amazon EC2.
  2. No painel de navegação, em Instâncias, escolha Solicitações spot.
  3. Selecione a solicitação spot, escolha a visualização Descrição e, em seguida, observe o Status.

"Uma instância foi retirada de serviço em resposta a uma solicitação de usuário"

Analise o histórico de eventos do CloudTrail durante o período em que a instância ficou fora de serviço para qualquer chamada de API TerminateInstanceInAutoScalingGroup:

  1. Abra o console do AWS CloudTrail.
  2. No painel de navegação, selecione Histórico de eventos.
  3. Verifique o histórico das chamadas da API TerminateInstanceInAutoScalingGroup.

"Uma solicitação de usuário atualiza as restrições do AutoScalingGroup para mínimo: 0, máximo: 2, desejado: 1, alterando a capacidade desejada de 2 para 1"

Você pode alterar manualmente as restrições de um grupo do Auto Scaling. Por exemplo, você pode reduzir sua capacidade. Quando você altera uma restrição, o Amazon EC2 Auto Scaling pode encerrar instâncias para corresponder às novas configurações.

"As instâncias foram lançadas para equilibrar instâncias das zonas us-east-1a com outras zonas"

Por padrão, o Amazon EC2 Auto Scaling equilibra as instâncias em todas as zonas de disponibilidade. Quando você adiciona uma nova zona de disponibilidade a um grupo de escalabilidade automática, o Amazon EC2 Auto Scaling inicia uma nova instância nessa zona. Qualquer rebalanceamento pode encerrar instâncias em outras zonas.

"Uma instância foi retirada de serviço para equilibrar a distribuição das capacidades sob demanda e spot."

Quando a distribuição de uma instância sob demanda ou spot muda, o grupo de escalabilidade automática associado se reequilibra para corresponder à distribuição da opção de compra desejada. Portanto, as instâncias sob demanda ou spot podem ser encerradas para que o grupo de escalabilidade automática possa substituí-las para obter a opção de compra desejada.

"Um alarme de monitor XXX-High-CPU-Utilization no estado ALARM acionou a política AAA-Scaledown, alterando a capacidade desejada de 2 para 1"

O Amazon EC2 Auto Scaling pode encerrar instâncias em um grupo em resposta a um alarme configurado do CloudWatch. Verifique as políticas de grupo e o histórico de alarmes do CloudWatch.

Para verificar as políticas de grupo do Auto Scaling:

  1. Abra o console do Amazon EC2.
  2. No painel de navegação, em Auto Scaling, escolha Grupos do Auto Scaling.
  3. Escolha o grupo da instância.
  4. Para visualizar e editar políticas, escolha o painel Escalabilidade automática

Para ver o histórico de alarmes do CloudWatch:

  1. Abra o console do Amazon CloudWatch.
  2. No painel de navegação, selecione Alarmes.
  3. Escolha o alarme e, em seguida, escolha a visualização do Histórico.
  4. Verifique o histórico de quaisquer alterações de estado no alarme ou modificações na configuração do alarme.

"Uma instância foi retirada de serviço em resposta a uma verificação de integridade de usuário"

Você pode definir verificações de integridade personalizadas no Amazon EC2 Auto Scaling. Quando uma verificação de integridade personalizada determina que uma instância não está íntegra, a verificação inicia manualmente SetInstanceHealth. Em seguida, ele define o estado da instância como Não íntegra. O Amazon EC2 Auto Scaling encerra a instância não íntegra em sua próxima execução.

"Uma atualização de ação programada das restrições do AutoScalingGroup para min: 1, máximo: 9, desejado: 1, alterando a capacidade desejada de 2 para 1"

Você pode configurar ações programadas que alteram a capacidade mínima, máxima ou desejada de um grupo do Auto Scaling. Quando a ação programada diminui a capacidade desejada, o Amazon EC2 Auto Scaling encerra uma ou mais instâncias para corresponder à nova capacidade desejada.

Informações relacionadas

Por que meu grupo do Auto Scaling reduziu a escala verticalmente?

Por que o Amazon EC2 Auto Scaling não encerrou uma instância com problemas de integridade?

AWS OFICIAL
AWS OFICIALAtualizada há 9 meses