Tutorial: Paso a Paso para Desplegar tu Primera Aplicación Serverless en AWS

Tutorial: Paso a Paso para Desplegar tu Primera Aplicación Serverless en AWS

Bienvenido a este tutorial práctico en el que te enseñaremos a desplegar tu primera aplicación serverless en AWS. Pero antes de comenzar, es importante entender ¿qué es Serverless y por qué es tan valioso? Pues bien, Serverless es una arquitectura innovadora que te permite enfocarte en el código de tu aplicación, sin preocuparte por la infraestructura subyacente. AWS, con su servicio AWS Lambda, es líder en este espacio y facilita la creación de aplicaciones escalables y altamente disponibles.

En este tutorial, crearemos una simple aplicación de API REST utilizando AWS Lambda, Amazon API Gateway y DynamoDB. Al final, podrás probarla desde tu navegador.





Paso 1: Configuración inicial de AWS


Lo primero que necesitas hacer es configurar una cuenta en AWS. Si aún no tienes una, puedes crearla gratuitamente en AWS.

Una vez que te hayas registrado y hayas iniciado sesión, será el momento de navegar por la consola de AWS. Es un espacio de trabajo impresionante, lleno de servicios y características. Por ahora, necesitamos centrarnos en los servicios que utilizaremos: Lambda, API Gateway y DynamoDB.

Para comenzar, inicia sesión en tu cuenta de AWS y abre la consola de AWS. Busca el servicio AWS Lambda y haz clic en él para abrir su panel.

Dale un nombre a tu función, como "miPrimeraFuncionServerless". En el campo "Tipo de tiempo de ejecución", selecciona "Node.js 14.x" (o cualquier versión de Node.js que prefieras). Deja las demás opciones como están y haz clic en "Crear función".

En el panel de AWS Lambda, haz clic en el botón "Crear función". Se te presentará con tres opciones: "Autor desde cero", "Usar un blueprint" y "Buscar en el repositorio de aplicaciones del servidor". Selecciona "Autor desde cero".


Paso 2: Escribir la función Lambda


Ahora que has creado tu función Lambda, es hora de escribir algo de código. AWS te proporciona un editor en línea que puedes usar para escribir tu función.

En el editor de código, reemplaza el código existente con lo siguiente:

lambda

Este es un simple "Hola Mundo" en Node.js. Cuando se llama a esta función, devuelve una respuesta HTTP 200 con el cuerpo "¡Hola desde Lambda!".

Haz clic en "Implementar" en la esquina superior derecha de la página para guardar e implementar tu función.


Paso 3: Crear y configurar API Gateway


A continuación, necesitas crear una API para que los clientes puedan llamar a tu función Lambda. Para hacer esto, ve a la consola de API Gateway.

Haz clic en "Crear API" y selecciona "API REST" como el tipo de API. Dale un nombre a tu API y deja las demás opciones como están, luego haz clic en "Crear API". Ahora tienes una API, pero todavía no hace nada. Necesitas configurar un recurso y un método para que tu API pueda manejar las solicitudes HTTP.

Haz clic en "Acciones" y selecciona "Crear recurso". Dale un nombre a tu recurso, por ejemplo, "hola". Luego, haz clic en "Crear recurso".

Con tu recurso creado, ahora puedes configurar un método. Haz clic en "Acciones" de nuevo y selecciona "Crear método". Selecciona "GET" de la lista desplegable que aparece y haz clic en el tick para confirmar.

Se te presentará con un conjunto de opciones para configurar tu método GET. En la sección "Integración de la petición", selecciona "Función Lambda" y escribe el nombre de la función Lambda que creaste anteriormente (miPrimeraFuncionServerless). Haz clic en "Guardar" para confirmar tus cambios.


Paso 4: Implementación de la API


Una vez que hayas configurado tu API, necesitas implementarla para que esté disponible en internet.

Haz clic en "Acciones" y selecciona "Implementar API". Se te pedirá que elijas un "Escenario de implementación". Puedes elegir "default" para este tutorial.

AWS te proporcionará una URL de invocación para tu API, que puedes usar para probarla. La URL será algo así: https://.execute-api..amazonaws.com/default/hola.


Paso 5: Creación de una aplicación web sencilla para interactuar con la API


Ahora que tenemos nuestra función de AWS Lambda y API Gateway configurada, podemos crear una sencilla aplicación web para interactuar con la API. Para este tutorial, vamos a crear una página web sencilla con HTML y JavaScript.

Abre tu editor de texto favorito y crea un nuevo archivo llamado index.html. Copia y pega el siguiente código en el archivo:

lambda

Este es un simple documento HTML con un botón que llama a una función JavaScript getMensaje() cuando se hace clic en él. La función getMensaje() se definirá en un archivo JavaScript separado.

Crea un nuevo archivo llamado app.js en el mismo directorio que tu archivo index.html. Copia y pega el siguiente código en el archivo app.js:

lambda


No olvides reemplazar la URL de la API por la URL de invocación que te proporcionó AWS cuando implementaste tu API. Esta función JavaScript utiliza la función fetch() para hacer una solicitud GET a la API y luego muestra la respuesta en la página web.

Guarda ambos archivos y abre index.html en tu navegador. Haz clic en el botón "Obtener mensaje" y deberías ver el mensaje "¡Hola desde Lambda!" que se muestra en la página. Si ves este mensaje, ¡felicidades! Has desplegado con éxito tu primera aplicación sin servidor en AWS.


En este tutorial, hemos cubierto los conceptos básicos de cómo desplegar una aplicación sin servidor en AWS. Hemos creado una función AWS Lambda, configurado una API con API Gateway, y creado una aplicación web sencilla para interactuar con nuestra API.

El despliegue de aplicaciones sin servidor en AWS tiene muchas ventajas. Puede reducir los costos al eliminar la necesidad de administrar servidores, aumentar la agilidad al permitir una rápida iteración y escalar automáticamente para manejar cualquier volumen de tráfico.


Si quieres aprender más sobre AWS y el despliegue de aplicaciones sin servidor, visita nuestra página de servicios en https://bcloud.consulting y no dudes en ponerte en contacto con nosotros a través de bcloud.consulting/contact-us. ¡Estamos aquí para ayudarte a hacer realidad tu visión!



Bcloud Logo

BCloud es una consultoria DevOps y Cloud. Especializada en ofrecer soluciones DevOps de alta calidad a un precio insuperable.

©2023 - BCloud Consulting