Exemplos do Elastic Beanstalk usando AWS CLI - AWS Command Line Interface

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á.

Exemplos do Elastic Beanstalk usando AWS CLI

Os exemplos de código a seguir mostram como realizar ações e implementar cenários comuns usando o AWS Command Line Interface com o Elastic Beanstalk.

Ações são trechos de código de programas maiores e devem ser executadas em contexto. Embora as ações mostrem como chamar funções de serviço individuais, você pode ver as ações no contexto em seus cenários relacionados.

Cada exemplo inclui um link para o código-fonte completo, onde você pode encontrar instruções sobre como configurar e executar o código no contexto.

Tópicos

Ações

O código de exemplo a seguir mostra como usar abort-environment-update.

AWS CLI

Para abortar uma implantação

O comando a seguir aborta a implantação de uma versão do aplicativo em execução em um ambiente chamadomy-env:

aws elasticbeanstalk abort-environment-update --environment-name my-env

O código de exemplo a seguir mostra como usar check-dns-availability.

AWS CLI

Para verificar a disponibilidade de um CNAME

O comando a seguir verifica a disponibilidade do subdomínio: my-cname.elasticbeanstalk.com

aws elasticbeanstalk check-dns-availability --cname-prefix my-cname

Saída:

{ "Available": true, "FullyQualifiedCNAME": "my-cname.elasticbeanstalk.com" }

O código de exemplo a seguir mostra como usar create-application-version.

AWS CLI

Para criar uma nova versão do aplicativo

O comando a seguir cria uma nova versão, “v1", de um aplicativo chamado" “: MyApp

aws elasticbeanstalk create-application-version --application-name MyApp --version-label v1 --description MyAppv1 --source-bundle S3Bucket="my-bucket",S3Key="sample.war" --auto-create-application

O aplicativo será criado automaticamente se ainda não existir, devido à auto-create-application opção. O pacote de origem é um arquivo .war armazenado em um bucket s3 chamado “my-bucket” que contém o aplicativo de amostra Apache Tomcat.

Saída:

{ "ApplicationVersion": { "ApplicationName": "MyApp", "VersionLabel": "v1", "Description": "MyAppv1", "DateCreated": "2015-02-03T23:01:25.412Z", "DateUpdated": "2015-02-03T23:01:25.412Z", "SourceBundle": { "S3Bucket": "my-bucket", "S3Key": "sample.war" } } }

O código de exemplo a seguir mostra como usar create-application.

AWS CLI

Para criar um novo aplicativo

O comando a seguir cria um novo aplicativo chamado "MyApp“:

aws elasticbeanstalk create-application --application-name MyApp --description "my application"

O create-application comando configura somente o nome e a descrição do aplicativo. Para carregar o código-fonte do aplicativo, crie uma versão inicial do aplicativo usandocreate-application-version. create-application-versiontambém tem uma auto-create-application opção que permite criar o aplicativo e a versão do aplicativo em uma única etapa.

Saída:

{ "Application": { "ApplicationName": "MyApp", "ConfigurationTemplates": [], "DateUpdated": "2015-02-12T18:32:21.181Z", "Description": "my application", "DateCreated": "2015-02-12T18:32:21.181Z" } }
  • Para API obter detalhes, consulte CreateApplicationna Referência de AWS CLI Comandos.

O código de exemplo a seguir mostra como usar create-configuration-template.

AWS CLI

Para criar um modelo de configuração

O comando a seguir cria um modelo my-app-v1 de configuração com o nome das configurações aplicadas a um ambiente com o ide-rpqsewtp2j:

aws elasticbeanstalk create-configuration-template --application-name my-app --template-name my-app-v1 --environment-id e-rpqsewtp2j

Saída:

{ "ApplicationName": "my-app", "TemplateName": "my-app-v1", "DateCreated": "2015-08-12T18:40:39Z", "DateUpdated": "2015-08-12T18:40:39Z", "SolutionStackName": "64bit Amazon Linux 2015.03 v2.0.0 running Tomcat 8 Java 8" }

O código de exemplo a seguir mostra como usar create-environment.

AWS CLI

Para criar um novo ambiente para um aplicativo

O comando a seguir cria um novo ambiente para a versão “v1" de um aplicativo java chamado “my-app”:

aws elasticbeanstalk create-environment --application-name my-app --environment-name my-env --cname-prefix my-app --version-label v1 --solution-stack-name "64bit Amazon Linux 2015.03 v2.0.0 running Tomcat 8 Java 8"

