Solucionar problemas com as verificações de integridade do Amazon EC2 Auto Scaling - Amazon EC2 Auto Scaling

Solucionar problemas com as verificações de integridade do Amazon EC2 Auto Scaling

Esta página fornece informações sobre suas instâncias do EC2 que são terminadas devido a uma verificação de integridade. Ela descreve as possíveis causas e as etapas que podem ser adotadas para resolver os problemas.

Para recuperar uma mensagem de erro, consulte Recuperar uma mensagem de erro de ações de escalabilidade.

nota

Você pode ser notificado quando o Amazon EC2 Auto Scaling termina as instâncias no grupo do Auto Scaling, inclusive quando a causa do término da instância não é o resultado de uma atividade de escalabilidade. Para mais informações, consulte Receber notificações do Amazon SNS quando o grupo do Auto Scaling escala.

As seções a seguir descrevem os erros e causas mais comuns de verificação de intergridade que você encontrará. Se um problema diferente surgir, consulte os seguintes artigos da Central de Conhecimento da AWS para obter ajuda adicional para solucioná-lo:

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

Problema: instâncias do Auto Scaling falham nas verificações de status do Amazon EC2.

Causa 1: se houver problemas que fazem com que o Amazon EC2 considere as instâncias do grupo do Auto Scaling prejudicadas, o Amazon EC2 Auto Scaling substituirá automaticamente as instâncias prejudicadas como parte da verificação de integridade. As verificações de status são integradas ao Amazon EC2, portanto elas não podem ser desabilitadas ou excluídas. Quando uma verificação de status de instância falha, geralmente você precisa lidar com o problema por conta própria fazendo alterações de configuração da instância até que a aplicação não apresente mais problemas.

Solução 1: para resolver esse problema, siga estas etapas:

  1. Crie manualmente uma instância do Amazon EC2 que não faça parte do grupo do Auto Scaling e investigue o problema. Para obter ajuda geral com a investigação de instâncias prejudicadas, consulte Solução de problemas em instâncias com falha nas verificações de status no Manual do usuário do Amazon EC2 para instâncias do Linux e Solução de problemas de instâncias do Windows no Manual do usuário do Amazon EC2 para instâncias do Windows.

  2. Depois de confirmar que sua instância foi executada com êxito e está íntegra, implante uma nova configuração de instância, livre de erros, no grupo do Auto Scaling.

  3. Exclua a instância criada para evitar cobranças contínuas na conta da AWS.

Causa 2: há uma incompatibilidade entre o período de carência da verificação de integridade e o tempo de inicialização da instância.

Solução 2: edite o período de carência da verificação de integridade do grupo do Auto Scaling para um período de tempo apropriado para a aplicação. As instâncias executadas em um grupo do Auto Scaling exigem tempo de aquecimento suficiente (período de carência) para evitar o encerramento antecipado devido a uma substituição de verificação de integridade. Para mais informações, consulte Definir um período de carência da verificação de integridade para um grupo do Auto Scaling.

Uma instância foi retirada de serviço em resposta a uma reinicialização programada do EC2

Problema: instâncias do Auto Scaling são substituídas quando um evento programado indica um problema com a instância.

Causa: o Amazon EC2 Auto Scaling substitui instâncias por um evento futuro programado de manutenção ou desativação.

Solução: esses eventos não ocorrem com frequência. Se precisar que algo aconteça na instância que está sendo terminada ou na instância que está iniciando, você poderá usar ganchos do ciclo de vida. Esses ganchos permitem que você execute uma ação personalizada à medida que o Amazon EC2 Auto Scaling inicia ou termina instâncias. Para mais informações, consulte Ganchos do ciclo de vida do Amazon EC2 Auto Scaling.

Se não desejar que as instâncias sejam substituídas devido a um evento programado, você poderá suspender o processo de verificação de integridade para qualquer grupo individual do Auto Scaling. Para mais informações, consulte Suspender e retomar um processo para um grupo do Auto Scaling.

Uma instância foi retirada de serviço em resposta a uma verificação de integridade do EC2 que indicou que ela tinha sido terminada ou interrompida

Problema: instâncias do Auto Scaling que foram interrompidas, reinicializadas ou terminadas são substituídas.

Causa 1: um usuário interrompeu, reinicializou ou terminou manualmente a instância.

