Introducción a Java en Elastic Beanstalk - AWS Elastic Beanstalk

Las traducciones son generadas a través de traducción automática. En caso de conflicto entre la traducción y la version original de inglés, prevalecerá la version en inglés.

Introducción a Java en Elastic Beanstalk

Para comenzar a utilizar aplicaciones Java en AWS Elastic Beanstalk, lo único que necesita es el paquete de código fuente de la aplicación que va a cargar como su primera versión de la aplicación y va a implementar en un entorno. Cuando crea un entorno, Elastic Beanstalk asigna todos los recursos de AWS necesarios para ejecutar una aplicación web escalable.

Lanzar un entorno con una aplicación Java de ejemplo

Elastic Beanstalk proporciona aplicaciones de ejemplo de una sola página para cada plataforma, así como ejemplos más complejos que ilustran el uso de recursos de AWS adicionales como Amazon RDS y características y API específicas de la plataforma o del lenguaje.

Los ejemplos de una sola página muestran el mismo código que obtiene cuando crea un entorno sin proporcionar su propio código fuente. Los ejemplos más complejos se encuentran en GitHub y puede que sea necesario compilarlos para implementarlos en un entorno de Elastic Beanstalk.

Muestras

Nombre

Versiones compatibles

Tipo de entorno

Fuente

Descripción

Tomcat (página única)

Todas las ramas de plataforma Tomcat con Corretto

Servidor web

Entorno de trabajo

tomcat.zip

Aplicación web Tomcat con una sola página (index.jsp) configurada para mostrarse en la raíz del sitio web.

Para los entornos de trabajo, este ejemplo incluye un archivo cron.yaml que configura una tarea programada que llama a scheduled.jsp una vez por minuto. Cuando se llama scheduled.jsp, se escribe un archivo log en /tmp/sample-app.log. Por último, se incluye un archivo de configuración en .ebextensions que copia los registros de /tmp/ a las ubicaciones que Elastic Beanstalk lee cuando solicita registros del entorno.

Si habilita la integración de X-Ray en un entorno que ejecute este ejemplo, la aplicación muestra contenido adicional sobre X-Ray y proporciona una opción para generar información de depuración que puede ver en la consola de X-Ray.

Corretto (página única)

Corretto 11

Corretto 8

Servidor web

corretto.zip

Aplicación Corretto con archivos de configuración Buildfile y Procfile.

Si habilita la integración de X-Ray en un entorno que ejecute este ejemplo, la aplicación muestra contenido adicional sobre X-Ray y proporciona una opción para generar información de depuración que puede ver en la consola de X-Ray.

Scorekeep

Java 8 Servidor web Clonar el repositorio en GitHub.com

Scorekeep es una API web RESTful que utiliza la plataforma Spring a fin de ofrecer una interfaz para la creación y administración de usuarios, sesiones y juegos. La API está empaquetada con una aplicación web de Angular 1.5 que utiliza la API a través de HTTP.

La aplicación utiliza características de la plataforma de Java SE para descargar dependencias y compilarse en la instancia, lo que minimiza el tamaño del paquete de código fuente. La aplicación incluye también archivos de configuración nginx que invalidan la configuración predeterminada para servir la aplicación web front-end estáticamente en el puerto 80 a través del proxy y dirigir las solicitudes dirigidas a las rutas incluidas bajo /api a la API que se ejecuta en localhost:5000.

Scorekeep también incluye una ramificación xray que muestra cómo instrumentar una aplicación Java para usar con AWS X-Ray. Muestra la instrumentación de solicitudes HTTP entrantes con un filtro servlet, la instrumentación automática y manual de un cliente con un SDK de AWS, la configuración de registro y la instrumentación de solicitudes HTTP salientes y clientes SQL.

Consulte el archivo readme para obtener instrucciones o use el Tutorial de introducción de AWS X-Ray para probar la aplicación con X-Ray.

Does it Have Snakes?

Tomcat 8 con Java 8 Servidor web Clonar el repositorio en GitHub.com

