AWS Elastic Beanstalk (beta)

Fácil de iniciar, difícil de desajustarse

AWS Elastic Beanstalk es una manera sencilla de gestionar e implementar aplicaciones rápidamente en la nube de AWS. Solo tiene que cargar su aplicación y Elastic Beanstalk gestionará de manera automática los detalles de implementación del aprovisionamiento de capacidad, equilibrio de carga, autoescalado y gestión del estado de la aplicación. Al mismo tiempo, con Elastic Beanstalk, tendrá el control absoluto de los recursos de AWS que potencian la aplicación y podrá acceder a los recursos subyacentes cuando quiera. Elastic Beanstalk utiliza los servicios de AWS, como Amazon Elastic Cloud Compute (Amazon EC2), Amazon Simple Storage Service (Amazon S3), Amazon Simple Notification Service (Amazon SNS), Elastic Load Balancing y Auto Scaling para ofrecer la misma infraestructura de alta fiabilidad, escalable y rentable de la que dependen miles de empresas hoy en día. AWS Elastic Beanstalk es fácil de iniciar e imposible de que se desajuste.

Muchos de los contenedores de la aplicación existente o soluciones de plataforma como servicio, aunque reducen la cantidad de programación necesaria, disminuyen significativamente el control y la flexibilidad de los desarrolladores. Los desarrolladores están obligados a vivir con las decisiones predeterminadas por el distribuidor; con pocas o ninguna oportunidad para llevar el control de varias partes de la infraestructura de la aplicación. Sin embargo, con Elastic Beanstalk, usted cuenta con el control absoluto sobre los recursos de AWS que potencian la aplicación. En caso de que quiera hacerse cargo de una parte de (o todos) los elementos de la infraestructura, lo puede hacer de un modo transparente mediante las funciones de gestión de Elastic Beanstalk.

Para garantizar una portabilidad sencilla de la aplicación, Elastic Beanstalk se compila mediante pilas de software conocido, como Apache HTTP Server para PHP y Python, Passenger para Ruby, IIS 7.5 para .NET y Apache Tomcat para Java. No se cargan tarifas adicionales por Elastic Beanstalk; solo paga por los recursos de AWS que necesite para almacenar y ejecutar las aplicaciones.

Es fácil contratarla,
pague solo por el consumo realizado
Registrarse

Esta página contiene las siguientes categorías de información. Haga clic para saltar:

Funcionalidad de AWS Elastic Beanstalk

Para desarrolladores de .NET