Saída:

{ "ApplicationName": "my-app", "EnvironmentName": "my-env", "VersionLabel": "v1", "Status": "Launching", "EnvironmentId": "e-izqpassy4h", "SolutionStackName": "64bit Amazon Linux 2015.03 v2.0.0 running Tomcat 8 Java 8", "CNAME": "my-app.elasticbeanstalk.com", "Health": "Grey", "Tier": { "Type": "Standard", "Name": "WebServer", "Version": " " }, "DateUpdated": "2015-02-03T23:04:54.479Z", "DateCreated": "2015-02-03T23:04:54.479Z" }

v1é o rótulo de uma versão do aplicativo carregada anteriormente com create-application-version.

Para especificar um JSON arquivo para definir as opções de configuração do ambiente

O create-environment comando a seguir especifica que um JSON arquivo com o nome myoptions.json deve ser usado para substituir valores obtidos da pilha de soluções ou do modelo de configuração:

aws elasticbeanstalk create-environment --environment-name sample-env --application-name sampleapp --option-settings file://myoptions.json

myoptions.jsoné um JSON objeto que define várias configurações:

[ { "Namespace": "aws:elb:healthcheck", "OptionName": "Interval", "Value": "15" }, { "Namespace": "aws:elb:healthcheck", "OptionName": "Timeout", "Value": "8" }, { "Namespace": "aws:elb:healthcheck", "OptionName": "HealthyThreshold", "Value": "2" }, { "Namespace": "aws:elb:healthcheck", "OptionName": "UnhealthyThreshold", "Value": "3" } ]

Para obter mais informações, consulte Valores das opções no Guia do desenvolvedor do AWS Elastic Beanstalk.

  • Para API obter detalhes, consulte CreateEnvironmentna Referência de AWS CLI Comandos.

O código de exemplo a seguir mostra como usar create-storage-location.

AWS CLI

Para criar um local de armazenamento

O comando a seguir cria um local de armazenamento no Amazon S3:

aws elasticbeanstalk create-storage-location

Saída:

{ "S3Bucket": "elasticbeanstalk-us-west-2-0123456789012" }

O código de exemplo a seguir mostra como usar delete-application-version.

AWS CLI

Para excluir uma versão do aplicativo

O comando a seguir exclui uma versão do aplicativo com o nome 22a0-stage-150819_182129 de um aplicativo chamadomy-app:

aws elasticbeanstalk delete-application-version --version-label 22a0-stage-150819_182129 --application-name my-app

O código de exemplo a seguir mostra como usar delete-application.

AWS CLI

Como excluir uma aplicação

O comando a seguir exclui um aplicativo chamadomy-app:

aws elasticbeanstalk delete-application --application-name my-app
  • Para API obter detalhes, consulte DeleteApplicationna Referência de AWS CLI Comandos.

O código de exemplo a seguir mostra como usar delete-configuration-template.

AWS CLI

Para excluir um modelo de configuração

O comando a seguir exclui um modelo de configuração com o nome my-template de um aplicativo chamadomy-app:

aws elasticbeanstalk delete-configuration-template --template-name my-template --application-name my-app

O código de exemplo a seguir mostra como usar delete-environment-configuration.

AWS CLI

Para excluir um rascunho de configuração

O comando a seguir exclui um rascunho de configuração para um ambiente chamadomy-env:

aws elasticbeanstalk delete-environment-configuration --environment-name my-env --application-name my-app

O código de exemplo a seguir mostra como usar describe-application-versions.

AWS CLI

Para ver informações sobre uma versão do aplicativo

O comando a seguir recupera informações sobre uma versão do aplicativo chamadav2:

aws elasticbeanstalk describe-application-versions --application-name my-app --version-label "v2"

Saída:

{ "ApplicationVersions": [ { "ApplicationName": "my-app", "VersionLabel": "v2", "Description": "update cover page", "DateCreated": "2015-07-23T01:32:26.079Z", "DateUpdated": "2015-07-23T01:32:26.079Z", "SourceBundle": { "S3Bucket": "elasticbeanstalk-us-west-2-015321684451", "S3Key": "my-app/5026-stage-150723_224258.war" } }, { "ApplicationName": "my-app", "VersionLabel": "v1", "Description": "initial version", "DateCreated": "2015-07-23T22:26:10.816Z", "DateUpdated": "2015-07-23T22:26:10.816Z", "SourceBundle": { "S3Bucket": "elasticbeanstalk-us-west-2-015321684451", "S3Key": "my-app/5026-stage-150723_222618.war" } } ] }

