Creación y Gestión de Aplicaciones con Serverless Framework
Clase 10 de 25 • Curso de Serverless Framework en AWS
Resumen
¿Qué hemos creado en nuestra primera aplicación serverless?
La creación de nuestra primera aplicación serverless puede parecer sencilla a simple vista, pero el proceso implica mucho más tras bambalinas con Amazon Web Services (AWS). Es sorprendente descubrir que, con solo unos cuantos archivos configurados, múltiples recursos en la nube son generados automáticamente. En esta exploración, entenderemos cómo Serverless Framework y AWS CloudFormation simplifican el manejo y despliegue de aplicaciones.
¿Qué sucede en CloudFormation?
El Serverless Framework utiliza AWS CloudFormation para crear y gestionar los recursos necesarios en AWS para que nuestra aplicación funcione. CloudFormation actúa como un gestor de infraestructura como código (IaC), permitiendo la gestión automatizada del ciclo de vida de los recursos en la nube.
Al revisar la consola de CloudFormation, encontramos lo siguiente:
- Stack creado: Nuestra aplicación se configura como un stack, mostrando su estado, fecha de actualización y otros detalles relevantes.
- Eventos: Aquí se puede visualizar el proceso de creación de recursos por tiempo, útil para el debuggeo y encontrar errores.
- Recursos: Se crearon 11 recursos en total, todos esenciales para mostrar un simple mensaje de API en nuestra primera aplicación.
¿Cómo interviene Lambda en nuestra aplicación?
AWS Lambda juega un papel crucial en nuestra aplicación al ejecutar el código sin necesidad de gestionar servidores físicos o virtuales. En nuestra aplicación, CloudFormation crea una función Lambda que corresponde al código que tenemos en nuestro handler, manteniéndolo conectado a otros servicios, como API Gateway.
¿Qué rol juega API Gateway?
API Gateway es el servicio que permite exponer la función Lambda a través de HTTP. Este servicio nos define un método GET en una ruta específica, permitiendo la invocación del Lambda. En este contexto, API Gateway y Lambda funcionan en conjunto para proporcionar el acceso a la aplicación desde el navegador.
¿Cómo puedo modificar y actualizar la aplicación?
La flexibilidad del ecosistema serverless permite actualizar nuestra aplicación rápidamente. Cambiar por ejemplo el mensaje que devuelve la función sólo requiere:
- Modificar el código: Edita el archivo handler.js con el nuevo mensaje.
- Desplegar de nuevo: Utiliza el comando
sls deploy
para volver a desplegar la aplicación. El Serverless Framework reconocerá la configuración y actualizará los recursos pertinentes en menos de un minuto.
¿Cómo se elimina una aplicación serverless?
Eventualmente, podríamos querer eliminar una aplicación completamente. Afortunadamente, Serverless Framework simplifica este proceso:
- Usar el comando remove: Ejecutar
serverless remove
en la consola. Este comando se encargará de eliminar todos los recursos que CloudFormation haya creado. - Verificación en CloudFormation: Durante la eliminación, se puede ver en tiempo real cómo el stack está siendo borrado, hasta que todos los recursos hayan sido eliminados.
Sirviendo como una conclusión, Serverless Framework inyecta una nueva eficiencia al proceso de creación y manejo de aplicaciones en la nube, facilitando tareas que podrían ser muy tediosas de manejar manualmente.
Luego, sigue el reto. ¡Anímate a crear nuevas aplicaciones! Cambia los mensajes, modifica rutas y descubre el potencial del desarrollo serverless por ti mismo.