配置 Amazon ParallelCluster - Amazon ParallelCluster
Amazon Web Services 文档中描述的 Amazon Web Services 服务或功能可能因区域而异。要查看适用于中国区域的差异,请参阅中国的 Amazon Web Services 服务入门

本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。

配置 Amazon ParallelCluster

安装后Amazon ParallelCluster,请完成以下配置步骤。

首先,设置Amazon凭证。有关更多信息,请参阅 。配置Amazon CLI中的Amazon CLI用户指南.

$ aws configure AWS Access Key ID [None]: AKIAIOSFODNN7EXAMPLE AWS Secret Access Key [None]: wJalrXUtnFEMI/K7MDENG/bPxRfiCYEXAMPLEKEY Default region name [us-east-1]: us-east-1 Default output format [None]:

这些区域有:Amazon Web Services 区域在启动集群的位置必须至少具有一个 Amazon EC2 key pair。有关更多信息,请参阅适用于 Linux 实例的 Amazon EC2 用户指南中的 Amazon EC2 密钥对

$ pcluster configure --config cluster-config.yaml

配置向导将提示您输入创建集群所需的所有信息。使用时序列的细节不同Amazon Batch作为调度程序与使用相比Slurm.

Slurm

从有效清单中Amazon Web Services 区域标识符,选择要在其中运行集群的区域。

注意

显示的区域列表基于账户的分区,仅包括为您的账户启用的区域。有关为您账户启用区域的更多信息,请参阅管理Amazon Web Services 区域中的Amazon一般参考. 显示的例子来自Amazon全局分区。如果您的账户处于Amazon GovCloud (US)分区,只列出该分区中的区域(gov-us-east-1gov-us-west-1)。同样,如果你的账户在Amazon只有中国分区cn-north-1cn-northwest-1将会显示。有关支持的区域的完整列表Amazon ParallelCluster,请参阅的支持区域Amazon ParallelCluster版本 3.

Allowed values for AWS Region ID: 1. af-south-1 2. ap-east-1 3. ap-northeast-1 4. ap-northeast-2 5. ap-south-1 6. ap-southeast-1 7. ap-southeast-2 8. ca-central-1 9. eu-central-1 10. eu-north-1 11. eu-south-1 12. eu-west-1 13. eu-west-2 14. eu-west-3 15. me-south-1 16. sa-east-1 17. us-east-1 18. us-east-2 19. us-west-1 20. us-west-2 Amazon Web Services 区域 ID [ap-northeast-1]:

key pair 从所选区域的 Amazon EC2 注册的密钥对中选择。选择 key pair:

Allowed values for EC2 Key Pair Name: 1. your-key-1 2. your-key-2 EC2 Key Pair Name [your-key-1]:

选择要用于集群的计划程序。

Allowed values for Scheduler: 1. slurm 2. awsbatch Scheduler [slurm]:

选择操作系统。

Allowed values for Operating System: 1. alinux2 2. centos7 3. ubuntu1804 4. ubuntu2004 Operating System [alinux2]:

选择头节点实例类型:

Head node instance type [t2.micro]:

选择队列配置。注意:无法为同一队列中的多个计算资源指定实例类型。

Number of queues [1]: Name of queue 1 [queue1]: Number of compute resources for queue1 [1]: 2 Compute instance type for compute resource 1 in queue1 [t2.micro]: Maximum instance count [10]: Compute instance type for compute resource 2 in queue1 [t2.micro]: t3.micro Maximum instance count [10]:

完成前面的步骤后,决定是使用现有 VPC 还是让Amazon ParallelCluster为您创建 VPC。如果您没有正确配置的 VPC,请参阅,Amazon ParallelCluster可以创建新的。它要么同时使用同一公有子网中的头节点和计算节点,要么只使用公有子网中的头节点,所有节点都在私有子网中。您可以达到区域中允许的 VPC 数量的配额。默认配额为一个区域的五个 VPC。有关此配额以及如何请求提高配额的更多信息,请参阅VPC 和子网中的Amazon VPC User Guide.

如果您可以Amazon ParallelCluster创建 VPC,则必须决定是否所有节点都应在公有子网中。

重要

创建的 VPCAmazon ParallelCluster默认情况下,请勿启用 VPC 流日志。利用 VPC 流日志,您可以捕获有关传入和传出您的 VPC 中网络接口的 IP 流量的信息。有关更多信息,请参阅 Amazon VPC 用户指南 中的 VPC 流日志

Automate VPC creation? (y/n) [n]: y Allowed values for Availability Zone: 1. us-east-1a 2. us-east-1b 3. us-east-1c 4. us-east-1d 5. us-east-1e 6. us-east-1f Availability Zone [us-east-1a]: Allowed values for Network Configuration: 1. Head node in a public subnet and compute fleet in a private subnet 2. Head node and compute fleet in the same public subnet Network Configuration [Head node in a public subnet and compute fleet in a private subnet]: 1 Beginning VPC creation. Please do not leave the terminal until the creation is finalized

如果您没有创建新 VPC,则必须选择现有 VPC。

如果你选择有Amazon ParallelCluster创建 VPC,记下 VPC ID,以便使用Amazon CLI以后将其删除。

Automate VPC creation? (y/n) [n]: n Allowed values for VPC ID: # id name number_of_subnets --- --------------------- --------------------------------- ------------------- 1 vpc-0b4ad9c4678d3c7ad ParallelClusterVPC-20200118031893 2 2 vpc-0e87c753286f37eef ParallelClusterVPC-20191118233938 5 VPC ID [vpc-0b4ad9c4678d3c7ad]: 1

选择 VPC 后,决定是使用现有子网还是创建新子网。

Automate Subnet creation? (y/n) [y]: y
Creating CloudFormation stack... Do not leave the terminal until the process has finished
Amazon Batch

从有效清单中Amazon Web Services 区域标识符,选择要在其中运行集群的区域。

注意

显示的地区列表基于账户的分区。它仅包含已为您账户启用的区域。有关为您账户启用区域的更多信息,请参阅管理Amazon Web Services 区域中的Amazon一般参考. 显示的例子来自Amazon全局分区。如果您的账户处于Amazon GovCloud (US)分区,只列出该分区中的区域(gov-us-east-1gov-us-west-1)。同样,如果你的账户在Amazon只有中国分区cn-north-1cn-northwest-1将会显示。有关支持的区域的完整列表Amazon ParallelCluster,请参阅的支持区域Amazon ParallelCluster版本 3.

Allowed values for AWS Region ID: 1. af-south-1 2. ap-east-1 3. ap-northeast-1 4. ap-northeast-2 5. ap-south-1 6. ap-southeast-1 7. ap-southeast-2 8. ca-central-1 9. eu-central-1 10. eu-north-1 11. eu-south-1 12. eu-west-1 13. eu-west-2 14. eu-west-3 15. me-south-1 16. sa-east-1 17. us-east-1 18. us-east-2 19. us-west-1 20. us-west-2 AWS Region ID [us-east-1]:

key pair 从所选区域的 Amazon EC2 注册的密钥对中选择。选择 key pair:

Allowed values for EC2 Key Pair Name: 1. your-key-1 2. your-key-2 EC2 Key Pair Name [your-key-1]:

选择要用于集群的计划程序。

Allowed values for Scheduler: 1. slurm 2. awsbatch Scheduler [slurm]: 2

当选择 awsbatch 作为计划程序时,alinux2 将用作操作系统。输入了头节点实例类型:

Head node instance type [t2.micro]:

选择队列配置。这些区域有:Amazon Batch计划程序只包含单个队列。已输入计算节点集群的最大大小。这是用 vCPUs 来衡量的。

Number of queues [1]: Name of queue 1 [queue1]: Maximum vCPU [10]:

决定是使用现有 VPC 还是让Amazon ParallelCluster为你创建 VPC。如果您没有正确配置的 VPC,请参阅,Amazon ParallelCluster可以创建新的。它要么同时使用同一公有子网中的头节点和计算节点,要么只使用公有子网中的头节点,所有节点都在私有子网中。您可以达到区域中允许的 VPC 数量的配额。VPC 的默认数量为 5 个。有关此配额以及如何请求提高配额的更多信息,请参阅VPC 和子网中的Amazon VPC User Guide.

重要

创建的 VPCAmazon ParallelCluster默认情况下,请勿启用 VPC 流日志。利用 VPC 流日志,您可以捕获有关传入和传出您的 VPC 中网络接口的 IP 流量的信息。有关更多信息,请参阅 Amazon VPC 用户指南 中的 VPC 流日志

如果您可以Amazon ParallelCluster创建 VPC,确保您决定是否所有节点都在公有子网中。