O código de exemplo a seguir mostra como usar describe-applications.

AWS CLI

Para ver uma lista de aplicativos

O comando a seguir recupera informações sobre aplicativos na região atual:

aws elasticbeanstalk describe-applications

Saída:

{ "Applications": [ { "ApplicationName": "ruby", "ConfigurationTemplates": [], "DateUpdated": "2015-08-13T21:05:44.376Z", "Versions": [ "Sample Application" ], "DateCreated": "2015-08-13T21:05:44.376Z" }, { "ApplicationName": "pythonsample", "Description": "Application created from the EB CLI using \"eb init\"", "Versions": [ "Sample Application" ], "DateCreated": "2015-08-13T19:05:43.637Z", "ConfigurationTemplates": [], "DateUpdated": "2015-08-13T19:05:43.637Z" }, { "ApplicationName": "nodejs-example", "ConfigurationTemplates": [], "DateUpdated": "2015-08-06T17:50:02.486Z", "Versions": [ "add elasticache", "First Release" ], "DateCreated": "2015-08-06T17:50:02.486Z" } ] }

O código de exemplo a seguir mostra como usar describe-configuration-options.

AWS CLI

Para ver as opções de configuração de um ambiente

O comando a seguir recupera as descrições de todas as opções de configuração disponíveis para um ambiente chamadomy-env:

aws elasticbeanstalk describe-configuration-options --environment-name my-env --application-name my-app

Saída (abreviada):

{ "Options": [ { "Name": "JVMOptions", "UserDefined": false, "DefaultValue": "Xms=256m,Xmx=256m,XX:MaxPermSize=64m,JVM Options=", "ChangeSeverity": "RestartApplicationServer", "Namespace": "aws:cloudformation:template:parameter", "ValueType": "KeyValueList" }, { "Name": "Interval", "UserDefined": false, "DefaultValue": "30", "ChangeSeverity": "NoInterruption", "Namespace": "aws:elb:healthcheck", "MaxValue": 300, "MinValue": 5, "ValueType": "Scalar" }, ... { "Name": "LowerThreshold", "UserDefined": false, "DefaultValue": "2000000", "ChangeSeverity": "NoInterruption", "Namespace": "aws:autoscaling:trigger", "MinValue": 0, "ValueType": "Scalar" }, { "Name": "ListenerEnabled", "UserDefined": false, "DefaultValue": "true", "ChangeSeverity": "Unknown", "Namespace": "aws:elb:listener", "ValueType": "Boolean" } ] }

As opções de configuração disponíveis variam de acordo com a plataforma e a versão da configuração. Para obter mais informações sobre namespaces e opções compatíveis, consulte Valores de opção no Guia do desenvolvedor do Elastic AWS Beanstalk.

O código de exemplo a seguir mostra como usar describe-configuration-settings.

AWS CLI

Para visualizar as configurações de um ambiente

O comando a seguir recupera as configurações de um ambiente chamadomy-env:

aws elasticbeanstalk describe-configuration-settings --environment-name my-env --application-name my-app

Saída (abreviada):

{ "ConfigurationSettings": [ { "ApplicationName": "my-app", "EnvironmentName": "my-env", "Description": "Environment created from the EB CLI using \"eb create\"", "DeploymentStatus": "deployed", "DateCreated": "2015-08-13T19:16:25Z", "OptionSettings": [ { "OptionName": "Availability Zones", "ResourceName": "AWSEBAutoScalingGroup", "Namespace": "aws:autoscaling:asg", "Value": "Any" }, { "OptionName": "Cooldown", "ResourceName": "AWSEBAutoScalingGroup", "Namespace": "aws:autoscaling:asg", "Value": "360" }, ... { "OptionName": "ConnectionDrainingTimeout", "ResourceName": "AWSEBLoadBalancer", "Namespace": "aws:elb:policies", "Value": "20" }, { "OptionName": "ConnectionSettingIdleTimeout", "ResourceName": "AWSEBLoadBalancer", "Namespace": "aws:elb:policies", "Value": "60" } ], "DateUpdated": "2015-08-13T23:30:07Z", "SolutionStackName": "64bit Amazon Linux 2015.03 v2.0.0 running Tomcat 8 Java 8" } ] }

Para obter mais informações sobre namespaces e opções compatíveis, consulte Valores de opção no Guia do desenvolvedor do Elastic AWS Beanstalk.

