AWS Elastic Beanstalk (beta)

Fácil de começar, impossível de superar

O AWS Elastic Beanstalk é uma maneira mais fácil ainda de começar a implantar e gerenciar aplicativos na nuvem da AWS. Basta fazer o upload de seu aplicativo e o Elastic Beanstalk automaticamente gerencia os detalhes de implantação do fornecimento de capacidade, balanceamento de carga, escalonamento automático e monitoramento do status do aplicativo. Ao mesmo tempo, com o Elastic Beanstalk é possível ter o controle completo de todos os recursos da AWS que alimentam seu aplicativo e acessar os recursos secundários a qualquer momento. O Elastic Beanstalk potencializa serviços da AWS como o Amazon Elastic Cloud Compute (Amazon EC2), o Amazon Simple Storage Service (Amazon S3), o Amazon Simple Notification Service (Amazon SNS), o Elastic Load Balancing e o Auto Scaling para oferecer a mesma infraestrutura altamente confiável, escalável e de bom custo-benefício da qual centenas de milhares de negócios dependem atualmente. AWS Elastic Beanstalk é fácil de começar a usar e impossível de superar.

A maioria dos contêineres de aplicativos ou plataformas de desenvolvimento (PaaS) de aplicativos existentes diminuem a quantidade de programação exigida, mas limitam consideravelmente a flexibilidade e o controle do desenvolvedor. Os desenvolvedores são forçados a conviver com as decisões pré-determinadas pelo vendedor – com pouca ou nenhuma oportunidade de retomar o controle sobre várias partes da infraestrutura de seus aplicativos. Contudo, com o Elastic Beanstalk, você pode ter o controle completo dos recursos da AWS que alimentam seu aplicativo. Se você quiser controlar alguns (ou todos) os elementos de sua infraestrutura, isso é possível de forma fácil utilizando as capacidades de gerenciamento do Elastic BeanStalk.

Para garantir uma fácil portabilidade para seu aplicativo, o Elastic Beanstalk foi construído usando pilhas de softwares conhecidas, como o Apache HTTP Server para PHP e Python, o Passenger para Ruby, o IIIS 7.5 para .NET e o Apache Tomcat para Java. Não há custos adicionais pelo Elastic Beanstalk – você só paga pelos recursos da AWS necessários para executar e armazenar seus aplicativos.

É fácil se registrar,
pague apenas por aquilo que usar
Inscrever-se

Esta página contém as seguintes categorias de informações. Clique para ir para baixo:

Funcionalidade do AWS Elastic Beanstalk

Para desenvolvedores de .NET

