AWS Cost Anomaly Detection 基本
機械学習を使って AWS 利用料金の異常な増加を自動検出するサービス
何ができるか
AWS Cost Anomaly Detection は、機械学習モデルを使って AWS の利用料金パターンを学習し、通常とは異なるコストの急増を自動的に検出するサービスです。サービス単位、アカウント単位、コスト配分タグ単位などでモニターを設定でき、異常を検出すると SNS やメールで通知します。予期しない課金の早期発見に役立ちます。
どのような場面で使うか
開発者が誤って高額なインスタンスを起動した場合の早期検知、不正アクセスによるリソースの不正利用の発見、設定ミスによるデータ転送量の急増の検出などに活用されています。マルチアカウント環境で各アカウントのコスト異常を一元的に監視する用途にも利用されます。
身近な例え
クレジットカード会社の不正利用検知システムに例えるとわかりやすいでしょう。普段の利用パターンを学習し、いつもと違う高額な請求が発生すると「この利用は本当にあなたですか?」とアラートを送ってくれます。身に覚えのない請求を早期に発見できます。
AWS Cost Anomaly Detection とは
AWS Cost Anomaly Detection は、AWS の利用料金に異常なパターンが発生した際に自動的に検出・通知するサービスです。AWS の料金は従量課金のため、設定ミスやリソースの消し忘れで予想外の高額請求が発生することがあります。Cost Anomaly Detection は過去の利用パターンを機械学習で分析し、通常の変動範囲を超えるコスト増加を検出します。AWS Cost Explorer の一機能として無料で利用できます。
モニターとアラートの設定
Cost Anomaly Detection では「モニター」を作成してコストの監視対象を定義します。AWS サービス単位、連結アカウント単位、コスト配分タグ単位、コストカテゴリ単位の 4 種類のモニタータイプがあります。モニターに「サブスクリプション (通知設定)」を紐づけることで、異常検出時に SNS トピックやメールアドレスに通知を送信できます。通知の閾値として金額やパーセンテージを設定し、軽微な変動でアラートが頻発するのを防げます。
異常の分析と対処
異常が検出されると、どのサービス・アカウント・リージョンでコストが増加したかの内訳が表示されます。根本原因の分析情報も提供されるため、問題の特定が容易です。たとえば「EC2 の m5.xlarge インスタンスが us-west-2 で急増」のように具体的な情報が示されます。検出された異常は過検知の場合もあるため、各異常に対してフィードバック (正しい検知か誤検知か) を返すことで、検出精度を向上させることができます。
注意点
- Cost Anomaly Detection 自体は無料で利用できる。追加料金は発生しない
- 機械学習モデルの学習には過去のコストデータが必要なため、新規アカウントでは検出精度が低い場合がある
- リアルタイム検出ではなく、コストデータの反映に数時間のタイムラグがある。即座の検知が必要な場合は CloudWatch アラームとの併用を検討すること
この分野について体系的に学びたい方は、関連書籍 (Amazon) も参考になります。