Implementando alertas automatizados no AWS Health Dashboard

Carlos Diego C. P.
cdiego.blog
Published in
4 min readFeb 3, 2024

O AWS Health Dashboard é um serviço da Amazon Web Services (AWS) que fornece informações em tempo real sobre o status operacional dos serviços da AWS. Ele oferece uma visão consolidada do status de todos os serviços em todas as regiões, permitindo que os usuários monitorem e compreendam o impacto de eventos no ambiente da AWS.

O AWS Health Dashboard notifica os usuários sobre eventos e problemas que podem afetar suas operações na AWS. Esses eventos podem ser classificados em três categorias principais:

  1. Informações sobre o Status do Serviço (Service Status): Essas notificações informam sobre interrupções de serviço, degradação de desempenho ou quaisquer outras alterações no status operacional dos serviços AWS. Essas informações ajudam os usuários a entenderem se algum serviço específico está enfrentando problemas e qual é a extensão do impacto.
  2. Anúncios de Manutenção (Scheduled Maintenance): Este tipo de notificação informa sobre manutenções planejadas nos serviços da AWS. A AWS realiza manutenções regularmente para garantir a confiabilidade e a segurança de seus serviços. Os usuários são notificados com antecedência para que possam se preparar e minimizar qualquer impacto em suas operações.
  3. Anúncios de Eventos de Emergência (Emergency Events): Estas notificações alertam sobre eventos de emergência que podem impactar a disponibilidade dos serviços da AWS. Esses eventos podem incluir incidentes não planejados, como falhas críticas em infraestrutura ou outros problemas que exigem atenção imediata.

Importância do AWS Health Dashboard

O AWS Health Dashboard é uma ferramenta crucial para garantir a confiabilidade e a resiliência das operações na nuvem. Sua importância reside em:

  1. Visibilidade Global: Fornece uma visão consolidada do status de todos os serviços e regiões da AWS em um único painel, permitindo que os usuários identifiquem rapidamente problemas em potencial.
  2. Tomada de Decisão Informada: Ao receber notificações em tempo real sobre eventos, os usuários podem tomar decisões informadas sobre como lidar com interrupções de serviço, planejar para manutenções programadas e responder a eventos de emergência.
  3. Redução de Tempo de Resposta: Permite uma resposta mais rápida a problemas, minimizando o tempo de inatividade e mitigando impactos adversos nos negócios.
  4. Transparência e Comunicação: Promove a transparência ao fornecer informações proativas sobre eventos e atualizações regulares. Isso ajuda a construir confiança entre os usuários e a AWS.

Em resumo, o AWS Health Dashboard desempenha um papel vital na operação segura e eficiente de serviços na nuvem, oferecendo aos usuários visibilidade e notificações sobre eventos que podem afetar suas operações na AWS.

Tutorial: Implementando um Alerta de Notificação por E-mail para Eventos no AWS Health Dashboard

Pré-requisitos:

  1. Conta AWS ativa.
  2. Acesso à AWS Console ou AWS CLI instalado.
  3. Terraform e/ou AWS CLI instalados, se você optar por usar CloudFormation e Terraform.

Passo 1: Configurar o Ambiente

Antes de começar, certifique-se de ter configurado suas credenciais da AWS no ambiente em que você estará trabalhando.

Passo 2: Escolher a Abordagem (Terraform ou CloudFormation)

Escolha entre Terraform e CloudFormation. Ambas as abordagens oferecem maneiras eficientes de provisionar recursos na AWS, e você pode escolher a que melhor atenda às suas necessidades.

Usando Terraform:

Passo 3: Escrever o Código Terraform

Crie um arquivo chamado main.tf e adicione o seguinte código:

provider “aws” {
region = “us-east-1” # Substitua pela sua região desejada
}

resource “aws_sns_topic” “health_alert_topic” {
name = “health_alert_topic”
}

resource “aws_cloudwatch_event_rule” “health_event_rule” {
name = “health_event_rule”
event_pattern = <<EOF
{
“source”: [“aws.health”],
“detail-type”: [“AWS Health Event Notification”],
“resources”: [“*”]
}
EOF

}

resource “aws_cloudwatch_event_target” “health_event_target” {
rule = aws_cloudwatch_event_rule.health_event_rule.name
arn = aws_sns_topic.health_alert_topic.arn
}

Passo 4: Inicializar e Aplicar o Terraform

Execute os seguintes comandos no diretório onde o arquivo main.tf está localizado:

terraform init
terraform apply

Usando CloudFormation:

Passo 3: Escrever o Template CloudFormation

Crie um arquivo chamado health_alert_template.yaml e adicione o seguinte código:

AWSTemplateFormatVersion: '2010-09-09'
Resources:
HealthAlertTopic:
Type: AWS::SNS::Topic
Properties:
DisplayName: HealthAlertTopic

HealthEventRule:
Type: AWS::Events::Rule
Properties:
Name: HealthEventRule
EventPattern:
source:
- aws.health
detail-type:
- AWS Health Event Notification
resources:
- "*"

HealthEventTarget:
Type: AWS::Events::Target
Properties:
Rule: !Ref HealthEventRule
Targets:
- Arn: !Ref HealthAlertTopic
Id: HealthAlertTarget

Passo 4: Implantar o Modelo CloudFormation

Execute o seguinte comando no terminal:

aws cloudformation create-stack --stack-name health-alert-stack --template-body file://health_alert_template.yaml

Passo 5: Configurar Notificações por E-mail

  1. Acesse o Console da SNS.
  2. Selecione o tópico criado (health_alert_topic).
  3. Na guia “Subscriptions”, clique em “Create Subscription”.
  4. Escolha o protocolo “Email” e insira o endereço de e-mail para receber notificações.

Agora, você configurou com sucesso um alerta de notificação por e-mail para eventos no AWS Health Dashboard. Certifique-se de monitorar o endereço de e-mail especificado para receber as notificações quando eventos ocorrerem.

Sign up to discover human stories that deepen your understanding of the world.

Membership

Read member-only stories

Support writers you read most

Earn money for your writing

Listen to audio narrations

Read offline with the Medium app

--

--

Published in cdiego.blog

Carlos Diego C. P. is a Computer Scientist, Entrepreneur and Professor. Specialist in Software Engineering, Distributed Systems and Cloud Computing. Master’s Degree and Doctorate in Computer Science.

Written by Carlos Diego C. P.

Carlos Diego C. P. é Cientista da Computação, Empreendedor e Professor. Especialista em Engenharia de Software, Sistemas Distribuídos e Computação em Nuvem.

No responses yet

Write a response