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á.
Implantar aplicações em ambientes do Elastic Beanstalk
Você pode usar o AWS Elastic Beanstalk console para adicionar uma versão atualizada do aplicativo e implantá-la em seu ambiente Elastic Beanstalk ou reimplantar uma versão existente. Com o Beanstalk Standard, uma versão do aplicativo é um pacote Crie um pacote de origem da aplicação Elastic Beanstalk fonte atualizado que você carrega.
Cada implantação é identificada por um ID. Os IDs de implantação começam em 1, com incrementos de um a cada implantação e alteração de configuração de instância. Se você habilitar os relatórios avançados de integridade, o Elastic Beanstalk exibirá o ID da implantação no console de integridade e na CLI do EB ao relatar o status de integridade da instância. O ID de implantação ajuda a determinar o estado do ambiente quando uma atualização contínua falha.
O Elastic Beanstalk fornece várias políticas e configurações de implantação. Para obter detalhes sobre como configurar uma política e configurações adicionais, consulte Políticas e configurações de implantação. A tabela a seguir lista as políticas e os tipos de ambientes compatíveis com elas.
| Política de implantação | Load-balanced ambientes | Single-instance ambientes | Ambientes legados do Windows Server† |
|---|---|---|---|
|
Tudo de uma vez |
|
|
|
|
Contínua |
|
|
|
|
Contínua com lote adicional |
|
|
|
|
Imutável |
|
|
|
|
Divisão de tráfego |
|
|
|
† Nessa tabela, um Ambiente legado do Windows Server é um ambiente baseado em uma configuração de plataforma do Windows Server que usa uma versão anterior do IIS 8.5.
Atenção
Algumas políticas substituem todas as instâncias durante a implantação ou a atualização. Por conta disso, todo o equilíbrio de intermitência do Amazon EC2 é perdido. Isso acontece nos seguintes casos:
-
Atualizações de plataforma gerenciada com substituição de instância habilitada
-
Atualizações imutáveis
-
Implantações com atualizações imutáveis ou divisão de tráfego habilitada
nota
O Beanstalk Cluster é executado no Amazon EKS e não é afetado pelos saldos de intermitência do Amazon EC2.
Como escolher uma política de implantação
Escolher a política de implantação correta para seu aplicativo é uma questão com algumas considerações a fazer e que depende de suas necessidades específicas. A página Políticas e configurações de implantação tem mais informações sobre cada política e uma descrição detalhada do funcionamento de algumas delas.
A lista a seguir fornece informações resumidas sobre as diferentes políticas de implantação e inclui considerações relacionadas.
-
All at once (Tudo de uma vez): o método de implantação mais rápido. Adequado se você puder aceitar uma pequena perda de serviço e se implantações rápidas forem importantes para você. Com esse método, o Elastic Beanstalk implanta a nova versão da aplicação em cada instância. Em seguida, talvez o proxy da web ou o servidor do aplicativo precise reiniciar. Como resultado, seu aplicativo pode ficar indisponível para usuários (ou ter baixa disponibilidade) por um breve período.
nota
Com o Beanstalk Cluster, esse é o
Recreatevalor da opção de configuração.strategyConsulte Opções de configuração para ambientes Beanstalk Cluster. -
Rolling (Contínua): evita o tempo de inatividade e minimiza a disponibilidade reduzida, a um custo de implantação mais longo. Adequado se você não puder aceitar nenhum período de perda total de serviço. Com esse método, seu aplicativo é implantado no ambiente um lote de instâncias por vez. A maior parte da largura de banda é mantida durante toda a implantação.
nota
O Beanstalk Cluster suporta implantações contínuas, configuradas por meio das opções de
max-unavailableconfiguraçãomax-surgee, em vez de selecionadas como uma política nomeada.max-surgelimita quantas réplicas o Elastic Beanstalk adiciona além da contagem desejada emax-unavailablelimita quantas ele retira por vez. Amax-unavailableof0, que é o padrão, evita que o ambiente fique abaixo da contagem de réplicas desejada durante uma implantação. Consulte Opções de configuração para ambientes Beanstalk Cluster. -
Rolling with additional batch (Contínua com lote adicional): evita qualquer disponibilidade reduzida, ao custo de um tempo de implantação ainda mais longo em comparação com o método Rolling (Contínuo). Adequado se você precisar manter a mesma largura de banda durante toda a implantação. Com esse método, o Elastic Beanstalk inicia um lote extra de instâncias e executa uma implantação contínua. A inicialização do lote extra leva tempo e garante que a mesma largura de banda seja mantida durante toda a implantação.
nota
Atualmente, apenas o Beanstalk Standard expõe o Rolling com lote adicional como um tipo de implantação distinto. No Beanstalk Cluster, o mesmo comportamento contínuo de capacidade total é obtido por meio de configurações de atualização contínua:
0evita que o ambiente fique abaixomax-unavailableda contagem de réplicas desejada emax-surgecontrola quantas réplicas extras podem ser iniciadas durante a implantação. Esse é o comportamento padrão do Cluster, commax-unavailableat0emax-surgeat1. -
Immutable (Imutável): um método de implantação mais lento, que garante que a nova versão da aplicação seja sempre implantada em novas instâncias, em vez de atualizar instâncias existentes. Ele também tem a vantagem adicional de uma reversão rápida e segura em caso de falha na implantação. Com esse método, o Elastic Beanstalk executa uma atualização imutável para implantar sua aplicação. Em uma atualização imutável, um segundo grupo de Auto Scaling é iniciado no ambiente e a nova versão atende o tráfego junto com a versão antiga até que a nova instância passe nas verificações de integridade.
nota
Atualmente, apenas o Beanstalk Standard oferece suporte a implantações imutáveis.
-
Traffic splitting (Divisão de tráfego): um método de implantação de testes canary. Adequado se você deseja testar a integridade da sua nova versão do aplicativo usando uma parte do tráfego recebido, mantendo o restante do tráfego atendido pela versão antiga do aplicativo.
nota
Atualmente, apenas o Beanstalk Standard oferece suporte a implantações de divisão de tráfego.
A tabela a seguir compara as propriedades dos métodos de implantação.
| Método | Impacto de uma implantação malsucedida | Tempo de implantação | Tempo de inatividade zero | Nenhuma alteração de DNS | Processo de reversão | Código implantado em |
|---|---|---|---|---|---|---|
| Tudo de uma vez | Tempo de inatividade |
|
|
|
Reimplantação manual | Instâncias existentes |
| Contínua | Lote único fora de serviço; qualquer lote bem-sucedido antes de uma falha ao executar uma nova versão do aplicativo |
† |
|
|
Reimplantação manual | Instâncias existentes |
| Contínua com lote adicional | Mínimo, se o primeiro lote falhar; do contrário, é semelhante à Rolling (Contínua) |
† |
|
|
Reimplantação manual | Instâncias novas e existentes |
| Imutável | Mínimo |
|
|
|
Encerrar novas instâncias | Instâncias novas |
| Divisão de tráfego | Percentual de tráfego do cliente roteado para a nova versão afetada temporariamente |
†† |
|
|
Redirecionar tráfego e encerrar novas instâncias | Instâncias novas |
| Blue/green | Mínimo |
|
|
|
Alternar URL | Instâncias novas |
† Varia, dependendo do tamanho do lote.
†† Varia de acordo com a configuração da opção de tempo momento de avaliação.
Implantar uma nova versão do aplicativo
Você pode executar as implantações pelo painel do ambiente.
Como implantar uma nova versão da aplicação em um ambiente do Elastic Beanstalk
Abra o console do Elastic Beanstalk e
, na lista Regiões, selecione seu. Região da AWS -
No painel de navegação, selecione Ambientes e selecione o nome do ambiente na lista.
-
Escolha Upload and deploy (Fazer upload e implantar).
-
Use o formulário na tela para carregar o pacote de origem do aplicativo.
-
Escolha Implantar.
Reimplantar a versão anterior
Você também pode implantar uma versão existente do seu aplicativo a partir da página de versões do aplicativo em qualquer ambiente do aplicativo com o qual a versão seja compatível. Uma versão do pacote de origem é implantada em um ambiente Beanstalk Standard e uma versão de imagem de contêiner é implantada em um ambiente Beanstalk Cluster.
Para implantar uma versão existente do aplicativo no ambiente atual
Abra o console do Elastic Beanstalk e
, na lista Regiões, selecione seu. Região da AWS -
No painel de navegação, selecione Aplicativos e escolha o nome do aplicativo na lista.
No painel de navegação, encontre o nome do aplicativo e escolha Application versions (Versões do aplicativo).
-
Selecione a versão do aplicativo a ser implantada.
-
Escolha Actions (Ações) e escolha Deploy (Implantar).
-
Escolha um ambiente e escolha Deploy (Implantar).
Outras formas de implantar seu aplicativo
Se você implanta com frequência, considere o uso da Interface de Linhas de Comando do Elastic Beanstalk (CLI do EB) para gerenciar os ambientes. A CLI do EB cria um repositório junto com o código-fonte. Ela também pode criar um pacote de origem, carregá-lo no Elastic Beanstalk e implantá-lo com um único comando.
Para implantações que dependem de alterações na configuração de recursos ou de uma nova versão que não pode ser executada junto com a versão antiga, você pode iniciar um novo ambiente com a nova versão e realizar uma troca de CNAME por uma implantação. blue/green
Para automatizar seus processos de construção, teste e implantação, você pode implementar a integração contínua e a implantação contínua (CI/CD) com seu ambiente Elastic Beanstalk. Para obter mais informações, consulte Implementando CI/CD a integração com seu ambiente Elastic Beanstalk.