> ## Documentation Index
> Fetch the complete documentation index at: https://ai-kb.automationanywhere.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Prerrequisitos de Despliegue EKS

> Pre-deployment checklist to complete and review with the customer before deploying the EKB EKS infrastructure on their AWS account.

Esta lista de verificación debe completarse y revisarse con el cliente antes de desplegar la infraestructura EKB EKS en su cuenta de AWS. Todos los elementos deben ser confirmados, documentados y aprobados antes del despliegue.

***

## Lista de verificación

### Cuenta y Acceso de AWS

| Área   | Elemento de verificación   | Requisito detallado                                                          | Qué / Por qué                                                                                                 | Criterios de aceptación                                                                | Estado | Valores capturados / Notas |
| ------ | -------------------------- | ---------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------- | ------ | -------------------------- |
| Cuenta | ID de Cuenta de AWS        | Se debe compartir un ID de cuenta de AWS válido                              | Requerido para creación de roles IAM, titularidad de facturación, etiquetado y acceso al backend de Terraform | El ID de cuenta es correcto, la facturación está habilitada y es accesible             |        |                            |
| Región | Selección de Región de AWS | La región debe ser compatible con EKS, EC2, VPC, ACM, ElastiCache, Amazon MQ | Algunos servicios están restringidos por región; las regiones no compatibles interrumpen el despliegue        | Región confirmada en la consola de AWS y compatible con todos los servicios requeridos |        |                            |
| CLI    | AWS CLI Configurada        | Usuario IAM con AWS CLI autenticado                                          | Los despliegues de Terraform/Terragrunt requieren acceso programático                                         | `aws sts get-caller-identity` devuelve la cuenta esperada                              |        |                            |
| IAM    | Permisos de Despliegue     | Permisos IAM de administrador                                                | El despliegue abarca EC2, EKS, IAM, S3, ACM, Route 53, MQ, ElastiCache, CloudWatch                            | La política IAM permite crear/actualizar/eliminar en los servicios requeridos          |        |                            |

### Cuotas de Servicio

| Área        | Elemento de verificación                 | Requisito detallado                                                                   | Qué / Por qué                                                                            | Criterios de aceptación                                                       | Estado | Valores capturados / Notas |
| ----------- | ---------------------------------------- | ------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------- | ------ | -------------------------- |
| EC2         | Cuota de vCPU bajo demanda               | Mínimo 100–150 vCPU bajo demanda para instancias estándar (A, C, D, H, I, M, R, T, Z) | El autoescalado, las instancias r6a y Karpenter requieren un margen alto de vCPU         | Aumento de cuota aprobado en la consola de Service Quotas                     |        |                            |
| EC2         | Disponibilidad de familias de instancias | Instancias de las familias C, M, R disponibles en la región                           | Las cargas de trabajo requieren nodos optimizados para cómputo, memoria y bases de datos | Las familias de instancias son visibles y seleccionables en la consola de EC2 |        |                            |
| EKS         | Cuota de Clusters EKS                    | Al menos 1 cluster EKS permitido según el despliegue de entorno requerido             | La creación del cluster se bloquea si la cuota es insuficiente                           | Cuota >= 1 cluster                                                            |        |                            |
| VPC         | Cuota de NAT Gateway                     | 1 NAT Gateway por AZ (recomendado 3)                                                  | Las subredes privadas requieren acceso de salida a Internet                              | Cuota >= número de AZ                                                         |        |                            |
| Red         | Cuota de Elastic IP                      | Elastic IPs disponibles para NAT Gateways                                             | Cada NAT Gateway consume un Elastic IP                                                   | La cuota de Elastic IP es suficiente para el número de AZs                    |        |                            |
| ElastiCache | Cuota de ElastiCache                     | Al menos 2 nodos para el cluster Redis (`cache.t3.micro`, Redis 7.0)                  | Requerido cuando `ENABLE_AWS_SERVICES=true`                                              | Cuota >= 2 nodos                                                              |        |                            |
| Amazon MQ   | Cuota de Amazon MQ                       | Al menos 1 broker para RabbitMQ (`mq.m5.large`, RabbitMQ 3.13)                        | Requerido cuando `ENABLE_AWS_SERVICES=true`                                              | Cuota >= 1 broker                                                             |        |                            |

### Dominios y SSL

| Área         | Elemento de verificación       | Requisito detallado                                                                          | Qué / Por qué                                                     | Criterios de aceptación                                                                 | Estado | Valores capturados / Notas |
| ------------ | ------------------------------ | -------------------------------------------------------------------------------------------- | ----------------------------------------------------------------- | --------------------------------------------------------------------------------------- | ------ | -------------------------- |
| Dominios     | Dominio del Frontend           | Dominio público para el frontend web (ej. `app.example.com`)                                 | Usado para enrutamiento ALB y terminación SSL                     | El dominio resuelve y la titularidad está confirmada                                    |        |                            |
| Dominios     | Dominio de la API Backend      | Dominio público para el backend FastAPI (ej. `api.example.com`)                              | Requerido para acceso a la API y TLS                              | El dominio está documentado y aprobado                                                  |        |                            |
| Dominios     | Dominio del Servicio Automator | Dominio público para el servicio Automator (ej. `automations.example.com`)                   | Requerido para acceso a la API y TLS                              | El dominio está documentado y aprobado                                                  |        |                            |
| Dominios     | Dominio del Servicio Supabase  | Cuando no se usa Supabase Cloud — dominio público para Supabase (ej. `supabase.example.com`) | Requerido para acceso a la API y TLS cuando se autoaloja Supabase | El dominio está documentado y aprobado                                                  |        |                            |
| Certificados | Certificados ACM               | Certificados ACM wildcard o individuales creados en la región de despliegue                  | La terminación TLS en ALB requiere certificados ACM válidos       | Los certificados están en estado `ISSUED` y en la misma región de AWS que el despliegue |        |                            |

