View a markdown version of this page

使用時間型和負載型執行個體管理負載 - AWS OpsWorks

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

使用時間型和負載型執行個體管理負載

重要

AWS OpsWorks Stacks 此服務已於 2024 年 5 月 26 日終止,並已針對新客戶和現有客戶停用。我們強烈建議客戶盡快將其工作負載遷移至其他解決方案。如果您對遷移有任何疑問,請透過 AWS re:Post 或透過 AWS Premium Support 聯絡 AWS 支援 團隊。

隨著您的傳入流量變化,您的堆疊擁有的執行個體數可能會太少而無法正常處理負載,或是超過所需數太多。您可以透過使用時間式或負載式的執行個體,自動增加或減少 layer 的執行個體,來節省時間和金錢,以讓您總有足夠的執行個體來適當處理傳入流量,而無須為不需要的容量支付費用。您無須監控伺服器負載,也無須手動啟動或停止執行個體。此外,時間式和負載式的執行個體會自動分散、擴展和平衡區域內多個可用區域的應用程式,給予您備援及延展性。

自動擴展是以兩個執行個體類型為基礎,會根據不同的條件調整 layer 的線上執行個體。

  • Time-based (時間式) 執行個體

    他們允許堆疊透過包含只在特定時間或特定幾天執行的執行個體,來處理遵循可預測模式的負載。例如,您可以在下午 6 點之後啟動一些執行個體,來執行每天晚上的備份任務,或是在週末流量較低時停止某些執行個體。

  • Load-based (負載式) 執行個體

    他們允許堆疊透過在流量較高時啟動額外執行個體,並在流量較低時停止執行個體,來根據幾項負載指標中的任何指標來處理變動的負載。例如,當平均 CPU 使用率超過 80% 時,您可以讓 OpsWorks Stacks 啟動執行個體,並在平均 CPU 負載低於 60% 時停止執行個體。

時間式和負載式執行個體都支援 Linux 堆疊,但 Windows 堆疊只能使用時間式執行個體。

與您必須手動啟動和停止的全年無休執行個體不同,您不會自行啟動或停止時間式或負載式執行個體。反之,您可以設定執行個體,而 OpsWorks Stacks 會根據其組態啟動或停止執行個體。例如,您將時間型執行個體設定為依指定的排程啟動和停止。然後, OpsWorks Stacks 會根據該組態啟動和停止執行個體。

常見的實務便是同時使用三種執行個體類型,如下所示。

  • 一組全年無休的執行個體,處理基本負載。您通常只需啟動這些執行個體,並讓他們持續執行即可。

  • 一組以時間為基礎的執行個體,Stacks OpsWorks 會開始和停止處理可預測的流量變化。例如,或您的流量在工作時間內最高,您會將時間式執行個體設為在上午啟動,並在傍晚關機。

  • 一組負載型執行個體,Stacks OpsWorks 會開始和停止處理無法預測的流量變化。 OpsWorks 當負載接近堆疊全年無休和時間型執行個體的容量時,Stacks 會啟動它們,並在流量恢復正常時停止它們。

如需如何使用這些擴展時間的詳細資訊,請參閱最佳化應用程式伺服器的數目

注意

如果您已為執行個體的 layer 建立應用程式或建立自訂技術指南,則 OpsWorks Stacks 會在執行個體首次啟動時,自動將最新版本部署到時間型執行個體和負載型執行個體。不過, OpsWorks Stacks 不一定會部署最新的技術指南以重新啟動離線執行個體。如需詳細資訊,請參閱編輯應用程式更新自訂技術指南

負載型擴展與自動修復有何不同

自動負載式擴展使用所有執行中執行個體的平均負載指標。如果指標保持在指定的閾值之間, OpsWorks Stacks 不會啟動或停止任何執行個體。另一方面,透過自動修復,當執行個體停止回應時, OpsWorks Stacks 會自動啟動具有相同組態的新執行個體。執行個體可能會因網路問題或執行個體的一些問題而無法回應。

例如,假設您的 CPU 升級閾值為 80%,且一個執行個體停止回應。

  • 如果停用自動修復,且剩餘的執行中執行個體可以將平均 CPU 使用率保持在 80% 以下,則 OpsWorks Stacks 不會啟動新的執行個體。它只會在剩餘執行個體的平均 CPU 使用率超過 80% 時啟動取代用執行個體。

  • 如果啟用自動修復,無論負載閾值為何, OpsWorks Stacks 都會啟動替換執行個體。