本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。
环境清单 (env.yaml)
您可以在应用程序源包的根目录中包含一个 YAML 格式的环境清单,以配置在创建环境时使用的环境名称、解决方案堆栈和环境链接。
此文件格式包含对环境组的支持。要使用组,请在清单中指定环境名称并在末尾添加一个 + 号。创建或更新环境时,请使用 --group-name (Amazon CLI) 或 --env-group-suffix (EB CLI) 指定组名称。有关组的更多信息,请参阅创建和更新 Elastic Beanstalk 环境组。
以下示例清单定义一个 Web 服务器环境,并包含一个指向它依赖的工作线程环境组件的链接。此清单使用组以允许使用相同的源包创建多个环境:
~/myapp/frontend/env.yaml
AWSConfigurationTemplateVersion: 1.1.0.0
SolutionStack: 64bit Amazon Linux 2015.09 v2.0.6 running Multi-container Docker 1.7.1 (Generic)
OptionSettings:
  aws:elasticbeanstalk:command:
    BatchSize: '30'
    BatchSizeType: Percentage
  aws:elasticbeanstalk:sns:topics:
    Notification Endpoint: me@example.com
  aws:elb:policies:
    ConnectionDrainingEnabled: true
    ConnectionDrainingTimeout: '20'
  aws:elb:loadbalancer:
    CrossZone: true
  aws:elasticbeanstalk:environment:
    ServiceRole: aws-elasticbeanstalk-service-role
  aws:elasticbeanstalk:application:
    Application Healthcheck URL: /
  aws:elasticbeanstalk:healthreporting:system:
    SystemType: enhanced
  aws:autoscaling:launchconfiguration:
    IamInstanceProfile: aws-elasticbeanstalk-ec2-role
    InstanceType: t2.micro
    EC2KeyName: workstation-uswest2
  aws:autoscaling:updatepolicy:rollingupdate:
    RollingUpdateType: Health
    RollingUpdateEnabled: true
Tags:
  Cost Center: WebApp Dev
CName: front-A08G28LG+
EnvironmentName: front+
EnvironmentLinks:
  "WORKERQUEUE" : "worker+"支持以下键。
- 
      
AWSConfigurationTemplateVersion(必填)-配置模板版本 (1.1.0.0)。
AWSConfigurationTemplateVersion: 1.1.0.0 - 
      
Platform – 环境的平台版本的 Amazon 资源名称 (ARN)。您可以按 ARN 或解决方案堆栈名称指定平台。
Platform: PlatformArn:arn:aws:elasticbeanstalk:us-east-2::platform/Java 8 running on 64bit Amazon Linux/2.5.0 - 
      
SolutionStack— 用于创建环境的解决方案堆栈的全名。
SolutionStack:64bit Amazon Linux 2017.03 v2.5.0 running Java 8 - 
      
OptionSettings— 要应用于环境的配置选项设置。例如,下面的条目将实例类型设为 t2.micro。
OptionSettings: aws:autoscaling:launchconfiguration: InstanceType: t2.micro - 
      
Tags - 多达 47 个标签,应用于在环境中创建的资源。
Tags: Cost Center: WebApp Dev - 
      
EnvironmentTier— 要创建的环境类型。对于 Web 服务器环境,您可不包含此部分 (Web 服务器为默认值)。对于工作线程环境,请使用以下设置。
EnvironmentTier: Name: Worker Type: SQS/HTTP - 
      
CName— 环境的别名记录。在名称末尾包含一个 + 号以启用组。
CName:front-A08G28LG+ - 
      
EnvironmentName-要创建的环境的名称。在名称末尾包含一个 + 号以启用组。
EnvironmentName:front+如果启用组,则在创建环境时必须指定组名称。Elastic Beanstalk 使用连字符将组名称追加到环境名称。例如,对于环境名称
front+和组名称dev,Elastic Beanstalk 会创建名为front-dev的环境。 - 
      
EnvironmentLinks— 变量名和依赖关系环境名称的映射。下面的示例使
worker+环境成为依赖项并告知 Elastic Beanstalk 将链接信息保存到名为WORKERQUEUE的变量。EnvironmentLinks: "WORKERQUEUE" : "worker+"链接变量的值因被链接环境的类型而异。对于 Web 服务器环境,链接为环境的别名记录。对于工作线程环境,链接为环境的 Amazon Simple Queue Service (Amazon SQS) 队列的名称。
 
CName、EnvironmentName和EnvironmentLinks密钥可用于创建环境组和指向其他环境的链接。当前,使用 EB CLI Amazon CLI 或 SDK 时支持这些功能。