AWS Route 53 ARC – Detección, Failover Automático y Failback 1-Click

AWS Route 53 ARC

Detección de Caídas, Failover Automático y Failback 1-Click


¿De qué trata este workshop?

En este workshop aprenderás a construir una solución de alta disponibilidad y resilencia para un sitio web estático o dinámico usando servicios nativos de AWS. El sistema detecta cuando el sitio principal cae, notifica a los equipos correspondientes vía SNS → Email / SMS, redirige el tráfico a un sitio de contingencia de forma automática y ofrece mecanismos de Failback en 1-Click (Zero-Command) cuando el sitio primario vuelve a estar saludable.

Este workshop está completamente unificado y puede realizarse utilizando CloudFormation (Opción Base) o Terraform (Opción Secundaria).

    ┌────────────────────────────────────────────────────────┐
    │                Route 53 + ARC Cluster                  │
    │         DNS Failover + Routing Controls                │                     
    └───────────────┬────────────────────────┬───────────────┘
                    │                        │
         (Primario) │                        │ (Contingencia)
                    ▼                        ▼  
    ┌────────────────────────┐      ┌────────────────────────┐
    │  EC2 + ALB (Nginx)     │      │ Amplify                │
    │  t4g.micro (ARM)       │      │ "Página Mantenimiento" │
    └───────────────┬────────┘      └────────────────────────┘
                    │                    
                    ▼                    
    ┌────────────────────────────────────────────────────────┐
    │  Route 53 Health Check → CloudWatch Alarm → SNS        │
    │  → Lambda Failover Automático                          │
    │  → Detección de Recuperación (OK)                      │
    │  → Failback 1-Click (Email Link / SSM Automation)      │                        
    └────────────────────────────────────────────────────────┘

Opciones de Despliegue (IaC)

Podés realizar todo el workshop eligiendo tu herramienta de Infraestructura como Código (IaC) preferida:

Característica Opción A: AWS CloudFormation (Base) Opción B: Terraform (Segunda Opción)
Formato Stacks YAML declarativos inline Módulos HCL independientes
Almacenamiento de Estado Gestionado nativamente por AWS CloudFormation Estado local (terraform.tfstate en cada módulo)
Herramientas necesarias Solo AWS CLI (CloudShell o terminal local) Terraform CLI (v1.5+) + AWS CLI — solo terminal local
Ideal para Cualquier entorno, incluido CloudShell Equipos habituados a HCL / Terraform con terminal local

Estructura del Workshop

Lab Título Descripción
Lab 0 Prerrequisitos Cuenta AWS, política IAM granular (Least Privilege), global.env e instalación de herramientas
Lab 1 Sitio Primario EC2 (t4g.micro) + ALB + nginx con CloudFormation o Terraform
Lab 2 Sitio Secundario Página de mantenimiento en AWS Amplify (default) o CloudFront + S3
Lab 3 Route 53 ARC Route 53 Health Checks + ARC Cluster + Routing Controls + Safety Rules + DNS Failover
Lab 4 Notificaciones & Lambda SNS Topic (Email/SMS) + Lambda Failover + Lambda 1-Click Failback (Function URL) + SSM
Lab 5 Simulación de Incidente Provocar caída del primario usando 3 métodos (EC2 Stop/SSM, Alarm state, Lambda direct)
Lab 6 Failback 1-Click Restablecer tráfico al primario con 3 opciones Zero-Command (Email URL, SSM Automation, CLI)
Lab 7 Limpieza de Recursos Destroy / Delete Stacks de todos los recursos creados en orden inverso

¿A quién está dirigido?

  • Desarrolladores y Cloud Engineers que buscan dominar alta disponibilidad en AWS
  • Arquitectos de Soluciones
  • DevOps / SRE Engineers
  • Cualquier persona interesada en Route 53 ARC, automatización Serverless e IaC

Duración y Costos

  • Duración estimada: 90 – 120 minutos.
  • Costo estimado: Menos de $1 USD si se destruye la infraestructura al finalizar. EC2 t4g.micro cabe dentro del AWS Free Tier.

Consejo

Todos los pasos incluyen un bloque "✅ Verificación" ejecutable para confirmar que cada recurso fue creado correctamente antes de avanzar.

Aviso

Recuerda ejecutar el Lab 7 (Limpieza) al finalizar para evitar costos innecesarios en tu cuenta AWS.