Mais aplicações de exemplo e tutoriais do Elastic Beanstalk para Java - AWS Elastic Beanstalk

Mais aplicações de exemplo e tutoriais do Elastic Beanstalk para Java

Esta seção fornece aplicações e tutoriais adicionais. Os tópicos Início rápido para o Java e Início rápido para Java no Tomcat, localizados anteriormente neste tópico, orientam no lançamento de uma aplicação Java de exemplo com a EB CLI.

Para começar a usar os aplicativos Java no AWS Elastic Beanstalk, tudo o que você precisa é de um pacote de origem de aplicativo para fazer upload como a primeira versão do aplicativo e implantar em um ambiente. Quando você cria um ambiente, o Elastic Beanstalk aloca todos os recursos da AWS necessários para executar uma aplicação Web escalável.

Iniciar um ambiente com um aplicativo Java de exemplo

O Elastic Beanstalk fornece aplicações demonstrativas de página única para cada plataforma e também exemplos mais complexos que mostram o uso de recursos adicionais da AWS, como o Amazon RDS e linguagem ou recursos e APIs específicos da plataforma.

Os exemplos de página única são o mesmo código que você obtém ao criar um ambiente sem fornecer seu próprio código-fonte. Os exemplos mais complexos são hospedados no GitHub e podem ser compilados ou criados antes da implantação em um ambiente do Elastic Beanstalk.

Amostras

Name

Versões com suporte

Tipo de ambiente

Origem

Descrição

Tomcat (página única)

Todas as ramificações da plataforma Tomcat com Corretto

Servidor Web

Operador

tomcat.zip

Aplicativo web Tomcat com uma única página (index.jsp) configurada para ser exibida na raiz do site.

Para ambientes de operador, este exemplo inclui um arquivo cron.yaml que configura uma tarefa programada que chama scheduled.jsp uma vez por minuto. Quando scheduled.jsp é chamado, ele grava em um arquivo de log em /tmp/sample-app.log. Por fim, um arquivo de configuração é incluído em .ebextensions que copia os logs de /tmp/ para os locais lidos pelo Elastic Beanstalk quando você solicita logs de ambiente.

Se você habilitar a integração com o X-Ray em um ambiente que executa este exemplo, a aplicação mostrará conteúdo adicional relativo ao X-Ray e fornecerá uma opção para gerar informações de depuração que você pode visualizar no console do X-Ray.

Corretto (página única)

Corretto 11

Corretto 8

Servidor Web

corretto.zip

Aplicação Corretto com arquivos de configuração Buildfile e Procfile.

Se você habilitar a integração com o X-Ray em um ambiente que executa este exemplo, a aplicação mostrará conteúdo adicional relativo ao X-Ray e fornecerá uma opção para gerar informações de depuração que você pode visualizar no console do X-Ray.

Scorekeep

Java 8 Servidor Web Clonar o repo em GitHub.com

O Scorekeep é uma API web RESTful que usa o Spring framework para fornecer uma interface para a criar e gerenciar usuários, sessões e jogos. A API faz parte do pacote de um aplicativo Web Angular 1.5 que a consome via HTTP.

O aplicativo usa recursos da plataforma Java SE para fazer download de dependências e criar na instância, minimizando o tamanho do pacote de origem. O aplicativo também inclui arquivos de configuração nginx que substituem a configuração padrão para servir o aplicativo web de front-end estaticamente na porta 80 através do proxy e encaminhar as solicitações para atalhos em /api para a API em execução em localhost:5000.

O Scorekeep também inclui uma ramificação xray que mostra como instrumentar uma aplicação Java para uso com o AWS X-Ray. Ele mostra a instrumentação de solicitações HTTP de entrada com um filtro de servlet, instrumentação de cliente AWS SDK automática e manual, configuração de gravador e instrumentação de solicitações HTTP de saída e clientes SQL.

Consulte o arquivo readme para obter instruções ou use o tutorial sobre conceitos básicos do AWS X-Ray para experimentar a aplicação com o X-Ray.

Does it Have Snakes?

Tomcat 8 com Java 8 Servidor Web Clonar o repo em GitHub.com

Does it Have Snakes? é uma aplicação Web Tomcat que mostra o uso de arquivos de configuração do Elastic Beanstalk, Amazon RDS, JDBC, PostgreSQL, servlets, JSPs, Simple Tag Support, arquivos de tag, Log4J, Bootstrap e Jackson.

