# **Challenge de Infraestructura y OpenShift** ## **Descripción** Este challenge está diseñado para evaluar habilidades en **infraestructura en la nube (AWS), automatización con Terraform y despliegue en OpenShift (OCP)**. El objetivo es implementar un clúster de OpenShift y desplegar una solución basada en **3scale API Management** con bases de datos externas. ## **Requisitos** - **AWS**: Se utilizará una cuenta provista por **Semperti**. - **Terraform**: Para la creación de infraestructura. - **OpenShift (OCP)**: Instalación de un clúster en AWS (**No ROSA / ARO**, **IPI Cluster**). - **3scale API Management**: Instalación con bases de datos externas. - **Ingress & Routing**: Configuración de **sharding** y exposición de rutas. - **Aplicaciones en OpenShift**: - **NGINX**: Desplegar un pod con NGINX. - **API**: Implementar una API y exponerla a través de **3scale**. ## **Objetivos** 1. **Provisionar** infraestructura en AWS con **Terraform**. 2. **Instalar y configurar** OpenShift (OCP) en AWS (**IPI Cluster**). 3. **Desplegar 3scale** con bases de datos externas. 4. **Configurar un Ingress de sharding** para exponer rutas. 5. **Levantar un NGINX** dentro del clúster de OpenShift. 6. **Desplegar una API** y exponerla mediante **3scale**. ## **Entregables** - Código Terraform para la infraestructura en AWS. - Configuración y scripts de despliegue de OpenShift y 3scale. - Definiciones de recursos en Kubernetes/OpenShift (`Deployment`, `Service`, `Ingress`, `Route`, etc.). - Documentación con pasos seguidos y decisiones tomadas. ## **Consideraciones** - Se valorará **automatización**, **buenas prácticas de infraestructura como código**, **seguridad** y **claridad en la documentación**. - Se recomienda utilizar herramientas como **Helm**, **Operators**, y seguir principios de **GitOps** si es aplicable.