AWS Elastic Beanstalk
开发人员指南
AWS 文档中描述的 AWS 服务或功能可能因区域而异。要查看适用于中国区域的差异,请参阅中国的 AWS 服务入门

面向所有环境的常规选项

aws:autoscaling:asg

配置您的环境的 Auto Scaling 组。

命名空间: aws:autoscaling:asg

名称 描述 默认值 有效值

Availability Zones

可用区 (AZ) 是区域中的不同位置,用于隔离其他可用区内的故障,同一区域中的可用区之间可以进行低成本、低延迟的网络连接。选择实例的可用区数量。

Any

Any

Any 1

Any 2

Any 3

Cooldown

冷却时间有助于防止 Amazon EC2 Auto Scaling 在先前活动产生明显影响前启动其他扩展活动。

360

010000

Custom Availability Zones

定义实例的可用区。

us-east-1a

us-east-1b

us-east-1c

us-east-1d

us-east-1e

eu-central-1

MinSize

您需要 Auto Scaling 组包含的实例的最小数量。

1

110000

MaxSize

您需要 Auto Scaling 组包含的实例的最大数量。

4

110000

aws:autoscaling:launchconfiguration

配置您的环境的 EC2 实例。

命名空间: aws:autoscaling:launchconfiguration

名称 描述 默认值 有效值

EC2KeyName

使用密钥对,您可以安全地登录到 EC2 实例。

IamInstanceProfile

实例配置文件可让 AWS Identity and Access Management (IAM) 用户和 AWS 服务访问临时安全凭证,以进行 AWS API 调用。指定实例配置文件的名称或其 ARN。

示例:

  • aws-elasticbeanstalk-ec2-role

  • arn:aws-cn:iam::123456789012:instance-profile/aws-elasticbeanstalk-ec2-role

实例配置文件名称或 ARN

ImageId

通过指定自定义 AMI ID,您可以覆盖默认的Amazon 系统映像 (AMI)。

示例:ami-1f316660

InstanceType

用于在 Elastic Beanstalk 环境中运行您的应用程序的实例类型。

可用实例类型取决于平台、解决方案堆栈 (配置) 和区域。要获取所选解决方案堆栈的可用实例类型的列表,请使用 API 中的 DescribeConfigurationOptions 操作、AWS CLI 中的 describe-configuration-options 命令。

例如,以下命令列出对当前区域的 1.4.3 版的 PHP 5.6 堆栈可用的实例类型:

$ aws elasticbeanstalk describe-configuration-options --options Namespace=aws:autoscaling:launchconfiguration,OptionName=InstanceType --solution-stack-name "64bit Amazon Linux 2015.03 v1.4.3 running PHP 5.6"

与区域有关

MonitoringInterval

您希望的 Amazon CloudWatch 指标返回时间间隔。

5 minute

1 minute

5 minute

SecurityGroups

列出分配给 Auto Scaling 组中的 EC2 实例的 Amazon EC2 安全组,以便为这些实例定义防火墙规则。

您可以提供用逗号分隔的值的单个字符串,该值包含现有 Amazon EC2 安全组的名称或对在模板中创建的 AWS::EC2::SecurityGroup 资源的引用的名称。安全组名称区分大小写。

如果您将 Amazon Virtual Private Cloud (Amazon VPC) 与 Elastic Beanstalk 结合使用,以便在 Virtual Private Cloud (VPC) 中启动实例,则请指定安全组 ID 而不是安全组名称。

elasticbeanstalk-default

SSHSourceRestriction

用于锁定 SSH 对环境的访问权限。例如,您可以锁定 SSH 对 EC2 实例的访问权限,以便只有堡垒主机才能访问私有子网中的实例。

该字符串采用以下形式:

protocol, fromPort, toPort, source_restriction

protocol

入口流量规则的协议。

fromPort

起始端口号。

toPort

结尾端口号。

source_restriction

允许来自其中的流量的安全组的 CIDR 范围或名称。要从另一账户(仅限 EC2-Classic,必须位于相同区域中)中指定安全组,请在安全组名称前包含账户 ID(例如,other_account_id/security_group_name)。如果您将 Amazon Virtual Private Cloud (Amazon VPC) 与 Elastic Beanstalk 结合使用,以便在 Virtual Private Cloud (VPC) 中启动实例,则请指定安全组 ID 而不是安全组名称。

示例:tcp, 22, 22, 54.240.196.185/32

示例:tcp, 22, 22, my-security-group

示例 (EC2-Classic):tcp, 22, 22, 123456789012/their-security-group

示例 (VPC):tcp, 22, 22, sg-903004f8

BlockDeviceMappings

在 Auto Scaling 组中的所有实例上附加其他 Amazon EBS 卷或实例存储卷。

映射实例存储卷时,只会将设备名称映射到卷名称;而映射 Amazon EBS 卷时,您可以指定以下字段 (以冒号隔开):

  • 快照 ID

  • 大小 (GB)

  • 终止时删除 (truefalse)

  • 存储类型 (gp2standardst1sc1io1)

  • IOPS (仅限 io1 卷)。

下面的示例附加三个 Amazon EBS 卷:一个空白 100GB gp2 卷和一个快照、一个具有 2000 个预配置 IOPS 的空白 20GB io1 卷以及一个实例存储卷 ephemeral0。如果实例类型支持,则可以附加多个实例存储卷。

