

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

# 自動擴展政策概觀
<a name="endpoint-auto-scaling-policy"></a>

若要使用自動擴展，請定義新增和移除生產變體執行個體數量的擴展政策，以回應實際的工作負載。

若要在工作負載變化時自動擴展，您有兩個選項：目標追蹤和步進擴展政策。

在多數情況下，建議您使用目標追蹤擴展政策。透過目標追蹤，您可以選擇 Amazon CloudWatch 指標和目標值。自動擴展會建立和管理擴展政策的 CloudWatch 警示，並根據指標和目標值來計算擴展調整內容。該政策會根據需要來新增或移除執行個體數量，以讓指標保持在等於或接近指定目標值的值。例如，擴展政策如果使用預先定義的 `InvocationsPerInstance` 指標和 70 的目標值，可將 `InvocationsPerInstance` 保持在等於或接近 70。如需詳細資訊，請參閱《Application Auto Scaling 使用者指南》中的[目標追蹤擴展政策](https://docs.aws.amazon.com/autoscaling/application/userguide/application-auto-scaling-target-tracking.html)。

您可以在需要進階組態時使用步驟擴展，例如指定在何種情況下要部署的執行個體數目。例如，如果您想讓端點從零個作用中執行個體橫向擴充，您就必須使用步進擴展。如需進一步瞭解步進擴展政策，請參閱*《Application Auto Scaling 使用者指南》*中的[步進擴展政策](https://docs.aws.amazon.com/autoscaling/application/userguide/application-auto-scaling-step-scaling-policies.html)。

如要建立目標追蹤擴展政策，您必須指定以下項目：
+ **指標** — 要追蹤的 CloudWatch 指標，例如每個執行個體的平均調用次數。
+ **目標值** — 指標的目標值，例如每分鐘每個執行個體 70 次調用。

您可以使用預先定義的指標或自訂指標建立目標追蹤擴展政策。預先定義的指標會以列舉類型定義，如此您可以在程式碼中透過名稱來指定指標，或是在 SageMaker AI 主控台中使用指標。或者，您可以使用 AWS CLI 或 Application Auto Scaling API，根據預先定義或自訂的指標套用目標追蹤擴展政策。

請注意，擴展活動之間會有冷卻時間，以防止容量快速波動。您可自行選擇是否設定擴展政策的冷卻時間。

如需進一步瞭解自動擴展的重要概念，請參閱以下章節。

## 排程擴展
<a name="scheduled-scaling"></a>

您也可以建立排程動作，在特定時間執行擴展活動。您可以建立僅擴展一次或依週期性排程擴展的排程動作。執行排程動作之後，擴展政策可以繼續決定是否隨著工作負載變化動態擴展容量。排程擴展只能從 AWS CLI 或 Application Auto Scaling API 管理。如需詳細資訊，請參閱《Application Auto Scaling 使用者指南》中的[排程擴展](https://docs.aws.amazon.com/autoscaling/application/userguide/application-auto-scaling-step-scaling-policies.html)。

## 擴展限制上限和下限
<a name="endpoint-auto-scaling-target-capacity"></a>

設定自動擴展時，您必須先指定擴展限制，才能建立擴展政策。您可以分別為最小和最大值設定限制。

下限必須至少為 1，且必須小於或等於指定上限值。

上限必須大於或等於指定下限值。SageMaker AI 自動擴展功能不會強制為此值設定限制。

若要決定一般流量所需的擴展上限和下限，請使用預期的傳輸流量來傳送到您的模型，以測試您的自動擴展組態設定。

如果變體的流量變成 0，SageMaker AI 會自動將規模調整至指定的執行個體數量下限。在此情況下，SageMaker AI 會發出值 0 的指標。

有三種方式可以指定容量下限和上限：

1. 透過主控台更新**執行個體數量下限**和**執行個體數量上限**設定。

1. 執行 [register-scalable-target](https://docs.aws.amazon.com/cli/latest/reference/application-autoscaling/register-scalable-target.html) 命令時，請使用 AWS CLI 並包含 `--min-capacity`和 `--max-capacity`選項。

1. 呼叫 [RegisterScalableTarget](https://docs.aws.amazon.com/autoscaling/application/APIReference/API_RegisterScalableTarget.html) API 並指定 `MinCapacity` 和 `MaxCapacity` 參數。

**提示**  
您可以提高最小值來手動橫向擴充，或降低最大值來手動縮減。

## 冷卻時間
<a name="endpoint-auto-scaling-target-cooldown"></a>

模型縮減 (減少容量) 或橫向擴充 (增加容量) 時，會使用*冷卻時間*來防止過度擴展。這會減慢後續擴展活動，直到時間到期為止。更準確來說，這會封鎖縮減請求刪除執行個體的動作，並限制建立橫向擴充請求用的執行個體。如需詳細資訊，請參閱《Application Auto Scaling 使用者指南》**中的[定義冷卻時間](https://docs.aws.amazon.com/autoscaling/application/userguide/target-tracking-scaling-policy-overview.html#target-tracking-cooldown)。

您可以在擴展政策中設定冷卻時間。

如果您不指定縮減或橫向擴充的冷卻時間，則擴展政策會使用預設值 (各為 300 秒)。

在您測試擴展組態設定時，如果執行個體新增或移除的速度過快，請考慮增加此值。如果傳輸到您模型的資料流具有許多突增的峰值，或是您針對變體定義了多個擴展政策，就可能會出現前述的現象。

如果執行個體新增的速度不夠快，沒辦法因應增加的傳輸流量，請考慮減少此值。

## 相關資源
<a name="auto-scaling-related-resources"></a>

如需進一步瞭解自動擴展組態設定，請參閱以下資源：
+ *AWS CLI 命令參考*中的[應用程式自動擴展](https://docs.aws.amazon.com/cli/latest/reference/application-autoscaling)一節
+ [Application Auto Scaling API 參考](https://docs.aws.amazon.com/autoscaling/application/APIReference/)
+ [Application Auto Scaling 使用者指南](https://docs.aws.amazon.com/autoscaling/application/userguide/)

**注意**  
SageMaker AI 最近推出了以即時推論端點為基礎的新推論功能。您可以使用定義端點的執行個體類型和初始執行個體數量的端點組態來建立 SageMaker AI 端點。接著，建立一個推論元件，也就是可以用來將模型部署到端點的 SageMaker AI 託管物件。如需有關擴展推論元件的資訊，請參閱 AWS 部落格上的 [SageMaker AI 新增了新的推論功能，以協助降低基礎模型部署成本和延遲](https://aws.amazon.com/blogs/aws/amazon-sagemaker-adds-new-inference-capabilities-to-help-reduce-foundation-model-deployment-costs-and-latency/)，以及[使用 SageMaker AI 的最新功能平均降低 50% 的模型部署成本](https://aws.amazon.com/blogs/machine-learning/reduce-model-deployment-costs-by-50-on-average-using-sagemakers-latest-features/)。