O código de exemplo a seguir mostra como usar describe-environment-health.

AWS CLI

Para ver a saúde do meio ambiente

O comando a seguir recupera informações gerais de saúde de um ambiente chamadomy-env:

aws elasticbeanstalk describe-environment-health --environment-name my-env --attribute-names All

Saída:

{ "Status": "Ready", "EnvironmentName": "my-env", "Color": "Green", "ApplicationMetrics": { "Duration": 10, "Latency": { "P99": 0.004, "P75": 0.002, "P90": 0.003, "P95": 0.004, "P85": 0.003, "P10": 0.001, "P999": 0.004, "P50": 0.001 }, "RequestCount": 45, "StatusCodes": { "Status3xx": 0, "Status2xx": 45, "Status5xx": 0, "Status4xx": 0 } }, "RefreshedAt": "2015-08-20T21:09:18Z", "HealthStatus": "Ok", "InstancesHealth": { "Info": 0, "Ok": 1, "Unknown": 0, "Severe": 0, "Warning": 0, "Degraded": 0, "NoData": 0, "Pending": 0 }, "Causes": [] }

As informações de saúde só estão disponíveis para ambientes com relatórios de saúde aprimorados habilitados. Para obter mais informações, consulte Enhanced Health Reporting and Monitoring no Guia do Desenvolvedor do AWS Elastic Beanstalk.

O código de exemplo a seguir mostra como usar describe-environment-resources.

AWS CLI

Para visualizar informações sobre os AWS recursos em seu ambiente

O comando a seguir recupera informações sobre recursos em um ambiente chamadomy-env:

aws elasticbeanstalk describe-environment-resources --environment-name my-env

Saída:

{ "EnvironmentResources": { "EnvironmentName": "my-env", "AutoScalingGroups": [ { "Name": "awseb-e-qu3fyyjyjs-stack-AWSEBAutoScalingGroup-QSB2ZO88SXZT" } ], "Triggers": [], "LoadBalancers": [ { "Name": "awseb-e-q-AWSEBLoa-1EEPZ0K98BIF0" } ], "Queues": [], "Instances": [ { "Id": "i-0c91c786" } ], "LaunchConfigurations": [ { "Name": "awseb-e-qu3fyyjyjs-stack-AWSEBAutoScalingLaunchConfiguration-1UUVQIBC96TQ2" } ] } }

O código de exemplo a seguir mostra como usar describe-environments.

AWS CLI

Para visualizar informações sobre um ambiente

O comando a seguir recupera informações sobre um ambiente chamadomy-env:

aws elasticbeanstalk describe-environments --environment-names my-env

Saída:

{ "Environments": [ { "ApplicationName": "my-app", "EnvironmentName": "my-env", "VersionLabel": "7f58-stage-150812_025409", "Status": "Ready", "EnvironmentId": "e-rpqsewtp2j", "EndpointURL": "awseb-e-w-AWSEBLoa-1483140XB0Q4L-109QXY8121.us-west-2.elb.amazonaws.com", "SolutionStackName": "64bit Amazon Linux 2015.03 v2.0.0 running Tomcat 8 Java 8", "CNAME": "my-env.elasticbeanstalk.com", "Health": "Green", "AbortableOperationInProgress": false, "Tier": { "Version": " ", "Type": "Standard", "Name": "WebServer" }, "DateUpdated": "2015-08-12T18:16:55.019Z", "DateCreated": "2015-08-07T20:48:49.599Z" } ] }

O código de exemplo a seguir mostra como usar describe-events.

AWS CLI

Para visualizar eventos de um ambiente

O comando a seguir recupera eventos de um ambiente chamadomy-env:

aws elasticbeanstalk describe-events --environment-name my-env

Saída (abreviada):

{ "Events": [ { "ApplicationName": "my-app", "EnvironmentName": "my-env", "Message": "Environment health has transitioned from Info to Ok.", "EventDate": "2015-08-20T07:06:53.535Z", "Severity": "INFO" }, { "ApplicationName": "my-app", "EnvironmentName": "my-env", "Severity": "INFO", "RequestId": "b7f3960b-4709-11e5-ba1e-07e16200da41", "Message": "Environment update completed successfully.", "EventDate": "2015-08-20T07:06:02.049Z" }, ... { "ApplicationName": "my-app", "EnvironmentName": "my-env", "Severity": "INFO", "RequestId": "ca8dfbf6-41ef-11e5-988b-651aa638f46b", "Message": "Using elasticbeanstalk-us-west-2-012445113685 as Amazon S3 storage bucket for environment data.", "EventDate": "2015-08-13T19:16:27.561Z" }, { "ApplicationName": "my-app", "EnvironmentName": "my-env", "Severity": "INFO", "RequestId": "cdfba8f6-41ef-11e5-988b-65638f41aa6b", "Message": "createEnvironment is starting.", "EventDate": "2015-08-13T19:16:26.581Z" } ] }
  • Para API obter detalhes, consulte DescribeEventsna Referência de AWS CLI Comandos.