Does it Have Snakes? es una aplicación web de Tomcat que muestra el uso de archivos de configuración de Elastic Beanstalk, Amazon RDS, JDBC, PostgreSQL, Servlets, JSP, Simple Tag Support, Tag Files, Log4J, Bootstrap y Jackson.

El código fuente de este proyecto incluye un script de compilación mínimo que compila los servlets y modelos en archivos de clases y empaqueta los archivos necesarios en un archivo web que puede implementar en un entorno de Elastic Beanstalk. Consulte el archivo readme del repositorio del proyecto para obtener instrucciones completas.

Locust Load Generator

Java 8

Servidor web

Clonar el repositorio en GitHub.com

Aplicación web que puede utilizar para realizar una prueba de carga de otra aplicación web que se ejecute en un entorno de Elastic Beanstalk diferente. Muestra el uso de los archivos Buildfile y Procfile, DynamoDB y Locust, una herramienta de pruebas de carga de código abierto.

Descargue cualquiera de las aplicaciones de ejemplo e impleméntelas en Elastic Beanstalk siguiendo estos pasos:

Para lanzar un entorno con una aplicación de ejemplo (consola)
  1. Abra la consola de Elastic Beanstalk y, en la lista Regions (Regiones), seleccione su Región de AWS.

  2. En el panel de navegación, elija Applications (Aplicaciones) y, a continuación, elija el nombre de una aplicación existente de la lista o cree una.

  3. En la página de información general de la aplicación, seleccione Create new environment (Crear un nuevo entorno).

    
              La página de información general de la aplicación con una lista de entornos de aplicaciones en la consola de Elastic Beanstalk

    Esto abre el asistente de Create environment (Creación de entorno). El asistente proporciona un conjunto de pasos para crear un entorno nuevo.

    
              El asistente de creación de entorno en la consola de Elastic Beanstalk
  4. Para el environmet tier (nivel de entorno), elija Web server environment (Entorno del servidor web) o Worker environment (Entorno de trabajo). Una vez creado, no se puede cambiar la capa del entorno.

    nota

    La plataforma .NET en Windows Server no admite la capa del entorno de trabajo.

  5. En Plataforma, seleccione la plataforma y la ramificación de la plataforma que coincidan con el lenguaje utilizado por la aplicación.

    nota

    Elastic Beanstalk admite varias versiones para la mayoría de las plataformas que se indican. De forma predeterminada, la consola selecciona la versión recomendada para la plataforma y la ramificación de la plataforma que elija. Si la aplicación requiere una versión diferente, puede seleccionarla aquí. Para obtener más información acerca de las versiones compatibles de la plataforma, consulte Plataformas compatibles con Elastic Beanstalk.

  6. En Application code (Código de aplicación), seleccione Sample application (Aplicación de muestra).

  7. Para los Configuration presets (Modelos de configuración preestablecidos), elija Single instance (Instancia individual).

  8. Elija Next (Siguiente).

  9. Aparece la página Configurar acceso a servicio.

    
              Configurar el acceso al servicio
  10. Seleccione Crear un rol de servicio para Rol de servicio.

  11. A continuación, nos centraremos en la lista desplegable Perfil de instancia de EC2. Los valores que aparecen en esta lista desplegable pueden variar, en función de si su cuenta ha creado previamente un entorno nuevo.

    Seleccione una de las siguientes opciones, dependiendo de los valores que aparezcan en la lista.

    • Si aws-elasticbeanstalk-ec2-role aparece en la lista desplegable, selecciónelo en la lista desplegable Perfil de instancia de EC2.

    • Si aparece otro valor en la lista y es el perfil de instancia de EC2 predeterminado destinado a sus entornos, selecciónelo en la lista desplegable Perfil de instancia de EC2.

    • Si en la lista desplegable Perfil de instancia de EC2 no aparecen valores para seleccionar, amplíe el procedimiento siguiente, Crear un rol de IAM para el perfil de instancia de EC2.

      Siga los pasos de Crear un rol de IAM para el perfil de instancia de EC2 para crear un rol de IAM que pueda seleccionar posteriormente para el Perfil de instancia de EC2. Luego, vuelva a este paso.

      Ahora que ha creado un rol de IAM y ha actualizado la lista, aparece como opción en la lista desplegable. Seleccione el rol de IAM que acaba de crear en la lista desplegable Perfil de instancia de EC2.

  12. Seleccione Skip to review (Saltar a revisión) en la página Configure service access (Configurar el acceso al servicio).

    Se seleccionarán los valores predeterminados para este paso y se omitirán los pasos opcionales.

  13. En la página Review (Revisar), se muestra un resumen de todas sus elecciones.

    Para personalizar aún más su entorno, elija Edit (Editar) junto al paso que incluye los elementos que desee configurar. Solo puede establecer las siguientes opciones durante la creación del entorno:

    • Environment name

    • Nombre de dominio

    • Versión de la plataforma

    • Procesador

    • VPC

    • datos y búsqueda

    Puede modificar los siguientes ajustes después de crear el entorno, pero requieren que se aprovisionen nuevas instancias u otros recursos, lo que puede llevar algún tiempo:

    • Tipo de instancia, volumen raíz, par de claves y rol de AWS Identity and Access Management (IAM)

    • Base de datos interna de Amazon RDS

    • Balanceador de carga

    Para obtener más información sobre los ajustes disponibles, consulte El asistente de creación de nuevo entorno.

  14. Elija Submit (Enviar) en la parte inferior de la página para iniciar la creación del nuevo entorno.


        Configurar el acceso al servicio