### Red

| Área     | Elemento de verificación | Requisito detallado                                         | Qué / Por qué                                                                            | Criterios de aceptación                                 | Estado | Valores capturados / Notas |
| -------- | ------------------------ | ----------------------------------------------------------- | ---------------------------------------------------------------------------------------- | ------------------------------------------------------- | ------ | -------------------------- |
| VPC      | Estrategia VPC           | Confirmar VPC existente o aprobar creación de nueva VPC     | Define aislamiento, enrutamiento y límites de seguridad                                  | ID de VPC o bloque CIDR aprobado                        |        |                            |
| CIDR     | Planificación CIDR       | El CIDR no debe superponerse con redes locales u otras VPCs | Los CIDRs superpuestos interrumpen el enrutamiento y la conectividad VPN                 | CIDR validado contra redes existentes                   |        |                            |
| Subredes | Subredes Públicas        | Subredes públicas por AZ para ALB y NAT Gateways            | Requerido para tráfico de entrada y salida                                               | Subredes etiquetadas y enrutables                       |        |                            |
| Subredes | Subredes Privadas        | Subredes privadas por AZ para nodos worker de EKS           | Garantiza que las cargas de trabajo no estén expuestas directamente a Internet           | Subredes mapeadas y alcanzables a través de NAT Gateway |        |                            |
| Salida   | Acceso de Salida         | Puertos de salida 80, 443, 53 permitidos desde nodos worker | Necesario para descargas de imágenes de contenedor, llamadas API de AWS y resolución DNS | Reglas de firewall/grupo de seguridad validadas         |        |                            |

### Configuración del Servicio

| Área                  | Elemento de verificación | Requisito detallado                                                                    | Qué / Por qué                                                                     | Criterios de aceptación                                                                      | Estado | Valores capturados / Notas |
| --------------------- | ------------------------ | -------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------- | ------ | -------------------------- |
| Supabase              | Habilitación de Supabase | Confirmar Supabase autoalojado (`ENABLE_SUPABASE=true`) o Supabase Cloud               | Afecta aprovisionamiento de DB, secretos, ingreso y configuración de red          | Decisión documentada; las banderas `ENABLE_*` correspondientes configuradas en el despliegue |        |                            |
| Servicios AWS         | Uso de Redis             | Confirmar ElastiCache Redis de AWS (`ENABLE_AWS_SERVICES=true`) o Redis externo        | Afecta alta disponibilidad, costo y diseño de red                                 | Decisión documentada                                                                         |        |                            |
| Servicios AWS         | Uso de RabbitMQ          | Confirmar Amazon MQ (`ENABLE_AWS_SERVICES=true`) o RabbitMQ externo                    | Impacta confiabilidad de mensajería y HA                                          | Decisión documentada                                                                         |        |                            |
| Balanceador de Cargas | Controlador ALB          | AWS Load Balancer Controller habilitado (`ENABLE_ALB_CONTROLLER=true`, predeterminado) | Requerido para el provisionamiento de ingreso ALB desde anotaciones de Kubernetes | Pods del controlador ejecutándose en el namespace `infrastructure`                           |        |                            |

### Autoescalado

| Área      | Elemento de verificación | Requisito detallado                                      | Qué / Por qué                                                                                            | Criterios de aceptación                                                | Estado | Valores capturados / Notas |
| --------- | ------------------------ | -------------------------------------------------------- | -------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------- | ------ | -------------------------- |
| Karpenter | Karpenter Instalado      | Controlador Karpenter desplegado a través del módulo EKS | Maneja el provisionamiento dinámico de nodos; reemplaza el autoescalado de grupos de nodos administrados | Pods de Karpenter saludables en el grupo de nodos dedicado             |        |                            |
| Karpenter | Estrategia Spot          | Uso de Spot vs bajo demanda definido por clase de nodo   | Optimiza el costo manteniendo estabilidad; el manejo de interrupciones Spot debe estar habilitado        | Manejo de interrupciones via SQS habilitado si se usan instancias Spot |        |                            |
| KEDA      | Autoescalado de Pods     | KEDA instalado a través de chart Helm (namespace `keda`) | Maneja el autoescalado dinámico de pods basado en umbrales de CPU/Memoria                                | Operador KEDA saludable; ScaledObjects aplicados a todos los servicios |        |                            |

### Almacenamiento