/dev/sdj=:100:true:gp2,/dev/sdh=snap-51eef269,/dev/sdi=:20:true:io1:2000,/dev/sdb=ephemeral0

RootVolumeType

要用于已附加到环境的 EC2 实例的根 Amazon EBS 卷的卷类型(机械硬盘、通用型 SSD 或预配置的 IOPS SSD)。

因平台而异。

对于机械硬盘存储,为 standard

对于通用型 SSD,为 gp2

对于预配置的 IOPS SSD,为 io1

RootVolumeSize

根 Amazon EBS 卷的存储容量 (以完整 GB 为单位)。

如果将 RootVolumeType 设置为预配置的 IOPS SSD,则是必需的。

例如:"64"

对于机械硬盘存储和通用型 SSD,因平台而异。对于预配置的 IOPS SSD,为“无”。

对于通用型和预配置的 IOPS SSD,为 1016384 GB。

对于机械硬盘存储,为 81024 GB。

RootVolumeIOPS

预配置的 IOPS SSD 根卷所需的每秒输入/输出操作数 (IOPS)。

IOPS 与卷大小的最大比率为 30:1。例如,具有 3000 个 IOPS 的卷至少必须为 100 GB。

10020000

aws:autoscaling:scheduledaction

为您的环境的 Auto Scaling 组配置计划的操作。对于每个操作,除了指定选项名称、命名空间和每个设置的值之外,还要指定 resource_name。有关示例,请参阅 aws:autoscaling:scheduledaction 命名空间

命名空间: aws:autoscaling:scheduledaction

名称 描述 默认值 有效值

StartTime

对于一次性操作,请选择运行操作的日期和时间。对于重复操作,请选择激活操作的时间。

跨所有计划的扩展操作的唯一 ISO-8601 时间戳

EndTime

您希望计划的扩展操作停止重复的将来日期和时间 (采用 UTC/GMT 时区)。如果不指定 EndTime,操作将根据 Recurrence 表达式重复发生。

示例:2015-04-28T04:07:2Z

当计划的操作结束时,Amazon EC2 Auto Scaling 不会自动恢复为其以前的设置。配置第二个计划操作,以根据需要返回原始设置。

跨所有计划的扩展操作的唯一 ISO-8601 时间戳

MaxSize

运行操作时要应用的最大实例计数。

010000

MinSize

运行操作时要应用的最小实例计数。

010000

DesiredCapacity

设置 Auto Scaling 组的初始所需容量。在应用计划的操作后,触发器将根据其设置调整所需容量。

010000

Recurrence

您希望计划操作发生的频率。如果不指定循环,则扩展操作将只发生一次,如 StartTime 所指定。

Cron 表达式。

Suspend

设置为 true 可临时停用重复的计划操作。

false

true

false

aws:autoscaling:trigger

为您的环境的 Auto Scaling 组配置扩展触发。

命名空间: aws:autoscaling:trigger

名称 描述 默认值 有效值

BreachDuration

触发器触发前,指标可以超出所定义限制 (如 UpperThresholdLowerThreshold 所指定) 的时间 (以分钟为单位)。

5

1600

LowerBreachScaleIncrement

执行扩展活动时要移除的 Amazon EC2 实例的数量。

-1

LowerThreshold

如果测量值低于该违例持续时间值,则会激活触发。

2000000

020000000

MeasureName

用于您的 Auto Scaling 触发器的指标。

NetworkOut

CPUUtilization

NetworkIn

NetworkOut

DiskWriteOps

DiskReadBytes

DiskReadOps

DiskWriteBytes

Latency

RequestCount

HealthyHostCount

UnhealthyHostCount

TargetResponseTime

Period

指定 Amazon CloudWatch 测量触发指标的频率。此值是两个连续时间段之间的分钟数。

5

1600

EvaluationPeriods

用于确定是否违例的连续评估期的数量。

1

1600

Statistic

触发器应使用的统计数据,例如 Average

Average

Minimum

Maximum

Sum

Average

Unit

触发器度量单位,例如 Bytes

Bytes

Seconds

Percent

Bytes

Bits

Count

Bytes/Second

Bits/Second

Count/Second

None

UpperBreachScaleIncrement

执行扩展活动时要添加的 Amazon EC2 实例的数量。

1

UpperThreshold

如果测量值高于该违例持续时间值,则会激活触发。

6000000

020000000

aws:autoscaling:updatepolicy:rollingupdate

为您的环境的 Auto Scaling 组配置滚动更新。

命名空间: aws:autoscaling:updatepolicy:rollingupdate

名称 描述 默认值 有效值

MaxBatchSize

滚动更新的每个批次中包含的实例数。

Auto Scaling 组的最小大小的三分之一(舍入到下一个最大整数).

110000

MinInstancesInService

终止其他实例时,Auto Scaling 组中必须处于运行中的最小实例数。

Auto Scaling 组的最小大小,或 Auto Scaling 组的最大大小减一 (取二者中的较小者)。

09999

RollingUpdateEnabled

如果为 true,则为环境启用滚动更新。在您需要对 Elastic Beanstalk 软件应用程序进行频繁的少量更新,并且希望避免应用程序停机时,滚动更新很有用。

将此值设置为 true 会自动启用 MaxBatchSizeMinInstancesInServicePauseTime 选项。设置这些选项中的任何选项也会自动将 RollingUpdateEnabled 选项值设置为 true。将此选项设置为 false 会禁用滚动更新。

