成本優化

成本優化支柱包含在最低價格之下執行系統以產生商業價值的能力

成本優化支柱概述了設計原則、最佳實務和相關問題。您可以在成本優化支柱白皮書中找到實作的指引。

設計原則

有 five 項雲端成本優化設計原則:

定義

有 five 個雲端成本優化最佳實務方面:

如同 Well-Architected 架構內的其他支柱,有權衡事項需要考量,例如,該針對上市速度還是成本進行優化。在某些情況下,最好是針對速度來優化,例如快速上市、推出新功能,或只是滿足截止日期,而不是投資在預付成本優化。設計決策有時會因倉促而不是資料來引導,因為總是會有「以防萬一」過度補償的趨向,而不是花時間為最經濟實惠的部署做基準化分析測試。這恐怕會導致過度佈建和優化不足的部署。不過,若需要將內部部署環境內的資源「提升和轉移」至雲端,然後再實施優化,這是理性的選擇。前期對成本優化策略進行適當投資,並確保一致奉行最佳實務,避免不必要的過度佈建,可讓您更穩當地體現雲端的經濟效益。以下各節提供初始和持續實作工作負載雲端財務管理和成本優化的技術和最佳實務。

最佳實務

實作雲端財務管理

採用雲端之後,技術團隊因核准、採購和基礎架構部署週期縮短而加快創新速度。實現商業價值和財務成功需要新的雲端財務管理方法。此方法為雲端財務管理,透過在整個組織實作知識建置、計畫、資源和程序,打造整個組織的能力。

許多組織是由許多不同的單位組成,每個單位都具有不同的優先事項。以下能力將協助建立更高效的組織:讓您的組織與一系列約定的財務目標保持一致,並為組織提供達成這些目標所需的機制。有能力的組織將更快速地創新和建立,且面對任何內部或外部因素時更靈活、適應性更強。

在 AWS 中,您可以使用 Cost Explorer、Amazon Athena (選用)、搭配成本和用量報告 (CUR) 的 Amazon QuickSight,在整個組織中提供成本和用量感知。AWS 預算可針對成本和用量提供主動通知。AWS 部落格提供新服務和功能的相關資訊,確保您能夠隨時掌握最新的服務版本。

下列問題著重於成本優化方面的這些考量。

COST 1: 如何實作雲端財務管理?

建立成本優化職能部門時,請考慮使用團隊成員,並在團隊中增加 CFM 和 CO 方面的專家。現有的團隊成員將會了解組織目前的運作方式,以及如何快速實作改善。同時也考慮納入具有輔助或專業技能集的人員,例如分析和專案管理方面的人員。

在組織中實作成本感知時,請考慮改善現有的計畫和程序或在此基礎是上進行建置。在現有的程序和計畫中新增內容會比建立新的程序和計畫快得多。這會更快實現結果。

支出和用量感知

雲端提供的增強彈性和敏捷性,可促進創新和快節奏開發和部署。它消除了與佈建內部部署基礎架構相關的手動程序和時間,包括識別硬體規格、協商價格報價、管理採購訂單、安排裝運以及部署資源。然而,欲享有易用性和幾乎無限制的隨需容量,對於支柱需要換上新思維。

許多企業是以各種團隊執行多個系統之下所組成。能將資源成本歸因至個別組織或產品擁有者,能帶動高效使用的行為模式,有助於減少浪費。準確的成本歸因可讓您知道哪些產品具有真正的獲利能力,並就預算分配做出更明智的決策。

在 AWS 中,您可以使用 AWS Organizations 或 AWS Control Tower 來建立帳戶結構,如此可實現區隔並協助您分配成本和用量。您也可以對資源使用標記,利用商業和組織資訊確定用量和成本情況。使用 AWS Cost Explorer 查看您的成本和用量,或使用 Amazon Athena 和 Amazon QuickSight 建立自訂儀表板和分析。透過 AWS 預算的通知,以及使用 AWS Identity and Access Management (IAM) 和 Service Quotas 的控制措施,控制成本和用量。

下列問題著重於成本優化方面的這些考量。

COST 2: 您如何管控用量?
COST 3: 您如何監控用量和成本?
COST 4: 如何進行資源除役?

您可使用成本分配標籤為 AWS 用量和成本進行分類和追蹤。當您對 AWS 資源 (例如 EC2 執行個體或 S3 儲存貯體) 加上標籤時,AWS 就能以您的用量和標籤產生成本和使用報告。您可加上代表組織類別 (例如成本中心、工作負載名稱或擁有者) 的標籤,以便跨多項服務安排成本。