Para crear un rol de IAM para la selección del perfil de instancia de EC2
  1. Seleccione Ver detalles de permisos. Esta opción aparece en la lista desplegable Perfil de instancia de EC2.

    Aparece una ventana modal titulada Ver permisos del perfil de instancia. En esta ventana se muestran los perfiles administrados que deberá asociar al nuevo perfil de instancia de EC2 que cree. También proporciona un enlace para ejecutar la consola de IAM.

  2. Seleccione el enlace Consola de IAM que aparece en la parte superior de la ventana.

  3. En el panel de navegación de la consola de IAM, elija Roles.

  4. Elija Create role (Crear rol).

  5. En Tipo de entidad de confianza, seleccione Servicio de AWS.

  6. En Use case (Caso de uso), elija EC2.

  7. Elija Next (Siguiente).

  8. Asocie las políticas administradas adecuadas. Desplácese por la ventana modal Ver permisos del perfil de instancia para ver las políticas administradas. Las políticas también aparecen aquí:

    • AWSElasticBeanstalkWebTier

    • AWSElasticBeanstalkWorkerTier

    • AWSElasticBeanstalkMulticontainerDocker

  9. Elija Next (Siguiente).

  10. Escriba un nombre para el rol.

  11. (Opcional) Añada etiquetas al rol.

  12. Elija Create role (Crear rol).

  13. Vuelva a la ventana de la consola de Elastic Beanstalk que está abierta.

  14. Cierre la ventana modal Ver permisos del perfil de instancia.

    importante

    No cierre la página del navegador donde se muestra la consola de Elastic Beanstalk.

  15. Seleccione 
          refresh icon
        (actualizar), junto a la lista desplegable Perfil de instancia de EC2.

    Esto actualiza la lista desplegable, para que el rol que acaba de crear aparezca en ella.

Pasos siguientes

Una vez que disponga de un entorno que ejecute una aplicación, podrá implementar una nueva versión de la aplicación o una aplicación totalmente diferente en cualquier momento. La implementación de una nueva versión de la aplicación es una tarea muy rápida, ya que no se requiere aprovisionar ni reiniciar instancias EC2.

Después de haber implementado una o dos aplicaciones de ejemplo y una vez que esté preparado para empezar a desarrollar y ejecutar aplicaciones Java localmente, consulte la siguiente sección para configurar un entorno de desarrollo de Java con todas las herramientas y bibliotecas que va a necesitar.