AWS自動擴展服務讓您能夠根據實際需求動態調整資源,從而優化性能。

AWS自動擴展服務讓您能夠根據實際需求動態調整資源,從而優化性能。

2024.04.22

AWS雲平台上一種非常簡單(且免費)的方式來物超所值就是使用自動擴展。自動擴展能夠提高容錯能力、可用性和成本管理,快速擴大或縮小規模以滿足流量需求,同時通過檢測並替換健康狀態不足以保留在基礎設施中的組件,保持成本在預算範圍內。

自動擴展的一些關鍵好處包括:

AWS提供了多個服務,幫助自動擴展基礎設施組件並減少與擴展相關的管理工作。這些服務通過CloudWatch監控和可觀測性服務進行中介。CloudWatch提供最高1秒的指標可見性、15個月的數據保留(指標)以及對指標進行計算的能力。這使得數字工程團隊能夠執行歷史分析,例如成本優化。除了指定的指標,團隊可以創建警報,並觸發自動擴展策略執行預定義的步驟,無論是擴展還是縮減。

AWS雲平台上的自動擴展服務

EC2實例自動擴展

EC2實例自動擴展幫助我們保持處理應用程序的入站流量請求所需的正確數量的EC2實例。我們可以創建一個EC2自動擴展組,這是一組EC2實例的集合。在該組中,我們可以指定一個最小值,以確保該組的大小永遠不會低於指定的大小。我們還可以指定EC2實例的最大數量,這確保該組的大小永遠不會超過指定的大小。這樣可以保持容量在最小和最大範圍內,並確保您的自動擴展組具有指定的所需容量。自動擴展還允許我們配置計劃的操作,這些操作可以在指定的時間更改最小、最大和所需的自動擴展組容量。

EC2實例自動擴展允許配置擴展策略,根據策略增加或減少您的基礎設施中的EC2實例數量以擴展或縮減。

有兩種類型的擴展:手動擴展,我們可以在其中將EC2實例附加到或從自動擴展組中分離,以及動態擴展,在動態擴展中,我們可以定義如何根據入站請求或具體資源利用率的變化來擴展自動擴展組容量。這允許我們配置策略,以便在諸如請求數量、CPU和內存利用率等因素方面根據策略進行擴展和縮減。

以下是三種動態擴展策略:

EC2自動擴展提供按需實例擴展和現貨艦隊實例自動擴展,通過它我們可以根據需求自動增加或減少現貨艦隊的當前容量。它可以在指定範圍內啟動(擴展)或終止(縮減)。

ECS容器服務自動擴展

彈性容器服務(ECS)自動擴展基於發布的容器CloudWatch指標,如CPU和內存使用率工作。它自動增加或減少ECS服務中容器任務的所需容量。CloudWatch指標可用於擴展(增加更多任務)以處理大量的入站請求,並在利用率低時縮減(移除任務)。

ECS自動擴展允許我們配置包括目標追踪、階梯式擴展和預定擴展動作的策略。

RDS存儲自動擴展

Amazon關聯式數據庫服務(RDS)支持MariaDB、MySQL、PostgreSQL、SQL Server和Oracle的存儲自動擴展,具有零停機時間的RDS存儲自動擴展能夠響應數據庫大小增長自動擴展附加到RDS數據庫的後端存儲卷。

RDS監控當前存儲消耗情況,當當前消耗接近實際配置的大小時向上擴展存儲容量,不影響當前數據庫操作並且不打擾當前數據庫交易。

Aurora自動擴展

AWS Aurora自動擴展動態調整Aurora副本的數量。您可以定義擴展策略,Aurora相應地行動。它擴展Aurora副本以處理數據庫連接性或工作負載的突然增加。當數據庫連接或工作負載減少時,Aurora自動擴展自動移除不需要的Aurora副本,因此客戶不會為不需要的副本實例被收費。

就像我們能夠在其他服務中定義擴展策略一樣,我們也可以在Aurora自動擴展中定義它們,它還允許我們配置可以管理的Aurora副本的最小和最大數量。Aurora自動擴展適用於Aurora的兩種引擎MySQL和PostgreSQL。

DynamoDB自動擴展

DynamoDB工作負載最困難的部分是預測讀寫容量單位。如果應用程序在特定時期需要高吞吐量,就沒有必要為整個時間過量配置容量單位。Amazon DynamoDB自動擴展會根據實際的流量請求模式代表您動態調整配置的吞吐量容量。

隨著工作負載的減少,應用程序自動擴展會減少配置的吞吐量容量單位,以便客戶不為任何不必要的容量付費。

使用DynamoDB自動擴展,我們可以在表或全局二級索引上創建擴展策略。我們可以在擴展策略中指定我們想要擴展讀容量還是寫容量(兩者都行),以及表或索引的最小和最大配置容量單位設置。

为自动扩展准备您的基础设施


为了使这些AWS自动扩展服务能够按预期运作,组织需要确保它们已经:

在使用EC2自动扩展时,团队已指定了冷却时间以及启动哪个应用程序,并准备在定义的时间内提供服务。

相關文章