false

true

false

RollingUpdateType

基于时间的滚动更新将在批次之间应用 PauseTime。基于运行状况的滚动更新会等新实例通过运行状况检查后再继续下一个批次。不可变更新将启动新 AutoScaling 组中的一整组实例。

Time

Time

Health

Immutable

PauseTime

Elastic Beanstalk 服务在完成一批实例的更新之后到开始下一批实例的更新之前将要等待的时长。

基于实例类型和容器自动计算.

PT0S* (0 秒) 至 PT1H (1 小时)

Timeout

在取消更新之前,等待一个实例批次中的所有实例通过运行状况检查的最长时间。

PT30M (30 分钟)

PT5M* (5 分钟) 至 PT1H (1 小时)

*ISO8601 持续时间格式:PT#H#M#S,其中每个 # 分别代表小时数、分钟数和/或秒数。

aws:ec2:vpc

配置您的环境以便在自定义 Amazon Virtual Private Cloud (Amazon VPC) 中启动资源。如果您不在此命名空间中配置设置,Elastic Beanstalk 将会在默认 VPC 中启动资源。

命名空间: aws:ec2:vpc

名称 描述 默认值 有效值

VPCId

您的 Amazon VPC 的 ID。

Subnets

一个或多个 Auto Scaling 组子网的 ID。如果您有多个子网,请将此值指定为子网 ID 的单个逗号分隔字符串 (例如,"subnet-11111111,subnet-22222222")。

ELBSubnets

Elastic Load Balancer 的一个或多个子网的 ID。如果您有多个子网,请将此值指定为子网 ID 的单个逗号分隔字符串 (例如,"subnet-11111111,subnet-22222222")。

ELBScheme

如果您要在 Amazon VPC 内创建一个内部负载均衡器,请指定 internal,从而确保无法从 Amazon VPC 外部访问您的 Elastic Beanstalk 应用程序。

internal

DBSubnets

包含数据库子网的 ID。这仅可用于以下情况:需要将 Amazon RDS 数据库实例添加到应用程序中。 如果您有多个子网,请将此值指定为子网 ID 的单个逗号分隔字符串 (例如,"subnet-11111111,subnet-22222222")。

AssociatePublicIpAddress

指定是否在您的 Amazon VPC 中启动具有公有 IP 地址的实例。具有公有 IP 地址的实例无需 NAT 设备与 Internet 通信。如果要在单个公有子网中包含您的负载均衡器和实例,则必须将值设置为 true

true

false

aws:elasticbeanstalk:application

为您的应用程序配置运行状况检查路径。有关更多信息,请参阅 基本运行状况报告

命名空间: aws:elasticbeanstalk:application

名称 描述 默认值 有效值

Application Healthcheck URL

要将运行状况检查请求发送到的路径。如果未设置,负载均衡器会尝试在端口 80 上进行 TCP 连接以验证运行状况。设置为以 / 开头的路径可将 HTTP GET 请求发送到该路径。您还可以在该路径前面包含协议 (HTTP、HTTPS、TCP 或 SSL) 和端口以检查 HTTPS 连接性或使用非默认端口。

/ (HTTP GET to root path)

/health

HTTPS:443/

HTTPS:443/health

EB CLI 和 Elastic Beanstalk 控制台控制台会对前面的选项应用建议的值。如果您需要使用配置文件来配置相同的项,则必须删除这些设置。有关更多信息,请参阅 建议值

aws:elasticbeanstalk:application:environment

为您的应用程序配置环境属性。

命名空间: aws:elasticbeanstalk:application:environment

名称 描述 默认值 有效值

任意环境变量名称。

传入密钥-值对。

任意环境变量值。

参阅 环境属性和其他软件设置 了解更多信息。

aws:elasticbeanstalk:cloudwatch:logs

为应用程序配置实例日志流式传输。

命名空间: aws:elasticbeanstalk:cloudwatch:logs

名称 描述 默认值 有效值

StreamLogs

是否在 CloudWatch Logs 中为代理和部署日志创建组以及从环境中的每个实例流式传输日志。

false

true

false

DeleteOnTerminate

是否在环境终止时删除日志组。如果为 false,则日志保留 RetentionInDays 天。

false

true

false

RetentionInDays

日志事件在到期前保留的天数。

7

1、3、5、7、14、30、60、90、120、150、180、365、400、545、731、1827、3653

aws:elasticbeanstalk:cloudwatch:logs:health

为应用程序配置环境运行状况日志流式传输。

命名空间: aws:elasticbeanstalk:cloudwatch:logs:health

名称 描述 默认值 有效值

HealthStreamingEnabled

对于启用了增强型运行状况报告的环境,是否在 CloudWatch Logs 中为环境运行状况创建组并存档 Elastic Beanstalk 环境运行状况数据。有关启用增强型运行状况的信息,请参阅 aws:elasticbeanstalk:healthreporting:system

false

true

false

DeleteOnTerminate

是否在终止环境后删除日志组。如果为 false,则运行状况数据将保留 RetentionInDays 天。

false

true

false

RetentionInDays

在存档的运行状况数据过期前要保留其的天数。

7

1、3、5、7、14、30、60、90、120、150、180、365、400、545、731、1827、3653

aws:elasticbeanstalk:command

为您的应用程序代码配置滚动部署。

命名空间: aws:elasticbeanstalk:command

