在 AWS PCS 叢集上設定 Slurm CLI 篩選條件外掛程式 - AWS PCS

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

在 AWS PCS 叢集上設定 Slurm CLI 篩選條件外掛程式

在建立新的 AWS PCS 叢集時設定 CLI 篩選條件外掛程式。您可以使用更新 API 或主控台在現有叢集上啟用或停用 CLI 篩選條件外掛程式,而無需重新建立叢集。

先決條件

設定 CLI 篩選條件外掛程式之前,請先完成下列任務:

  • 撰寫並測試實作 CLI Filter Plugin API 的 Lua 指令碼

  • 準確命名 Lua 指令碼 cli_filter.lua

  • 選擇將指令碼部署到所有叢集執行個體 (AMI、S3 或檔案系統) 的方法

  • 確認您使用的是 Slurm 24.11 版或更新版本

在新叢集上啟用 CLI 篩選條件外掛程式

AWS PCS console
  1. 在 https://https://console.aws.amazon.com/pcs/ 開啟 AWS PCS 主控台。

  2. 在導覽窗格中,選擇叢集

  3. 選擇 Create Cluster (建立叢集)。

  4. 選取有效的 Slurm 版本 (24.11 版或更新版本)。

  5. 排程器設定下,展開其他排程器設定

  6. 新增新的 Slurm 自訂設定,並將參數名稱設為 CliFilterPlugins,並將參數值設為 cli_filter/lua

  7. 完成剩餘的叢集組態,然後選擇建立叢集

AWS PCS API

在您呼叫 CreateCluster API 動作時提供slurmCustomSettings組態。將 parameterName設定為 CliFilterPlugins,將 parameterValue設定為 cli_filter/lua。如需詳細資訊,請參閱 AWS PCS API 參考中的 CreateCluster

下列範例使用 AWS CLI 來呼叫 CreateCluster API 動作。自訂設定CliFilterPlugins=cli_filter/lua會啟用 CLI 篩選條件外掛程式。

aws pcs create-cluster --cluster-name cluster-name \ --scheduler type=SLURM,version=24.11 \ --size SMALL \ --networking subnetIds=cluster-subnet-id,securityGroupIds=cluster-security-group-id \ --slurm-configuration \ 'slurmCustomSettings=[{parameterName=CliFilterPlugins,parameterValue="cli_filter/lua"}]'

部署 CLI 篩選條件外掛程式指令碼

將 CLI 篩選條件外掛程式指令碼部署到您的叢集
  1. 確保運算節點群組中使用的所有 AMIs 透過 AWS PCS Slurm 安裝程式安裝 Slurm。

    注意

    如果您對所有運算節點群組使用 AWS PCS 範例 AMI,請略過此步驟。Slurm 已安裝。

  2. 將您的cli_filter.lua指令碼部署/etc/aws/pcs/scheduler/slurm-<version>/cli_filter.lua到叢集中所有執行個體上的 。

    例如,對於 Slurm 24.11 版:

    /etc/aws/pcs/scheduler/slurm-24.11/cli_filter.lua
  3. 使用您準備好AMIs 啟動所有登入和運算節點。

  4. 測試任務提交以驗證 CLI 篩選條件外掛程式是否正確執行。

在現有叢集上啟用或停用 CLI 篩選條件外掛程式

您可以在現有叢集上啟用或停用 CLI 篩選條件外掛程式,而無需重建您的基礎設施。如需詳細資訊,請參閱在 AWS PCS 中更新叢集

AWS PCS console
  1. 在 https://https://console.aws.amazon.com/pcs/ 開啟 AWS PCS 主控台。

  2. 在導覽窗格中,選擇叢集

  3. 選取要更新的叢集。

  4. 選擇編輯動作。

  5. 在編輯叢集頁面的其他排程器設定下:

    • 若要啟用 CLI 篩選條件外掛程式:新增參數名稱設為 CliFilterPlugins參數值設為 的新 Slurm 自訂設定cli_filter/lua

    • 若要停用 CLI 篩選條件外掛程式:移除現有的CliFilterPlugins設定。

  6. 選擇更新叢集以提交變更。

  7. 監控叢集狀態,其在程序期間顯示為「更新」,並在更新完成時顯示為「作用中」。

AWS PCS API

使用 UpdateCluster API 動作啟用或停用 CLI 篩選條件外掛程式。如需詳細資訊,請參閱 AWS PCS API 參考中的 UpdateCluster

若要在現有叢集上啟用 CLI 篩選條件外掛程式:

aws pcs update-cluster --cluster-identifier my-cluster \ --slurm-configuration \ 'slurmCustomSettings=[{parameterName=CliFilterPlugins,parameterValue="cli_filter/lua"}]'

若要在現有叢集上停用 CLI 篩選條件外掛程式:

aws pcs update-cluster --cluster-identifier my-cluster \ --slurm-configuration \ 'slurmCustomSettings=[]'

預期的結果

完成組態之後:

  • 在開啟 CLI Filter Plugin 的情況下建立叢集

  • 任務提交會在到達 Slurm 控制器之前觸發您的自訂驗證邏輯

  • 不合規任務會因您的自訂錯誤訊息而遭到拒絕

  • 合規任務透過 Slurm 排程器正常進行

疑難排解

任何節點上缺少 CLI 篩選條件外掛程式指令碼

症狀:任務提交會立即失敗,並出現外掛程式載入錯誤。

可能原因:指令碼未部署到所有執行個體或不正確的檔案路徑或名稱。

解決方案:確認指令碼存在於所有登入和運算節點的正確路徑,且檔案名稱為 cli_filter.lua

無效的 CLI 篩選條件外掛程式組態

徵狀:叢集建立失敗並出現驗證錯誤。

可能原因:CliFilterPlugins參數未設定為 cli_filter/lua 格式。

解決方案:cli_filter/lua中使用確切的參數值slurmCustomSettings