確保您在成本與用量報告和監控中使用正確的詳細資訊和精細度層級。如需高層級的洞見和趨勢,請透過 AWS Cost Explorer 使用每日精細度。如需更深入的分析和檢查,請使用 AWS Cost Explorer 中的每小時精細度,或 Amazon Athena 和搭配成本和用量報告 (CUR) 的 Amazon QuickSight 中的每小時精細度。

將加有標籤的資源結合實體生命週期追蹤 (員工、專案),可找出不再為組織產生價值且應當除役的孤立資源或專案。您可以設定帳單提醒,通知您預測的超支。

具有經濟效益的資源

為您的工作負載使用適當的執行個體和資源,是節約成本的關鍵。例如,假設報告程序在較小的伺服器上執行時要花五小時,但在兩倍昂貴的較大伺服器上執行只需一小時。這兩種伺服器產出的結果相同,但較小的伺服器經過一段時間會形成較高成本。

架構完善的工作負載會用最具成本效益的資源,帶來明顯正面的經濟影響。您並有機會可利用受管服務來降低成本。例如,與其維護伺服器以遞送電子郵件,可使用以訊息為單位收費的服務。

AWS 備有各種具有彈性且經濟的定價選項,讓您以最符合需要的方式獲取 EC2 和其他服務的執行個體。隨需執行個體讓您可以按時數為運算容量付費,無最低承諾的要求。Savings Plans 和預留執行個體與隨需定價相較,可節省高達 75% 的成本。使用 Spot 執行個體,您可善用未用的 Amazon EC2 容量,與隨需定價相較可節省高達 90% 的成本。Spot 執行個體適合用在系統能耐受使用伺服器叢集之處,其中個別伺服器能動態性地來去,例如無狀態 Web 伺服器、批次處理,或使用 HPC 和大型資料時。

選擇適當的服務也能降低用量和成本;例如 CloudFront 能將資料傳輸降至最低,甚至完全消除成本,例如在 RDS 上利用 Amazon Aurora 免於昂貴的資料庫授權成本。

下列問題著重於成本優化方面的這些考量。

COST 5: 您選擇服務時如何評估成本?
COST 6: 您選擇資源類型、大小和數量時,如何達成成本目標?
COST 7: 您如何使用定價模式降低成本?
COST 8: 您如何規劃資料傳輸費?

透過在選擇服務時考慮成本因素,並以 Cost Explorer 和 AWS Trusted Advisor 等工具定期審查 AWS 的使用情形,您可積極監測使用率,並隨之調整部署。

管理需求與供應資源

待您移至雲端後,即可僅為所需付費。您可以在需要時供應資源以符合工作負載需求,避免因過度佈建付出高昂成本和造成浪費。您也可以使用調節、緩衝區或佇列來修改需求,以讓需求變得平緩,並以較少的資源來滿足需求,從而降低成本,或稍後使用批次服務來處理。

在 AWS 中,您可自動佈建資源以符合工作負載需求。Auto Scaling 使用基於需求或時間的方法,讓您可以視需要新增和移除資源。若您能預期需求變更,則可省下更多成本,並確保資源符合工作負載需求。您可以使用 Amazon API Gateway 實作調節,或使用 Amazon SQS 在工作負載中實作佇列。這兩者都可讓您修改工作負載元件的需求。

下列問題著重於成本優化方面的這些考量。

COST 9: 如何管理需求和供應資源?

在設計修改需求與供給資源時,請主動思考用量模式、佈建新資源所需的時間,以及需求模式的可預測性。管理需求時,請確保您的佇列或緩衝區大小正確,而且在所需的時間內回應工作負載需求。

隨時間優化

隨著 AWS 推出新服務和功能,最佳實務是檢視現有架構決策,以確保持續發揮最大成本效益。隨著您的要求變更,請主動將不再需要的資源、整項服務和系統加以除役。

透過實作新功能或資源類型可逐步優化工作負載,同時盡量減少實作變更所需的工作量。這可隨著時間持續提高效率,並確保您持續使用最新的技術來降低營運成本。您也可以使用新的服務來取代工作負載中的元件,或將新元件新增至工作負載中。這可以大幅提高效率,因此定期檢閱工作負載並實作新服務和功能至關重要。

下列問題著重於成本優化方面的這些考量。

COST 10: 您如何評估新服務?

在定期審查您的部署時,請評估較新的服務能如何為您節省成本。例如,RDS 上的 Amazon Aurora 能降低關聯式資料庫的成本。使用 Lambda 等無伺服器函數時,無需操作和管理執行個體來執行程式碼。

資源

請參閱以下資源,進一步了解我們的成本優化最佳實務:

Cost Optimization Pillar
AWS Well-Architected Cost Optimization Labs
Well-Architected Tool
AWS Cost Management Blog
AWS Billing and Cost Management
AWS Tagging Strategies
Getting Started with Amazon EC2 Spot Instances
AWS Documentation