

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

# 在 HyperPod 叢集節點上以互動方式開發生命週期指令碼
<a name="sagemaker-hyperpod-lifecycle-best-practices-slurm-slurm-develop-lifecycle-scripts"></a>

本節說明如何以互動方式開發生命週期指令碼，而無需重複建立和刪除 HyperPod 叢集。

1. 使用基本生命週期指令碼建立 HyperPod 叢集。

1. 登入叢集節點。

1. 透過在節點上重複編輯和執行指令碼 (`configure_xyz.sh`) 來開發該指令碼。

   1. HyperPod 會以根使用者身分執行生命週期指令碼，因此建議您在開發時以根使用者身分執行 `configure_xyz.sh`，確保在 HyperPod 執行時，指令碼於相同條件下進行測試。

1. 透過新增類似以下內容的程式碼行，將指令碼整合到 `lifecycle_script.py`。

   ```
   ExecuteBashScript("./utils/configure_xyz.sh").run()
   ```

1. 將更新的生命週期指令碼上傳至您最初用於上傳基本生命週期指令碼的 S3 儲存貯體。

1. 透過建立新的 HyperPod 叢集來測試 `lifecycle_script.py` 的整合版本。您也可以透過建立新執行個體，使用手動執行個體替換來測試更新的生命週期指令碼。如需詳細說明，請參閱[手動取代節點](https://docs.aws.amazon.com//sagemaker/latest/dg/sagemaker-hyperpod-resiliency-slurm-replace-faulty-instance.html#sagemaker-hyperpod-resiliency-slurm-replace-faulty-instance-replace)。請注意，只有工作者節點可以取代。