Etapa 1: criar um aplicativo de exemplo - AWS Elastic Beanstalk

As traduções são geradas por tradução automática. Em caso de conflito entre o conteúdo da tradução e da versão original em inglês, a versão em inglês prevalecerá.

Etapa 1: criar um aplicativo de exemplo

Nesta etapa, crie uma aplicação a partir de uma aplicação demonstrativa preexistente. O Elastic Beanstalk é compatível com plataformas para diferentes linguagens de programação, servidores de aplicações e contêineres do Docker. Você escolhe uma plataforma ao criar o aplicativo.

Criar um aplicativo e um ambiente

Para criar seu exemplo de aplicação, você usará o assistente do console Create application (Criar aplicação). Ele cria uma aplicação do Elastic Beanstalk e inicia um ambiente nela. Um ambiente é a coleção de AWS recursos necessários para executar o código do aplicativo.

Como criar um aplicativo de exemplo
  1. Abra o console do Elastic Beanstalk.

  2. Escolha Criar aplicativo.

  3. Em Application name (Nome da aplicação), insira getting-started-app.

  4. Opcionalmente, adicione tags de aplicativo.

  5. Em Plataform (Plataforma), escolha uma plataforma.

  6. Escolha Próximo.

  7. A página Configurar acesso ao serviço é exibida.

  8. Escolha Usar um perfil de serviço existente em Perfil de serviço.

  9. Em seguida, vamos nos concentrar na lista suspensa Perfil de instância do EC2. Os valores exibidos nessa lista suspensa podem variar, dependendo de a conta ter criado anteriormente um novo ambiente.

    Escolha uma das opções a seguir com base nos valores exibidos na lista.

    • Se aws-elasticbeanstalk-ec2-role for exibido na lista suspensa, selecione-o na lista suspensa Perfil de instância do EC2.

    • Se outro valor for exibido na lista e for o perfil padrão de instância do EC2 para seus ambientes, selecione-o na lista suspensa Perfil de instância do EC2.

    • Se a lista suspensa Perfil de instância do EC2 não mostrar nenhum valor para seleção, expanda o procedimento que se segue, Criar um perfil do IAM para ser o perfil de instância do EC2.

      Conclua as etapas em Criar perfil do IAM para ser o perfil de instância do EC2 para criar um perfil do IAM que você possa selecionar posteriormente para ser o  perfil de instância do EC2. Depois, retorne para esta etapa.

      Agora que você criou um perfil do IAM e atualizou a lista, ele será exibido como uma opção na lista suspensa. Selecione o perfil do IAM que você acabou de criar na lista suspensa Perfil de instância do EC2.

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

    Essa opção ignora as etapas opcionais.

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

    Escolha Save (Salvar) na parte inferior da página.

Configurar o acesso a serviço
Para criar um perfil do IAM para ser o perfil de instância do EC2
  1. Escolha Visualizar detalhes de permissão. Essa opção exibe a lista suspensa Perfil de instância do EC2.

    Uma janela modal intitulada Visualizar permissões de perfil de instância é exibida. Essa janela lista os perfis gerenciados que deverão ser anexados ao novo perfil de instância do EC2 que você criar. Ela também fornece um link para iniciar o console do IAM.

  2. Escolha o link Console do IAM exibido na parte superior da janela.

  3. No painel de navegação do console do IAM, escolha Roles (Perfis).

  4. Selecione Criar função.

  5. Em Tipo de entidade confiável, selecione Serviço da AWS .

  6. Em Use case (Caso de uso), selecione EC2.

  7. Escolha Próximo.

  8. Anexe as políticas gerenciadas apropriadas. Role a janela modal Visualizar permissões de perfil de instância para ver as políticas gerenciadas. As políticas também estão listadas aqui:

    • AWSElasticBeanstalkWebTier

    • AWSElasticBeanstalkWorkerTier

    • AWSElasticBeanstalkMulticontainerDocker

  9. Escolha Próximo.

  10. Insira um nome para a função.

  11. (Opcional) Adicione tags à função.

  12. Selecione Criar função.

  13. Retorne à janela do console do Elastic Beanstalk que está aberta.

  14. Feche a janela modal Visualizar permissões de perfil de instância.

    Importante

    Não feche a página do navegador que exibe o console do Elastic Beanstalk.

  15. Escolha refresh icon (atualizar), ao lado da lista suspensa Perfil de instância do EC2.

    Essa opção atualiza a lista suspensa para que o perfil que você acabou de criar seja exibido na lista suspensa.

