Lapachos Lending : Guía de Despliegue de Infraestructura Nuevo Ambiente

Paso a paso de cómo desplegar la infraestructura y aplicaciones de Accicom en AWS, desde la configuración inicial del dominio hasta la publicación del frontend con Amplify.

Crear una nueva cuenta en AWS Organizations

Se debe crear una nueva cuenta en organizations usando un correo electrónico del departamento de tecnología con el siguiente formato tech+<nombre-del-proyecto>@lapachoslending.com

Pasos:

  • Ve a la consola de AWS Organizations

  • Haz clic en "Crear Cuenta".

  • Llena los campos con el nombre del proyecto y el correo electrónico

Asigna los permisos necesarios en IAM Identity Center

Pasos:

  • Ve a la consola de IAM Identity Center

  • Haz clic en "AWS accounts".

  • Asigna los permisos a los usuarios correspondientes.

Solicitar un certificado en AWS Certificate Manager (ACM)

Luego de acceder a la nueva cuenta, necesitas un certificado SSL para asegurar tus aplicaciones. Utiliza AWS Certificate Manager para solicitarlo.

Pasos:

  • Ve a la consola de AWS Certificate Manager.

  • Haz clic en "Request a certificate".

  • Ingresa tu dominio y/o subdominios (ejemplo: *.tudominio.com, *.subdominio.tudominio.com).

  • Elige la validación por DNS y agrega los registros CNAME en tu Hosted Zone.

  • Espera a que el certificado sea emitido.

Crear un Record NS Hosted Zone en Route 53

Regresa a la cuenta principal y debes crear una Hosted Zone para tu dominio en AWS Route 53. Esto permitirá gestionar los registros DNS necesarios para tus servicios.

Pasos:

  • Ingresa a la consola de AWS Route 53.

  • Haz clic en "Hosted zones" y luego en "Create hosted zone".

  • Ingresa el nombre de tu dominio (ejemplo: tudominio.com o subdominio.tudominio.com).

  • Guarda los servidores de nombres (NS) que AWS te proporciona y configúralos en tu proveedor de dominio.

Desplegar la infraestructura con CloudFormation

Con el dominio y el certificado listos, puedes desplegar la infraestructura base usando CloudFormation.

Script de despliegue:
stack.yaml

Pasos:

  • Revisa y ajusta los parámetros en stack.yaml según tu entorno.

  • En la consola de CloudFormation, crea un nuevo stack y sube tu archivo stack.yaml.

  • Parámetros requeridos:

    • DomainName: El dominio principal (ejemplo: tudominio.com)

    • Otros parámetros personalizados según tu infraestructura

  • Espera a que el stack termine de crear todos los recursos.

Desplegar el stack de CI/CD

Para automatizar el despliegue de la aplicación, sube el stack de CI/CD a CloudFormation.

Script de despliegue:
cicd.yaml

Pasos:

  • En la consola de CloudFormation, crea un nuevo stack y sube tu archivo cicd.yaml.

  • Parámetros requeridos:

    • BranchName: Rama principal para despliegue (ejemplo: main)

    • Otros parámetros según la configuración de tu pipeline

  • Espera a que el stack termine de crear los recursos de CI/CD.

Desplegar la aplicación backend con CodeBuild

Utiliza AWS CodeBuild para compilar y desplegar tu aplicación backend.

Pasos:

  • Ingresa a la consola de AWS CodeBuild.

  • Ejecuta el build y verifica que la aplicación se despliegue correctamente en el entorno configurado por CloudFormation.

Configurar AWS Amplify para el frontend

Finalmente, usa AWS Amplify para desplegar el frontend de tu aplicación.

Pasos:

  • Ingresa a la consola de AWS Amplify.

  • Aplica la migración requerida para la correcta comunicación con GitHub.

  • Ejecuta el despliegue en el botón "Run Job" y Amplify se encargará de compilar y desplegar el frontend automáticamente.

Recursos