▌1. 什麼是AWS Cost Anomaly Detection (CAD)?
科普一下,使用 AWS Cost Anomaly Detection(CAD)[1] 的目的是,減少成本意外並增強控制性。AWS Cost Anomaly Detection 利用進階機器學習技術來”識別異常支出和根本原因”。另外,AWS Budgets[4] 則強調預算控制和警報,而它的粒度(granularity) 可以到AWS account 甚至是AWS services。
操作方式:透過三個簡單的步驟[2],1) 建立自己的情境監控器,2) 偵測到任何異常支出時收到提醒。讓建置者進行建置並讓 AWS Cost Anomaly Detection 監控你的支出,3)最後找出root cause 以及降低帳單意外風險[圖1]
AWS Cost Anomaly Detection(CAD) 底層運作其實是透過 AWS Cost Explorer API [2]獲取Billing,一旦設定了監控器和提醒偏好設定,AWS 將透過 Amazon SNS 或電子郵件使用個別提醒或每日或每週摘要來通知你,CAD的優勢則在於它的粒度可以小至Account 或是 Service,因此通知能夠針對不同的組織部門來做,如[圖2] DevOps team / Finance team有使用不同產品,用量不同通知門檻也自然會不一樣 eg. Sales部門拉受到通知,Finance 部門則不一定收到通知。
▌2. 比較表
AWS Cost Anomaly Detection和AWS Budgets都是AWS用於監控和控制用戶在AWS上的費用和資源使用的工具。然而,它們有以下幾個主要的差異點
AWS Cost Anomaly Detection AWS Budgets 粒度 較細 (Accounts 甚至是Services) 較粗 (總用量 ) 監控方式 自動分析 手動分析 管理性 較復雜 較簡單 告警通知 豐富(更多不同的警報閾值和頻率) 簡單 整合組織層 Yes No(account level)
▌3. 細項說明
1) 粒度(Granularity)
可以做到AWS account 甚至是AWS services,常見控制方式為 Cost Allocation Tag[3]以加入成本標籤。AWS 管理的角度下,Granularity(粒度)是指在管理和控制資源時,可以選擇和設定的程度和範圍。
以下是幾個從AWS角度解釋Granularity的不同面向:
💡 Tips
執行粒度:從整個基礎設施的集中管理到單個資源的細節控制 e.g 可以使用IAM 控制存取權限,IAM Role, Policy 各自分門別類使用
計費粒度:e.g 可以選擇對AWS服務進行按需計費,根據每小時、每分鐘或每秒的使用情況進行計費。
監控和日誌粒度:AWS提供不同細度的監控和日誌記錄功能,使User能夠細緻地檢查和分析資源的運行狀態和事件。e.g 可以使用AWS CloudTrail來記錄每個API呼叫的細節,或使用Amazon CloudWatch進行多維度的監控,CloudWatch log stream, Cloud Watch log group
2) 監控方法
AWS Cost Anomaly Detection會分析用戶在AWS上的使用模式和花費模式,重點在於自動識別”異常的變化”,並提供相應的警報和報告。對比 AWS Budgets則是讓用戶**”手動”**設置預算閾值,並在預算超出時發送警報。
💡 Tips
啟用AWS Cost Anomaly Detection,至少要24小時後才能有足夠的資訊供分析,這邊建議至少收集4個月期間,通常會包括月份內的低中高週期變化
3) 告警通知
AWS Cost Anomaly Detection 的賣點是,它可以監控 AWS 使用和費用,並識別不正常的變化。使用者可以設置不同的警報閾值和頻率,以根據其不同的業務需求向不同的利益相關者發送警報和報告,實務上告警送往部門或是各自管理員)。此外,使用者可以輕鬆地創建多個費用監控器和警報訂閱,以便更好地了解其 AWS 費用的使用情況和趨勢,並采取相應的行動。這樣可以幫助組織更好地控制 AWS 使用和費用,提高效率,節省成本。
💡 Tips
透過自動偵測提醒,一般而言是綁電子郵件或 Amazon SNS ,以選擇的頻率了解支出異常,另外也可以將提醒傳送至的 Slack 頻道[5],以支援協作和及時解決提醒。此外,可以串接AWS ChatBot,有興趣立即動手做請點選連結 [6]
▌3. 總結
總體而言,AWS Cost Anomaly Detection和AWS Budgets都可以幫助用戶控制和管理在AWS上的費用和資源使用,但AWS Cost Anomaly Detection更強調自動化分析和建議,而AWS Budgets更強調預算控制和警報,用戶可以根據自己的需求選擇使用哪一種工具或者兩者結合使用。
References
- [1] https://aws.amazon.com/tw/aws-cost-management/aws-cost-anomaly-detection/
- [2] https://docs.aws.amazon.com/zh_tw/cost-management/latest/userguide/ce-api.html
- [3] https://docs.aws.amazon.com/zh_tw/awsaccountbilling/latest/aboutv2/cost-alloc-tags.html
- [4] https://aws.amazon.com/tw/aws-cost-management/aws-budgets/
- [5] https://docs.aws.amazon.com/cost-management/latest/userguide/cad-alert-chime.html
- [6] https://aws.amazon.com/tw/aws-cost-management/resources/slack-integrations-for-aws-cost-anomaly-detection-using-aws-chatbot/
謝謝你的閱讀!我是黃大仙。
都市修行人 / 雲端架構師 / AWS講師 / 新手爸爸
喜歡研究不同領域事物,誠摯邀請一同交流學習!📒
如果有任何疑問,歡迎留下 Private Note 或留言給我!📒
👏1下 — — — — 給我一點鼓勵。
👏2~10下 — — -文章對你有幫助。
👏50下 — — — -有興趣看「閱讀分享」相關的分享。