Para implementar aplicaciones de .NET con AWS Elastic Beanstalk, solo tiene que:

  • Crear su aplicación como lo haría normalmente mediante Microsoft Visual Studio.
  • Publicar su aplicación en AWS Elastic Beanstalk mediante AWS Toolkit for Visual Studio.
  • De modo alternativo, puede crear un paquete con su código descargable en paquete .zip de Microsoft Web Deploy y subirlo a AWS Elastic Beanstalk mediante AWS Management Console.
  • En segundo plano, Elastic Beanstalk gestiona el aprovisionamiento de un equilibrador de carga y la implementación de su paquete de Microsoft Web Deploy a una o más instancias de Amazon EC2 que se ejecutan en Windows Server 2008 R2 e IIS 7.5.
  • En unos minutos, puede acceder a su aplicación en una URL personalizada (p. ej. http://myapp.elasticbeanstalk.com/).

Para desarrolladores de PHP, Python y Ruby

Para implementar aplicaciones de PHP con AWS Elastic Beanstalk, solo tiene que:

  • Crear su aplicación tal y como lo hace normalmente con cualquier editor o IDE.
  • Cree un entorno de Elastic Beanstalk PHP, Python o Ruby utilizando AWS Management Console, la interfaz de línea de comandos o las API de servicio web. En segundo plano, Elastic Beanstalk gestiona el aprovisionamiento de un equilibrador de carga y de recursos de Amazon EC2.
  • Instalar y configurar Git para las implementaciones.
  • Aprobar e introducir los cambios mediante Git. Elastic Beanstalk implementa sus archivos en una o varias instancias de Amazon EC2 en las que se ejecuta Apache HTTP Server.
  • En unos minutos, podrá acceder a la aplicación con una URL personalizada (p. ej. http://myapp.elasticbeanstalk.com/).

Para los desarrolladores de Java

Para implementar aplicaciones de Java con AWS Elastic Beanstalk, solo tiene que:

  • Crear su aplicación tal y como lo hace normalmente con cualquier editor o IDE (p. ej. Eclipse).
  • Empaquetar el código que se pueda implementar en un archivo estándar de la aplicación web de Java (archivo WAR).
  • Cargar el archivo WAR a Elastic Beanstalk con la ayuda de AWS Management Console, AWS Toolkit for Eclipse, las API del servicio web o la interfaz de línea de comandos.
  • Implementar la aplicación. Además, Elastic Beanstalk gestiona el aprovisionamiento de un equilibrador de carga y la implementación del archivo WAR para una o más instancias de Amazon EC2 que ejecuten el servidor de la aplicación Apache Tomcat.
  • En unos minutos, podrá acceder a la aplicación con una URL personalizada (p. ej. http://myapp.elasticbeanstalk.com/).

Funcionalidad de AWS Elastic Beanstalk

Una vez que se esté ejecutando una aplicación, Elastic Beanstalk proporciona varias características de gestión como:

  • Implementar de manera sencilla nuevas versiones de la aplicación en entornos en ejecución (o volver a una versión anterior).
  • Acceder a las métricas de supervisión de CloudWatch como por ejemplo, utilización media de la CPU, recuento de solicitudes y latencia media.
  • Recibir notificaciones de correo electrónico a través de Amazon Simple Notification Service (Amazon SNS) cuando el estado de la aplicación cambia o se añaden o borran los servidores de la aplicación.
  • Acceder a los archivos de registro del servidor sin necesidad de iniciar sesión en los servidores de la aplicación.
  • Reiniciar de manera rápida los servidores de la aplicación en todas las instancias de Amazon EC2 con un único comando.

Con Elastic Beanstalk, los desarrolladores cuentan con el control absoluto sobre los recursos de AWS que potencian la aplicación y, con solo ajustar las opciones de configuración predeterminadas desde la consola de gestión Elastic Beanstalk, pueden realizar una gran variedad de funciones, entre otras:

  • Seleccionar el tipo de instancia Amazon EC2 más apropiado que coincida con los requisitos de memoria de la aplicación y la CPU.
  • Seleccionar varias opciones de almacenamiento y bases de datos disponibles como Amazon RDS, Amazon DynamoDB, Amazon SimpleDB, Microsoft SQL Server, Oracle, IBM DB2 o Informix.
  • Habilitar acceso de inicio de sesión a instancias de Amazon EC2 para la resolución inmediata y directa de problemas
  • Mejorar de manera rápida la fiabilidad de la aplicación ejecutándola en más de una zona de disponibilidad
  • Aumentar la seguridad de la aplicación habilitando el protocolo HTTPS en el equilibrador de carga
  • Ajustar la configuración del servidor de la aplicación (por ejemplo, la configuración de JVM) y pasar las variables de entorno
  • Ejecutar otros componentes de la aplicación, como por ejemplo un servicio de almacenamiento en memoria caché, junto con Amazon EC2
  • Ajustar la configuración de Auto Scaling para controlar las métricas y los umbrales que se han utilizado para determinar cuándo añadir o eliminar instancias de un entorno

Aspectos destacados del servicio

Es fácil empezar; Elastic Beanstalk es una forma rápida y sencilla de implementar su aplicación en AWS. Solo ha de utilizar AWS Management Console, la implementación de Git o un entorno de desarrollo integrado (IDE), como por ejemplo, Eclipse o Visual Studio para cargar la aplicación, y Elastic Beanstalk gestionará de manera automática los detalles de implementación de aprovisionamiento de capacidad, equilibrio de carga, autoescalado y supervisión del estado de la aplicación. En cuestión de minutos, la aplicación estará lista para utilizar sin tener que realizar ninguna tarea de infraestructura o de configuración de recursos por su parte.

Es imposible que se produzca un desajuste; Elastic Beanstalk aumenta o disminuye automáticamente la aplicación según la configuración predeterminada de Auto Scaling. Puede ajustar de manera fácil la configuración Auto Scaling en función de las necesidades específicas de su aplicación. Por ejemplo, puede utilizar la utilización de CPU para desencadenar acciones de Auto Scaling. Con Elastic Beanstalk, su aplicación puede gestionar picos en la carga de trabajo o tráfico mientras se minimizan los costes.

Control absoluto; Elastic Beanstalk le permite "abrir el capó" y tener el control absoluto sobre los recursos AWS que potencian la aplicación. En caso de que quiera hacerse cargo de parte de (o todos) los elementos de la infraestructura, lo puede hacer de un modo transparente mediante las funciones de gestión de Elastic Beanstalk. Por ejemplo, puede ir a archivos de registro, supervisar el estado de la aplicación, determinar las reglas de autoescalado, configurar las notificaciones de correo electrónico y pasar variables de entorno por la consola de Elastic Beanstalk.

Flexible; tiene la libertad de seleccionar el tipo de instancia de Amazon EC2 óptimo para su aplicación teniendo en cuenta los requisitos de la memoria y la CPU, y puede elegir entre distintas opciones de la base de datos. Por ejemplo, puede especificar una implementación compuesta de instancias con mucha memoria si su aplicación web consume una cantidad elevada.

Fiable; Elastic Beanstalk se ejecuta en la infraestructura de red demostrada y en los centros de datos y ofrece un entorno donde los desarrolladores pueden ejecutar aplicaciones que necesitan una durabilidad y una alta disponibilidad.


Precios

No existe un cobro adicional por Elastic Beanstalk; solo se paga por los recursos AWS subyacentes (p. ej. Amazon EC2, Amazon S3) que utiliza su aplicación.

Los nuevos clientes de AWS, que reúnen las condiciones para la capa de uso gratuito de AWS pueden implementar una aplicación en Elastic Beanstalk de manera gratuita, puesto que la configuración predeterminada de Elastic Beanstalk permite que una aplicación de poco tráfico se ejecute dentro de la capa gratuita sin incurrir en gastos. En caso de que estas aplicaciones necesiten más recursos que las que ofrece el entorno predeterminado, se les cobrará a los clientes la tarifa normal de AWS, por los recursos a mayores que consuma la aplicación.

Los costes de la ejecución de un sitio web mediante Elastic Beanstalk pueden variar en función de diversos factores, como el número de instancias de Amazon EC2 necesarias para gestionar el tráfico de su sitio web, el ancho de banda que ha consumido la aplicación y según qué opciones de almacenamiento o base de datos utilice la aplicación. Los costes principales para una aplicación web normalmente se generarán habitualmente por la(s) instancia(s) de Amazon EC2 y Elastic Load Balancing que distribuyen el tráfico entre las instancias en ejecución de su aplicación.

En los ejemplos de las tablas siguientes se indican los costes mensuales de ejecución de un sitio web con poco tráfico que utiliza la configuración predeterminada de Elastic Beanstalk, tanto con o sin la capa gratuita de AWS:

Ejecución de la aplicación en Amazon Linux

Servicio y recurso Unidad Desglose del coste Coste
Instancia t1.micro Amazon EC2 Linux10,02 USD/h * 24 horas * 30 días14,40 USD
Elastic Load Balancer 1 0,025 USD/h * 24 horas * 30 días 18,00 USD
Procesamiento de datos de Elastic Load Balancer 15 GB 0,008 USD/GB * 15 GB 0,12 USD
Volumen de Elastic Block Store 8 GB 0,10 USD/GB * 8GB 0,80 USD
S3 Storage para archivo WAR y Access 1 GB0,125 USD/1 GB + 0,01 USD por <1k PUT + 0.01 USD por <10k GET 0,15 USD
Banda ancha entrante y saliente 15 GB La entrada es gratuita, 15 GB de salida * 0,12 USD 1,80 USD
  Coste mensual toral sin la capa gratuita 35,27 USD
  Coste mensual toral con la capa gratuita 0 USD

Ejecución de la aplicación en Windows Server

Servicio y recurso Unidad Desglose del coste Coste
Instancia t1.micro Amazon EC2 Windows10,03 USD/h * 24 horas * 30 días21,60 USD
Elastic Load Balancer 1 0,025 USD/h * 24 horas * 30 días 18,00 USD
Procesamiento de datos de Elastic Load Balancer 15 GB 0,008 USD/GB * 15 GB 0,12 USD
Volumen de Elastic Block Store 8 GB 0,10 USD/GB * 8GB 0,80 USD
S3 Storage para archivo WAR y Access 1 GB0,125 USD/1 GB + 0,01 USD por <1k PUT + 0.01 USD por <10k GET 0,15 USD
Banda ancha entrante y saliente 15 GB La entrada es gratuita, 15 GB de salida * 0,12 USD 1,80 USD
  Coste mensual toral sin la capa gratuita 42,47 USD
  Coste mensual toral con la capa gratuita 0 USD

Para obtener más detalles sobre los precios del servicio AWS, consulte la sección de tarifas de las páginas de detalle del servicio AWS pertinente:

Tarifas de Amazon EC2 (incluidas las tarifas para instancias, equilibrio de carga, almacenamiento elástico en modo bloc y transferencia de datos)

Tarifas de Amazon S3 (incluidas las tarifas para la transferencia de datos y almacenamiento)

En caso de que desee utilizar el servicio de la base de datos AWS con Elastic Beanstalk, consulte los enlaces siguientes para visualizar las tarifas:

Tarifas de Amazon RDS (incluidas las tarifas para instancias de bases de datos, almacenamiento de la copia de seguridad y transferencia de datos)

Amazon DynamoDB (incluidos los precios para el almacenamiento de datos, la capacidad de rendimiento y la transferencia de datos)

Tarifas de Amazon SimpleDB (incluidas las tarifas para almacenamiento, procesamiento de datos y transferencia de datos)

Cuando se registra en Elastic Beanstalk, para evitar tener que registrarse por separado en todos los servicios de AWS Elastic Beanstalk que pueda utilizar, nosotros lo registramos automáticamente para estos servicios. Disfrutará de todos los servicios AWS y solo pagará por lo que utilice, sin tarifas mínimas ni compromisos iniciales.


Descripción detallada

Funcionamiento de Elastic Beanstalk

Elastic Beanstalk permite implementar una aplicación de manera rápida mientras cuenta con todo el control que desee para tener sobre la infraestructura subyacente. Comienza creando una versión de la aplicación, que solo es una iteración identificada (p. ej. "Versión 1.5") del código desplegable de la aplicación, que se almacena en Amazon S3. Por ejemplo, una versión de aplicación hace referencia a una implementación de Git específico de una aplicación PHP. Elastic Beanstalk ofrece una serie de herramientas para facilitar la creación de versiones de la aplicación, que incluye AWS Management Console, la implementación de Git y la interfaz de línea de comandos, AWS Toolkit for Visual Studio y AWS Toolkit for Eclipse. A continuación, especifique qué versión de la aplicación quiere implementar y ejecútela en un entorno. Un entorno representa los recursos de AWS (por ejemplo, el equilibrador de carga, el grupo Auto Scaling o e instancias EC2) creados específicamente para ejecutar la aplicación. Cuando ejecuta un entorno, Elastic Beanstalk gestiona de manera automática los detalles de implementación de suministro de capacidad, equilibrio de carga, autoescalado y supervisión del estado de la aplicación, sin necesidad de especificar nada que tenga que ver con el tamaño o el tipo de estos recursos y le muestra una notificación una vez que se ha ejecutado el entorno. Asimismo, puede implementar una versión de la aplicación diferente para un entorno en ejecución si, por ejemplo, posee una versión más reciente del código que desea implementar o si desea volver a una versión anterior.

Detalles del entorno

Un entorno que utilice la configuración predeterminada ejecutará una única instancia muy pequeña de Amazon EC2 (servidor de la aplicación) y Elastic Load Balancer. La instancia EC2 se configura para Auto Scaling, por lo que se agregarán instancias adicionales para gestionar los picos de la carga de trabajo o del tráfico (las instancias progresivas se descartarán si el tráfico disminuye). Elastic Beanstalk proporciona a su aplicación un (p. ej. http://myapp.elasticbeanstalk.com/), que se puede escribir en un navegador web para visualizar las aplicaciones en ejecución. Asimismo, el equilibrador de carga distribuye el tráfico entrante por varias instancias de Amazon EC2, a medida que su aplicación se aumenta o se reduce y, automáticamente, envía el tráfico entrante solo a instancias en buen estado para ofrecer un entorno fiable para la aplicación. Cada instancia de Amazon EC2 se crea a partir de imágenes de máquina de Amazon (AMI), que contienen toda la información necesaria para crear una nueva instancia de un servidor. Elastic Beanstalk utiliza la AMI de Amazon Linux o la AMI de Windows Server 2008 R2 de modo predeterminado. Estas AMI contienen todo el software para actuar tanto como un servidor web como un servidor de la aplicación (p. ej., Linux, Apache y PHP). En caso de que quiera ejecutar más de 10 entornos, cargue más de 500 versiones de la aplicación o ejecute más de 20 instancias de Amazon EC2. Complete el formulario de solicitud de límite de AWS Elastic Beanstalk y evaluaremos las solicitudes cuanto antes.

Cómo empezar

La mejor manera de empezar a utilizar AWS Elastic Beanstalk es con la ayuda de la Guía de primeros pasos, que forma parte de nuestra documentación técnica. En unos minutos, podrá implementar y utilizar una aplicación de muestra o cargar su propia aplicación.


Uso indicado y restricciones

El uso que realice de este servicio está sujeto al Contrato de cliente de Amazon Web Services.

©2013, Amazon Web Services, Inc. o sus afiliados. Todos los derechos reservados.