O código-fonte deste projeto inclui um script de compilação mínimo que compila os servlets e os modelos em arquivos de classe e empacota os arquivos necessários em um arquivo web que você pode implantar em um ambiente do Elastic Beanstalk. Consulte o arquivo readme no repositório do projeto para obter instruções completas.

Locust Load Generator

Java 8

Servidor Web

Clonar o repo em GitHub.com

Aplicação Web que pode ser usada para fazer um teste de carga em outra aplicação Web em execução em um ambiente diferente do Elastic Beanstalk. Mostra o uso de arquivos Buildfile e Procfile, DynamoDB e Locust, uma ferramenta de teste de carga de código aberto.

Faça download de qualquer uma das aplicações demonstrativas e implante-a no Elastic Beanstalk seguindo estas etapas:

Para iniciar um ambiente com uma aplicação (console)
  1. Abra o console do Elastic Beanstalk e, na lista Regions (Regiões), selecione a sua Região da AWS.

  2. No painel de navegação, escolha Aplicativos. Selecione uma aplicação existente na lista. Também é possível optar por criar uma aplicação, seguindo as instruções em Gerenciar aplicações.

  3. Na página de visão geral da aplicação, escolha Criar ambiente.

    Isso inicia o assistente Create environment (Criar ambiente). O assistente fornece um conjunto de etapas para a criação de um novo ambiente.

  4. Em Nível de ambiente, escolha o nível de ambiente de Ambiente do servidor Web ou Ambiente do operador. Você não pode alterar o nível de um ambiente após a criação.

    nota

    O .NET na Plataforma de servidor Windows não tem suporte para a camada de ambiente do operador.

    Os campos Informações sobre a aplicação são definidos por padrão, com base na aplicação que você escolheu anteriormente.

    No grupo Informações do ambiente, o Nome do ambiente é definido por padrão com base no nome da aplicação. Se preferir um nome de ambiente diferente, insira outro valor no campo. Existe a opção de inserir um nome de Domínio. Se isso não for feito, o Elastic Beanstalk gerará automaticamente um valor. Você também pode opcionalmente inserir uma Descrição do ambiente.

  5. Em Plataforma, selecione a plataforma e a ramificação da plataforma que correspondem à linguagem usada pelo seu aplicativo.

    nota

    O Elastic Beanstalk é compatível com várias versões para a maioria das plataformas listadas. Por padrão, o console seleciona a versão recomendada da plataforma e a ramificação da plataforma escolhida. Se a aplicação exigir outra versão, você poderá selecioná-la aqui. Para obter informações sobre versões de plataforma compatíveis, consulte Plataformas compatíveis com Elastic Beanstalk.

  6. Para Código da aplicação, existem várias opções para continuar.

    • Para iniciar a aplicação de exemplo padrão sem fornecer o código-fonte, escolha Aplicação de exemplo. Essa ação escolhe a aplicação de página única que o Elastic Beanstalk fornece para a plataforma selecionada anteriormente.

    • Se você baixou uma aplicação de exemplo deste guia ou tem seu próprio código-fonte para uma aplicação, execute as etapas a seguir.

      1. Selecione Carregue seu código.

      2. Em seguida, escolha Arquivo local e, em Carregar aplicação, selecione Escolher arquivo.

      3. O sistema operacional da máquina do cliente apresentará uma interface para selecionar o arquivo local baixado. Selecione o arquivo do pacote de origem e continue.

  7. Sua escolha de Predefinições depende de sua finalidade para o ambiente.

    • Se estiver criando um ambiente de amostra para aprender sobre o Elastic Beanstalk ou um ambiente de desenvolvimento, escolha Instância única (qualificada para o nível gratuito).

    • Se estiver criando um ambiente de produção ou um ambiente para saber mais sobre balanceamento de carga, escolha uma das opções de Alta disponibilidade.

  8. Escolha Próximo.

Para configurar o acesso ao serviço

Em seguida, você precisa de dois perfis. Um perfil de serviço permite que o Elastic Beanstalk monitore suas instâncias do EC2 e realize o upgrade da plataforma do seu ambiente. Uma função de perfil de instância EC2 permite tarefas como gravar log e interagir com outros serviços.

