

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

# HyperPod 上模型部署的任務治理
<a name="sagemaker-hyperpod-model-deployment-task-gov"></a>

本節涵蓋如何針對即時推論工作負載最佳化您共用的 Amazon SageMaker HyperPod EKS 叢集。您將了解如何設定 Kueue 的任務治理功能，包括配額管理、優先順序排程和資源共用政策，以確保您的推論工作負載在流量突增期間取得其所需的 GPU 資源，同時維持團隊訓練、評估和測試活動之間的公平分配。如需更多關於任務治理的一般資訊，請參閱 [SageMaker HyperPod 任務治理](sagemaker-hyperpod-eks-operate-console-ui-governance.md)。

## 推論工作負載管理的運作方式
<a name="sagemaker-hyperpod-model-deployment-task-gov-how"></a>

若要有效管理共用 HyperPod EKS 叢集中的即時推論流量突增，請使用 Kueue 的現有功能實作下列任務治理策略。

**優先順序類別組態**

為具有高權重 (例如 100) 的推論工作負載定義專用優先順序類別，以確保在其他任務類型之前接納和排程推論 Pod。此組態可讓推論工作負載在叢集載入期間先佔優先順序較低的任務，這對於在流量激期間維持低延遲要求至關重要。

**配額大小和配置**

在您團隊的 `ClusterQueue` 中保留足夠的 GPU 資源，以處理預期的推論突增。在低推論流量期間，未使用的配額資源可以暫時分配給其他團隊的任務。當推論需求增加時，可以回收這些借用的資源，以排定待定推論 Pod 的優先順序。如需詳細資訊，請參閱[叢集配額](https://kueue.sigs.k8s.io/docs/concepts/cluster_queue/)。

**資源共用策略**

根據您的要求，在兩種配額共用方法之間進行選擇：

1. **嚴格資源控制：**停用配額借出和借用，以保證您的工作負載始終有預留 GPU 容量可用。此方法需要夠大的配額大小，才能獨立處理尖峰需求，但可能在低流量期間造成閒置節點。

1. **彈性資源共用：**啟用配額借用，以在需要時利用其他團隊中的閒置資源。借用的 Pod 會標記為可先佔，但如果借出團隊回收容量，則可能會將其移出。

**團隊內先佔**

在相同配額下執行混合工作負載 (評估、訓練和推論) 時，啟用團隊內先佔。這可讓 Kueue 先佔團隊內的低優先順序任務，以容納高優先順序推論 Pod，確保即時推論可以在不依賴外部配額借用的情況下執行。如需詳細資訊，請參閱[先佔](https://kueue.sigs.k8s.io/docs/concepts/preemption/)。

## 範例推論工作負載設定
<a name="sagemaker-hyperpod-model-deployment-task-gov-example"></a>

下列範例展示 Kueue 如何管理共用 Amazon SageMaker HyperPod 叢集中的 GPU 資源。

**叢集組態和政策設定**  
您的叢集具有下列組態：
+ **團隊 A**：10 P4 GPU 配額
+ **團隊 B**：20 P4 GPU 配額
+ **靜態佈建**：無自動擴展
+ **總容量**：30 P4 GPU

共用 GPU 集區使用此優先順序政策：

1. **即時推論**：優先順序 100

1. **訓練**：優先順序 75

1. **評估**：優先順序 50

Kueue 會強制執行團隊配額和優先順序類別，並啟用先佔和配額借用。

**初始狀態：正常叢集使用率**  
在正常操作中：
+ 團隊 A 在所有 10 個 P4 GPU 上執行訓練和評估任務
+ 團隊 B 在其 20 GPU 配額內執行即時推論 (10 個 P4) 和評估 (10 個 P4)
+ 叢集已充分利用，所有任務均已接納並執行中

**推論突增：團隊 B 需要額外的 GPU**  
當團隊 B 遇到流量突增時，其他推論 Pod 需要額外 5 個 P4 GPU。Kueue 偵測到新 Pod：
+ 在團隊 B 的命名空間內
+ 優先順序 100 (即時推論)
+ 由於配額限制條件而等待接納

**Kueue 的回應程序會在兩個選項之間進行選擇：**  
**選項 1：配額借用** - 如果團隊 A 只使用其 10 個 P4 中的 6 個，Kueue 可以使用閒置的 4 個 P4 來接納團隊 B 的 Pod。不過，這些借用的資源是可先佔的 - 如果團隊 A 提交任務達到其完整配額，Kueue 會移出團隊 B 借用的推論 Pod。

**選項 2：自我先佔 (建議)** - 團隊 B 執行低優先順序評估任務 (優先順序 50)。當高優先順序推論 Pod 等待時，Kueue 會先佔團隊 B 配額內的評估任務，並接納推論 Pod。此方法提供安全的資源分配，沒有外部移出風險。

Kueue 遵循三步驟程序來分配資源：

1. **配額檢查**

   問題：團隊 B 是否有未使用的配額？
   + 是 → 接納 Pod
   + 否 → 繼續進行步驟 2。

1. **團隊 B 內的自我先佔**

   問題：是否可以先佔低優先順序團隊 B 任務？
   + 是 → 先佔評估任務 (優先順序 50)、釋出 5 個 P4，以及接納推論 Pod
   + 否 → 繼續進行步驟 3。

   這種方法將工作負載保持在團隊 B 的保證配額內，從而避免外部移出風險。

1. **從其他團隊借用**

   問題：是否有來自其他團隊的閒置、可借用配額？
   + 是 → 使用借用配額接納 (標記為可先佔)
   + 否 → Pod 保持 `NotAdmitted` 狀態