本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。
更新使用自動擴展的端點
當您更新端點時,Application Auto Scaling 會檢查該端點上是否有任何模型是自動擴展的目標。如果更新會變更作為自動擴展目標的任何模型的執行個體類型,則更新會失敗。
在 中 AWS Management Console,您會看到警告,指出您必須先從自動擴展取消註冊模型,才能更新模型。如果您嘗試透過呼叫 UpdateEndpoint API 來更新端點,呼叫會失敗。更新端點之前,請刪除為其設定的任何擴展政策,並透過呼叫 DeregisterScalableTarget Application Auto Scaling API 動作,將變體取消註冊為可擴展的目標。更新端點之後,您可以將更新的變體註冊為可擴展的目標,並連接擴展政策。
有一種例外狀況。如果您變更針對自動擴展設定的變體模型,Amazon SageMaker AI 自動擴展允許更新。這是因為變更模型通常不會影響足以變更擴展行為的效能。如果您確實更新了針對自動擴展設定的變體的模型,請確保模型的變更不會顯著影響效能和擴展行為。
當您更新已套用自動擴展的 SageMaker AI 端點時,請完成下列步驟:
更新已套用自動擴展的端點
-
呼叫 DeregisterScalableTarget,將端點從可擴展的目標解除登錄。
-
由於自動擴展會在更新操作進行期間遭到封鎖 (或者如果您在上一個步驟中關閉自動擴展),因此您可能想要採取額外的預防措施,以在更新期間增加端點的執行個體數量。若要執行此作業,請呼叫 UpdateEndpointWeightsAndCapacities,更新端點託管生產變體的執行個體計數。
-
重複呼叫 DescribeEndpoint,直到回應
EndpointStatus
欄位的值為 為止InService
。 -
呼叫 DescribeEndpointConfig 以取得目前端點組態的值。
-
呼叫 CreateEndpointConfig 來建立新的端點組態。對於您要保留現有執行個體計數或權重的生產變體,請在上一個步驟中使用從呼叫 DescribeEndpointConfig 的回應中的相同變體名稱。對於所有其他值,請使用您在上一個步驟中呼叫 DescribeEndpointConfig 時取得的作為回應的值。
-
呼叫 UpdateEndpoint 來更新端點。將您在上一步中建立的端點組態指定為
EndpointConfig
欄位。如果要保留執行個體計數或加權等變體屬性,請將RetainAllVariantProperties
參數值設定為True
。這會指定具有相同名稱的生產變體將使用最新版本DesiredInstanceCount
進行更新,這是來自對DescribeEndpoint
的呼叫所得的回應,而不管新EndpointConfig
中InitialInstanceCount
欄位值為何。 -
(選用) 透過呼叫 RegisterScalableTarget 和 PutScalingPolicy 來重新啟用自動擴展。
注意
只有在因下列變更而更新端點時,才需要進行步驟 1 和 7:
-
變更已設定自動擴展之生產變體的執行個體類型
-
移除已設定自動擴展的生產變體。