Automate VPC creation? (y/n) [n]: y Allowed values for Availability Zone: 1. us-east-1a 2. us-east-1b 3. us-east-1c 4. us-east-1d 5. us-east-1e 6. us-east-1f Availability Zone [us-east-1a]: Allowed values for Network Configuration: 1. Head node in a public subnet and compute fleet in a private subnet 2. Head node and compute fleet in the same public subnet Network Configuration [Head node in a public subnet and compute fleet in a private subnet]: *1* Beginning VPC creation. Please do not leave the terminal until the creation is finalized

如果您没有创建新 VPC,则必须选择现有 VPC。

如果你选择有Amazon ParallelCluster创建 VPC,记下 VPC ID,以便使用Amazon CLI要么Amazon Web Services Management Console以后将其删除。

Automate VPC creation? (y/n) [n]: n Allowed values for VPC ID: # id name number_of_subnets --- --------------------- --------------------------------- ------------------- 1 vpc-0b4ad9c4678d3c7ad ParallelClusterVPC-20200118031893 2 2 vpc-0e87c753286f37eef ParallelClusterVPC-20191118233938 5 VPC ID [vpc-0b4ad9c4678d3c7ad]: 1

选择 VPC 后,请确保您决定是使用现有子网还是创建新子网。

Automate Subnet creation? (y/n) [y]: y
Creating CloudFormation stack... Do not leave the terminal until the process has finished

在完成上述步骤后,将在 VPC 中启动一个简单的集群。VPC 使用支持公有 IP 地址的现有子网。子网的路由表为0.0.0.0/0 => igw-xxxxxx. 请注意以下条件:

  • VPC 必须具有 DNS Resolution = yesDNS Hostnames = yes

  • VPC 还必须具有具有正确的 DHCP 选项。domain-name对于该地区。默认 DHCP 选项集已指定必需的AmazonProvidedDNS. 如果指定的域名服务器不止一台,请参阅DHCP 选项集中的Amazon VPC User Guide. 在使用私有子网时,请使用 NAT 网关或内部代理启用计算节点的 Web 访问。有关更多信息,请参阅 网络配置

但所有设置都包含有效值时,您可以通过运行创建命令来启动集群:

$ pcluster create-cluster --cluster-name test-cluster --cluster-configuration cluster-config.yaml { "cluster": { "clusterName": "test-cluster", "cloudformationStackStatus": "CREATE_IN_PROGRESS", "cloudformationStackArn": "arn:aws:cloudformation:eu-west-1:xxx:stack/test-cluster/abcdef0-f678-890a-5abc-021345abcdef", "region": "eu-west-1", "version": "3.1.2", "clusterStatus": "CREATE_IN_PROGRESS" }, "validationMessages": [] }

关注集群进度:

$ pcluster describe-cluster --cluster-name test-cluster

$ pcluster list-clusters --query 'items[?clusterName==`test-cluster`]'

集群到达之后"clusterStatus": "CREATE_COMPLETE"状态,您可以使用常规 SSH 客户端设置来连接它。有关连接到 Amazon EC2 实例的更多信息,请参阅EC2 用户指南中的适用于 Linux 实例的 Amazon EC2 用户指南. 或者你可以通过连接群集

$ pcluster ssh --cluster-name test-cluster -i ~/path/to/keyfile.pem

要删除集群,请运行以下命令。

$ pcluster delete-cluster --region us-east-1 --cluster-name test-cluster

删除群集后,您可以删除 VPC 中的网络资源,方法是删除CloudFormation网络堆栈。堆栈的名称以 “并行 cluster网络-” 开头,包含 “YYYYMDMDDHHMMSS” 格式的创建时间。你可以使用列出堆栈命令。

$ aws --region us-east-1 cloudformation list-stacks \ --stack-status-filter "CREATE_COMPLETE" \ --query "StackSummaries[].StackName" | \ grep -e "parallelclusternetworking-" "parallelclusternetworking-pubpriv-20191029205804"

可以使用delete-stack命令。

$ aws --region us-east-1 cloudformation delete-stack \ --stack-name parallelclusternetworking-pubpriv-20191029205804

那个 VPCpcluster configure为你创造不是创建于CloudFormation网络堆栈。您可以在控制台中手动删除该 VPC,也可以使用Amazon CLI.

$ aws --region us-east-1 ec2 delete-vpc --vpc-id vpc-0b4ad9c4678d3c7ad