Para criar ou selecionar o perfil de serviço
  1. Se você já criou um perfil de serviço e deseja escolher um perfil existente, selecione o valor na lista suspensa Perfil de serviço e pule o restante dessas etapas para criar um perfil de serviço.

  2. Se você não encontrar nenhum valor listado para Perfil de serviço ou quiser criar um novo, continue com as próximas etapas.

  3. Em Selecionar perfil, escolha Criar perfil.

  4. Em Tipo de entidade confiável, escolha Serviços da AWS.

  5. Para Caso de uso, escolha Elastic Beanstalk — Ambiente.

  6. Escolha Próximo.

  7. Verifique se as Políticas de permissões incluem o seguinte e escolha Avançar:

    • AWSElasticBeanstalkEnhancedHealth

    • AWSElasticBeanstalkManagedUpdatesCustomerRolePolicy

  8. Selecione Criar perfil.

  9. Volte para a guia Configurar acesso ao serviço, atualize a lista e selecione o perfil de serviço recém-criado.

Para criar ou selecionar um perfil de instância do EC2
  1. Se você já criou um perfil de instância do EC2 e deseja escolher um existente, selecione o valor no menu suspenso Perfil de instância do EC2 e pule o restante dessas etapas para criar um perfil de instância do EC2.

  2. Se você não vir nenhum valor listado para Perfil da instância do EC2 ou quiser criar um novo, continue com as próximas etapas.

  3. Selecione Criar perfil.

  4. Em Tipo de entidade confiável, escolha Serviços da AWS.

  5. Para Caso de uso, escolha Elastic Beanstalk — Computação.

  6. Escolha Próximo.

  7. Verifique se as Políticas de permissões incluem o seguinte e escolha Avançar:

    • AWSElasticBeanstalkWebTier

    • AWSElasticBeanstalkWorkerTier

    • AWSElasticBeanstalkMulticontainerDocker

  8. Selecione Criar perfil.

  9. Volte para a guia Configurar acesso ao serviço, atualize a lista e selecione o perfil de instância do EC2 recém-criado.

Para finalizar a configuração e a criação da sua aplicação
  1. (Opcional) Se você criou anteriormente um par de chaves EC2, pode selecioná-lo no menu suspenso do campo Par de chaves do EC2. Você o usará para fazer login com segurança na instância do Amazon EC2 que o Elastic Beanstalk provisiona para a aplicação. Se pular esta etapa, você sempre poderá criar e atribuir um par de chaves do EC2 depois que o ambiente for criado. Para obter mais informações, consulte EC2 key pair.

  2. Escolha Skip to Review (Pular para revisão) na página Configure service access (Configurar acesso a serviço).

  3. A página Review (Revisão) exibe um resumo de todas as suas escolhas.

    Para personalizar ainda mais o ambiente, escolha Edit (Editar) ao lado da etapa que inclui os itens que você deseja configurar. Você pode configurar as opções a seguir somente durante a criação do ambiente:

    • Nome do ambiente

    • Nome de domínio

    • Versão da plataforma

    • Processor

    • Tipo de load balancer

    • Nível

    Você pode alterar as configurações a seguir após a criação do ambiente, mas elas exigem que novas instâncias ou outros recursos sejam provisionados, e pode levar muito tempo para que elas sejam aplicadas:

    • Tipo de instância, volume raiz, par de chaves e função do AWS Identity and Access Management (IAM)

    • Banco de dados interno do Amazon RDS

    • VPC

    Para obter detalhes sobre todas as configurações disponíveis, consulte O assistente de criação de novo ambiente.

  4. Escolha Submit (enviar) na parte inferior da página para inicializar a criação do novo ambiente.

Próximas etapas

Depois que um ambiente estiver executando um aplicativo, você poderá implantar uma nova versão do aplicativo ou um aplicativo completamente diferente a qualquer momento. A implantação de uma nova versão do aplicativo é muito rápida, pois não é necessário provisionar ou reiniciar as instâncias do EC2.

Depois de implantar um ou dois aplicativos de exemplo e estiver pronto para começar a desenvolver e executar aplicativos Java localmente, consulte a próxima seção para configurar um ambiente de desenvolvimento Java com todas as ferramentas e bibliotecas necessárias.