本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。
Amazon EC2 Auto Scaling 執行個體
Auto Scaling 群組中的EC2執行個體具有與其他EC2執行個體不同的路徑或生命週期。當 Auto Scaling 群組啟動執行個體並使其執行服務,生命週期就會開始。當您終止執行個體,或 Auto Scaling 群組停止並終止執行個體的服務,生命週期也隨之結束。
注意
在執行個體啟動後,馬上就會向您收取費用,即使它們尚未提供服務。
下圖顯示 Amazon EC2 Auto Scaling 生命週期中執行個體狀態之間的轉換。
擴展
下列向外延展事件會引導 Auto Scaling 群組啟動EC2執行個體並將其附加至群組:
-
您可以手動方式增加群組的大小。如需詳細資訊,請參閱更改現有 Auto Scaling 群組的所需容量。
-
您可建立一個擴展政策,依照指定的增加需求來自動擴大群組大小。如需詳細資訊,請參閱Amazon EC2 Auto Scaling 的動態擴展。
-
您可藉由排程來設定擴展,在特定時間增加群組的大小。如需詳細資訊,請參閱Amazon EC2 Auto Scaling 的排程擴展。
發生向外延展事件時,Auto Scaling 群組會使用其指派的啟動範本啟動所需數量的EC2執行個體。這些執行個體在開始時為 Pending
狀態。如果新增 lifecycle hook 到 Auto Scaling 群組,您可以在此執行自訂動作。如需詳細資訊,請參閱lifecycle hook。
當每個執行個體完全設定並通過 Amazon 運作EC2狀態檢查時,它會連接到 Auto Scaling 群組,並進入該InService
狀態。執行個體會計入 Auto Scaling 群組的所需容量。
如果您的 Auto Scaling 群組設定為接收來自 Elastic Load Balancing 器的流量,Amazon EC2 Auto Scaling 會在將執行個體標記為之前,自動向負載平衡器註冊您的執行個體InService
。
以下概述了向外延展事件向負載平衡器註冊執行個體的步驟。
服務中的執行個體
執行個體會保留組於 InService
狀態,除非以下狀況發生:
-
發生擴展事件,而 Amazon EC2 Auto Scaling 選擇終止此執行個體,以減少 Auto Scaling 群組的大小。如需詳細資訊,請參閱控制縮減期間應終止的 Auto Scaling 執行個體。
-
您將執行個體設為
Standby
狀態。如需詳細資訊,請參閱進入和結束待命。 -
您從 Auto Scaling 群組分開執行個體。如需詳細資訊,請參閱從 Auto Scaling 群組分離或連接執行個體。
-
執行個體未成功通過運作狀態檢查的數量,所以會從 Auto Scaling 群組移除、終止及取代。如需詳細資訊,請參閱Auto Scaling 群組中的執行個體運作狀態檢查。
縮減
下列縮放事件會指示 Auto Scaling 群組將EC2執行個體從群組中分離並終止它們:
-
您可以手動縮減群組的大小。如需詳細資訊,請參閱更改現有 Auto Scaling 群組的所需容量。
-
您可建立擴展政策,依照指定的需求縮減自動減少群組大小。如需詳細資訊,請參閱Amazon EC2 Auto Scaling 的動態擴展。
-
您可以按照時間表設定擴展,在特定的時間減少群組的大小。如需詳細資訊,請參閱Amazon EC2 Auto Scaling 的排程擴展。
每建立一個擴增事件,就必須建立對應的縮減事件。這有助於確保指派給您的應用程式的資源盡可能符合那些資源的需求。
縮減事件發生時,Auto Scaling 群組會終止一個或多個執行個體。Auto Scaling 群組使用終止政策來決定終止哪一個執行個體。正在從 Auto Scaling 群組終止的執行個體會進入 Terminating
狀態,無法回到服務狀態。
如果您的 Auto Scaling 群組設定為從 Elastic Load Balancing 器接收流量,Amazon EC2 Auto Scaling 會自動從負載平衡器取消註冊終止執行個體。取消註冊執行個體可確保所有新要求都會重新導向至負載平衡器的目標群組中的其他執行個體,同時允許與該執行個體的現有連線繼續,直到取消註冊延遲到期為止。
如果新增 lifecycle hook 到 Auto Scaling 群組,您可以在正在終止的執行個體上執行自訂動作。如需詳細資訊,請參閱lifecycle hook。最後,執行個體已完全終止,並進入 Terminated
狀態。
以下摘要說明如何針對擴充事件使用負載平衡器取消註冊執行個體的步驟。
分開執行個體
您可以將執行個體從 Auto Scaling 群組分開。在執行個體分開後,您可以分別管理 Auto Scaling 群組和執行個體,或將它連接到不同的 Auto Scaling 群組。
如需詳細資訊,請參閱從 Auto Scaling 群組分離或連接執行個體。
連接執行個體
您可以將符合特定準則的EC2執行中執行個體附加到 Auto Scaling 群組。在連接執行個體之後,它將以身為 Auto Scaling 群組的一部分受管理。
如需詳細資訊,請參閱從 Auto Scaling 群組分離或連接執行個體。
lifecycle hook
您可以新增 lifecycle hook 到 Auto Scaling 群組,讓您可以在執行個體啟動或終止時執行自訂動作。
當 Amazon EC2 Auto Scaling 回應向外擴充事件時,它會啟動一或多個執行個體。這些執行個體在開始時為 Pending
狀態。如果您新增 autoscaling:EC2_INSTANCE_LAUNCHING
lifecycle hook 至 Auto Scaling 群組,此執行個體會從 Pending
狀態變成 Pending:Wait
狀態。在您完成生命週期動作後,此執行個體會進入 Pending:Proceed
狀態。當執行個體完全設定時,它們會連接到 Auto Scaling 群組並進入 InService
狀態。
當 Amazon EC2 Auto Scaling 回應擴充事件時,會終止一個或多個執行個體。這些執行個體已從 Auto Scaling 群組分開,並進入 Terminating
狀態。如果您新增 autoscaling:EC2_INSTANCE_TERMINATING
lifecycle hook 至 Auto Scaling 群組,此執行個體會從 Terminating
狀態變成 Terminating:Wait
狀態。在您完成生命週期動作後,此執行個體會進入 Terminating:Proceed
狀態。當執行個體已完全終止,則會進入 Terminated
狀態。
如需詳細資訊,請參閱Amazon EC2 Auto Scaling lifecycle hook。
進入和結束待命
您可以將任何執行個體從 InService
狀態改為 Standby
狀態。這可讓您從服務中移除執行個體、疑難排解或變更,然後回到服務狀態。
處於 Standby
狀態的執行個體,會繼續由 Auto Scaling 群組管理。但是,它們不會成為您的應用程式中使用的一部分,除非您將其返回服務狀態。
如需詳細資訊,請參閱從 Auto Scaling 群組暫時移除執行個體。