DEVELOPER’s BLOG
技術ブログ
AWSにてクラウド財務管理(CFM)を実践するための3つのミッション
はじめに
AWSのコスト管理を実施するにあたり「Well-Architected Framework コスト最適化の柱」への考慮は欠かせません! その中でも「クラウド財務管理(CFM)」の実装は特に重要です! 今回は、そのクラウド財務管理(CFM)を実践するためにクリアすべきミッションを3つご紹介いたします。
目次
- クラウド財務管理(CFM)とは?
- ミッション① : コストの可視化
- ミッション② : コストの最適化
- ミッション③ : コストの計画・予測の確立
- まとめ
クラウド財務管理(CFM)とは?
まず初めに、クラウド財務管理(CFM)を一緒に確認しましょう。 クラウド財務管理(CFM)は、AWSにおいて「クラウド支出の最適化(FinOps)」=コスト管理を実践するための指標となり、
- 可視化
- 最適化
- 計画・予測の確立
の3つの項目から構成されています。 私たちAWSユーザは、クラウド支出の最適化(FinOps)の継続的な実践を、AWSからベストプラクティスとして推奨されています。 それでは、3つの項目をそれぞれミッションとし、適切な対応を1つずつ確認していきたいと思います。
ミッション① : コストの可視化
ミッション①は「コストの可視化」です。 実際にAWSのコスト管理を実施するためには、その第1段階として、AWSアカウントのコストの現状を把握しなければなりません。 とはいえ、コストの可視化を実践するためには、どのAWSサービスを採用するべきでしょうか?
AWSでは、コストの可視化のために下記のサービスを採用することを推奨しています。
- AWS Cost Explorer
- AWSコストのグラフ化によりコストの可視化が可能
- → レポートパラメータの使用による粒度別のコストデータ調査
- → 過去のコストデータの使用による向こう1年のコスト視覚化
- コスト分配タグ
- AWSリソースへのタグ付けによりコストの追跡・可視化が可能
- → キーと値の組み合わせによるコスト分類
- 例) キー : env
- 例) 値 : prod
- 注意点 : 各アカウントでのAWSリソースへのタグ付けだけでは不十分であり、ペイヤーアカウントでのコスト配分タグへの登録が必須
- AWS Tag Editor
- コスト分配タグを付け忘れたAWSリソースの検索およびタグの付与が可能
- → コスト分配タグの漏れの無い付与による徹底的なコスト管理
- AWS Cost and Usage Report(CUR) 2.0
- AWSコストの テーブル化 によりコストの可視化が可能
- → AWS Cost and Usage Report(CUR) 2.0の S3 への格納により Amazon Athena のSQLを使用したコストデータ分析が可能
- 特徴 : AWS Cost Explorerよりも詳細にコストの可視化・分析が可能
- AWS Cost and Usage Dashboard(CUD)
- AWSコストデータの ダッシュボード への一元的な表示によりコストの可視化が可能
- → AWS Cost and Usage Dashboard(CUD)の S3 への格納により Amazon QuickSight のSQLを使用したコストデータ分析が可能
- 特徴 : ダッシュボードの作成によるハイクオリティな可視化が可能
基本的には、AWS Cost Explorerやコスト分配タグにてコストの可視化を実践することができます。 しかしながら、本格的なコストの可視化を実践するためには、AWS CUR 2.0やAWS CUDの採用が推奨されます。 どのサービスを利用するかにより可視化のレベルが異なるため、環境や非機能要件に合わせて手段を適切に採用しましょう!
ミッション② : コストの最適化
ミッション②は「コストの最適化」です。 AWSのコスト管理の第2段階として、実際にAWSアカウントのコストの削減を実践していきましょう。
コストの最適化はAWSから推奨される手順があり、
- 需要に応じたスケジューリング
- 適切なインスタンスタイプ・ストレージの見直し
- 1と2を踏まえたReserved InstancesまたはSavings Plansの購入
の3つの項目から構成されています。 それでは、手順を3つのブロックに分けて確認していきます。
1. 需要に応じたスケジューリング
需要に応じたスケジューリングとは、例えば、開発環境などにおける常時稼働不要なサーバの夜間・土日の停止などを指します。 AWSでは、需要に応じたスケジューリングのために下記のサービスを採用することを推奨しています。
- Amazon EventBridge スケジューラ
- タスクへのスケジュールの指定によりAWSコストの最適化が可能
- → cron式やrate式の使用によるタスク別の詳細な時間管理
- AWS Lambda
- 必要な時間帯のみの関数の実行によりAWSコストの最適化が可能
- → トリガーとの同期により関数を実行
- → イベントの発生の検知により非同期で関数を実行
- AWS Systems Manager Resource Scheduler
- AWS System ManagerにてEC2インスタンスの管理をしている場合、EC2インスタンスへのスケジュールの指定によりAWSコストの最適化が可能
- → Quick Setupでの設定によりEC2インスタンスの起動と停止を自動で実行
- Amazon EC2 Auto Scaling
- Amazon EC2インスタンスへのスケジュールの指定によりAWSコストの最適化が可能
- → スケジュールされたアクションの作成により特定の時間帯に希望する分のキャパシティが増減
2. 適切なインスタンスタイプ・ストレージの見直し
AWSは、適切なインスタンスタイプ・ストレージの見直しに応じる適切な対応についてAWS Cost Optimization Hubにて確認することを推奨しています。
- AWS Cost Optimization Hub
- AWSアカウントへの推奨アクション(レコメンデーション)の一元化によりAWSコストの最適化に関する適切な戦略の特定が可能
- → 各アカウントにおけるアイドル状態のAWSリソースの検出
- → 各AWSリソースの適切なサイズやスペックの推奨
3. 1と2を踏まえたReserved InstancesまたはSavings Plansの購入
AWSは、さらなるコストの最適化を目指してReserved InstancesまたはSavings Plansを購入することを推奨しています。
- Reserved Instances(RI)
- 一定期間(1年or3年)の継続利用をコミットすることにより大幅な割引(最大-72%)が適用可能
- SPとの違い
- → 事前にインスタンスのタイプの指定が必要
- リージョン/インスタンスファミリー/テナンシー/OS/アベイラビリティーゾーン
- → 事前にインスタンスのタイプの指定が必要
- Savings Plans(SP)
- Reserved Instancesの後に発表された費用見積ツールであり、仕様はリザーブドインスタンスとほぼ同様だが高い柔軟性を持つ
- 一定期間(1年or3年)一定量の継続利用をコミットすることにより大幅な割引(最大-72%)が適用可能
- RIとの違い
- → 事前に対象サービスに対する1時間当たりに支払う利用金額の決定が必要
AWSアカウントにおいて既に採用しているサービスやリソースにより、スケジューリングの手段、見直しの箇所、および料金モデルが異なります。 ご自身のAWSアカウントの環境に最もマッチするサービスを見極めた上で、コストの最適化を適切に実践しましょう!
ミッション③ : コストの計画・予測の確立
ミッション③は「コストの計画・予測の確立」です。 AWSのコスト管理を 継続的に 実施するために、その最終段階として、AWSアカウントのコストの計画・予測を確立しなければなりません。 AWSでは、コストの計画・予測を確立するために下記のサービスを採用することを推奨しています。
- AWS Budgets
- AWSコストのカスタム予算の追跡によりコストの計画・予測の確立が可能
- → カスタム予算におけるしきい値の設定による予算超過時のアラート発信
- → 予算超過時アラートによるカスタムアクションの自動的な実行
- AWS Cost Anomaly Detection
- 機械学習を通じたAWSコスト異常検出と根本原因分析によりコストの計画・予測の確立が可能
- → AWSコストのカスタム異常しきい値の設定によるベースライン逸脱時のアラート発信
- → 高度な機械学習によるベースライン逸脱時アラートの根本原因分析
しきい値の逸脱時にアラート通知が可能なサービスを適切に実装することにより、あらかじめ定めた予算やコストの大幅なズレを未然に防ぎ、コストの計画・予測を確立しましょう!
まとめ
ここまで、クラウド財務管理(CFM)を実践するためにクリアすべき3つのミッションを順に見てきました。 ご自身のAWSアカウントのコスト管理を実施するための最適なサービスは見つかりましたでしょうか?
- ミッション① : コストの可視化
- ミッション② : コストの最適化
- ミッション③ : コストの計画・予測の確立
上記の3つのミッションを継続的に実践することで、クラウド財務管理(CFM)の実装を叶え、AWSのベストプラクティスに沿ったコスト管理を徹底しましょう! ご精読いただき、ありがとうございました。