Verificações de status para as instâncias - Amazon Elastic Compute Cloud

Verificações de status para as instâncias

Com o monitoramento de status de instâncias, por exemplo, é possível determinar rapidamente se o Amazon EC2 detectou problemas que possam impedir que as instâncias executem aplicações. O Amazon EC2 executa verificações automáticas em cada instância do EC2 em execução para identificar problemas de hardware e software. É possível visualizar os resultados dessas verificações de status para identificar problemas específicos e detectáveis. O status do evento expande as informações que o Amazon EC2 já fornece sobre o estado de cada instância (como pending, running, stopping) e as métricas de utilização que o Amazon CloudWatch monitora (utilização de CPU, tráfego de rede e atividade de disco).

As verificações de status são realizadas a cada minuto e elas retornam o status de aprovação e reprovação. Se todas as verificações forem aprovadas, o status geral da instância será OK. Se uma ou mais verificações falharem, o status geral será impaired. 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 falha, a métrica do CloudWatch correspondente para as verificações de status é incrementada. Para obter mais informações, consulte Métricas de verificação de status. É possível usar essas métricas para criar alarmes do CloudWatch que são acionados com base no resultado das verificações de status. Por exemplo, é possível criar um alarme para avisá-lo se as verificações de status falharem em uma instância específica. Para obter mais informações, consulte Criar e editar alarmes de verificação de status.

Também é possível criar um alarme do Amazon CloudWatch que monitore uma instância do Amazon EC2 e recupere automaticamente a instância se ela for danificada devido a um problema subjacente. Para obter mais informações, consulte Recuperar a instância.

Tipos de verificações de status

Existem três tipos de verificação de status.

Verificações de status de sistema

As verificações de status do sistema monitoram os sistemas da AWS nos quais a instância é executada. Essas verificações detectam problemas subjacentes na instância que exigem o envolvimento da AWS para a correção. Quando uma verificação de status do sistema falha, é possível esperar que a AWS corrija o problema ou pode corrigi-lo por conta própria. Para instâncias baseadas no Amazon EBS, é possível interrompê-las e iniciá-las por conta própria, o que, na maioria dos casos, faz com que a instância seja migrada para um novo host. Para instâncias do Linux com armazenamento de instância, é possível encerrar e substituir a instância. Para instâncias do Windows, o volume raiz deve ser um volume do Amazon EBS. O armazenamento de instâncias não é compatível com o volume raiz. Observe que os volumes de armazenamento de instâncias são efêmeros e todos os dados são perdidos quando a instância é interrompida.

A seguir, temos exemplos de problemas que podem causar falha nas verificações de status do sistema:

  • Perda de conectividade de rede

  • Perda de energia do sistema

  • Problemas de software no host físico

  • Problemas de hardware de host físico que afetam a acessibilidade de rede

Se uma verificação de status do sistema falhar, incrementamos a métrica StatusCheckFailed_System.

Instâncias bare metal

Se você executar uma reinicialização do sistema operacional em uma instância bare metal, a verificação de status do sistema poderá retornar temporariamente um status de falha. Quando a instância ficar disponível, a verificação de status do sistema deve retornar um status de aprovação.

Verificações de status de instâncias

Verificações do status da instância monitore o software e a configuração de rede da instância individual. O Amazon EC2 verifica a integridade da instância enviando uma solicitação de protocolo de resolução de endereço (ARP) para a interface de rede (NIC). Essas verificações detectam problemas que exigem seu envolvimento para correção. Quando uma verificação de status de instância falha, geralmente você precisa lidar com o problema por conta própria (por exemplo, reinicializando a instância ou fazendo alterações de configuração da instância).

A seguir, temos exemplos de problemas que podem causar falhas nas verificações de status da instância:

  • Verificações de status de sistema com falha

  • Configuração incorreta de redes ou startup

  • Memória exaurida

  • Sistema de arquivos corrompido

  • Kernel incompatível

Se uma verificação de status da instância falhar, incrementamos a métrica StatusCheckFailed_Instance.

Instâncias bare metal

Se você executar uma reinicialização do sistema operacional em uma instância bare metal, a verificação de status da instância poderá retornar temporariamente um status de falha. Quando a instância ficar disponível, a verificação de status dela deve retornar um status de aprovação.

Verificações de status do EBS anexado

As verificações de status do EBS anexado monitoram se os volumes do Amazon EBS anexados a uma instância estão acessíveis e são capazes de concluir operações de E/S. A métrica StatusCheckFailed_AttachedEBS é um valor binário que indica deficiência caso um ou mais dos volumes do EBS anexados à instância não sejam capazes de concluir operações de E/S. Essas verificações de status detectam problemas subjacentes com a computação ou a infraestrutura do Amazon EBS. Se ocorrer uma falha na métrica de verificação de status do EBS anexado, você pode esperar a AWS resolver o problema ou tomar medidas, como substituir os volumes afetados ou interromper e reiniciar a instância.

Veja abaixo alguns exemplos de problemas que podem causar falha nas verificações de status do EBS anexado:

  • Problemas de hardware ou software nos subsistemas de armazenamento subjacentes aos volumes do EBS

  • Problemas de hardware no host físico que afetam a acessibilidade dos volumes do EBS

  • Problemas de conectividade entre a instância e os volumes do EBS

Você pode usar a métrica StatusCheckFailed_AttachedEBS para ajudar a melhorar a resiliência da sua workload. É possível usar essa métrica para criar alarmes do Amazon CloudWatch que são acionados com base no resultado das verificações de status. Por exemplo, você pode fazer o failover para uma instância secundária ou zona de disponibilidade ao detectar um impacto prolongado. Também é possível monitorar a performance de E/S de cada volume anexado usando as métricas do EBS CloudWatch para detectar e substituir o volume danificado. Se sua workload não estiver direcionando a E/S para nenhum dos volumes do EBS anexados à sua instância e a verificação de status do EBS anexado indicar uma deficiência, você pode interromper a instância e iniciá-la para resolver problemas com o host físico que estiverem afetando a acessibilidade dos volumes do EBS. Para obter mais informações, consulte Métricas de uso do Amazon CloudWatch para o Amazon EBS

nota
  • A métrica de verificação de status do EBS anexado está disponível somente para instâncias do Nitro.

  • Você pode monitorar a métrica de verificação de status do EBS anexado criando um alarme do CloudWatch com base na métrica StatusCheckFailed_AttachedEBS. Não é possível visualizar essa verificação de status usando o comando describe-instance-status da AWS CLI.

Como trabalhar com verificações de status

Você pode trabalhar com verificações de status usando o console e as ferramentas de linha de comando, como a AWS CLI.

Visualizar verificações de status

Para ver as verificações de status, use um dos métodos a seguir.

Console
Para visualizar verificações de status
  1. Abra o console do Amazon EC2 em https://console.aws.amazon.com/ec2/.

  2. No painel de navegação, escolha Instances (Instâncias).

  3. Na página Instances (Instâncias), a coluna Status check (Verificações de status) lista o status operacional de cada instância.

  4. Para visualizar o status de uma instância específica, selecione a instância e escolha a guia Status e alarmes.

    
                                            Visualize as verificações de status da instância na guia Status e alarmes.

    Se a verificação de status da instância falhar, você normalmente precisará lidar com o problema por conta própria (por exemplo, reinicializando a instância ou fazendo alterações de configuração da instância). Para resolver falhas de verificação de status de instância ou sistema, consulte Solução de problemas em instâncias com falha nas verificações de status.

  5. Para revisar as métricas do CloudWatch para verificações de status, na guia Status e alarmes, expanda Métricas e veja os gráficos das seguintes métricas:

    • Falha na verificação de status do sistema

    • Falha na verificação de status da instância

    Para ter mais informações, consulte Métricas de verificação de status.

Command line

É possível visualizar as verificações de status de instâncias em execução usando o comando describe-instance-status (AWS CLI).

Para visualizar o status de todas as instâncias, use o comando a seguir.

aws ec2 describe-instance-status

Para obter o status de todas as instâncias com um status de impaired, use o comando a seguir.

aws ec2 describe-instance-status \ --filters Name=instance-status.status,Values=impaired

Para obter o status de uma única instância, use o comando a seguir.

aws ec2 describe-instance-status \ --instance-ids i-1234567890abcdef0

Como alternativa, use os seguintes comandos do :

Se houver uma instância com uma verificação de status com falha, consulte Solução de problemas em instâncias com falha nas verificações de status.

Criar e editar alarmes de verificação de status

É possível usar as métricas de verificação de status para criar alarmes do CloudWatch a fim de notificar você quando uma instância apresentou falha na verificação de status.

Para criar um alarme de verificação de status, use um dos seguintes métodos:

Console

Use o procedimento a seguir para configurar um alarme que envia uma notificação por e-mail ou que interrompe, encerra ou recupera uma instância quando ela apresenta falha em uma verificação de status.

