AWS 自動伸縮
組織遷移到雲的一個重要原因是,根據客戶需求縮減辦公規模,並在滿足需求後進行擴充套件。藉助 AWS 自動伸縮,個人不僅可以在單個整合的介面中維護應用程式效能,還可以以最低的成本維護這些應用程式。
AWS 自動伸縮
AWS 自動伸縮是一項幫助使用者監控應用程式並自動調整容量以保持一致、可預測的效能並最大限度降低成本的服務。AWS 自動伸縮用於依賴於各種 AWS 服務進行擴充套件的應用程式。可以為多個 AWS 服務集中配置擴充套件策略。Amazon EC2 自動伸縮和應用程式自動伸縮服務可以組合幷包含在 AWS 自動伸縮中。
應用程式由 AWS CloudFormation 或 AWS Elastic Beanstalk 定義。
可以自定義擴充套件策略以最佳化可用性、成本或兩者兼而有之。擴充套件策略可以遵循效能指標(如 CPU 利用率)並新增或刪除容量以保持接近指標的目標值。
AWS 自動伸縮可以預測應用程式資源需求,並根據以下方面進行容量規劃:
Amazon EC2 例項和 Spot Fleet
Amazon AppStream 2.0 Fleet
Amazon ECS 任務
Amazon Aurora 副本
Amazon DynamoDB 表和索引
Amazon EMR 例項
AWS 自動伸縮的工作原理?
為每個應用程式源設計一個整合的擴充套件策略。
檢查應用程式並構建一個根據需求新增和刪除 EC2 例項的框架。
選擇所需的向上或向下擴充套件支援。
選擇要最佳化的內容。根據計劃,根據可預測的工作負載變化來擴充套件應用程式。
繼續跟蹤擴充套件負載並保持一致的例項計數。
擴充套件計劃
始終保持當前例項級別 - 使用此擴充套件計劃,使用者可以配置一個 AWS 自動伸縮組以始終保持執行例項的確切數量。
手動擴充套件 - 此擴充套件計劃允許使用者指定 AWS 自動伸縮組的理想容量。自動伸縮服務自行處理建立或終止例項的過程。
按需擴充套件 - 此擴充套件計劃允許使用者定義控制擴充套件策略的指標,例如 CPU 利用率、記憶體等。
按計劃擴充套件 - 此擴充套件計劃在使用者可以預測應用程式流量何時增加的情況下很有用。在這種情況下,使用者可以計劃 AWS 自動伸縮何時執行。
AWS 自動伸縮的優勢
設定各種資源的自動伸縮 - AWS 自動伸縮允許您在 AWS 管理控制檯中的一個位置為各種資源(CPU、網路輸入/輸出)設定目標利用率水平。
可靠性 - 自動擴充套件高效且可靠。它也更容易在一個地方完成,並且在啟動擴充套件時,AWS 可以向您傳送警報。
改進成本管理 - 您可以根據組織的需求立即向上或向下(水平)擴充套件多種服務。這使您可以節省管理這些服務的成本。
AWS 自動伸縮的缺點
使用 AWS 自動伸縮沒有明顯的缺點。但是,在實施之前,您應該瞭解一些常見事項。
區域限制 - AWS 自動伸縮服務僅在一個區域內有效,並且無法跨多個區域中的資源使用。您需要在每個區域分別建立 AWS 自動伸縮。因此,如果您有一個多區域應用程式,這可能是一個挑戰。
增加開發複雜性 - 整合自動伸縮可能會使管理和配置變得更加複雜。您需要額外的幫助來同步您的程式碼更改。
自動伸縮的功能
智慧擴充套件策略
它持續計算最佳擴充套件更改,並在需要時快速新增和刪除容量,以使您的指標保持在正軌上。
統一擴充套件
透過自動伸縮,我們可以從一個整合的介面配置所有為您的應用程式提供支援的可擴充套件資源的自動擴充套件,包括:
Amazon EC2 - 在 AWS 自動伸縮組中啟動或終止 EC2 例項。
Amazon Aurora - 逐步更改為 Aurora 資料庫叢集配置的 Aurora 讀取副本數量,以處理動態連線或負載的突然增加。
Amazon EC2 Spot Fleet - 從 Amazon EC2 Spot Fleet 啟動或終止 EC2 例項,或自動替換由於成本或容量原因而中斷的例項。
Amazon DynamoDB - 允許 DynamoDB 表或全域性輔助索引擴充套件其預配置的讀取和寫入容量,以處理峰值負載的突然增加,而不會造成瓶頸。
Amazon ECS - 更改 ECS 服務所需的計數,以向上或向下響應負載變化。
完全託管
它會自動為擴充套件計劃中的每個資源建立目標跟蹤擴充套件策略,並使用您選擇的擴充套件策略來調整每個指標的目標值。
自動資源發現
AWS 自動伸縮會過濾您的環境並識別可擴充套件的雲資源,從而自動配置您的應用程式,因此我們無需手動識別這些資源。
預測性擴充套件
它預測未來的流量,包括定期發生的峰值,並提前配置適當數量的 EC2 例項以應對預期變化。
內建擴充套件系統
透過 AWS 自動伸縮,我們可以選擇三種預定義的最佳化策略之一來最佳化效能、最佳化成本或實現平衡。我們還可以設定我們的目標資源利用率。
結論
AWS 自動伸縮允許您增加或減少資源以滿足由於特定定義的指標和限制而產生的需求。自動伸縮使您可以輕鬆地在幾分鐘內為跨多個服務的多種資源設定應用程式擴充套件。AWS 自動伸縮可免費使用。CloudWatch 支援 AWS 自動伸縮,因此管理費用適用於 CloudWatch 和您的應用程式資源,例如 Amazon EC2 例項、彈性負載均衡器等。
資料結構
網路
RDBMS
作業系統
Java
iOS
HTML
CSS
Android
Python
C 程式設計
C++
C#
MongoDB
MySQL
Javascript
PHP