O código de exemplo a seguir mostra como usar describe-instances-health.

AWS CLI

Para ver a saúde do meio ambiente

O comando a seguir recupera informações de saúde de instâncias em um ambiente chamadomy-env:

aws elasticbeanstalk describe-instances-health --environment-name my-env --attribute-names All

Saída:

{ "InstanceHealthList": [ { "InstanceId": "i-08691cc7", "ApplicationMetrics": { "Duration": 10, "Latency": { "P99": 0.006, "P75": 0.002, "P90": 0.004, "P95": 0.005, "P85": 0.003, "P10": 0.0, "P999": 0.006, "P50": 0.001 }, "RequestCount": 48, "StatusCodes": { "Status3xx": 0, "Status2xx": 47, "Status5xx": 0, "Status4xx": 1 } }, "System": { "LoadAverage": [ 0.0, 0.02, 0.05 ], "CPUUtilization": { "SoftIRQ": 0.1, "IOWait": 0.2, "System": 0.3, "Idle": 97.8, "User": 1.5, "IRQ": 0.0, "Nice": 0.1 } }, "Color": "Green", "HealthStatus": "Ok", "LaunchedAt": "2015-08-13T19:17:09Z", "Causes": [] } ], "RefreshedAt": "2015-08-20T21:09:08Z" }

As informações de saúde só estão disponíveis para ambientes com relatórios de saúde aprimorados habilitados. Para obter mais informações, consulte Enhanced Health Reporting and Monitoring no Guia do Desenvolvedor do AWS Elastic Beanstalk.

O código de exemplo a seguir mostra como usar list-available-solution-stacks.

AWS CLI

Para ver as pilhas de soluções

O comando a seguir lista as pilhas de soluções para todas as configurações de plataforma disponíveis atualmente e todas as que você usou no passado:

aws elasticbeanstalk list-available-solution-stacks

Saída (abreviada):

{ "SolutionStacks": [ "64bit Amazon Linux 2015.03 v2.0.0 running Node.js", "64bit Amazon Linux 2015.03 v2.0.0 running PHP 5.6", "64bit Amazon Linux 2015.03 v2.0.0 running PHP 5.5", "64bit Amazon Linux 2015.03 v2.0.0 running PHP 5.4", "64bit Amazon Linux 2015.03 v2.0.0 running Python 3.4", "64bit Amazon Linux 2015.03 v2.0.0 running Python 2.7", "64bit Amazon Linux 2015.03 v2.0.0 running Python", "64bit Amazon Linux 2015.03 v2.0.0 running Ruby 2.2 (Puma)", "64bit Amazon Linux 2015.03 v2.0.0 running Ruby 2.2 (Passenger Standalone)", "64bit Amazon Linux 2015.03 v2.0.0 running Ruby 2.1 (Puma)", "64bit Amazon Linux 2015.03 v2.0.0 running Ruby 2.1 (Passenger Standalone)", "64bit Amazon Linux 2015.03 v2.0.0 running Ruby 2.0 (Puma)", "64bit Amazon Linux 2015.03 v2.0.0 running Ruby 2.0 (Passenger Standalone)", "64bit Amazon Linux 2015.03 v2.0.0 running Ruby 1.9.3", "64bit Amazon Linux 2015.03 v2.0.0 running Tomcat 8 Java 8", "64bit Amazon Linux 2015.03 v2.0.0 running Tomcat 7 Java 7", "64bit Amazon Linux 2015.03 v2.0.0 running Tomcat 7 Java 6", "64bit Windows Server Core 2012 R2 running IIS 8.5", "64bit Windows Server 2012 R2 running IIS 8.5", "64bit Windows Server 2012 running IIS 8", "64bit Windows Server 2008 R2 running IIS 7.5", "64bit Amazon Linux 2015.03 v2.0.0 running Docker 1.6.2", "64bit Amazon Linux 2015.03 v2.0.0 running Multi-container Docker 1.6.2 (Generic)", "64bit Debian jessie v2.0.0 running GlassFish 4.1 Java 8 (Preconfigured - Docker)", "64bit Debian jessie v2.0.0 running GlassFish 4.0 Java 7 (Preconfigured - Docker)", "64bit Debian jessie v2.0.0 running Go 1.4 (Preconfigured - Docker)", "64bit Debian jessie v2.0.0 running Go 1.3 (Preconfigured - Docker)", "64bit Debian jessie v2.0.0 running Python 3.4 (Preconfigured - Docker)", ], "SolutionStackDetails": [ { "PermittedFileTypes": [ "zip" ], "SolutionStackName": "64bit Amazon Linux 2015.03 v2.0.0 running Node.js" }, ... ] }