Para criar um alarme de verificação de status (console)
  1. Abra o console do Amazon EC2 em https://console.aws.amazon.com/ec2/.

  2. No painel de navegação, escolha Instances (Instâncias).

  3. Selecione a instância, escolha a guia Status Checks (Verificações de status) e selecione Actions (Ações), Create status check alarm (Criar alarme de verificação de status).

  4. Na página Manage CloudWatch alarms (Gerenciar alarmes do CloudWatch), em Add or edit alarm (Adicionar ou editar alarme), selecione Create an alarm (Criar um alarme).

  5. Em Alarm notification (Notificação de alarme), ative a opção para configurar notificações do Amazon Simple Notification Service (Amazon SNS). Selecione um tópico existente do Amazon SNS ou insira um nome para criar um tópico.

    Se você tiver adicionado um endereço de e-mail à lista de destinatários ou criado um novo tópico, o Amazon SNS enviará uma mensagem de e-mail de confirmação de assinatura para cada novo endereço. Cada destinatário deve confirmar a assinatura escolhendo o link contido na mensagem. As notificações de alerta são enviadas apenas para endereços confirmados.

  6. Em Alarm action (Ação de alarme), ative a opção para especificar uma ação a ser executada quando o alarme for acionado. Selecione a ação.

  7. Em Alarm thresholds (Limites de alarme), especifique a métrica e os critérios do alarme.

    É possível deixar as configurações padrão para Group samples by (Average) (Agrupar amostras por, Média) e Type of data to sample (Status check failed: either) (Tipo de dados para amostragem, Falha na verificação de status: qualquer), ou pode alterá-los para atender às suas necessidades.

    Para Consecutive Period (Período consecutivo), defina o número de períodos que deseja avaliar e, em Period (Período), insira a duração do período de avaliação antes de acionar o alarme e enviar um e-mail.

  8. (Opcional) Em Sample metric data (Dados de métrica de exemplo), escolha Add to dashboard (Adicionar ao painel).

  9. Escolha Criar.

Se você precisar fazer alterações em um alarme de status de instância, poderá editá-lo.

Para editar um alarme de verificação de status
  1. Abra o console do Amazon EC2 em https://console.aws.amazon.com/ec2/.

  2. No painel de navegação, escolha Instances (Instâncias).

  3. Selecione a instância e escolha Actions (Ações), Monitoring (Monitoramento), Manage CloudWatch alarms (Gerenciar alarmes do CloudWatch).

  4. Na página Manage CloudWatch alarms (Gerenciar alarmes do CloudWatch), em Add or edit alarm (Adicionar ou editar alarme), escolha Edit an alarm (Editar um alarme).

  5. Em Search for alarm (Procurar alarme), escolha o alarme.

  6. Quando terminar de fazer alterações, escolha Update (Atualizar).

Command line

No exemplo a seguir, o alarme publica uma notificação para um tópico de SNS, arn:aws:sns:us-west-2:111122223333:my-sns-topic, quando há falha da instância na verificação de instância ou na verificação de status de sistema por, pelo menos, dois períodos consecutivos. A métrica do CloudWatch usada é StatusCheckFailed.

Como criar um alarme de verificação de status usando a AWS CLI
  1. Selecione um tópico de SNS existente ou crie um novo. Para obter mais informações, consulte Uso do Amazon SNS com a AWS CLI no Guia do usuário da AWS Command Line Interface.

  2. Use o seguinte comando list-metrics para visualizar as métricas do Amazon CloudWatch disponíveis para o Amazon EC2.

    aws cloudwatch list-metrics --namespace AWS/EC2
  3. Use o seguinte comando put-metric-alarm para criar o alarme.

    aws cloudwatch put-metric-alarm \ --alarm-name StatusCheckFailed-Alarm-for-i-1234567890abcdef0 \ --metric-name StatusCheckFailed \ --namespace AWS/EC2 \ --statistic Maximum \ --dimensions Name=InstanceId,Value=i-1234567890abcdef0 \ --unit Count \ --period 300 \ --evaluation-periods 2 \ --threshold 1 \ --comparison-operator GreaterThanOrEqualToThreshold \ --alarm-actions arn:aws:sns:us-west-2:111122223333:my-sns-topic

    O período é o intervalo de tempo, em segundos, no qual as métricas do Amazon CloudWatch são coletadas. Este exemplo usa 300, que são 60 segundos multiplicados por 5 minutos. O período de avaliação é o número de períodos consecutivos pelos quais o valor da métrica deve ser comparado ao limite. Este exemplo usa 2. As ações do alarme são as ações a serem executadas quando esse alarme é acionado. Este exemplo configura o alarme para enviar um e-mail usando Amazon SNS.