本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。
Amazon ParallelCluster 使用调 Amazon Batch 度器
当您使用awsbatch
作为调度器类型时, Amazon ParallelCluster 会创建一个 Amazon Batch 托管计算环境。 Amazon Batch
环境管理 Amazon Elastic Container Service (Amazon ECS) 容器实例。这些实例在 AwsBatchQueues/Networking/SubnetIds 参数中配置的子网中启动。 Amazon Batch 为了正常运行,Amazon ECS 容器实例需要访问外部网络才能与 Amazon ECS 服务终端节点通信。这会转换为以下情形:
-
为队列指定的子网 ID 使用 NAT 网关访问互联网。我们建议采用此方法。
-
在队列子网中启动的实例具有公有 IP 地址,并可通过互联网网关访问互联网。
此外,如果您对多节点并行作业感兴趣(来自 Amazon Batch 文档):
Amazon Batch 多节点并行任务使用 Amazon ECS awsvpc
网络模式。这为您的多节点并行任务容器提供了与 Amazon EC2 实例相同的联网属性。每个多节点并行作业容器都可获得自己的弹性网络接口、主要私有 IP 地址以及内部 DNS 主机名。在同一 Amazon VPC 子网中创建网络接口,作为其主机计算资源。适用于计算资源的任何安全组,也适用于该主机计算资源。
使用 Amazon ECS 任务联网时,awsvpc
网络模式不为使用 Amazon EC2 启动类型的任务提供带有公有 IP 地址的弹性网络接口。要访问互联网,使用 Amazon EC2 启动类型的任务必须在配置为使用 NAT 网关的私有子网中启动。
要使集群能够运行多节点并行作业,必须配置 NAT 网关。
之前的所有配置和注意事项也同样有效。 Amazon Batch以下是 Amazon Batch 网络配置的示例。
# Note that all values are only provided as examples HeadNode: ... Networking: SubnetId: subnet-12345678 # subnet with internet gateway, NAT gateway or proxy #ElasticIp: true | false | eip-12345678 #Proxy: #HttpProxyAddress: http://proxy-address:port Ssh: KeyName: ec2-key-name Scheduling: Scheduler: awsbatch AwsBatchQueues: - ... Networking: SubnetIds: - subnet-23456789 # subnet with internet gateway, NAT gateway or proxy #AssignPublicIp: true | false
在 Scheduling/AwsBatchQueues/Networking 部分中,SubnetIds 是列表类型,但目前仅支持一个子网。
有关更多信息,请参阅以下主题: