AWS

13 out, 2015

Amazon CloudWatch – Reiniciar instância EC2

Publicidade

O Amazon CloudWatch monitora seus recursos e aplicações em nuvem, incluindo as instâncias Amazon Elastic Compute Cloud (EC2). Você pode rastrear a nuvem, sistemas e métricas dos aplicativos, visualizá-los na forma de gráficos e se organizar para ser notificado (através dos alertas CloudWatch), caso eles ultrapassem seu limite de alerta. Você também pode parar, encerrar ou recuperar uma instância EC2 quando um alerta for acionado (ver “Amazon CloudWatch – Alarm Actions” para mais informações sobre ações de alertas).

Nova ação – reiniciar instância

Hoje adicionamos uma quarta ação. Agora é possível ordenar que uma instância EC2 seja reiniciada quando um alerta do CloudWatch disparar. Uma vez que é possível rastrear e criar alertas na nuvem, em sistemas e para métricas dos aplicativos, esta nova ação cria uma grande flexibilidade.

Você poderia reiniciar uma instância se uma verificação de status da instância falhar repetidamente. Talvez a instância foi executada com pouca memória devido a um pedido de uma aplicação descontrolada ou serviço com vazamento na memória. Reiniciar a instância é uma maneira rápida e fácil de resolver esta situação; você pode facilmente configurar isso usando a nova ação de alerta. Em contraste com a ação de recuperação existente, que é específica para alguns tipos de instância apoiadas em EBS e é aplicável somente quando o estado da instância é considerado não recuperável, esta ação está disponível em todos os tipos de instância e é eficaz, independentemente do estado da instância.

Se você estiver usando o CloudWatch API ou a Interface da linha de comando da AWS (CLI) para acompanhar as métricas do aplicativo, você pode reiniciar uma instância se a aplicação falhar repetidamente para responder conforme o esperado. Possivelmente um processo ficou preso ou um servidor de aplicativos perdeu o seu caminho. Em muitos casos, apertar o botão (virtual) de reset é uma forma limpa e simples para fazer as coisas voltar aos trilhos.

Criando um alerta

Vamos ver como criar um alerta que irá reiniciar uma das minhas instâncias se a utilização da CPU permanecer acima de 90% por um período prolongado de tempo. Só precisamos localizar a instância no AWS Management Console, e clicar no ícone na coluna Alarm Status:

cw_inst_create_alarm_1

Entã, clique em Take the action, e escolha Reboot this instance e defina os parâmetros (90% ou mais de utilização da CPU durante 15 minutos neste exemplo):

cw_create_alarm_reboot_3

Se necessário, o console irá pedir para confirmar a criação de uma função de IAM como parte desta etapa (este é um recurso novo):

cw_create_reboot_role_1

A função terá permissão para chamar as funções “Describe” nas APIs do CloudWatch e EC2. Ela também tem permissão para reiniciar, parar e encerrar instâncias.

Clique em Create Alarm e está tudo pronto!

Este recurso já está disponível e você já pode começar a usá-lo em todas as regiões públicas da AWS.

***

Artigo escrito por Hugo Tanzarella. 

Este artigo faz parte do AWSHUB, rede de profissionais AWS gerenciado pelo iMasters.