O código de exemplo a seguir mostra como usar rebuild-environment.

AWS CLI

Para reconstruir um ambiente

O comando a seguir encerra e recria os recursos em um ambiente chamado: my-env

aws elasticbeanstalk rebuild-environment --environment-name my-env

O código de exemplo a seguir mostra como usar request-environment-info.

AWS CLI

Para solicitar registros com falha

O comando a seguir solicita registros de um ambiente chamadomy-env:

aws elasticbeanstalk request-environment-info --environment-name my-env --info-type tail

Depois de solicitar os registros, recupere a localização deles com. retrieve-environment-info

O código de exemplo a seguir mostra como usar restart-app-server.

AWS CLI

Para reiniciar os servidores de aplicativos

O comando a seguir reinicia os servidores de aplicativos em todas as instâncias em um ambiente chamadomy-env:

aws elasticbeanstalk restart-app-server --environment-name my-env
  • Para API obter detalhes, consulte RestartAppServerna Referência de AWS CLI Comandos.

O código de exemplo a seguir mostra como usar retrieve-environment-info.

AWS CLI

Para recuperar registros com falha

O comando a seguir recupera um link para registros de um ambiente chamadomy-env:

aws elasticbeanstalk retrieve-environment-info --environment-name my-env --info-type tail

Saída:

{ "EnvironmentInfo": [ { "SampleTimestamp": "2015-08-20T22:23:17.703Z", "Message": "https://elasticbeanstalk-us-west-2-0123456789012.s3.amazonaws.com/resources/environments/logs/tail/e-fyqyju3yjs/i-09c1c867/TailLogs-1440109397703.out?AWSAccessKeyId=AKGPT4J56IAJ2EUBL5CQ&Expires=1440195891&Signature=n%2BEalOV6A2HIOx4Rcfb7LT16bBM%3D", "InfoType": "tail", "Ec2InstanceId": "i-09c1c867" } ] }

Visualize o link em um navegador. Antes da recuperação, os registros devem ser solicitados com request-environment-info.

O código de exemplo a seguir mostra como usar swap-environment-cnames.

AWS CLI

Para trocar o ambiente CNAMES

O comando a seguir troca os subdomínios atribuídos de dois ambientes:

aws elasticbeanstalk swap-environment-cnames --source-environment-name my-env-blue --destination-environment-name my-env-green

O código de exemplo a seguir mostra como usar terminate-environment.

AWS CLI

Para encerrar um ambiente

O comando a seguir encerra um ambiente do Elastic Beanstalk chamado: my-env

aws elasticbeanstalk terminate-environment --environment-name my-env

Saída:

{ "ApplicationName": "my-app", "EnvironmentName": "my-env", "Status": "Terminating", "EnvironmentId": "e-fh2eravpns", "EndpointURL": "awseb-e-f-AWSEBLoa-1I9XUMP4-8492WNUP202574.us-west-2.elb.amazonaws.com", "SolutionStackName": "64bit Amazon Linux 2015.03 v2.0.0 running Tomcat 8 Java 8", "CNAME": "my-env.elasticbeanstalk.com", "Health": "Grey", "AbortableOperationInProgress": false, "Tier": { "Version": " ", "Type": "Standard", "Name": "WebServer" }, "DateUpdated": "2015-08-12T19:05:54.744Z", "DateCreated": "2015-08-12T18:52:53.622Z" }

O código de exemplo a seguir mostra como usar update-application-version.

AWS CLI

Para alterar a descrição de uma versão do aplicativo

O comando a seguir atualiza a descrição de uma versão do aplicativo chamada22a0-stage-150819_185942:

aws elasticbeanstalk update-application-version --version-label 22a0-stage-150819_185942 --application-name my-app --description "new description"

Saída:

{ "ApplicationVersion": { "ApplicationName": "my-app", "VersionLabel": "22a0-stage-150819_185942", "Description": "new description", "DateCreated": "2015-08-19T18:59:17.646Z", "DateUpdated": "2015-08-20T22:53:28.871Z", "SourceBundle": { "S3Bucket": "elasticbeanstalk-us-west-2-0123456789012", "S3Key": "my-app/22a0-stage-150819_185942.war" } } }

O código de exemplo a seguir mostra como usar update-application.

AWS CLI

Para alterar a descrição de um aplicativo

O comando a seguir atualiza a descrição de um aplicativo chamadomy-app:

aws elasticbeanstalk update-application --application-name my-app --description "my Elastic Beanstalk application"

Saída:

{ "Application": { "ApplicationName": "my-app", "Description": "my Elastic Beanstalk application", "Versions": [ "2fba-stage-150819_234450", "bf07-stage-150820_214945", "93f8", "fd7c-stage-150820_000431", "22a0-stage-150819_185942" ], "DateCreated": "2015-08-13T19:15:50.449Z", "ConfigurationTemplates": [], "DateUpdated": "2015-08-20T22:34:56.195Z" } }
  • Para API obter detalhes, consulte UpdateApplicationna Referência de AWS CLI Comandos.

O código de exemplo a seguir mostra como usar update-configuration-template.

AWS CLI

Para atualizar um modelo de configuração

O comando a seguir remove a configuração de métricas de saúde CloudWatch personalizadas configuradas ConfigDocument de um modelo de configuração salvo chamadomy-template:

aws elasticbeanstalk update-configuration-template --template-name my-template --application-name my-app --options-to-remove Namespace=aws:elasticbeanstalk:healthreporting:system,OptionName=ConfigDocument

Saída:

{ "ApplicationName": "my-app", "TemplateName": "my-template", "DateCreated": "2015-08-20T22:39:31Z", "DateUpdated": "2015-08-20T22:43:11Z", "SolutionStackName": "64bit Amazon Linux 2015.03 v2.0.0 running Tomcat 8 Java 8" }

Para obter mais informações sobre namespaces e opções compatíveis, consulte Valores de opção no Guia do desenvolvedor do Elastic AWS Beanstalk.

O código de exemplo a seguir mostra como usar update-environment.

AWS CLI

Para atualizar um ambiente para uma nova versão

O comando a seguir atualiza um ambiente chamado “my-env” para a versão “v2" do aplicativo ao qual ele pertence:

aws elasticbeanstalk update-environment --environment-name my-env --version-label v2

Esse comando exige que o ambiente “my-env” já exista e pertença a um aplicativo que tenha uma versão válida do aplicativo com o rótulo “v2".

Saída:

{ "ApplicationName": "my-app", "EnvironmentName": "my-env", "VersionLabel": "v2", "Status": "Updating", "EnvironmentId": "e-szqipays4h", "EndpointURL": "awseb-e-i-AWSEBLoa-1RDLX6TC9VUAO-0123456789.us-west-2.elb.amazonaws.com", "SolutionStackName": "64bit Amazon Linux running Tomcat 7", "CNAME": "my-env.elasticbeanstalk.com", "Health": "Grey", "Tier": { "Version": " ", "Type": "Standard", "Name": "WebServer" }, "DateUpdated": "2015-02-03T23:12:29.119Z", "DateCreated": "2015-02-03T23:04:54.453Z" }

Para definir uma variável de ambiente

O comando a seguir define o valor da variável "PARAM1" no ambiente “my-env” como "“: ParamValue

aws elasticbeanstalk update-environment --environment-name my-env --option-settings Namespace=aws:elasticbeanstalk:application:environment,OptionName=PARAM1,Value=ParamValue

O option-settings parâmetro usa um namespace além do nome e do valor da variável. O Elastic Beanstalk oferece suporte a vários namespaces para opções, além de variáveis de ambiente.

Para definir as configurações das opções a partir de um arquivo

O comando a seguir configura várias opções no aws:elb:loadbalancer namespace de um arquivo:

aws elasticbeanstalk update-environment --environment-name my-env --option-settings file://options.json

options.jsoné um JSON objeto que define várias configurações:

[ { "Namespace": "aws:elb:healthcheck", "OptionName": "Interval", "Value": "15" }, { "Namespace": "aws:elb:healthcheck", "OptionName": "Timeout", "Value": "8" }, { "Namespace": "aws:elb:healthcheck", "OptionName": "HealthyThreshold", "Value": "2" }, { "Namespace": "aws:elb:healthcheck", "OptionName": "UnhealthyThreshold", "Value": "3" } ]