Solução 1: se uma verificação de integridade falhar porque um usuário interrompeu, reinicializou ou terminou manualmente a instância, isso se deve ao funcionamento das verificações de integridade do Amazon EC2 Auto Scaling. A instância deve ser íntegra e acessível. Se precisar reinicializar as instâncias no seu grupo do Auto Scaling, recomendamos colocar as instâncias em espera primeiro. Para mais informações, consulte Remover temporiamente instâncias do grupo do Auto Scaling.

Observe que, quando instâncias são terminadas manualmente, os ganchos do ciclo de vida de término e o cancelamento do registro do Elastic Load Balancing (e a descarga da conexão) devem ser concluídos antes que a instância seja realmente terminada.

Causa 2: o Amazon EC2 Auto Scaling tenta substituir instâncias spot depois que o serviço spot do Amazon EC2 interrompe as instâncias, porque o preço spot aumenta além do seu preço máximo ou a capacidade não está mais disponível.

Solução 2: não há garantia de que exista uma instância Spot para atender à solicitação em qualquer momento específico. No entanto, você pode tentar o seguinte:

  • Use um preço máximo spot mais alto (possivelmente, o preço sob demanda). Ao definir seu preço máximo mais alto, a chance do serviço spot do Amazon EC2 iniciar e manter a quantidade necessária de capacidade é maior.

  • Aumente o número de grupos de capacidade diferentes dos quais você pode iniciar instâncias executando vários tipos de instâncias em várias zonas de disponibilidade. Para mais informações, consulte Grupos do Auto Scaling com vários tipos de instâncias e opções de compra.

  • Se você usar vários tipos de instâncias, considere ativar o recurso de rebalanceamento de capacidade. Ele será útil se você quiser que o serviço spot do Amazon EC2 tente iniciar uma nova instância spot antes que uma instância em execução seja encerrada. Para mais informações, consulte Usar o rebalanceamento de capacidade para lidar com interrupções de spot do Amazon EC2.

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

Problema: instâncias do Auto Scaling poderiam ser aprovadas nas verificações de status do EC2. Mas elas poderiam falhar nas verificações de saúde do Elastic Load Balancing para os grupos de destino ou Classic Load Balancers com os quais o grupo do Auto Scaling está registrado.

Causa: se o seu grupo do Auto Scaling depender de verificações de integridade fornecidas pelo Elastic Load Balancing, o Amazon EC2 Auto Scaling determinará o status da integridade de suas instâncias verificando os resultados tanto das verificações de status do EC2 quanto das verificações de integridade do Elastic Load Balancing. O balanceador de carga executa verificações de integridade enviando uma solicitação para cada instância e aguardando a resposta correta ou estabelecendo uma conexão com a instância. Uma instância pode falhar na verificação de integridade do Elastic Load Balancing porque uma aplicação em execução na instância tem problemas que fazem com que o balanceador de carga a considere fora de serviço. Para mais informações, consulte Adicionar verificações de integridade do Elastic Load Balancing a um grupo do Auto Scaling.

Solução 1: para passar nas verificações de integridade do Elastic Load Balancing:

  • Anote os códigos de sucesso que o balanceador de carga está esperando e verifique se a aplicação está configurada corretamente para retornar esses códigos com sucesso.

  • Verifique se os grupos de segurança do balanceador de carga e do grupo do Auto Scaling estão configurados corretamente.

  • Verifique se as configurações da verificação de integridade dos seus grupos de destino estão configuradas corretamente. Você define as configurações de verificação de integridade para seu balanceador de carga por grupo de destino.

  • Considere iniciar um gancho do ciclo de vida de inicialização ao grupo do Auto Scaling para garantir que as aplicações nas instâncias estejam prontas para aceitar tráfego antes de serem registradas no balanceador de carga no final do gancho do ciclo de vida.

  • Defina o período de carência da verificação de integridade do seu grupo do Auto Scaling como um período suficientemente longo para suportar o número de verificações de integridade consecutivas bem-sucedidas necessárias antes que o Elastic Load Balancing considere uma instância recém-iniciada como íntegra.

  • Verifique se o balanceador de carga está configurado nas mesmas zonas de disponibilidade do grupo do Auto Scaling.

Para obter mais informações, consulte os tópicos a seguir:

Solução 2: atualizar o grupo do Auto Scaling para desativar as verificações de integridade do Elastic Load Balancing.