名称 描述 默认值 有效值

DeploymentPolicy

选择应用程序版本部署的部署策略

AllAtOnce

AllAtOnce

Rolling

RollingWithAdditionalBatch

Immutable

Timeout

等待实例完成命令执行的秒数。

"600"

"1""3600"

BatchSizeType

BatchSize 中指定的数字的类型。

Percentage

Percentage

Fixed

BatchSize

Auto Scaling 组中要同时执行部署的 Amazon EC2 实例的百分比或固定数量。有效值因 BatchSizeType 设置而异。

100

1100 (Percentage).

1aws:autoscaling:asg::MaxSize (Fixed)

IgnoreHealthCheck

不要由于运行状况检查失败而取消部署。

false

true

false

aws:elasticbeanstalk:environment

配置您的环境的架构和服务角色。

命名空间: aws:elasticbeanstalk:environment

名称 描述 默认值 有效值

EnvironmentType

设置为 SingleInstance 可启动一个 EC2 实例而无需负载均衡器。

LoadBalanced

SingleInstance

LoadBalanced

ServiceRole

一个 IAM 角色的名称,该角色供 Elastic Beanstalk 用来管理环境的资源。指定角色名称(可以选择添加自定义路径作为前缀)或其 ARN。

示例:

  • aws-elasticbeanstalk-service-role

  • custom-path/custom-role

  • arn:aws-cn:iam::123456789012:role/aws-elasticbeanstalk-service-role

IAM 角色名称、路径/名称或 ARN

LoadBalancerType

用于环境的负载均衡器的类型。

classic

classic

application

network

aws:elasticbeanstalk:environment:process:default

配置您的环境的默认过程。

命名空间: aws:elasticbeanstalk:environment:process:default

名称 描述 默认值 有效值

DeregistrationDelay

取消注册前等待活动请求完成的时间 (秒)。

20

03600

HealthCheckInterval

Elastic Load Balancing 将检查应用程序的 Amazon EC2 实例的运行状况的时间间隔 (秒)。

使用 Classic 或应用程序负载均衡器:15

使用网络负载均衡器:30

使用 Classic 或应用程序负载均衡器:5300

使用网络负载均衡器:1030

HealthCheckPath

将用于运行状况检查的 HTTP 请求发送到的路径。

/

可路由路径。

HealthCheckTimeout

在运行状况检查期间等待响应的时间 (秒)。

此选项仅适用于使用传统负载均衡器或应用程序负载均衡器的环境。

5

160

HealthyThresholdCount

在 Elastic Load Balancing 更改实例运行状况之前连续成功的请求。

使用 Classic 或应用程序负载均衡器:3

使用网络负载均衡器:5

210

MatcherHTTPCode

指示实例正常的 HTTP 代码 (以逗号分隔) 的列表。

200

200399

Port

进程侦听的端口。

80

165535

Protocol

过程使用的协议。

使用应用程序负载均衡器时,您只能将此选项设置为 HTTPHTTPS

使用网络负载均衡器时,您只能将此选项设置为 TCP

使用 Classic 或应用程序负载均衡器:HTTP

使用网络负载均衡器:TCP

TCP

HTTP

HTTPS

StickinessEnabled

设置为 true 可启用粘性会话。

此选项仅适用于使用传统负载均衡器或应用程序负载均衡器的环境。

'false'

'false'

'true'

StickinessLBCookieDuration

粘性会话 Cookie 的生存期,以秒为单位。

此选项仅适用于使用传统负载均衡器或应用程序负载均衡器的环境。

86400 (一天)

1604800

StickinessType

设置为 lb_cookie 可以为粘性会话使用 Cookie。

此选项仅适用于使用传统负载均衡器或应用程序负载均衡器的环境。

lb_cookie

lb_cookie

UnhealthyThresholdCount

在 Elastic Load Balancing 更改实例运行状况之前连续不成功的请求。

5

210

aws:elasticbeanstalk:environment:process:process_name

配置您的环境的其他过程。

命名空间: aws:elasticbeanstalk:environment:process:process_name

名称 描述 默认值 有效值

DeregistrationDelay

取消注册前等待活动请求完成的时间 (秒)。

20

03600

HealthCheckInterval

Elastic Load Balancing 将检查应用程序的 Amazon EC2 实例的运行状况的时间间隔 (秒)。

使用 Classic 或应用程序负载均衡器:15

使用网络负载均衡器:30

使用 Classic 或应用程序负载均衡器:5300

使用网络负载均衡器:1030

HealthCheckPath

将用于运行状况检查的 HTTP 请求发送到的路径。

/

可路由路径。

HealthCheckTimeout

在运行状况检查期间等待响应的时间 (秒)。

此选项仅适用于使用传统负载均衡器或应用程序负载均衡器的环境。

5

160

HealthyThresholdCount

在 Elastic Load Balancing 更改实例运行状况之前连续成功的请求。

使用 Classic 或应用程序负载均衡器:3

使用网络负载均衡器:5

210

MatcherHTTPCode

指示实例正常的 HTTP 代码 (以逗号分隔) 的列表。

200

200399

Port

进程侦听的端口。

80

165535

Protocol

过程使用的协议。

使用应用程序负载均衡器时,您只能将此选项设置为 HTTPHTTPS

使用网络负载均衡器时,您只能将此选项设置为 TCP

使用 Classic 或应用程序负载均衡器:HTTP

