View a markdown version of this page

任務層級擴展 - AWS PCS

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

任務層級擴展

AWS PCS 使用任務層級擴展來管理叢集的動態容量 (您在運算節點群組上設定的最小和最大計數之間的執行個體)。 AWS PCS 會定期審查等待中的任務、啟動 Amazon EC2 執行個體以滿足這些任務,並在任務完成且執行個體閒置時縮減動態容量。您不管理此程序。 AWS PCS 會評估您的工作負載,並為您調整容量。

靜態容量 (保持永遠開啟的最低容量) 不受任務層級擴展影響。如需詳細資訊,請參閱在 AWS PCS 中建立運算節點群組。

排程和擴展如何一起運作

當您提交任務時,Slurm 會選取並配置符合任務需求的叢集節點。對於以動態容量支援的已配置節點, AWS PCS 會啟動備份這些節點所需的 Amazon EC2 執行個體,並將每個執行個體指派給其節點。您不會直接管理這些 Amazon EC2 執行個體。 AWS PCS 會代表您啟動和釋放動態容量。

AWS PCS 如何為任務提供容量

只有在所有必要節點都可用之後,任務才會執行。它不會從部分配置開始。 AWS PCS 提供容量的方式取決於任務的需求和運算節點群組的組態。例如,這取決於任務需要多少節點、任務是否跨越多個運算節點群組、請求的容量是否超過單一 Amazon EC2 請求可提供的容量,以及目標節點群組是否由容量保留提供支援。

AWS PCS 會評估每個任務,並挑選適當的方法。實際上,這需要兩種形式之一:

  • 所有 一次。 AWS PCS 可同時提供任務所需的所有節點,或不提供。任務只有在其完整容量可用時才會開始。

  • 遞增。對於某些任務,例如需要的容量超過單一 Amazon EC2 請求可提供的容量, AWS PCS 會在可用時提供容量,同時保留其在處理完整集時取得的容量。

當運算節點群組使用隨需購買選項並列出多個子網路時, AWS PCS 會以您在 CreateComputeNodeGroup或 UpdateComputeNodeGroup請求中指定的子網路順序啟動執行個體。如果子網路無法提供請求的容量, AWS PCS 會嘗試清單中的下一個子網路,繼續,直到找到可用的容量為止。

當任務的完整容量無法使用時,就不會啟動。 AWS PCS 可能不會啟動任務的任何執行個體,或者可能會釋出已啟動的執行個體。任務會保持待定狀態, AWS PCS 會在稍後的間隔重新評估任務,直到提供其容量為止。

範例具有增量容量佈建的大型任務

假設您提交的任務需要大量節點,超過一次可以提供的數量。 AWS PCS 會啟動一部分任務節點的執行個體、指派它們,並保留該容量,同時在稍後的間隔繼續取得剩餘的節點。一旦所有必要的節點都可用,任務就會開始。如果您需要確保任務開始時有可用的完整容量,請傳回具有容量保留的運算節點群組,如下一節所述。

保證大型或時間敏感任務的容量

如果任務需要大量容量,或必須在特定時間啟動,則提交時可能無法使用隨需容量。若要提前保留容量,以便在任務執行時可用,您可以使用 ML 的隨需容量保留 ODCRs) 或 Amazon EC2 容量區塊。

將運算節點群組設定為使用保留,然後將任務提交至該節點群組相關聯的佇列。無論任務是否執行,預留容量都會根據您的 ODCR 或容量區塊計費。如需詳細資訊,請參閱搭配 AWS PCS 使用 ODCRs 和搭配 AWS PCS 使用 ML 的 Amazon EC2 容量區塊。