Sobre as verificações de integridade do seu grupo do Auto Scaling - Amazon EC2 Auto Scaling

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á.

Sobre as verificações de integridade do seu grupo do Auto Scaling

Este tópico fornece uma visão geral dos tipos de verificação de saúde disponíveis e descreve as principais considerações para integrar as verificações de saúde do Amazon EC2 Auto Scaling aos seus aplicativos.

Tipo de verificação de integridade

O Amazon EC2 Auto Scaling pode determinar o status de saúde de uma InService instância usando uma ou mais das seguintes verificações de saúde:

Health check type (Tipo de verificação de integridade) O que ele verifica

Verificações EC2 de status da Amazon e eventos programados

  • Verifica se a instância está em execução

  • Verifica se há problemas subjacentes de hardware ou software capazes de prejudicar a instância

Esse é o tipo padrão de verificação de integridade para um grupo do Auto Scaling.

Verificações de integridade do Elastic Load Balancing

  • Verifica se o balanceador de carga relata a instância como íntegra, confirmando se a instância está disponível para processar solicitações.

Para executar esse tipo de verificação de integridade, você deve habilitá-lo para seu grupo do Auto Scaling.

Verificações de integridade do VPC Lattice

  • Verifica se o VPC Lattice relata a instância como íntegra, confirmando se a instância está disponível para lidar com solicitações

Para executar esse tipo de verificação de integridade, você deve habilitá-lo para seu grupo do Auto Scaling.

Verificações de integridade do Amazon EBS

  • Verifica se os volumes do EBS podem ser acessados e se passam pelas verificações de estado de E/S.

Para executar esse tipo de verificação de integridade, você deve habilitá-lo para seu grupo do Auto Scaling.

Verificações de integridade personalizadas

  • Verifica se há outros problemas que possam indicar problemas de integridade da instância de acordo com suas verificações de integridade personalizadas

Exames EC2 de saúde da Amazon

Depois que uma instância é executada, ela é anexada ao grupo do Auto Scaling e entra no estadoInService. Para obter mais informações sobre os diferentes status do ciclo de vida de instâncias em um grupo do Auto Scaling, consulte Ciclo de EC2 vida da instância Amazon Auto Scaling.

O Amazon EC2 Auto Scaling verifica periodicamente o status de saúde de todas as instâncias dentro do grupo Auto Scaling para garantir que elas estejam funcionando e em boas condições.

Verificações do status

O Amazon EC2 Auto Scaling usa os resultados das verificações de status da EC2 instância da Amazon e das verificações de status do sistema para determinar o status de saúde de uma instância. Se a instância estiver em qualquer EC2 estado da Amazon que não sejarunning, ou se seu status para as verificações de status forimpaired, o Amazon EC2 Auto Scaling considerará a instância não íntegra e a substituirá. Isso inclui quando a instância tenha qualquer um dos seguintes estados:

  • stopping

  • stopped

  • shutting-down

  • terminated

As verificações de EC2 status da Amazon não exigem nenhuma configuração especial e estão sempre habilitadas. Para obter mais informações, consulte Tipos de verificações de status no Guia EC2 do usuário da Amazon.

Importante

O Amazon EC2 Auto Scaling permite que as verificações de status falhem ocasionalmente, sem realizar nenhuma ação. Quando uma verificação de status falha, o Amazon EC2 Auto Scaling espera alguns minutos AWS para corrigir o problema. Ele não marca imediatamente uma instância Unhealthy quando seu status para as verificações de status se torna impaired.

No entanto, se o Amazon EC2 Auto Scaling detectar que uma instância não está mais no running estado, essa situação será tratada como uma falha imediata. Neste caso, marca imediatamente a instância Unhealthy e a substitui.

Eventos agendados

Ocasionalmente, a Amazon EC2 pode programar eventos em suas instâncias para serem executados após um determinado timestamp. Para obter mais informações, consulte Eventos programados para suas instâncias no Guia EC2 do usuário da Amazon.

Se uma de suas instâncias for afetada por um evento programado, o Amazon EC2 Auto Scaling considera que a instância não está íntegra e a substitui. A instância não começa a ser encerrada até que a data e a hora especificadas no carimbo de data/hora sejam atingidas.

Verificações de integridade do Elastic Load Balancing

