本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。
资源:计算环境模板
以下示例显示了空的计算环境模板。您可以使用此模板创建计算环境,然后将其保存到文件中并与 Amazon CLI --cli-input-json选项一起使用。有关这些参数的更多信息,请参阅 Amazon Batch API 参考CreateComputeEnvironment中的。
在创建托管 Amazon EC2 计算环境之前,请确保满足以下先决条件。当该type字段设置为时,这些先决条件适用MANAGED。
-
安全组 — 您的计算资源需要一个允许出站流量的安全组,以便实例可以与 Amazon ECS 服务终端节点通信并提取容器映像。有关更多信息,请参阅 创建安全组。
-
IAM 角色 — Amazon Batch 需要一个 Amazon ECS 实例角色,该角色允许容器实例代表您进行 Amazon API 调用。有关更多信息,请参阅Amazon ECS 实例角色和将服务相关角色用于 Amazon Batch。
注意
该
instanceRole字段接受实例配置文件 ARN,而不是角色 ARN。格式为arn:aws:iam::。account_id:instance-profile/ecsInstanceRole -
网络访问 — 计算资源必须能够访问 Amazon ECS 服务终端节点。如果您的实例位于没有公有 IP 地址的私有子网中,则可以使用 NAT 网关或 Amazon VPC 接口终端节点。有关更多信息,请参阅 使用接口端点进行访问 Amazon Batch。
注意
您可以使用以下 Amazon CLI 命令生成计算环境模板。
$aws batch create-compute-environment --generate-cli-skeleton
重要
必须以ENABLED状态创建计算环境。
以下示例显示了托管 Amazon EC2 计算环境的框架模板。如果是,type则需要computeResources方块MANAGED。
{ "computeEnvironmentName": "", "type": "MANAGED", "state": "ENABLED", "computeResources": { "type": "EC2", "allocationStrategy": "BEST_FIT_PROGRESSIVE", "minvCpus": 0, "maxvCpus": 16, "desiredvCpus": 0, "instanceTypes": [ "default_arm64" ], "subnets": [ "subnet-a1b2c3d4" ], "securityGroupIds": [ "sg-a1b2c3d4" ], "instanceRole": "arn:aws:iam::123456789012:instance-profile/ecsInstanceRole", "tags": { "KeyName": "" }, "launchTemplate": { "launchTemplateId": "", "version": "$Default" }, "ec2Configuration": [ { "imageType": "ECS_AL2023" } ] }, "serviceRole": "", "tags": { "KeyName": "" } }
以下示例显示了非托管 Amazon EC2 计算环境的框架模板。该computeResources模块不用于UNMANAGED计算环境,应省略。
{ "computeEnvironmentName": "", "type": "UNMANAGED", "state": "ENABLED", "unmanagedvCpus": 0, "serviceRole": "", "tags": { "KeyName": "" } }