Paso 1: Crear una aplicación de ejemplo - AWS Elastic Beanstalk

Paso 1: Crear una aplicación de ejemplo

En este paso, creará una nueva aplicación a partir de una aplicación de ejemplo preexistente. Elastic Beanstalk admite plataformas para distintos lenguajes de programación, servidores de aplicaciones y contenedores de Docker. Puede elegir una plataforma al crear la aplicación.

Creación de una aplicación y un entorno

Para crear su aplicación de ejemplo, usará el asistente de la consola Create a web app (Creación de una aplicación web). Crea una aplicación de Elastic Beanstalk y lanza un entorno dentro de esta. Un entorno es una colección de recursos de AWS necesarios para ejecutar el código de su aplicación.

Para crear una aplicación de ejemplo

  1. Abra la consola de Elastic Beanstalk mediante este enlace: https://console.aws.amazon.com/elasticbeanstalk/home#/gettingStarted?applicationName=getting-started-app

  2. Si lo desea, agregue etiquetas de aplicación.

  3. En Platform (Plataforma), elija una plataforma y, a continuación, elija Create application (Crear aplicación).

Para ejecutar una aplicación de ejemplo en recursos de AWS, Elastic Beanstalk realiza las siguientes acciones. Tarda aproximadamente cinco minutos en completarse.

  1. Crea una aplicación de Elastic Beanstalk llamada getting-started-app.

  2. Lanza un entorno denominado GettingStartedApp-env con estos recursos de AWS:

    • Una instancia de Amazon Elastic Compute Cloud (Amazon EC2) (máquina virtual)

    • Un grupo de seguridad de Amazon EC2

    • Un bucket de Amazon Simple Storage Service (Amazon S3)

    • Alarmas de Amazon CloudWatch

    • Una pila de AWS CloudFormation

    • Un nombre de dominio

    Para obtener detalles sobre estos recursos de AWS, consulte Recursos de AWS creados para la aplicación de ejemplo.

  3. Cree una nueva versión de la aplicación llamada Sample Application (Aplicación de muestra). Este es el archivo de aplicación de ejemplo predeterminado de Elastic Beanstalk.

  4. Implementa el código para la aplicación de ejemplo en el entorno GettingStartedApp-env.

Durante el proceso de creación del entorno, la consola hace un seguimiento del progreso y muestra los eventos.


          Consola de Elastic Beanstalk que muestra los eventos que tienen lugar al crear un entorno

Cuando se lancen todos los recursos y las instancias EC2 que ejecutan la aplicación superen las comprobaciones de estado, los cambios de estado del entorno tendrán el valor Ok. Ahora puede usar el sitio web de su aplicación web.

Recursos de AWS creados para la aplicación de ejemplo

Al crear la aplicación de ejemplo, Elastic Beanstalk crea los siguientes recursos de AWS:

  • EC2 instance (Instancia EC2): máquina virtual de Amazon EC2 configurada para ejecutar aplicaciones web en la plataforma que elija.

    Cada plataforma ejecuta un conjunto distinto de software, archivos de configuración y scripts compatibles con una determinada versión de lenguaje, marco y contenedor web (o una combinación de ellos). La mayoría de las plataformas utilizan Apache o nginx como un proxy inverso que procesa el tráfico web delante de la aplicación web, reenvía las solicitudes a esta, administra los recursos estáticos y genera registros de acceso y errores.

  • Instance security group (Grupo de seguridad de la instancia): grupo de seguridad de Amazon EC2 configurado para permitir el tráfico entrante en el puerto 80. Este recurso permite que el tráfico HTTP procedente del balanceador de carga llegue a la instancia EC2 en la que se ejecuta la aplicación web. De forma predeterminada, el tráfico no está permitido en otros puertos.

  • Amazon S3 bucket (Bucket de Amazon S3): ubicación de almacenamiento para el código fuente, los registros y otros artefactos que se crean al utilizar Elastic Beanstalk.

  • Amazon CloudWatch alarms (Alarmas de Amazon CloudWatch): dos alarmas de CloudWatch que monitorizan la carga de las instancias del entorno y que se activan si la carga es demasiado alta o demasiado baja. Cuando se activa una alarma, en respuesta, el grupo de Auto Scaling aumenta o reduce los recursos.

  • Pila de AWS CloudFormation. Elastic Beanstalk utiliza AWS CloudFormation para lanzar los recursos en su entorno y propagar los cambios de configuración. Los recursos se definen en una plantilla que puede verse en la consola de AWS CloudFormation.

  • Domain name (Nombre de dominio): nombre de dominio que direcciona el tráfico a la aplicación web con el formato subdominio.región.elasticbeanstalk.com.