Para implementar aplicativos .NET usando o AWS Elastic Beanstalk, basta:

  • Criar seu aplicativo normalmente utilizando o Microsoft Visual Studio.
  • Publicar seus aplicativos no AWS Elastic Beanstalk utilizando o AWS Toolkit for Visual Studio.
  • Ou de maneira alternativa, você pode empacotar seu código implementável em um pacote .zip do Microsoft Web Deploy e fazer o upload para o AWS Elastic Beanstalk utilizando o AWS Management Console.
  • Enquanto isso, o Elastic Beanstalk cuida do provisionamento de um load balancer e da implementação de seu pacote do Microsoft Web Deploy para uma ou mais instâncias do Amazon EC2 executando o Windows Server 2008 R2 e IIS 7.5.
  • Dentro de alguns minutos você poderá acessar seu aplicativo em um URL personalizado (por ex., http://myapp.elasticbeanstalk.com/).

Para desenvolvedores PHP, Python e Ruby

Para implementar aplicativos PHP usando o Elastic Beanstalk, basta:

  • Criar o aplicativo como você normalmente faria usando qualquer editor ou IDE.
  • Criar um ambiente Elastic Beanstalk PHP, Python ou Ruby usando o AWS Management Console, a interface da linha de comando ou as APIs de serviço da web. Enquanto isso, o Elastic Beanstalk administra o provisionamento de recursos de load balancer e do Amazon EC2.
  • Instalar e configurar o Git para implementações.
  • Efetuar a confirmação e determinar suas alterações usando o Git. O Elastic Beanstalk implementa seus arquivos para uma ou mais instâncias do Amazon EC2 executando o Apache HTTP Server.
  • Em alguns instantes, você poderá acessar o aplicativo em um URL personalizado (por ex., http://myapp.elasticbeanstalk.com/).

Para desenvolvedores Java

Para implementar aplicativos Java usando o Elastic Beanstalk, basta:

  • Criar o aplicativo como você normalmente faria usando qualquer editor ou IDE (por ex., Eclipse).
  • Empacotar o código implementável em um Java Web Application Archive (arquivo WAR) padrão.
  • Carregar o arquivo WAR para o Elastic Beanstalk usando o AWS Management Console, o AWS Toolkit for Eclipse, as APIs de serviço da web ou a interface da linha de comando.
  • Implementar o aplicativo. Enquanto isso, o Elastic Beanstalk gerencia o provisionamento de um load balancer e com a implementação do arquivo WAR em uma ou mais instâncias do EC2 executando o servidor do aplicativo Apache Tomcat.
  • Em alguns instantes, você poderá acessar o aplicativo em um URL personalizado (por ex., http://myapp.elasticbeanstalk.com/).

Funcionalidade do AWS Elastic Beanstalk

Assim que um aplicativo estiver sendo executado, o Elastic Beanstalk fornecerá vários recursos de gestão, como:

  • Implemente facilmente as novas versões do aplicativo em ambientes em execução (ou implante em uma versão anterior).
  • Acesse métricas de monitoramento CloudWatch embutidas, como a utilização média da CPU, a contagem de solicitações e a latência média.
  • Receber notificações por e-mail por meio do Amazon Simple Notification Service (Amazon SNS) quando o status do aplicativo mudar ou os servidores do aplicativo forem adicionados ou removidos.
  • Acesse arquivos de log do servidor sem precisar efetuar login nos servidores do aplicativo.
  • Reiniciar rapidamente os servidores do aplicativo em todas as instâncias do EC2 com um único comando.

Com o Elastic Beanstalk, os desenvolvedores retêm o controle total sobre os recursos da AWS capacitando seu aplicativo e podem desempenhar uma série de funções simplesmente ao ajustar definições de configuração padrão do console de gestão do Elastic Beanstalk, incluindo:

  • Seleção do tipo de instância do Amazon EC2 mais apropriado que corresponde aos requisitos da CPU e de memória do seu aplicativo
  • Escolher entre várias opções de armazenamento e de banco de dados disponíveis, como o Amazon RDS, Amazon DynamoDB, Amazon SimpleDB, Microsoft SQL Server, Oracle, IBM DB2 ou o Informix.
  • Habilitação do acesso de login a instâncias do Amazon EC2 para a solução de problemas imediata e direta
  • Aprimoramento rápido da confiabilidade do aplicativo ao executar em mais de uma Zona de disponibilidade
  • Aperfeiçoamento da segurança do aplicativo ao habilitar o protocolo HTTPS no load balancer
  • Ajustar configurações de servidor do aplicativo (p.ex., configurações JVM) e varáveis de ambiente de passagem
  • Execução de outros componentes do aplicativo, como serviço de armazenamento em cache da memória, lado a lado no Amazon EC2
  • Ajustar as definições de Auto Scaling para controlar a métrica e os limites usados para determinar quando adicionar ou remover instâncias de um ambiente

Destaques do serviço

Fácil de começar – O Elastic Beanstalk é uma forma rápida e simples de implementar seu aplicativo na AWS. Basta usar o AWS Management Console, implementação do Git ou um ambiente de desenvolvimento integrado (IDE), como o Eclipse ou Visual Studio, para carregar seu aplicativo e o Elastic Beanstalk gerenciará automaticamente os detalhes de implementação do provisionamento da capacidade, balanceamento de carga, Auto Scaling e monitoramento da saúde do aplicativo. Em instantes, seu aplicativo estará pronto para uso sem que você desempenhe qualquer ação de configuração da infraestrutura ou dos recursos.

Impossível de superar – O Elastic Beanstalk aumenta ou diminui automaticamente seu aplicativo com base nas definições padrão de Auto Scaling. É possível ajustar facilmente as definições de Auto Scaling com base nas necessidades do seu aplicativo específico. Por exemplo, você pode usar a utilização da CPU para acionar ações de Auto Scaling. Com o Elastic Beanstalk, seu aplicativo pode lidar com picos de carga de trabalho ou tráfego ao minimizar os custos.

Controle total – O Elastic Beanstalk permite que você "obtenha acesso" e mantenha o controle total com relação aos recursos do AWS que capacitam o aplicativo. Se você optar por assumir o controle de alguns (ou todos) os elementos da sua infraestrutura, poderá fazê-lo com perfeição ao usar as capacidades de gestão do Elastic Beanstalk. Por exemplo, você pode pesquisar arquivos de log, monitorar o status do aplicativo, ajustar regras de Auto Scaling, configurar notificações de e-mail e até transferir variáveis do ambiente por meio do console do Elastic Beanstalk.

Flexível – Você tem a liberdade de selecionar o tipo de instância do Amazon EC2 que é ideal para seu aplicativo com base nos requisitos de CPU e de memória, e pode selecionar entre várias opções de banco de dados disponíveis. Por exemplo, você pode especificar uma implementação formada por instâncias com mais memória elevada se o aplicativo da Web tiver uma presença de memória grande.

Confiável – O Elastic Beanstalk é executado dentro da infraestrutura de rede comprovada e dos Datacenters da Amazon, e fornece um ambiente onde os desenvolvedores podem executar aplicativos que exigem alta durabilidade e disponibilidade.


Definição de preço

Não há cobrança adicional pelo Elastic Beanstalk – você só paga pelos recursos AWS subjacentes (Amazon EC2, Amazon S3) que seu aplicativo utilizar.

Clientes novos da AWS que tem direito a usufruir do nível de uso gratuito da AWS podem executar um aplicativo no Elastic Beanstalk gratuitamente, pois as configurações iniciais do Elastic Beanstalk permitem a execução de um aplicativo de baixo tráfego dentro do nível gratuito, sem incorrer em cobranças. Se esses aplicativos exigirem mais recursos do que o ambiente inicial oferece, os clientes serão cobrados pelas taxas padrão da AWS por recursos adicionais utilizados pelo aplicativo.

Os custos de manter um website utilizando o Elastic Beanstalk podem variar de acordo com diversos fatores, tais como o número de instâncias do Amazon EC2 necessárias para controlar o tráfego de seu website, a largura de banda utilizada por seu aplicativo e qual banco de dados ou opções de armazenamento seu aplicativo utiliza. Os principais custos de um aplicativo da web geralmente são: a(s) instância(s) do Amazon EC2 e o Elastic Load Balancing que controla o tráfego entre as instâncias que executam seu aplicativo.

A tabela abaixo traz exemplos que mostram os custos mensais de manutenção de um website de baixo tráfego utilizando as configurações padrão do Elastic Beanstalk, com e sem nível gratuito da AWS:

Aplicativo executado no Amazon Linux

Serviços e recursos Unidade Redução de custos Custos
Instância t1.micro de Linux no Amazon EC21US$ 0,02/h * 24 horas * 30 diasUS$ 14,40
Elastic Load Balancer 1 0,025 USD/h * 24 horas * 30 dias US$ 18,00
Processamento de dados Elastic Load Balancer 15 GB US$ 0,008/GB * 15 GB US$ 0,12
Volume Elastic Block Store 8 GB US$ 0,10/GB * 8 GB US$ 0,80
Armazenamento S3 para arquivo e acesso WAR 1 GB0,125 USD/1 GB + 0,01 USD por<1k PUTs + 0,01 USD por <10 k GETs US$ 0,15
Entrada e saída de banda larga 15 GB A entrada é gratuita; 15 GB para saída * US$ 0,12 US$ 1,80
  Custo total mensal sem Nível Gratuito US$ 35,27
   Custo total mensal com o nível gratuito US$ 0

Aplicativo executado no Windows Server

Serviços e recursos Unidade Redução de custos Custos
Instância t1.micro de Windows no Amazon EC210,03 USD/h * 24 horas * 30 dias21,60 USD
Elastic Load Balancer 1 0,025 USD/h * 24 horas * 30 dias US$ 18,00
Processamento de dados Elastic Load Balancer 15 GB US$ 0,008/GB * 15 GB US$ 0,12
Volume Elastic Block Store 8 GB US$ 0,10/GB * 8 GB US$ 0,80
Armazenamento S3 para arquivo e acesso WAR 1 GB0,125 USD/1 GB + 0,01 USD por<1k PUTs + 0,01 USD por <10 k GETs US$ 0,15
Entrada e saída de banda larga 15 GB A entrada é gratuita; 15 GB para saída * US$ 0,12 US$ 1,80
  Custo total mensal sem Nível Gratuito 42,47 USD
   Custo total mensal com o nível gratuito US$ 0

Para obter mais detalhes sobre o preço de serviços da AWS, consulte a seção de preços das relevantes páginas de detalhes dos serviço da AWS:

Preço Amazon EC2 (inclui preço de instâncias, balanceamento de carga, armazenamento elástico de bloco e transferência de dados)

Preço Amazon S3 (inclui preço de armazenamento e transferência de dados)

Se você deseja utilizar um serviço de banco de dados da AWS, consulte os links abaixo para verificar preços:

Preço do Amazon RDS (inclui preço para instâncias de banco de dados, armazenamento de backup e transferências de dados)

O Amazon DynamoDB (incluindo o preço para armazenamento de dados, capacidade de taxa de transferência e transferência de dados)

Preço do Amazon SimpleDB (inclui preço de armazenamento e processamento e transferência de dados)

Ao se registrar para o Elastic Beanstalk, a fim de evitar a necessidade de se registrar separadamente para todos os serviços da AWS que o Beanstalk pode incluir, automaticamente registramos você para estes serviços. Para todos os serviços da AWS, você paga somente pelo que utilizar, sem taxas mínimas e sem nenhum gasto inicial.


Descrição detalhada

Trabalhando com o Elastic Beanstalk

O Elastic Beanstalk permite que você implante um aplicativo rapidamente, mantendo tanto controle quanto você desejar ter sobre a infraestrutura subjacente. Comece criando uma versão do aplicativo, que é simplesmente uma iteração rotulada (por exemplo, "versão 1.5") do código implantável do seu aplicativo, que você armazena no Amazon S3. Por exemplo, uma versão do aplicativo se refere a uma implementação específica do Git de um aplicativo em PHP. O Elastic Beanstalk fornece uma variedade de ferramentas que facilitam a criação de versões de aplicativos incluindo o AWS Management Console, a implementação do Git e a interface da linha de comando, o AWS Toolkit for Visual Studio e o AWS Toolkit for Eclipse. Em seguida, você especifica qual versão do aplicativo você deseja implementar e o inicia em um ambiente. Um ambiente representa os recursos da AWS (por ex., load balancer, grupo Auto Scaling e instâncias EC2) criados especificamente para executar o aplicativo. Quando você inicia um ambiente, o Elastic Beanstalk automaticamente gerencia os detalhes de implementação da capacidade de provisionamento, balanceamento de carga, auto scaling e monitoramento de integridade de aplicativo sem que você necessite especificar qualquer coisa sobre o tamanho e o tipo desses recursos e o notifica quando o ambiente for iniciado. Você também pode implantar uma versão de aplicativo diferente para um ambiente em execução, se, por exemplo, você tiver uma versão mais recente do seu código que você deseja implantar, ou se você quiser retornar para uma versão anterior.

Detalhes do ambiente

Um ambiente usando as configurações padrão executará uma única micro instância do Amazon EC2 (servidor de aplicativo) e um Elastic Load Balancer. A instância EC2 é configurada para Auto Scaling, o que significa que instâncias adicionais serão adicionadas automaticamente para gerenciar quaisquer picos na carga de trabalho ou tráfego (e instâncias incrementais serão descartadas se o tráfego diminuir). O Elastic Beanstalk fornece uma URL ao seu aplicativo (por exemplo, http://myapp.elasticbeanstalk.com/), que pode ser digitada em um navegador da web para exibir seu aplicativo em execução. O load balancer também distribui o tráfego de entrada entre várias instâncias do Amazon EC2 enquanto seu aplicativo se expande ou se retrai e encaminha automaticamente o tráfego de entrada somente para instâncias íntegras para fornecer um ambiente confiável para seu aplicativo. Cada instância do Amazon EC2 é construída a partir de uma Amazon Machine Image (AMI), que contém todas as informações necessárias para criar uma nova instância de um servidor. O Elastic Beanstalk utiliza o Amazon Linux AMI ou o Windows Server 2008 R2 AMI como padrão. Esses AMIs contêm todos os softwares para atuarem tanto como um servidor da web quanto como um servidor de aplicativos (por exemplo, Linux, Apache e PHP). Se você deseja executar mais de 10 ambientes, carregar mais de 500 versões de aplicativos ou iniciar mais de 20 instâncias do Amazon EC2, preencha o formulário de solicitação de limite do AWS Elastic Beanstalk e avaliaremos sua solicitação imediatamente.

Introdução

A melhor forma de começar a usar o AWS Elastic Beanstalk é trabalhar por meio do Getting Started Guide, que faz parte da nossa documentação técnica. Em alguns minutos, você poderá implementar e usar um mesmo aplicativo ou carregar seu próprio aplicativo.


Uso pretendido e restrições

O uso deste serviço está sujeito ao Acordo do Cliente da Amazon Web Services.

©2013, Amazon Web Services, Inc. ou suas afiliadas. Todos os direitos reservados.