Quando você ativa as verificações de saúde do Elastic Load Balancing para seu grupo de Auto Scaling, o Amazon Auto EC2 Scaling pode usar os resultados dessas verificações de saúde para determinar o status de saúde de uma instância.

Antes de ativar as verificações de integridade do Elastic Load Balancing para o seu grupo do Auto Scaling, você deve configurar um balanceador de carga do Elastic Load Balancing e configurar uma verificação de integridade para ele a fim de determinar se as instâncias estão íntegras. Para obter mais informações, consulte Para anexar um balanceador de carga do Elastic Load Balancing a uma camada.

Depois de anexar o balanceador de carga ao seu grupo do Auto Scaling, ocorre o seguinte:

  • O Amazon EC2 Auto Scaling registra as instâncias no grupo Auto Scaling com o balanceador de carga.

  • Depois que uma instância termina de registrar, ela entra no estado InService e fica disponível para uso com o balanceador de carga.

Por padrão, o Amazon EC2 Auto Scaling ignora os resultados das verificações de saúde do Elastic Load Balancing. Depois de ativar essas verificações de saúde para seu grupo de Auto Scaling, quando o Elastic Load Balancing relata uma instância registrada comoUnhealthy, o Amazon Auto EC2 Scaling marca a Unhealthy instância em sua próxima verificação de saúde periódica e a substitui.

Se a drenagem da conexão (atraso no cancelamento do registro) estiver habilitada para seu load balancer, o Amazon Auto Scaling EC2 aguardará a conclusão das solicitações em andamento ou que o tempo limite máximo expire antes de encerrar as instâncias não íntegras.

nota

Para obter instruções sobre como anexar o balanceador de carga e ativar as verificações de integridade do Elastic Load Balancing para seu grupo do Auto Scaling, consulte Este tópico descreve como anexar um balanceador de carga Elastic Load Balancing ao grupo do Auto Scaling..

Quando você ativa as verificações de saúde do Elastic Load Balancing para um grupo, o Amazon Auto EC2 Scaling pode substituir instâncias que o Elastic Load Balancing relata como não íntegras, mas somente depois que o balanceador de carga estiver no estado. InService Para obter mais informações, consulte Verificar o status do anexo de seu balanceador de carga.

Verificações de integridade do VPC Lattice

Por padrão, o Amazon EC2 Auto Scaling ignora os resultados das verificações de saúde do VPC Lattice. Opcionalmente, você pode ativar essas verificações de integridade para seu grupo do Auto Scaling. Depois de fazer isso, quando o VPC Lattice relata uma instância registrada como, o Unhealthy Amazon EC2 Auto Scaling marca a instância Unhealthy em sua próxima verificação periódica de saúde e a substitui. O processo de registrar instâncias e, em seguida, verificar sua integridade funciona da mesma forma que as verificações de integridade do Elastic Load Balancing.

nota

Para obter instruções sobre como anexar o grupo-alvo do VPC Lattice e ativar as verificações de integridade do VPC Lattice para o grupo do Auto Scaling, consulte Anexe um grupo de destino VPC Lattice ao seu grupo do Auto Scaling.

Quando você ativa as verificações de saúde do VPC Lattice para um grupo, o Amazon EC2 Auto Scaling pode substituir instâncias que o VPC Lattice relata como não íntegras, mas somente depois que o grupo-alvo estiver no estado. InService Para obter mais informações, consulte Verifique o status do anexo do grupo de destino do VPC Lattice.

Como o Amazon EC2 Auto Scaling minimiza o tempo de inatividade

Por padrão, as novas instâncias são provisionadas ao mesmo tempo em que as instâncias existentes são terminadas, o que pode impedir que novas solicitações sejam aceitas até que as novas instâncias estejam totalmente operacionais.

