Criar alarmes para interromper, encerrar, reinicializar ou recuperar uma instância
Usando as ações de alarme do Amazon CloudWatch, você cria alarmes que automaticamente param, encerram, reinicializam ou recuperam suas instâncias. É possível usar as ações de parada ou encerramento para ajudar a economizar dinheiro quando não precisar mais que uma instância seja executada. É possível usar as ações de reinicialização e recuperação para reinicializar automaticamente essas instâncias ou recuperá-las para um novo hardware caso ocorra um problema no sistema.
nota
Para saber mais sobre alarmes de faturamento e custos do Amazon CloudWatch, consulte Faturamento e custos do CloudWatch no Guia do usuário do Amazon CloudWatch.
A função AWSServiceRoleForCloudWatchEvents
ligado ao serviço permite que a AWS execute ações de alarme em seu nome. A primeira vez que você criar um alarme no AWS Management Console, na AWS CLI ou na API do IAM, o CloudWatch cria o perfil vinculado ao serviço para você.
Há várias situações nas quais é possível querer interromper ou encerrar sua instância automaticamente. Por exemplo, é possível ter instâncias dedicadas a trabalhos de processamento de folha de pagamento em lote ou tarefas de computação científica que são executadas por um período e, em seguida, concluem seu trabalho. Em vez de permitir que essas instâncias fiquem ociosas (e acumulem cobranças), é possível interrompê-las ou encerrá-las, o que pode ajudá-lo a fazer uma economia. A principal diferença entre usar as ações de alarme de interrupção e encerramento é que é possível facilmente iniciar uma instância interrompida se precisar executá-la novamente mais tarde e manter o mesmo ID de instância e volume do dispositivo raiz. No entanto, não é possível iniciar uma instância encerrada. Em vez disso, é necessário executar uma nova instância. Quando uma instância é interrompida ou encerrada, os dados nos volumes de armazenamento da instância são perdidos.
É possível adicionar as ações de interrupção, encerramento, reinicialização ou recuperação a qualquer alarme definido em uma métrica por instância do Amazon EC2, incluindo métricas de monitoramento básico e detalhado fornecidas pelo Amazon CloudWatch (no namespace AWS/EC2
), bem como todas as métricas personalizadas que incluem a dimensão InstanceId
, desde que seu valor se refira a uma instância do Amazon EC2 em execução.
Importante
Os alarmes de verificação de status podem entrar temporariamente no estado INSUFFICIENT_DATA
se faltarem pontos de dados de métricas. Embora raro, isso pode acontecer quando há uma interrupção nos sistemas de relatórios de métricas, mesmo quando uma instância está íntegra. Recomendamos que você trate o estado INSUFFICIENT_DATA
como dados ausentes em vez de uma violação de alarme, especialmente ao configurar o alarme para parar, encerrar, reinicializar ou recuperar uma instância.
Suporte a consoles
É possível criar alarmes usando o console do Amazon EC2 ou do CloudWatch. Os procedimentos nesta documentação usam o console do Amazon EC2. Para procedimentos que usam o console do CloudWatch, consulte Criar alarmes que param, encerram, reinicializam ou recuperam uma instância no Guia do usuário do Amazon CloudWatch.
Permissões
Você deve ter a permissão iam:CreateServiceLinkedRole
para criar ou modificar um alarme que executa as ações de alarme do EC2. O perfil de serviço é um perfil do IAM que um serviço assume para realizar ações em seu nome. Um administrador do IAM pode criar, modificar e excluir um perfil de serviço do IAM. Para obter mais informações, consulte Criar um perfil para delegar permissões a um AWS service (Serviço da AWS) no Guia do Usuário do IAM.
Conteúdo
Adicionar ações de interrupção a alarmes do Amazon CloudWatch
É possível criar um alarme que pare uma instância do Amazon EC2 quando o limite for atingido. Por exemplo, é possível executar instâncias de desenvolvimento ou teste e ocasionalmente se esquecer de desativá-las. É possível criar um alarme que seja acionado quando o percentual médio de utilização da CPU for inferior a 10% em 24 horas, sinalizando que ela está ociosa e não mais em uso. É possível ajustar o limite, a duração e o período para atender às suas necessidades, além de poder adicionar uma notificação do Amazon Simple Notification Service (Amazon SNS) para receber um e-mail quando o alarme for acionado.
As instâncias que usam um volume do Amazon EBS como dispositivo raiz podem ser interrompidas ou encerradas, enquanto as instâncias que usam o armazenamento de instância como dispositivo raiz só podem ser encerradas. Os dados nos volumes de armazenamento de instância são perdidos quando a instância é interrompida ou encerrada.
Para criar um alarme para parar uma instância em repouso (console do Amazon EC2)
-
Abra o console do Amazon EC2 em https://console.aws.amazon.com/ec2/
. -
No painel de navegação, escolha Instances (Instâncias).
-
Selecione a instância e escolha Actions (Ações), Monitor and troubleshoot (Monitorar e solucionar problemas), Manage CloudWatch alarms (Gerenciar alarmes do CloudWatch).
Como alternativa, é possível escolher o sinal de mais ( ) na coluna Alarm status (Status do alarme) .
-
Na página Manage CloudWatch alarms (Gerenciar alarmes do CloudWatch), faça o seguinte:
-
Escolha Create an alarm (Criar um alarme).
-
Para receber um e-mail quando o alarme for acionado, para Alarm notification (Notificação de alarme), escolha um Amazon SNS tópico existente. Para fazer isso, você precisa criar um tópico do Amazon SNS usando o console do Amazon SNS. Para obter mais informações, consulte Usar o Amazon SNS para mensagens de aplicativo para pessoa (A2P) no Guia do desenvolvedor do Amazon Simple Notification Service.
-
Alterne em Ação alarme e escolha Parar.
-
Para Group samples by (Agrupar amostras por) e Type of data to sample (Tipo de dados a serem amostrados), escolha uma estatística e uma métrica. Neste exemplo, escolha Average (Média) e CPU utilization (Utilização da CPU).
-
Para Alarm When (Alarme quando) e Percent (Percentual), especifique o limite da métrica. Neste exemplo, especifique <= e 10%.
-
Para Consecutive period (Período consecutivo) e Period (Período), especifique o período de avaliação do alarme. Neste exemplo, especifique 1 período consecutivo de 5 minutos.
-
Amazon CloudWatch cria automaticamente um nome de alarme para você. Para alterar o nome, em Alarm name (Nome do alarme), insira um novo nome. Os nomes de alarme devem conter somente caracteres ASCII.
nota
É possível ajustar a configuração do alarme com base em suas próprias necessidades antes de criá-lo, ou pode editá-las mais tarde. Aí incluem-se as configurações de métrica, limiar, duração, ação e notificação. No entanto, depois de criar um alarme, você não pode mais editar seu nome.
-
Escolha Criar.
-
Adicionar ações de encerramento a alarmes do Amazon CloudWatch
É possível criar um alarme que encerre uma instância do EC2 automaticamente quando um certo limite for atingido (desde que a proteção contra encerramento não esteja ativada para a instância). Por exemplo, é possível encerrar uma instância quando ela tiver concluído seu trabalho e não precisar mais dela. Se você quiser usar a instância posteriormente, pare-a em vez de encerrá-la. Os dados nos volumes de armazenamento de instância são perdidos quando a instância é encerrada. Para obter informações sobre a habilitação e a desabilitação da proteção contra encerramento de uma instância, consulte Habilitar a proteção contra encerramento.
Para criar um alarme para encerrar uma instância em repouso (console do Amazon EC2)
-
Abra o console do Amazon EC2 em https://console.aws.amazon.com/ec2/
. -
No painel de navegação, escolha Instances (Instâncias).
-
Selecione a instância e escolha Actions (Ações), Monitor and troubleshoot (Monitorar e solucionar problemas), Manage CloudWatch alarms (Gerenciar alarmes do CloudWatch).
Como alternativa, é possível escolher o sinal de mais ( ) na coluna Alarm status (Status do alarme) .
-
Na página Manage CloudWatch alarms (Gerenciar alarmes do CloudWatch), faça o seguinte:
-
Escolha Create an alarm (Criar um alarme).
-
Para receber um e-mail quando o alarme for acionado, para Alarm notification (Notificação de alarme), escolha um Amazon SNS tópico existente. Para fazer isso, você precisa criar um tópico do Amazon SNS usando o console do Amazon SNS. Para obter mais informações, consulte Usar o Amazon SNS para mensagens de aplicativo para pessoa (A2P) no Guia do desenvolvedor do Amazon Simple Notification Service.
-
Alterne em Ação alarme e escolha Encerrar.
-
Para Group samples by (Agrupar amostras por) e Type of data to sample (Tipo de dados a serem amostrados), escolha uma estatística e uma métrica. Neste exemplo, escolha Average (Média) e CPU utilization (Utilização da CPU).
-
Para Alarm When (Alarme quando) e Percent (Percentual), especifique o limite da métrica. Neste exemplo, especifique => e 10 por cento.
-
Para Consecutive period (Período consecutivo) e Period (Período), especifique o período de avaliação do alarme. Neste exemplo, especifique 24 períodos consecutivos de 1 hora.
-
Amazon CloudWatch cria automaticamente um nome de alarme para você. Para alterar o nome, em Alarm name (Nome do alarme), insira um novo nome. Os nomes de alarme devem conter somente caracteres ASCII.
nota
É possível ajustar a configuração do alarme com base em suas próprias necessidades antes de criá-lo, ou pode editá-las mais tarde. Aí incluem-se as configurações de métrica, limiar, duração, ação e notificação. No entanto, depois de criar um alarme, você não pode mais editar seu nome.
-
Escolha Criar.
-
Adicionar ações de reinicialização a alarmes do Amazon CloudWatch
É possível criar um alarme do Amazon CloudWatch que monitore uma instância do Amazon EC2 e reinicialize automaticamente a instância. A ação de alarme de reinicialização é recomendada para falhas de verificação de integridade da instância (ao contrário da ação de alarme de recuperação, que é adequado para falhas de verificação de integridade do sistema). Reinicializar a instância equivale a reinicializar o sistema operacional. Na maioria dos casos, leva apenas alguns minutos para reinicializar sua instância. Quando você reinicializa uma instância, ela permanece no mesmo host físico, para que sua instância mantenha seu nome DNS público, o endereço IP privado e os dados em seus volumes de armazenamento de instância.
A reinicialização de uma instância não inicia uma nova hora de faturamento de instância (com uma cobrança mínima de um minuto), diferente do que acontece na interrupção e na reinicialização da instância. Os dados nos volumes de armazenamento de instância são retidos quando a instância é reinicializada. Os volumes de armazenamento de instâncias devem ser remontados no sistema de arquivos após uma reinicialização. Para ter mais informações, consulte Reinicializar a instância.
Importante
Para evitar um comportamento de disputa entre as ações de reinicialização e recuperação, evite configurar o mesmo número de períodos de avaliação para um alarme de reinicialização e um alarme de recuperação. Recomendamos que você defina alarmes de reinicialização para três períodos de avaliação de um minuto cada. Para obter mais informações, consulte Avaliar um alarme no Guia do usuário do Amazon CloudWatch.
Para criar um alarme para reinicializar uma instância (console do Amazon EC2)
-
Abra o console do Amazon EC2 em https://console.aws.amazon.com/ec2/
. -
No painel de navegação, escolha Instances (Instâncias).
-
Selecione a instância e escolha Actions (Ações), Monitor and troubleshoot (Monitorar e solucionar problemas), Manage CloudWatch alarms (Gerenciar alarmes do CloudWatch).
Como alternativa, é possível escolher o sinal de mais ( ) na coluna Alarm status (Status do alarme) .
-
Na página Manage CloudWatch alarms (Gerenciar alarmes do CloudWatch), faça o seguinte:
-
Escolha Create an alarm (Criar um alarme).
-
Para receber um e-mail quando o alarme for acionado, para Alarm notification (Notificação de alarme), escolha um Amazon SNS tópico existente. Para fazer isso, você precisa criar um tópico do Amazon SNS usando o console do Amazon SNS. Para obter mais informações, consulte Usar o Amazon SNS para mensagens de aplicativo para pessoa (A2P) no Guia do desenvolvedor do Amazon Simple Notification Service.
-
Alterne em Ação alarme e escolha Reinicializar.
-
Para Group samples by (Agrupar amostras por) e Type of data to sample (Tipo de dados a serem amostrados), escolha uma estatística e uma métrica. Neste exemplo, escolha Average (Média) e Status check failed: instance (Falha na verificação de status: instância).
-
Para Consecutive period (Período consecutivo) e Period (Período), especifique o período de avaliação do alarme. Nesse exemplo, digite 3 períodos consecutivos de 1 minuto. Se 1 minuto estiver desabilitado, você deverá habilitar o monitoramento detalhado ou escolher 5 minutos.
-
Amazon CloudWatch cria automaticamente um nome de alarme para você. Para alterar o nome, em Alarm name (Nome do alarme), insira um novo nome. Os nomes de alarme devem conter somente caracteres ASCII.
-
Escolha Criar.
-
Adicionar ações de recuperação a alarmes do Amazon CloudWatch
É possível criar um alarme do Amazon CloudWatch que monitore uma instância do Amazon EC2. Se a instância for invalidada devido a uma falha de hardware subjacente ou a um problema que exija o envolvimento da AWS para corrigi-lo, será possível recuperar a instância automaticamente. Instâncias encerradas não podem ser recuperadas. Uma instância recuperada é idêntica à instância original, incluindo o ID da instância, endereços IP privados, endereços IP elásticos e todos os metadados de instância.
O CloudWatch impede que você adicione uma ação de recuperação a um alarme que esteja em uma instância que não oferece suporte a ações de recuperação.
Quando o alarme StatusCheckFailed_System
for acionado e a ação de recuperação for iniciada, você será notificado pelo tópico do Amazon SNS que escolheu ao criar o alarme e a ação de recuperação associada. Durante a recuperação da instância, a instância será migrada durante uma reinicialização da instância e todos os dados na memória serão perdidos. Quando o processo é concluído, as informações serão publicadas no tópico do SNS que você tiver configurado para o alarme. Qualquer pessoa que estiver inscrita neste tópico do SNS receberá uma notificação por e-mail com o status da tentativa de recuperação e instruções adicionais. Você perceberá uma reinicialização de instância na instância recuperada.
nota
A ação de recuperação pode ser usada somente com StatusCheckFailed_System
, não com StatusCheckFailed_Instance
.
Os problemas a seguir 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
A ação de recuperação é compatível somente nas instâncias com as características a seguir. Para ter mais informações, consulte Resiliência de instância.
Se a sua instância tiver um endereço IP público, ela reterá o endereço IP público após a recuperação.
Importante
Para evitar um comportamento de disputa entre as ações de reinicialização e recuperação, evite configurar o mesmo número de períodos de avaliação para um alarme de reinicialização e um alarme de recuperação. É recomendável que você defina os alarmes de recuperação para dois períodos de avaliação de um minuto cada. Para obter mais informações, consulte Avaliar um alarme no Guia do usuário do Amazon CloudWatch.
Para criar um alarme para recuperar uma instância (console do Amazon EC2)
-
Abra o console do Amazon EC2 em https://console.aws.amazon.com/ec2/
. -
No painel de navegação, escolha Instances (Instâncias).
-
Selecione a instância e escolha Actions (Ações), Monitor and troubleshoot (Monitorar e solucionar problemas), Manage CloudWatch alarms (Gerenciar alarmes do CloudWatch).
Como alternativa, é possível escolher o sinal de mais ( ) na coluna Alarm status (Status do alarme) .
-
Na página Manage CloudWatch alarms (Gerenciar alarmes do CloudWatch), faça o seguinte:
-
Escolha Create an alarm (Criar um alarme).
-
Para receber um e-mail quando o alarme for acionado, para Alarm notification (Notificação de alarme), escolha um Amazon SNS tópico existente. Para fazer isso, você precisa criar um tópico do Amazon SNS usando o console do Amazon SNS. Para obter mais informações, consulte Usar o Amazon SNS para mensagens de aplicativo para pessoa (A2P) no Guia do desenvolvedor do Amazon Simple Notification Service.
nota
Os usuários devem se inscrever no tópico do SNS especificado para receber notificações por email quando o alarme for acionado. O Usuário raiz da conta da AWS sempre recebe notificações por e-mail quando ocorrem ações de recuperação automática de instância, mesmo que um tópico do SNS não esteja especificado ou o usuário raiz não esteja inscrito no tópico de SNS especificado.
-
Alterne em Ação alarme e escolha Recuperar.
-
Para Group samples by (Agrupar amostras por) e Type of data to sample (Tipo de dados a serem amostrados), escolha uma estatística e uma métrica. Neste exemplo, escolha Average (Média) e Status check failed: system (Falha na verificação de status: sistema).
-
Para Consecutive period (Período consecutivo) e Period (Período), especifique o período de avaliação do alarme. Nesse exemplo, digite 2 períodos consecutivos de 1 minuto. Se 1 minuto estiver desabilitado, você deverá habilitar o monitoramento detalhado ou escolher 5 minutos.
-
Amazon CloudWatch cria automaticamente um nome de alarme para você. Para alterar o nome, em Alarm name (Nome do alarme), insira um novo nome. Os nomes de alarme devem conter somente caracteres ASCII.
-
Escolha Criar.
-