Saída:

{ "ApplicationName": "my-app", "EnvironmentName": "my-env", "VersionLabel": "7f58-stage-150812_025409", "Status": "Updating", "EnvironmentId": "e-wtp2rpqsej", "EndpointURL": "awseb-e-w-AWSEBLoa-14XB83101Q4L-104QXY80921.sa-east-1.elb.amazonaws.com", "SolutionStackName": "64bit Amazon Linux 2015.03 v2.0.0 running Tomcat 8 Java 8", "CNAME": "my-env.elasticbeanstalk.com", "Health": "Grey", "AbortableOperationInProgress": true, "Tier": { "Version": " ", "Type": "Standard", "Name": "WebServer" }, "DateUpdated": "2015-08-12T18:15:23.804Z", "DateCreated": "2015-08-07T20:48:49.599Z" }

Para obter mais informações sobre namespaces e opções compatíveis, consulte Valores de opção no Guia do desenvolvedor do Elastic AWS Beanstalk.

  • Para API obter detalhes, consulte UpdateEnvironmentna Referência de AWS CLI Comandos.

O código de exemplo a seguir mostra como usar validate-configuration-settings.

AWS CLI

Para validar as configurações

O comando a seguir valida um documento de configuração de métricas CloudWatch personalizadas:

aws elasticbeanstalk validate-configuration-settings --application-name my-app --environment-name my-env --option-settings file://options.json

options.jsoné um JSON documento que inclui uma ou mais definições de configuração para validar:

[ { "Namespace": "aws:elasticbeanstalk:healthreporting:system", "OptionName": "ConfigDocument", "Value": "{\"CloudWatchMetrics\": {\"Environment\": {\"ApplicationLatencyP99.9\": null,\"InstancesSevere\": 60,\"ApplicationLatencyP90\": 60,\"ApplicationLatencyP99\": null,\"ApplicationLatencyP95\": 60,\"InstancesUnknown\": 60,\"ApplicationLatencyP85\": 60,\"InstancesInfo\": null,\"ApplicationRequests2xx\": null,\"InstancesDegraded\": null,\"InstancesWarning\": 60,\"ApplicationLatencyP50\": 60,\"ApplicationRequestsTotal\": null,\"InstancesNoData\": null,\"InstancesPending\": 60,\"ApplicationLatencyP10\": null,\"ApplicationRequests5xx\": null,\"ApplicationLatencyP75\": null,\"InstancesOk\": 60,\"ApplicationRequests3xx\": null,\"ApplicationRequests4xx\": null},\"Instance\": {\"ApplicationLatencyP99.9\": null,\"ApplicationLatencyP90\": 60,\"ApplicationLatencyP99\": null,\"ApplicationLatencyP95\": null,\"ApplicationLatencyP85\": null,\"CPUUser\": 60,\"ApplicationRequests2xx\": null,\"CPUIdle\": null,\"ApplicationLatencyP50\": null,\"ApplicationRequestsTotal\": 60,\"RootFilesystemUtil\": null,\"LoadAverage1min\": null,\"CPUIrq\": null,\"CPUNice\": 60,\"CPUIowait\": 60,\"ApplicationLatencyP10\": null,\"LoadAverage5min\": null,\"ApplicationRequests5xx\": null,\"ApplicationLatencyP75\": 60,\"CPUSystem\": 60,\"ApplicationRequests3xx\": 60,\"ApplicationRequests4xx\": null,\"InstanceHealth\": null,\"CPUSoftirq\": 60}},\"Version\": 1}" } ]

Se as opções que você especificar forem válidas para o ambiente especificado, o Elastic Beanstalk retornará uma matriz de mensagens vazia:

{ "Messages": [] }

Se a validação falhar, a resposta incluirá informações sobre o erro:

{ "Messages": [ { "OptionName": "ConfigDocumet", "Message": "Invalid option specification (Namespace: 'aws:elasticbeanstalk:healthreporting:system', OptionName: 'ConfigDocumet'): Unknown configuration setting.", "Namespace": "aws:elasticbeanstalk:healthreporting:system", "Severity": "error" } ] }

Para obter mais informações sobre namespaces e opções compatíveis, consulte Valores de opção no Guia do desenvolvedor do Elastic AWS Beanstalk.