Se o Amazon EC2 Auto Scaling determinar que alguma instância não está mais em execução (ou foi marcada Unhealthy com o set-instance-healthcomando), ele a substituirá imediatamente. No entanto, se outras instâncias não estiverem íntegras, o Amazon EC2 Auto Scaling usa a seguinte abordagem para se recuperar de falhas. Esta abordagem minimiza qualquer tempo de inatividade que possa ocorrer devido a problemas temporários ou verificações de integridade mal configuradas.

  • Se uma atividade de escalabilidade estiver em andamento e seu grupo de Auto Scaling estiver abaixo da capacidade desejada em 10% ou mais, o Amazon Auto EC2 Scaling aguardará a atividade de escalabilidade em andamento antes de substituir as instâncias não saudáveis.

  • Ao escalar para baixo, o Amazon EC2 Auto Scaling espera que as instâncias passem por uma verificação inicial de saúde. Ele também aguarda que o aquecimento padrão de instância seja concluído para garantir que as novas instâncias estejam prontas.

  • Depois que as instâncias terminarem de se aquecer e o grupo atingir mais de 90% da capacidade desejada, o Amazon EC2 Auto Scaling substituirá as instâncias não saudáveis da seguinte forma:

    • O Amazon EC2 Auto Scaling substitui apenas até 10% da capacidade desejada do grupo por vez. Ele faz isso até que todas as instâncias não íntegras sejam substituídas.

    • Ao substituir instâncias, ele espera que as novas instâncias passem por uma verificação de integridade inicial. Ele também aguarda que o aquecimento padrão de instância seja concluído antes de continuar.

nota

Se o tamanho de um grupo de Auto Scaling for pequeno o suficiente para que o valor resultante de 10% seja menor que um, o Amazon Auto EC2 Scaling substitui as instâncias não íntegras uma por vez. Isso pode resultar em tempo de inatividade para o grupo.

Além disso, se todas as instâncias em um grupo de Auto Scaling forem declaradas insalubres pelas verificações de saúde do Elastic Load Balancing e o balanceador de carga estiver no estado, o InService Amazon Auto EC2 Scaling poderá marcar menos instâncias com problemas de integridade por vez. Isso pode resultar em muito menos instâncias substituídas por vez do que os 10% aplicados em outros cenários. Isso lhe dá tempo para resolver o problema sem que o Amazon EC2 Auto Scaling encerre automaticamente todo o grupo.

Verificações de integridade para instâncias em uma associação de alta atividade

O Amazon EC2 Auto Scaling também realiza verificações de saúde em instâncias em uma piscina aquecida. Para obter mais informações, consulte Visualizar o status e o motivo de falhas da verificação de integridade.

Considerações sobre a verificação de integridade

A seguir estão algumas considerações ao usar as verificações de saúde do Amazon EC2 Auto Scaling.

  • 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 encerra instâncias. Para obter mais informações, consulte Ganchos do ciclo de vida do Amazon EC2 Auto Scaling.

  • O Amazon EC2 Auto Scaling não fornece uma maneira de remover as verificações de EC2 status e os eventos programados da Amazon de suas verificações de saúde. Se você não quiser que as instâncias sejam substituídas, recomendamos suspender o processo ReplaceUnhealthy e HealthCheck para grupos do Auto Scaling individuais. Para obter mais informações, consulte Suspender e retomar os processos do Amazon EC2 Auto Scaling.

  • Para redefinir manualmente o status de integridade de uma instância não Healthy íntegra, tente usar o set-instance-healthcomando. Se você receber um erro, provavelmente a instância já está encerrando. Geralmente, redefinir o status de integridade de uma instância Healthy com o set-instance-healthcomando só é útil nos casos em que o ReplaceUnhealthy processo ou o Terminate processo estão suspensos.

  • Se você precisar solucionar problemas de uma instância sem a interferência de verificações de integridade, poderá colocar a instância no estado Standby. O Amazon EC2 Auto Scaling não realiza verificações de saúde em instâncias que estão no Standby estado até que você as coloque novamente em serviço. Para obter mais informações, consulte Remover temporiamente instâncias do grupo do Auto Scaling.

  • Quando a instância é encerrada, qualquer endereço IP elástico é dissociado e não é automaticamente associado à nova instância. É necessário associar manualmente os endereços IP elásticos à nova instância ou fazer isso automaticamente com uma solução baseada em gancho do ciclo de vida. Para obter mais informações, consulte Endereços IP elásticos no Guia EC2 do usuário da Amazon.

  • Da mesma forma, quando sua instância é terminada, seus volumes de EBS anexados são desvinculados (ou excluídos, dependendo do atributo DeleteOnTermination). É necessário anexar manualmente esses volumes do EBS à nova instância ou fazer isso automaticamente com uma solução baseada em gancho do ciclo de vida. Para obter mais informações, consulte Associar um volume do Amazon EBS a uma instância no Guia do usuário do Amazon EBS.