本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。
自訂引導動作
如果您定義 HeadNode / CustomActions / OnNodeStart組態設定, 會在節點啟動後立即 AWS ParallelCluster 執行任意程式碼。如果您定義 HeadNode / CustomActions / OnNodeConfigured組態設定, 會在節點組態正確完成後 AWS ParallelCluster 執行程式碼。
從 3.4.0 AWS ParallelCluster 版開始,如果您定義 / CustomActions / HeadNode OnNodeUpdated組態設定,則可以在前端節點更新後執行程式碼。
在大多數情況下,此程式碼會儲存在 Amazon Simple Storage Service (Amazon S3) 中,並透過HTTPS連線存取。程式碼會以 執行root
,並且可以採用叢集作業系統支援的任何指令碼語言。程式碼通常位於 Bash 或 Python 中。
注意
從 3.7.0 Imds AWS ParallelCluster 版開始,叢集/ImdsSupport設定預設值為 v2.0
。
當您建立新的叢集以升級至 3.7.0 版及更新版本時,請將自訂引導動作指令碼更新為與v1.0
叢集組態檔案中的 相容,IMDSv2或將 Imds / ImdsSupport 設定為 。
警告
您有責任如 共同責任模型
警告
AWS ParallelCluster 不支援使用透過 /etc/parallelcluster/cfnconfig
檔案提供的內部變數。此檔案可能會作為未來版本的一部分而移除。
OnNodeStart
動作會在啟動任何節點部署引導動作之前呼叫,例如設定 NAT、Amazon Elastic Block Store (Amazon EBS) 或排程器。OnNodeStart
引導動作可能包括修改儲存體、新增額外的使用者,以及新增套件。
注意
如果您為叢集設定 HeadNode DirectoryService和 / CustomActions / OnNodeStart指令碼,請在執行OnNodeStart
指令碼sssd
之前 AWS ParallelCluster 設定DirectoryService
並重新啟動 。
OnNodeConfigured
動作會在節點引導程序完成後呼叫。 OnNodeConfigured
動作提供執行個體被視為完整設定並完成之前要執行的最後動作。有些OnNodeConfigured
動作包括變更排程器設定、修改儲存體和修改套件。您可以在組態期間指定引數,藉此將引數傳遞至指令碼。
OnNodeUpdated
動作會在主機節點更新完成後呼叫,且排程器和共用儲存體會與最新的叢集組態變更保持一致。
當 OnNodeStart
或OnNodeConfigured
自訂動作成功時,成功會以結束碼零 (0) 表示。任何其他結束碼表示執行個體開機失敗。
當OnNodeUpdated
自訂動作成功時,成功會以結束碼零 (0) 發出訊號。任何其他結束碼表示更新失敗。
注意
如果您設定 OnNodeUpdated,則必須在更新失敗時手動將OnNodeUpdated
動作還原至先前的狀態。
如果OnNodeUpdated
自訂動作失敗,更新會回復到先前的狀態。不過,OnNodeUpdated
動作只會在更新時間執行,而不會在堆疊復原時間執行。
您可以在 / CustomActions和 HeadNode / / SchedulingSlurmQueuesCustomActions組態區段中,為主機節點和每個佇列指定不同的指令碼。 OnNodeUpdated只能在 HeadNode
區段中設定。
注意
在 3.0 AWS ParallelCluster 版之前,無法為主機和運算節點指定不同的指令碼。請參閱 從 AWS ParallelCluster 2.x 移至 3.x。