はじめに
この度お客様が管理しているアカウントを横断して、コスト最低化を行うことになりました。
「何から手をつければいいの?」という方に向けて、AWS公式ドキュメント(Well-Architected コスト最適化の柱)に沿った進め方を、シンプルにまとめました。
注意点として、本記事は扱う内容はコスト最適化のための策を網羅するものではなくとりあえずここから始めるたらいいんじゃない?という方針レベルのものとなりますのでご注意ください。
とりあえず有効化にした方がいい機能
まずは以下の機能を有効化していきましょう。
- Cost Optimization Hub
- AWS Compute Optimizer
Cost Optimization Hubとは、コスト関連の情報が一元管理されているサービスです。
元々、AWSのコスト関連のサービス(Trusted Advisor、Cost Explorer など)は複数ありましたが、このサービスにより情報を一元的に確認することができます。
以下はダッシュボードのイメージです。
アカウントを横断して、情報がまとめられており、リソース単位で以下を確認することが可能です。(代表のみピックアップ)
- 推定削減額
- リソースID
- アクション(削除・Savings Planの購入、リサイジング・・・など)
- 現状の月額コスト
- 実装の手間
- 再起動の必要性
- ロールバック可否
個人的には「実装の手間」を教えてくれるのが、非常に嬉しいです。
この機能により「具体的にどこがコスト最適化可能か」を把握することができます。
なお、上記の「リサイジングや不要リソースの削除」を表示するためにはAWS Compute Optimizerを有効化する必要があります。
これは情報のソースがAWS Compute Optimizerになるためです。
Cost Optimization Hubの注意点
Cost Optimization Hubのダッシュボードに表示される値は、自動調整された値です。
具体的には以下のような調整がされています。
重複削除
これは同じリソースに複数の推奨アクションが実行できる場合、より削減効果が高いもののみ表示するという機能です。
例えば、特定のEC2インスタンスに対して「適切なサイズ設定」「 Graviton 移行」が実行可能な場合は、削減額が大きい推奨アクションのみ表示します。
比例減算
推奨アクションが重複する場合、その重複分だけ自動で減額する機能です。
例えば、推奨アクションに「Savings Plans を購入」と特定EC2の「アイドル状態または未使用のリソースを停止」が表示されているとします。
この場合、「Savings Plans を購入」で表示されている値は「アイドル状態または未使用のリソースを停止」を実行した前提の値となります。
この機能により、二重の減額を避けることができます。
ただし、数値は確定額ではありません。
自動調整を停止する方法
上記の自動調節は非常に便利なのですが、隠された最適解を見逃す可能性があります。
その場合は推奨アクション一覧表示画面で、「グループ関連の推奨事項」を無効にすると、自動調整が停止します。
Step1:「何をするか」を決める
必要な機能を有効化したところで、早速Step1に移ります。
コスト最適化のためにできることは、Cost Optimization Hubに記載されていることが全てではありません。
re:Invent2025のセッション「Optimize AWS Costs: Developer Tools and Techniques」で網羅的に解説されていますので、「どのようなオプションがあるか」についてはこちらをご確認ください。
Cost Optimization Hubの推奨アクションに追加して、「実行の手間(業務影響)」や「削減予想額」などを判断材料に「何を実際に行うか」を決めていく。これがStep1になるかと存じます。
Step2:実施
前のStepで決めた内容の実施です。
注意点として、SP/RIのコミットは「ライトサイジングの後」や「構成変更」の後に実施することが推奨されます。
融通が利くSavings Plansであっても、過大なサイズの使用量を基準に $X/h をコミット → 後でリサイジングして使用量が減る → 対象使用量がコミットを下回る。といったことが起こる可能性があるためです。
Step3:継続的最適化(ループ)
コスト最適化は推奨アクションこなして終わりではなく、モニタリングしていく必要があります。このStepが最も大事なのではないかと個人的には考えます。
オプションは無数にありますが、以下が比較的わかりやすいかと存じます。
Savings Plans最適化
Savings Plansは「小さく買って、様子を見て、買い足す」という方法が容易です。
購入したSavings Plansがどれだけ適切かどうかの判断は、Utilization(消化率) と Coverage(適用率) で判断可能です。
Utilization(消化率):コミット額に対して、どれだけ適用されたか
Coverage(適用率):オンデマンド対象使用量のうち、SPでカバーできた割合
例えば、Utilization(消化率)が極端に少ない場合は、追加で買いなおす。という選択肢をとることができます。
Cost Optimization HubのCost Efficiencyでモニタリング
Cost Optimization HubにはCostEfficiency(コスト効率)メトリクスという機能があります。
一言でいうと、「最適化の余地がどれだけ残っているか」を 0〜100% で表す、毎日自動更新されるスコアとなります。
余地が少ないほど100%に近づきます。
AWS Cost Explorerでの支出額の確認
月ごとに支出額をダッシュボードで確認可能です。
また、フィルタリング機能も充実しているため「どのアカウントのどのサービスがいくらかかったか」も把握することが可能で、コスト最適化の効果がでているかどうかが一目瞭然となります。
まとめ
コスト最適化の流れを3Stepでまとめてみました。今後コスト最適化をする方の手助けになれば幸いです。