Fluxo de trabalho do Elastic Beanstalk

Para implantar e executar o aplicativo de exemplo em AWS recursos, o Elastic Beanstalk executa as seguintes ações. Essas ações levam cerca de cinco minutos para serem concluídas.

  1. Cria um aplicativo do Elastic Beanstalk chamado getting-started-app.

  2. Lança um ambiente chamado GettingStartedApp-env com estes AWS recursos:

    • Uma instância do Amazon Elastic Compute Cloud (Amazon EC2) (máquina virtual)

    • Um grupo de segurança do Amazon EC2

    • Um bucket do Amazon Simple Storage Service (Amazon S3)

    • CloudWatch Alarmes da Amazon

    • Uma AWS CloudFormation pilha

    • Um nome de domínio

    Para obter detalhes sobre esses AWS recursos, consulteAWS recursos criados para o aplicativo de exemplo.

  3. Cria uma nova versão do aplicativo chamada Sample Application (Aplicativo de exemplo). Este é o arquivo da aplicação demonstrativa padrão do Elastic Beanstalk.

  4. Implanta o código do aplicativo de exemplo no ambiente GettingStartedApp-env.

Durante o processo de criação do ambiente, o console rastreia o progresso e exibe eventos.

Console do Elastic Beanstalk exibindo os eventos que ocorrem quando ele cria um ambiente

Quando todos os recursos são iniciados e as instâncias do EC2 que executam o aplicativo passam nas verificações de integridade, a integridade do ambiente muda para Ok. Agora você pode usar o site do seu aplicativo web.

AWS recursos criados para o aplicativo de exemplo

Quando você cria o aplicativo de exemplo, o Elastic Beanstalk cria os seguintes recursos: AWS

  • Instância do EC2: uma máquina virtual do Amazon EC2 configurada para executar aplicações Web na plataforma de sua escolha.

    Cada plataforma executa um conjunto diferente de software, arquivos de configuração e scripts para oferecer suporte a uma versão de linguagem, framework, contêiner da Web específicos ou a uma combinação deles. A maioria das plataformas usa o Apache ou nginx como um proxy reverso que processa tráfego da web na frente do aplicativo web, encaminha solicitações para ele, atende ativos estáticos e gera logs de acesso e de erro.

  • Grupo de segurança de instância: um grupo de segurança do Amazon EC2 configurado para permitir tráfego de entrada na porta 80. Esse recurso permite que o tráfego HTTP do load balancer chegue à instância do EC2 que executa seu aplicativo Web. Por padrão, o tráfego não é permitido em outras portas.

  • Bucket do Amazon S3: um local de armazenamento do seu código-fonte, logs e outros artefatos criados quando o Elastic Beanstalk é utilizado.

  • CloudWatch Alarmes da Amazon — Dois CloudWatch alarmes que monitoram a carga nas instâncias em seu ambiente e são acionados se a carga for muito alta ou muito baixa. Quando um alarme é acionado, o seu grupo de Auto Scaling pode aumentar ou diminuir.

  • AWS CloudFormation stack — O Elastic AWS CloudFormation Beanstalk usa para lançar os recursos em seu ambiente e propagar as alterações de configuração. Os recursos são definidos em um modelo que você pode visualizar no console do AWS CloudFormation.

  • Nome de domínio: um nome de domínio que encaminha para a aplicação Web no formato subdomínio.região.elasticbeanstalk.com.

    nota

    Para aumentar a segurança de suas aplicações do Elastic Beanstalk, o domínio elasticbeanstalk.com é registrado na Lista Pública de Sufixos (PSL). Para maior segurança, recomendamos que você use cookies com um prefixo __Host- se precisar definir cookies confidenciais no nome de domínio padrão para suas aplicações do Elastic Beanstalk. Essa prática ajudará a defender seu domínio contra tentativas de falsificação de solicitação entre sites (CSRF). Para obter mais informações, consulte a página Set-Cookie na Mozilla Developer Network.