AWS::Batch::ComputeEnvironment ComputeResources - AWS CloudFormation
AWS 文档中描述的 AWS 服务或功能可能因区域而异。要查看适用于中国区域的差异,请参阅中国的 AWS 服务入门

AWS::Batch::ComputeEnvironment ComputeResources

由计算环境托管的计算资源的详细信息。该参数是托管计算环境所必需的。有关更多信息,请参阅 AWS Batch 用户指南 中的计算环境

语法

要在 AWS CloudFormation 模板中声明此实体,请使用以下语法:

JSON

{ "AllocationStrategy" : String, "BidPercentage" : Integer, "DesiredvCpus" : Integer, "Ec2KeyPair" : String, "ImageId" : String, "InstanceRole" : String, "InstanceTypes" : [ String, ... ], "LaunchTemplate" : LaunchTemplateSpecification, "MaxvCpus" : Integer, "MinvCpus" : Integer, "PlacementGroup" : String, "SecurityGroupIds" : [ String, ... ], "SpotIamFleetRole" : String, "Subnets" : [ String, ... ], "Tags" : Json, "Type" : String }

YAML

AllocationStrategy: String BidPercentage: Integer DesiredvCpus: Integer Ec2KeyPair: String ImageId: String InstanceRole: String InstanceTypes: - String LaunchTemplate: LaunchTemplateSpecification MaxvCpus: Integer MinvCpus: Integer PlacementGroup: String SecurityGroupIds: - String SpotIamFleetRole: String Subnets: - String Tags: Json Type: String

属性

AllocationStrategy

该分配策略在无法分配最佳匹配实例类型的足够实例时,用于计算资源。这可能是由于区域中的实例类型可用性或 Amazon EC2 服务限制造成的。如果未指定,则默认值为 BEST_FIT,该值将仅使用最佳匹配实例类型;如果没有最佳匹配实例类型可用,则等待额外的容量。此分配策略可降低成本,但会限制扩展。如果将 Spot 队列与 BEST_FIT 一起使用,则必须指定 Spot 队列 IAM 角色。BEST_FIT_PROGRESSIVE 将选择足够大的其他实例类型以满足队列中的作业的要求,并优先选择每个 vCPU 的成本较低的实例类型。SPOT_CAPACITY_OPTIMIZED 仅适用于 Spot 实例计算资源,并择足够大的其他实例类型以满足队列中的作业要求,并优先选择不太可能会中断的实例类型。有关更多信息,请参阅 AWS Batch 用户指南 中的分配策略

必需:否

类型:字符串

允许的值BEST_FIT | BEST_FIT_PROGRESSIVE | SPOT_CAPACITY_OPTIMIZED

Update requires: Replacement

BidPercentage

在启动实例之前,与该实例类型的按需价格进行比较时 Spot 实例价格可以达到的最大百分比。例如,如果最大百分比为 20%,则 Spot 价格必须低于该 Amazon EC2 实例的当前按需价格的 20%。您始终支付最低 (市场) 价格,并且绝不会高于您的最大百分比。如果将此字段留空,则默认值为按需价格的 100%。

必需:否

类型:整数

Update requires: Replacement

DesiredvCpus

计算环境中所需的 Amazon EC2 vCPU 数。

必需:否

类型:整数

Update requires: No interruption

Ec2KeyPair

用于计算环境中启动的实例的 Amazon EC2 密钥对。

必需:否

类型:字符串

Update requires: Replacement

ImageId

用于计算环境中启动的实例的 Amazon 系统映像 (AMI) ID。

必需:否

类型:字符串

Update requires: Replacement

InstanceRole

应用于计算环境中的 Amazon EC2 实例的 Amazon ECS 实例配置文件。您可以为实例配置文件指定短名称或完整的 Amazon 资源名称 (ARN)。例如, ecsInstanceRole arn:aws:iam::<aws_account_id>:instance-profile/ecsInstanceRole 。有关更多信息,请参阅 AWS Batch 用户指南 中的 Amazon ECS 实例角色

必需:是

类型:字符串

Update requires: Replacement

InstanceTypes

可启动的实例类型。您可以指定实例系列以在这些系列中启动任何实例类型 (例如,c5p3),也可以在系列中指定特定大小 (例如,c5.8xlarge)。您也可以选择 optimal 以(从最新的 C、M 和 R 实例系列中)动态选取符合作业队列要求的实例类型。

必需:是

类型:字符串列表

Update requires: Replacement

LaunchTemplate

要用于计算资源的启动模板。在 CreateComputeEnvironment API 操作中指定的任何其他计算资源参数将覆盖启动模板中的相同参数。您必须在请求中指定启动模板 ID 或启动模板名称,但不能同时指定两者。有关更多信息,请参阅 AWS Batch 用户指南 中的启动模板支持

必需:否

类型LaunchTemplateSpecification

Update requires: Replacement

MaxvCpus

环境可达到的最大 Amazon EC2 vCPU 数。

必需:是

类型:整数

Update requires: No interruption

MinvCpus

环境应保留的最少 Amazon EC2 vCPU 数(即使计算环境处于 DISABLED 状态)。

必需:是

类型:整数

Update requires: No interruption

PlacementGroup

要与计算资源关联的 Amazon EC2 置放群组。如果打算将多节点并行作业提交到计算环境,应考虑创建一个集群置放群组,并将其与计算资源相关联。这会保证实例逻辑分组上的多节点并行作业位于单个可用区中,同时提供较高的网络流量潜力。有关更多信息,请参阅适用于 Linux 实例的 Amazon EC2 用户指南 中的置放群组

必需:否

类型:字符串

Update requires: Replacement

SecurityGroupIds

与计算环境中启动的实例关联的 Amazon EC2 安全组。必须在 securityGroupIds 中或使用 launchTemplate 中引用的启动模板指定一个或多个安全组。如果同时使用 securityGroupIdslaunchTemplate 指定安全组,将使用 securityGroupIds 中的值。

必需:否

类型:字符串列表

Update requires: Replacement

SpotIamFleetRole

应用于 SPOT 计算环境的 Amazon EC2 Spot 队列 IAM 角色的 Amazon 资源名称 (ARN)。如果将分配策略设置为 BEST_FIT,或者未指定分配策略,则需要使用该角色。有关更多信息,请参阅 AWS Batch 用户指南 中的 Amazon EC2 Spot 队列角色

必需:否

类型:字符串

Update requires: Replacement

Subnets

计算资源在其中启动的 VPC 子网。有关更多信息,请参阅 Amazon VPC 用户指南中的 VPC 和子网

必需:是

类型:字符串列表

Update requires: Replacement

Tags

要应用于计算环境中启动的资源的键值对标签。对于 AWS Batch,它们采用的形式为 "String1": "String2",其中 String1 为标签键,String2 为标签值 - 例如,{ "Name": "AWS Batch Instance - C4OnDemand" }。

必需:否

类型:Json

Update requires: Replacement

Type

计算环境的类型:EC2SPOT

必需:是

类型:字符串

允许的值EC2 | SPOT

Update requires: Replacement

另请参阅