Criar links entre ambientes do Elastic Beanstalk - 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á.

Criar links entre ambientes do Elastic Beanstalk

À medida que seu aplicativo aumenta de tamanho e complexidade, você pode dividi-lo em componentes com diferentes ciclos de vida operacionais e de desenvolvimento. Ao executar serviços menores que interagem com os outros por uma interface bem definida, as equipes podem trabalhar de forma independente, e implantações podem ser de menor risco. O AWS Elastic Beanstalk permite vincular seus ambientes para compartilhar informações entre componentes que dependem um do outro.

nota

Atualmente, o Elastic Beanstalk é compatível com links de ambiente para todas as plataformas, exceto Docker de vários contêineres.

Com os links de ambiente, você pode especificar as conexões entre os ambientes de componentes do aplicativo como referências nomeadas. Quando um ambiente que define um link é criado, o Elastic Beanstalk define uma variável de ambiente com o mesmo nome do link. O valor da variável é o endpoint que você pode usar para se conectar a outro componente, que pode ser um servidor Web ou ambiente de operador.

Por exemplo, se o aplicativo é composto de um front-end que coleta endereços de e-mail e um operador que envia e-mail de boas-vindas para os endereços coletados pelo front-end, você pode criar um link para o operador do front-end e o front-end descobrir automaticamente o endpoint (URL da fila) para o operador.

Defina links para outros ambientes em um manifesto de ambiente, um arquivo em formato YAML nomeado env.yaml na raiz da origem do aplicativo. O seguinte manifesto define um link para um ambiente denominado operador:

~/workspace/my-app/frontend/env.yaml

AWSConfigurationTemplateVersion: 1.1.0.0 EnvironmentLinks: "WORKERQUEUE": "worker"

Quando você cria um ambiente com uma versão da aplicação que inclui o manifesto de ambiente acima, o Elastic Beanstalk procura um ambiente chamado worker que pertence à mesma aplicação. Se esse ambiente existir, o Elastic Beanstalk criará uma propriedade de ambiente chamada WORKERQUEUE. O valor de WORKERQUEUE é o URL da fila do Amazon SQS. O aplicativo de front-end pode ler essa propriedade da mesma maneira que uma variável de ambiente. Para obter mais detalhes, consulte Manifesto de ambiente (env.yaml).

Para usar os links de ambiente, adicione o manifesto de ambiente à fonte da aplicação e faça upload dele com a EB CLI, AWS CLI ou um SDK. Se você usar AWS CLI ou um SDK, defina o sinalizador process quando chamar CreateApplicationVersion:

$ aws elasticbeanstalk create-application-version --process --application-name my-app --version-label frontend-v1 --source-bundle S3Bucket="DOC-EXAMPLE-BUCKET",S3Key="front-v1.zip"

Essa opção instrui o Elastic Beanstalk a validar o manifesto de ambiente e os arquivos de configuração no pacote de origem quando você cria a versão da aplicação. A EB CLI define esse sinalizador automaticamente quando você tem um manifesto de ambiente no diretório do projeto.

Crie seus ambientes normalmente usando qualquer cliente. Quando for necessário encerrar ambientes, primeiro faça isso com o vínculo. Se um ambiente estiver vinculado a qualquer outro ambiente, o Elastic Beanstalk impedirá o encerramento do ambiente vinculado. Para substituir essa proteção, use o sinalizador ForceTerminate. Esse parâmetro está disponível na AWS CLI como --force-terminate:

$ aws elasticbeanstalk terminate-environment --force-terminate --environment-name worker