使用网络负载均衡器:TCP

TCP

HTTP

HTTPS

StickinessEnabled

设置为 true 可启用粘性会话。

此选项仅适用于使用传统负载均衡器或应用程序负载均衡器的环境。

'false'

'false'

'true'

StickinessLBCookieDuration

粘性会话 Cookie 的生存期,以秒为单位。

此选项仅适用于使用传统负载均衡器或应用程序负载均衡器的环境。

86400 (一天)

1604800

StickinessType

设置为 lb_cookie 可以为粘性会话使用 Cookie。

此选项仅适用于使用传统负载均衡器或应用程序负载均衡器的环境。

lb_cookie

lb_cookie

UnhealthyThresholdCount

在 Elastic Load Balancing 更改实例运行状况之前连续不成功的请求。

5

210

aws:elasticbeanstalk:healthreporting:system

为您的环境配置增强型运行状况报告。

命名空间: aws:elasticbeanstalk:healthreporting:system

名称 描述 默认值 有效值

SystemType

运行状况报告系统(基本增强)。增强型运行状况报告需要一个服务角色和一个版本 2 或更高的平台版本

basic

basic

enhanced

ConfigDocument 描述要发布到 CloudWatch 的环境和实例指标的 JSON 文档。

HealthCheckSuccessThreshold

降低阈值以便实例能够通过运行状况检查。

Ok

Ok

Warning

Degraded

Severe

aws:elasticbeanstalk:hostmanager

在环境中配置 EC2 实例以将轮换日志上传到 Amazon S3。

命名空间: aws:elasticbeanstalk:hostmanager

名称 描述 默认值 有效值

LogPublicationControl

将应用程序的 Amazon EC2 实例日志文件复制到与应用程序相关联的 Amazon S3 存储桶。

false

true

false

aws:elasticbeanstalk:managedactions

为您的环境配置托管平台更新。

命名空间: aws:elasticbeanstalk:managedactions

名称 描述 默认值 有效值

ManagedActionsEnabled

启用托管平台更新

在将此项设置为 true 时,还必须指定 PreferredStartTimeUpdateLevel

true

true

false

PreferredStartTime

配置托管操作的维护时段 (采用 UTC 表示)。

例如:"Tue:09:00"

采用

day:hour:minute

格式的日期和时间。

aws:elasticbeanstalk:managedactions:platformupdate

为您的环境配置托管平台更新。

命名空间: aws:elasticbeanstalk:managedactions:platformupdate

名称 描述 默认值 有效值

UpdateLevel

要通过托管平台更新应用的最高级别的更新。平台版本的格式为 major.minor.patch。例如,在 2.0.8 中,主版本为 2,次版本为 0,修补版本为 8。

patch 仅适用于修补版本更新。

minor 适用于次版本更新和修补版本更新。

InstanceRefreshEnabled

启用每周实例替换。

需要将 ManagedActionsEnabled 设置为 true

false

true

false

aws:elasticbeanstalk:monitoring

配置您的环境以终止运行状况检查失败的 EC2 实例。

命名空间: aws:elasticbeanstalk:monitoring

名称 描述 默认值 有效值

Automatically Terminate Unhealthy Instances

如果实例无法通过运行状况检查,请将其终止。

注意

此选项仅在早期环境上受支持。它根据能够达到实例的运行状况及其他基于实例的指标确定了实例的运行状况。

Elastic Beanstalk 不提供根据应用程序运行状况自动终止实例的方法。

true

true

false

aws:elasticbeanstalk:sns:topics

为您的环境配置通知。

命名空间: aws:elasticbeanstalk:sns:topics

名称 描述 默认值 有效值

Notification Endpoint

在该终端节点处,系统会通知您对应用程序产生影响的重要事件。

Notification Protocol

用于向您的终端节点发送通知的协议。

email

http

https

email

email-json

sqs

Notification Topic ARN

您订阅主题的Amazon 资源名称。

Notification Topic Name

已订阅主题的名称。

aws:elasticbeanstalk:sqsd

为工作线程环境配置 Amazon SQS 队列。

命名空间: aws:elasticbeanstalk:sqsd

名称 描述 默认值 有效值

WorkerQueueURL

队列的 URL,工作线程环境层中的守护程序从该队列读取消息

自动生成

如果您不指定值,则 Elastic Beanstalk 会自动创建队列。

HttpPath

将 HTTP POST 消息发送到的应用程序的相对路径

/

MimeType

HTTP POST 请求中发送的消息的 MIME 类型

application/json

application/json

application/x-www-form-urlencoded

application/xml

text/plain

自定义 MIME 类型。

HttpConnections

与 Amazon EC2 实例中任何应用程序之间的最大并发连接数

50

1100

ConnectTimeout

等待成功连接到应用程序的时长 (以秒为单位)

5

160

InactivityTimeout

在与应用程序的现有连接上等待响应的时长 (以秒为单位)

消息会重新处理,直到守护程序从工作线程环境层中的应用程序收到 200 OK 响应或 RetentionPeriod 过期。

299

136000

VisibilityTimeout

锁定来自 Amazon SQS 队列的入站消息以进行处理的时长 (以秒为单位)。在配置的时长之后,再次使消息在队列中可见,以供任何其他守护程序读取。

300

043200

ErrorVisibilityTimeout

在处理尝试由于显式错误而失败后,Elastic Beanstalk 将消息返回到 Amazon SQS 队列之前经过的时长(以秒为单位)。

