Como desplegar una aplicacion completa en aws
en este post Deplegaremos en AWS una aplicacion con frontend y backend enfocados desde un punto de vista devops. la aplicacion esta hecha en react (frontend) y golang (backend) todo es serverless no usaremos servidores para servir el frontend ni el backend, en su lugar usaremos servicios de Amazon por ejemplo para el frontend usaremos S3 y para el backend usaremos AWS Lambdas funtions explicare como vincular el frontend con el backend y como vincular el backend con la base de datos. te mostrare como levantar un AWS RDS para la bd y como configurar tu backend para hacer consutlas de sql a el RDS tambien te enseñare como el frontend debe ser configurado para que se comunique con el backend y poder hacer peticiones GET HTTP
primero inicio mostrandote la infraestructura
en esta infra tendremos servicios de AWS por ejemplo AWS s3 AWS lambda y AWS RDS
es una aplicacion simple asi que cada componente tendra un pedacito de la aplicacion, vamos por partes
Como se debe deplegar
Cada componente necesita "data" de los demas componente para poder interactura con ellos, por esto existe una forma de desplegar que es unica para este proyecto
debes iniciar el desplegue desde la base de datos debido a que el backend necesita las credenciales de la base de datos y tambien porque el frontend necesita la ruta del backend, entonces esto es algo en cadena y el inicio es la bd
idependiente el lenguaje un devops debe saber que preguntar de que estar pendiente para levantar una aplicacion, cada aplicacion tiene configuraciones especiales, ejemplo rutas de otros servicios, credenciales de bd y muchas cosas mas. tu responsabilidad es que la data este bien configurada para que al levantar el servicio lo haga correctamente
en este caso particular tenemos un script de mysql con la data prepara asi que es solo montar el RDS y cargar la data
Montando el RDS
para crear un RDS solo tienes que seguir el formulario de creacion de RDS dentro de AWS console, y luego de configurar las credenciales y obtener el url de coneccion, conectarte y ejecutar el script de la base de datos donde estan todo los esquemas
Desplegando el backend
el backend ya puede ser desplegado debido a que ya tenemos las credenciales de conexion a la bd asi que solo es de ir al archivo correcto y colocarlo.
el backend tiene una particularidad es serverless es decir esta en lambdas y lo importante aqui es que debes saber como configurar archivo de template.yml que son una especie de archivo de cloudformation para servicios serverless, y si como devops debes saberlo
lo bueno es que configurado una vez lo puedes lanzar e millones de ambientes diferente, y con solo dos comandos el sam build y el sam deploy
este al final te dara una url "la url del backend" con esta url ya puedes conectar el backend con el frontend
Desplegando el Frontend
el frontend necesita la ruta del backend asi que lo que debemos hacer aqui es copiar esa ruta en los archivo de los hooks y luego proceder a subirlo a un aws S3
asi que primero debemos crear el aws S3 con la configuracion de servidor web estaticos que solo un boton y luego ejecutar comandos de subida de archivo en el AWS cli.
todo lo que vez escrito aqui y mucho mas lo podras ver en el video de este ejercicio
Despliegue de aplicacion serverless (react y golang)
Comentarios
Publicar un comentario