| Área | Elemento de verificación | Requisito detallado                                     | Qué / Por qué                                                                                  | Criterios de aceptación                                             | Estado | Valores capturados / Notas |
| ---- | ------------------------ | ------------------------------------------------------- | ---------------------------------------------------------------------------------------------- | ------------------------------------------------------------------- | ------ | -------------------------- |
| EBS  | Controlador EBS CSI      | Controlador EBS CSI instalado (namespace `kube-system`) | Requerido para el provisionamiento dinámico de volúmenes persistentes a través de StorageClass | Pods del controlador saludables; PVCs provisionándose correctamente |        |                            |

### Seguridad

| Área      | Elemento de verificación | Requisito detallado                                                     | Qué / Por qué                                                           | Criterios de aceptación                                                | Estado | Valores capturados / Notas |
| --------- | ------------------------ | ----------------------------------------------------------------------- | ----------------------------------------------------------------------- | ---------------------------------------------------------------------- | ------ | -------------------------- |
| Cifrado   | Cifrado en reposo        | Volúmenes EBS, bucket de estado S3 y cifrado de Redis habilitados       | Protege datos sensibles en reposo en todas las capas de almacenamiento  | Cifrado confirmado a través de la consola de AWS para cada servicio    |        |                            |
| Cifrado   | Cifrado en tránsito      | TLS enforced para toda la comunicación de servicios externa e interna   | Previene la interceptación de datos en tránsito                         | Endpoints HTTPS verificados; Redis `transit_encryption_enabled = true` |        |                            |
| Auditoría | Registro de auditoría    | CloudTrail, VPC Flow Logs y logs de auditoría de Kubernetes habilitados | Requerido para investigaciones de incidentes, cumplimiento y auditorías | Logs visibles y consultables en CloudWatch / S3                        |        |                            |

### Despliegue

| Área         | Elemento de verificación | Requisito detallado                                    | Qué / Por qué                                                                                  | Criterios de aceptación           | Estado | Valores capturados / Notas |
| ------------ | ------------------------ | ------------------------------------------------------ | ---------------------------------------------------------------------------------------------- | --------------------------------- | ------ | -------------------------- |
| Programación | Ventana de Despliegue    | Fecha y horario de despliegue aprobados por el cliente | Garantiza la disponibilidad del equipo del cliente para validación y reversión si es necesario | Confirmación por escrito recibida |        |                            |

### Aprobación

| Área       | Elemento de verificación | Requisito detallado                                                                | Qué / Por qué                                                                                  | Criterios de aceptación                                        | Estado | Valores capturados / Notas |
| ---------- | ------------------------ | ---------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------- | -------------------------------------------------------------- | ------ | -------------------------- |
| Aprobación | Aprobación del Cliente   | El cliente aprueba formalmente el estimado de costos, alcance y plan de despliegue | Autorización formal de puesta en producción requerida antes de aprovisionar la infraestructura | Aprobación por correo electrónico o documento firmado recibida |        |                            |

***

## Referencia de Banderas de Habilitación/Deshabilitación de Servicios

Confirme el valor previsto para cada bandera con el cliente antes del despliegue.

| Variable de Entorno     | Valor predeterminado | Efecto                                                                                     |
| ----------------------- | -------------------- | ------------------------------------------------------------------------------------------ |
| `ENABLE_SUPABASE`       | `false`              | Desplegar stack de Supabase autoalojado (Kong, Auth, Storage, Studio)                      |
| `ENABLE_CNPG`           | `false`              | Desplegar operador CloudNativePG (prerrequisito para la DB de Supabase autoalojado)        |
| `ENABLE_HA_SUPABASE_DB` | `false`              | Desplegar cluster HA de PostgreSQL a través de CloudNativePG (prerrequisito para Supabase) |
| `ENABLE_AWS_SERVICES`   | `false`              | Provisionar ElastiCache Redis y Amazon MQ RabbitMQ                                         |
| `ENABLE_ALB_CONTROLLER` | `true`               | Desplegar AWS Load Balancer Controller                                                     |
| `ENABLE_SIGNOZ`         | `false`              | Desplegar plataforma de observabilidad SigNoz + agente k8s-infra                           |

***

## Resumen de Valores Capturados

Registre los valores finales recopilados del cliente antes del despliegue.

| Parámetro                               | Valor                 |
| --------------------------------------- | --------------------- |
| ID de Cuenta de AWS                     |                       |
| Región de AWS                           |                       |
| CIDR de la VPC                          |                       |
| Zonas de Disponibilidad                 |                       |
| Dominio del Frontend                    |                       |
| Dominio de la API                       |                       |
| Dominio del Automator                   |                       |
| Dominio de Supabase (si es autoalojado) |                       |
| Dominio de SigNoz (si está habilitado)  |                       |
| ARN(s) del Certificado ACM              |                       |
| Modo de Supabase                        | Cloud / Autoalojado   |
| Redis                                   | ElastiCache / Externo |
| RabbitMQ                                | Amazon MQ / Externo   |
| Fecha / Ventana de Despliegue           |                       |
| Referencia de Aprobación del Cliente    |                       |