2

043200

RetentionPeriod

消息有效和等待主动处理的时长 (以秒为单位)

345600

601209600

MaxRetries

Elastic Beanstalk 在将消息移动到死信队列之前,尝试向处理消息的 Web 应用程序发送消息的最大尝试次数。

10

1100

aws:elb:healthcheck

为传统负载均衡器配置运行状况检查。

命名空间: aws:elb:healthcheck

名称 描述 默认值 有效值

HealthyThreshold

在 Elastic Load Balancing 更改实例运行状况之前连续成功的请求。

3

210

Interval

Elastic Load Balancing 将检查应用程序的 Amazon EC2 实例的运行状况的时间间隔。

10

5300

Timeout

Elastic Load Balancing 在将实例视为无响应之前等待响应的秒数。

5

260

UnhealthyThreshold

在 Elastic Load Balancing 更改实例运行状况之前连续不成功的请求。

5

210

(已弃用)Target

要将运行状况检查发送到的后端实例上的目标。请改为在 aws:elasticbeanstalk:application 命名空间中使用 Application Healthcheck URL

TCP:80

采用格式 PROTOCOL:PORT/PATH 的目标

aws:elb:loadbalancer

配置您的环境的传统负载均衡器。

此命名空间中若干选项已弃用,以支持 aws:elb:listener 命名空间中特定于侦听器的选项。淘汰的选项仅可让您在标准端口上配置两个侦听器 (一个安全一个不安全)。

命名空间: aws:elb:loadbalancer

名称 描述 默认值 有效值

CrossZone

将负载均衡器配置为在所有可用区中的所有实例间 (而不是仅在每个区域中) 均匀地路由流量。

false

true

false

SecurityGroups

将您创建的一个或多个安全组分配到负载均衡器。

一个或多个安全组 ID。

ManagedSecurityGroup

将现有安全组分配给环境的负载均衡器,而不是创建一个新安全组。要使用此设置,请更新此命名空间中的 SecurityGroups 设置以包括安全组的 ID,并删除自动创建的安全组 ID (如果存在)。

为了允许从负载均衡器到环境的 EC2 实例的流量,Elastic Beanstalk 会向实例的安全组添加一个规则,允许来自托管安全组的入站流量。

安全组 ID。

(已弃用)LoadBalancerHTTPPort

不安全的监听器要监听的端口。

80

OFF

80

(已弃用)LoadBalancerPortProtocol

在不安全的监听器上使用的协议。

HTTP

HTTP

TCP

(已弃用)LoadBalancerHTTPSPort

安全的监听器要监听的端口。

OFF

OFF

443

8443

(已弃用)LoadBalancerSSLPortProtocol

在安全的监听器上使用的协议。

HTTPS

HTTPS

SSL

(已弃用)SSLCertificateId

要绑定到安全的侦听器的 SSL 证书的 ARN。

aws:elb:listener

在传统负载均衡器上配置默认侦听器 (端口 80)。

命名空间: aws:elb:listener

名称 描述 默认值 有效值
ListenerProtocol 侦听器使用的协议。 HTTP HTTP TCP
InstancePort 此侦听器用于与 EC2 实例通信的端口。 80 165535
InstanceProtocol

此侦听器用于与 EC2 实例通信的协议。

它必须位于与 ListenerProtocol 相同的 Internet 协议层中。其安全级别也必须与使用与该侦听器相同的 InstancePort 的任何其他侦听器相同。

例如,如果 ListenerProtocolHTTPS (应用程序层,使用安全连接),您可以将 InstanceProtocol 设置为 HTTP (也位于应用程序层,使用不安全的连接)。此外,如果将 InstancePort 设置为 80,您必须在将 InstanceProtocol 设置为 HTTP 的所有其他侦听器中将 InstancePort 设置为 80

HTTP (当 ListenerProtocolHTTP 时)

TCP (当 ListenerProtocolTCP 时)

HTTPHTTPSListenerProtocolHTTPHTTPS

TCPSSLListenerProtocolTCPSSL

PolicyNames 应用于该侦听器的端口的策略名称的逗号分隔列表。我们建议您改用 aws:elb:policies 命名空间的 LoadBalancerPorts 选项。
ListenerEnabled 指定是否启用该侦听器。如果指定 false,则该侦听器不包含在负载均衡器中。 true

true

false

aws:elb:listener:listener_port

在传统负载均衡器上配置更多侦听器。

命名空间: aws:elb:listener:listener_port

名称 描述 默认值 有效值

ListenerProtocol

侦听器使用的协议。 HTTP HTTP HTTPS TCP SSL

InstancePort

此侦听器用于与 EC2 实例通信的端口。 listener_port 相同。 165535

InstanceProtocol

此侦听器用于与 EC2 实例通信的协议。

它必须位于与 ListenerProtocol 相同的 Internet 协议层中。其安全级别也必须与使用与该侦听器相同的 InstancePort 的任何其他侦听器相同。

例如,如果 ListenerProtocolHTTPS (应用程序层,使用安全连接),您可以将 InstanceProtocol 设置为 HTTP (也位于应用程序层,使用不安全的连接)。此外,如果将 InstancePort 设置为 80,您必须在将 InstanceProtocol 设置为 HTTP 的所有其他侦听器中将 InstancePort 设置为 80

HTTPListenerProtocolHTTPHTTPS

TCPListenerProtocolTCPSSL

HTTPHTTPSListenerProtocolHTTPHTTPS

TCPSSLListenerProtocolTCPSSL

PolicyNames

应用于该侦听器的端口的策略名称的逗号分隔列表。我们建议您改用 aws:elb:policies 命名空间的 LoadBalancerPorts 选项。

SSLCertificateId

要绑定到侦听器的 SSL 证书的 ARN。

ListenerEnabled

指定是否启用该侦听器。如果指定 false,则该侦听器不包含在负载均衡器中。 如果设置了任何其他选项,则为 true;否则为 false true false

aws:elb:policies

修改传统负载均衡器的默认粘性和全局负载均衡器策略。

命名空间: aws:elb:policies

名称 描述 默认值 有效值

ConnectionDrainingEnabled

指定负载均衡器是否维持与已运行状况不佳或取消注册的实例之间的现有连接以完成正在进行的请求。

false

true

false

ConnectionDrainingTimeout

在强制关闭连接之前,负载均衡器在连接耗尽过程中维持与实例之间的现有连接的最大秒数。

20

13600

ConnectionSettingIdleTimeout

负载均衡器等待通过连接发送或接收任何数据的秒数。如果此时段后未发送或接收任何数据,则负载均衡器将关闭连接。

60

13600

LoadBalancerPorts

应用默认策略 (AWSEB-ELB-StickinessPolicy) 的侦听器端口的逗号分隔列表。

您可以使用 :all 指示所有侦听器端口

Stickiness Cookie Expiration

每个 Cookie 的有效时间,以秒为单位。使用默认策略 (AWSEB-ELB-StickinessPolicy)。

0

01000000

Stickiness Policy

将一个用户会话绑定到某一特定的服务器实例,以便系统将用户在此会话期间发出的所有请求都发送到同一服务器实例。使用默认策略 (AWSEB-ELB-StickinessPolicy)。

false

true false

aws:elb:policies:policy_name

为传统负载均衡器创建更多负载均衡器策略。

命名空间: aws:elb:policies:policy_name

名称 描述 默认值 有效值

CookieName

应用程序生成的 Cookie 的名称,用于控制 AppCookieStickinessPolicyType 策略的会话生存期。此策略只能与 HTTP/HTTPS 侦听器关联。

InstancePorts

应用此策略的实例端口的逗号分隔列表。

端口列表或 :all

LoadBalancerPorts

应用此策略的侦听器端口的逗号分隔列表。

端口列表或 :all

ProxyProtocol

对于 ProxyProtocolPolicyType 策略,指定是否包含 TCP 消息的原始请求的 IP 地址和端口。此策略只能与 TCP/SSL 侦听器关联。

true false

PublicKey

对后端服务器进行身份验证时要使用的 PublicKeyPolicyType 策略的公有密钥的内容。此策略不能直接用于后端服务器或侦听器;必须作为 BackendServerAuthenticationPolicyType 策略的一部分使用。

PublicKeyPolicyNames

控制后端服务器身份验证的 PublicKeyPolicyType 策略的策略名称 (来自 BackendServerAuthenticationPolicyType 策略) 的逗号分隔列表。此策略只能与使用 HTTPS/SSL 的后端服务器关联。

SSLProtocols

要对定义负载均衡器将接受的密码和协议的 SSLNegotiationPolicyType 策略启用的 SSL 协议的逗号分隔列表。此策略只能与 HTTPS/SSL 侦听器关联。

SSLReferencePolicy

预定义安全策略的名称,该策略符合 AWS 安全最佳实践,您需要对定义负载均衡器将接受的密码和协议的 SSLNegotiationPolicyType 策略启用该策略。此策略只能与 HTTPS/SSL 侦听器关联。

Stickiness Cookie Expiration

每个 Cookie 的有效时间,以秒为单位。

0

01000000

Stickiness Policy

将一个用户会话绑定到某一特定的服务器实例,以便系统将用户在此会话期间发出的所有请求都发送到同一服务器实例。

false

true false

aws:elbv2:listener:default

在应用程序负载均衡器或网络负载均衡器上配置默认侦听器 (端口 80)。

命名空间: aws:elbv2:listener:default

名称 描述 默认值 有效值

DefaultProcess

没有匹配的规则时要将流量转发到的过程的名称。

default

过程名称。

ListenerEnabled

设置为 false 可禁用侦听器。您可以使用此选项对端口 80 禁用默认侦听器。

true

true

false

Protocol

要处理的流量的协议。

使用应用程序负载均衡器:HTTP

使用网络负载均衡器:TCP

使用应用程序负载均衡器:HTTPHTTPS

使用网络负载均衡器:TCP

Rules

要应用于侦听器的规则的列表

此选项仅适用于使用应用程序负载均衡器的环境。

规则名称的逗号分隔列表。

SSLCertificateArns

要绑定到监听器的 SSL 证书的 ARN。

此选项仅适用于使用应用程序负载均衡器的环境。

存储在 IAM 或 ACM 中的证书的 ARN。

SSLPolicy

指定要应用于监听器的安全策略。

此选项仅适用于使用应用程序负载均衡器的环境。

无 (ELB 默认值)

负载均衡器安全策略的名称。

aws:elbv2:listener:listener_port

在应用程序负载均衡器或网络负载均衡器上配置其他侦听器。

命名空间: aws:elbv2:listener:listener_port

