PERF02-BP05 利用資源的可用彈性
雲端提供的彈性可透過各種機制來動態擴展和減少資源,以滿足需求的變化。結合此彈性和運算相關指標,工作負載可以自動因應變更,使用需要的資源且僅用需要的資源。
常見的反模式:
-
您過度佈建以涵蓋可能的峰值。
-
您可以手動增加容量,對警示做出反應。
-
您增加容量而未考慮佈建時間
-
您在擴展事件之後維持增加容量,而不是縮減規模。
-
您監控未直接反映工作負載真實要求的指標。
建立此最佳實務的優勢:需求可以是固定、可變、遵循模式或尖峰。平衡供需關係可將工作負載成本降到最低。彈性地監控、測試和設定工作負載,可以最佳化效能、節省成本,以及隨著用量需求變更來改善可靠性。雖然利用手動方法來達成這個目的是可行的,但是在較大規模下不切實際。自動化及指標式方法可確保資源隨時符合需求。
未建立此最佳實務時的風險暴露等級:中
實作指引
應該使用指標式自動化來利用彈性,其目標是您擁有的資源供應符合您的工作負載需要的資源需求。例如,您可以使用 Amazon CloudWatch 指標來監控您的資源
結合與運算相關的指標,工作負載可以自動回應變更,並使用最佳資源集來實現目標。您也必須規劃佈建時間和潛在資源失敗。
執行個體、容器和函數提供了彈性機制,可以是服務的功能、Application Auto Scaling
針對要部署的工作負載類型來驗證擴展或縮減彈性資源的指標。例如,如果您要部署影片轉碼應用程式,則預期為 100% CPU 使用率,且不應做為您的主要指標。或者,您可以針對等待擴展執行個體類型的轉碼任務的佇列深度,來進行測量。
工作負載部署需要同時處理縱向擴展和縮減規模事件。安全地縮減工作負載元件,與在必要時擴展資源一樣重要。
建立擴展事件的測試案例,以確認工作負載如預期般運作。
實作步驟
-
利用歷史資料來分析您的工作負載隨著時間的資源需求。詢問如下的特定問題:
-
您的工作負載是否穩定並且以已知的速率隨著時間增加?
-
您的工作負載季節性以可重複的模式增加或減少?
-
您的工作負載是否處於尖峰? 峰值是否可以預期或預測?
-
-
盡可能多利用監控服務和歷史資料。
-
標記資源可以協助監控。使用標記時,請參閱標記最佳實務。此外,標記可以協助您管理、識別和組織資源。
-
搭配 AWS,您可以使用各種不同的方法使供需相符。成本最佳化支柱最佳實務 (COST09-BP01 到 COST09-03) 說明如何對成本使用下列方法:
-
建立縮減事件的測試案例,以確認工作負載如預期般運作。
-
大多數非生產執行個體在未使用時應該予以停止。
-
對於使用 Amazon Elastic Block Store (Amazon EBS) 時的儲存需求,請利用容量型彈性。
-
對於 Amazon Elastic Compute Cloud (Amazon EC2)
,請考慮使用 Auto Scaling 群組,讓您透過在需求高峰期間自動增加運算執行個體數量,並在需求減少時減少容量,藉此最佳化效能和成本。
資源
相關的最佳實務:
相關文件:
相關影片:
相關範例: