什麼是 Amazon EC2 Auto Scaling? - Amazon EC2 Auto Scaling

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

什麼是 Amazon EC2 Auto Scaling?

Amazon EC2 Auto Scaling 可協助您確保擁有正確數量的 Amazon EC2 執行個體可用來處理應用程式的負載。您可以建立EC2執行個體集合,稱為「Auto Scaling」群組。您可以指定每個 Auto Scaling 群組中的執行個體數量下限,而 Amazon EC2 Auto Scaling 可確保您的群組永遠不會低於此大小。您可以指定每個 Auto Scaling 群組中的最大執行個體數量,而 Amazon EC2 Auto Scaling 可確保您的群組永遠不會超過此大小。如果您在建立群組時或之後的任何時間指定所需的容量,Amazon EC2 Auto Scaling 可確保您的群組擁有這麼多執行個體。如果您指定擴展政策,Amazon EC2 Auto Scaling 可以在應用程式的需求增加或減少時啟動或終止執行個體。

例如,下列 Auto Scaling 群組的大小下限為四個執行個體、所需容量為六個執行個體,以及 12 個執行個體的大小上限。您定義的擴展政策,會根據您指定的條件,在您的執行個體數最大和最小值間,調整執行個體的數量。

Auto Scaling 群組中的基本架構圖VPC。

Amazon EC2 自 Auto Scaling 的功能

使用 Amazon EC2 Auto Scaling,您的EC2執行個體會被組織成 Auto Scaling 群組,以便為擴展和管理目的將它們視為邏輯單位。Auto Scaling 群組會使用啟動範本 (或啟動設定) 做為其EC2執行個體的組態範本。

以下是 Amazon EC2 Auto Scaling 的主要功能:

監視執行中執行個體的健康狀

Amazon EC2 Auto Scaling 會使用運作狀態檢查自動監控執行個體的運作EC2狀態和可用性,並取代已終止或受損的執行個體以維持所需的容量

自訂運作狀態檢查

除了內建的健康狀態檢查之外,您還可以定義應用程式特定的自訂運作狀態檢查,以確認其是否如預期般回應。如果執行個體未通過自訂運作狀態檢查,系統會自動更換該執行個體以維持您想要的容量

跨可用區域的容量平衡

您可以為 Auto Scaling 群組指定多個可用區域,而 Amazon EC2 Auto Scaling 會在群組擴展時,在可用區域之間平均平衡執行個體。這樣可以保護您的應用程式免於單一位置發生故障,以提供高可用性和復原能力。

使用多種執行個體類型與購買選項

在單一 Auto Scaling 群組中,您可以啟動多種執行個體類型和購買選項 (Spot 和隨需執行個體),讓您透過 Spot 執行個體使用情況將成本最佳化。您也可以將預留執行個體和 Savings Plan 折扣與群組中的隨需執行個體搭配使用,以利用這些折扣。

自動替換 Spot 執行個體

如果您的群組包含競價型執行個體,Amazon EC2 Auto Scaling 可以在 Spot 執行個體中斷時自動請求替換 Spot 容量。透過容量重新平衡,Amazon EC2 Auto Scaling 還可以監控並主動更換面臨中斷風險較高的 Spot 執行個體。

負載平衡

您可以使用 Elastic Load Balancing 負載平衡和健康狀態檢查,確保應用程式流量均勻分配到健康狀態良好的執行個體。每當啟動或終止執行個體時,Amazon EC2 Auto Scaling 都會自動從負載平衡器註冊和取消註冊執行個體。

可擴展性

Amazon EC2 Auto Scaling 也提供數種擴 Auto Scaling 群組的方式。使用 auto 擴充功能可讓您增加容量來處理尖峰負載,並在需求較低時移除容量,以維持應用程式可用性並降低成本。您也可以視需要手動調整「Auto Scaling」群組的大小。

執行個體重新整理

執行個體重新整理功能提供了一種機制,讓您在更新AMI或啟動範本時以滾動方式更新執行個體。您也可以使用階段化方法 (稱為初期測試部署),在一小組執行個體上測試新範本AMI或啟動範本,然後再將範本推出至整個群組。

lifecycle hook

生命週期掛接對於定義在新執行個體啟動時或執行個體終止之前叫用的自訂動作非常有用。此功能對於建置事件導向架構特別有用,但也可協助您在執行個體的生命週期中管理執行個體。

Support 可設定狀態工作負載

生命週期掛接還提供了一種機制,用於在關閉時保持狀態。為了確保可設定狀態應用程式的持續性,您也可以使用擴充保護或自訂終止原則,防止具有長時間執行程序的執行個體提前終止。

如需 Amazon EC2 Auto Scaling 優勢的詳細資訊,請參閱應用程式架構的 Auto Scaling 優勢

Amazon EC2 自 Auto Scaling 的定價

使用 Amazon EC2 Auto Scaling 無需額外費用,因此您可以輕鬆嘗試一下,看看它如何使您的 AWS 架構受益。您只需為使用的 AWS 資源 (例如EC2執行個體、EBS磁碟區和 CloudWatch 警示) 付費。

開始使用

若要開始,請完成「建立您的第一個 Auto Scaling」群組教學課程,以建立 Auto Scaling 群組,並查看該群組中的執行個體終止時如何回應。

使用 Auto Scaling 群組

您可以使用下列任一介面來建立、存取和管理您的 Auto Scaling 群組:

  • AWS Management Console – 提供 Web 介面,讓您用來存取 Auto Scaling 群組。如果您已註冊,則可以登入 AWS 帳戶,使用導覽列上的搜尋方塊搜尋「自動調整比例」群組 AWS Management Console,然後選擇「Auto Scaling 整比例」群組,以存取 Auto Scaling 群組

  • AWS Command Line Interface (AWS CLI) — 提供多組指令 AWS 服務,並在視窗、macOS 和 Linux 上受支援。若要開始使用,請參閱準備使用 AWS CLI。如需詳細資訊,請參閱《AWS CLI 命令參考》中的 autoscaling

  • AWS Tools for Windows PowerShell— 為在 PowerShell 環境中編寫指令碼的使用者提供多種 AWS 產品的指令。若要開始使用,請參閱《AWS Tools for Windows PowerShell 使用者指南》。如需詳細資訊,請參閱《AWS Tools for PowerShell Cmdlet 參考》。

  • AWS SDKs— 提供特定語言的API作業,並處理許多連線詳細資料,例如計算簽章、處理要求重試和處理錯誤。如需詳細資訊,請參閱AWS SDKs

  • 查詢 API — 提供您使用HTTPS要求呼叫的低階API動作。使用查詢API是最直接的訪問方式 AWS 服務。不過,查詢 API 需要您的應用程式處理低階詳細資訊,例如產生雜湊以簽署要求以及處理錯誤。如需詳細資訊,請參閱 Amazon EC2 Auto Scaling API 參考資料。

  • AWS CloudFormation— 支持使用 CloudFormation 模板創建 Auto Scaling 組。如需詳細資訊,請參閱使用 AWS CloudFormation建立 Auto Scaling 群組

若要以程式設計方式連線到 AWS 服務,請使用端點。如需呼叫 Amazon EC2 Auto Scaling 的端點的相關資訊,請參閱最高機密區域中最高機密區域中的 務的配額