名称 描述 默认值 有效值

DefaultProcess

没有匹配的规则时要将流量转发到的过程的名称。

default

过程名称。

ListenerEnabled

设置为 false 可禁用侦听器。您可以使用此选项对端口 80 禁用默认侦听器。

true

true

false

Protocol

要处理的流量的协议。

使用应用程序负载均衡器:HTTP

使用网络负载均衡器:TCP

使用应用程序负载均衡器:HTTPHTTPS

使用网络负载均衡器:TCP

Rules

要应用于侦听器的规则的列表

此选项仅适用于使用应用程序负载均衡器的环境。

规则名称的逗号分隔列表。

SSLCertificateArns

要绑定到监听器的 SSL 证书的 ARN。

此选项仅适用于使用应用程序负载均衡器的环境。

存储在 IAM 或 ACM 中的证书的 ARN。

SSLPolicy

指定要应用于监听器的安全策略。

此选项仅适用于使用应用程序负载均衡器的环境。

无 (ELB 默认值)

负载均衡器安全策略的名称。

aws:elbv2:listenerrule:rule_name

为应用程序负载均衡器定义侦听器规则。如果请求与规则中的主机名或路径匹配,则负载均衡器将请求转发到指定的进程。要使用规则,请使用 aws:elbv2:listener:listener_port 命名空间中的 Rules 选项将其添加到侦听器中。

注意

此命名空间不适用于使用网络负载均衡器的环境。

命名空间: aws:elbv2:listenerrule:rule_name

名称 描述 默认值 有效值

HostHeaders

要匹配的主机名列表。例如:my.example.com

每个名称最多可以包含 128 个字符 (A-Z、a-z、0-9、–) 以及最多三个通配符 (* 匹配零个或更多字符;? 恰好匹配一个字符)

PathPatterns

要匹配的路径模式。例如:/img/*

此选项仅适用于使用应用程序负载均衡器的环境。

每个模式最多可以包含 128 个字符(A-Z、a-z、0-9、–)以及最多三个通配符(* 匹配零个或更多字符;? 恰好匹配一个字符)

Priority

多个规则匹配时此规则的优先顺序。较小的数字优先。任何两个规则的优先级不能相同。

1

11000

Process

此规则与请求匹配时要将流量转发到的过程的名称。

default

过程名称。

aws:elbv2:loadbalancer

配置应用程序负载均衡器

注意

此命名空间不适用于使用网络负载均衡器的环境。

命名空间: aws:elbv2:loadbalancer

名称 描述 默认值 有效值

AccessLogsS3Bucket

要在其中存储访问日志的 Amazon S3 存储桶。存储桶必须处在与环境相同的区域并允许负载均衡器的写入访问权限。

存储桶名称。

AccessLogsS3Enabled

启用访问日志存储。

false

true

false

AccessLogsS3Prefix

要放在访问日志名称前的前缀。默认情况下,负载均衡器会将日志上传到您指定的存储桶中名为 AWSLogs 的目录。指定要在另一个目录中放置 AWSLogs 目录的前缀。

IdleTimeout

在关闭到客户端和实例的连接之前,等待请求完成的时间。

13600

ManagedSecurityGroup

将现有安全组分配给环境的负载均衡器,而不是创建一个新安全组。要使用此设置,请更新此命名空间中的 SecurityGroups 设置以包括安全组的 ID,并删除自动创建的安全组 ID (如果存在)。

为了允许从负载均衡器到环境的 EC2 实例的流量,Elastic Beanstalk 会向实例的安全组添加一个规则,允许来自托管安全组的入站流量。

Elastic Beanstalks 为您的负载均衡器闯进的安全组。

安全组 ID。

SecurityGroups

要附加到负载均衡器的安全组的列表。

Elastic Beanstalks 为您的负载均衡器闯进的安全组。

安全组 ID 的逗号分隔列表。

aws:rds:dbinstance

配置所连的 Amazon RDS 数据库实例。

命名空间: aws:rds:dbinstance

名称 描述 默认值 有效值

DBAllocatedStorage

分配的数据库存储大小 (以吉字节为单位来指定)。

MySQL:5

Oracle:10

sqlserver-se:200

sqlserver-ex:30

sqlserver-web:30

MySQL:5-1024

Oracle:10-1024

sqlserver:无法修改

DBDeletionPolicy

决定在环境终止时删除数据库实例还是创建数据库实例快照。

警告

删除数据库实例会导致数据永久丢失。

Delete

Delete

Snapshot

DBEngine

要用于此实例的数据库引擎的名称。

mysql

mysql

oracle-se1

sqlserver-ex

sqlserver-web

sqlserver-se

postgres

DBEngineVersion

数据库引擎的版本号。

5.5

DBInstanceClass

数据库实例类型。

db.t2.micro

(对于并未在 Amazon VPC 中运行的环境为 db.m1.large

请转到 Amazon Relational Database Service 用户指南 中的数据库实例类

DBPassword

数据库实例的主用户密码。

DBSnapshotIdentifier

要用来恢复数据库的数据库快照的标识符。

DBUser

数据库实例的主用户名称。

ebroot

MultiAZDatabase

指定是否需要创建数据库实例的多可用区部署。有关使用 Amazon Relational Database Service (RDS) 进行多可用区部署的更多信息,请转到 Amazon Relational Database Service 用户指南 中的区域和可用区

false

true

false