多個佇列的組態 - AWS ParallelCluster

本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。

多個佇列的組態

使用第 3 AWS ParallelCluster 版,您可以將 Scheduler 設定為 ,slurm並在組態檔案中為 指定多個佇列SlurmQueues,以設定多個佇列。在此模式中,組態檔案 ComputeResources區段中指定的運算節點中共存不同的執行個體類型。ComputeResources具有不同執行個體類型的 會視需要擴展或縮減SlurmQueues

當工作負載共用相同的基礎基礎設施和資源 (例如共用儲存、聯網或登入節點) 時,單一叢集內的多個佇列通常優於多個叢集。如果工作負載有類似的運算、儲存和聯網需求,在單一叢集中使用多個佇列會更有效率,因為它允許資源共用並避免不必要的重複。這種方法簡化了管理並降低了額外負荷,同時仍然允許有效率的任務排程和資源配置。另一方面,當工作負載之間有強大的安全性、資料或操作隔離需求時,應使用多個叢集。例如,如果您需要獨立管理和操作工作負載,使用不同的排程、更新週期或存取政策,則多個叢集更為合適。

叢集佇列和運算資源配額
資源 配額

Slurm queues

每個叢集 50 個佇列

Compute resources

每個佇列 50 個運算資源

每個叢集 50 個運算資源

節點計數

佇列ComputeResources中每個運算資源都必須具有唯一的 NameMinCountInstanceTypeMaxCountMinCount MaxCount具有預設值,可定義ComputeResources佇列中運算資源的執行個體範圍。您也可以為 MinCount和 指定自己的值MaxCount。中的每個運算資源ComputeResources是由編號為 1 到 的靜態節點,MinCount以及編號為 MinCount到 值的動態節點所組成MaxCount

範例組態

以下是叢集組態檔案的排程區段範例。在此組態中,有兩個名為 queue1和 的佇列,queue2每個佇列ComputeResources都有指定的 MaxCount

Scheduling: Scheduler: slurm SlurmQueues: - Name: queue1 ComputeResources: - InstanceType: c5.xlarge MaxCount: 5 Name: c5xlarge - InstanceType: c4.xlarge MaxCount: 5 Name: c4xlarge - Name: queue2 ComputeResources: - InstanceType: c5.xlarge MaxCount: 5 Name: c5xlarge

主機名稱

在運算機群中啟動的執行個體會動態指派。系統會為每個節點產生主機名稱。根據預設, AWS ParallelCluster 會使用下列格式的主機名稱 :

$HOSTNAME=$QUEUE-$STATDYN-$COMPUTE_RESOURCE-$NODENUM

  • $QUEUE 是佇列的名稱。例如,如果 SlurmQueues區段的項目Name設定為「queue-name」,則「$QUEUE」為「queue-name」。

  • $STATDYN st適用於靜態節點,或dy適用於動態節點。

  • $COMPUTE_RESOURCE 是與此節點對應的ComputeResources運算資源Name的 。

  • $NODENUM 是節點的數目。MinCount靜態節點的 值$NODENUM介於一 (1) 和 之間,動態節點的 值介於一 (1) 和 MaxCount-MinCount 之間。

從上述範例組態檔案中,來自 queue1和 運算資源的指定節點c5xlarge具有主機名稱:queue1-dy-c5xlarge-1

主機名稱和完整網域名稱 (FQDN) 都是使用 Amazon Route 53 託管區域建立。FQDN 是 $HOSTNAME.$CLUSTERNAME.pcluster,其中 $CLUSTERNAME是叢集的名稱。

請注意,相同的格式也會用於Slurm節點名稱。

使用者可以選擇使用支援運算節點之執行個體的預設 Amazon EC2 主機名稱,而非 使用的預設主機名稱格式 AWS ParallelCluster。這可以透過將 UseEc2Hostnames 參數設定為 true 來完成。不過,Slurm節點名稱將繼續使用預設 AWS ParallelCluster 格式。