AWS には Compute Optimizer という、リソースの使用状況などから最適なサイジングなどの推奨事項を提案してくれるサービスがあり、EC2 や Lambda、ECS などのコンピューティングリソースに対応しています。
Compute Optimizer は基本機能だけならば無料で使えて、Organizations のアカウント全体に対して有効にすることができることを知ったので、早速試してみました。
Organizations で Compute Optimizer を全てのアカウントにオプトインする
Organizations の管理アカウントで、マネージメントコンソールから Compute Optimizer にアクセスして利用を開始します。
組織内の全てのアカウントに Compute Optimizer をオプトインします。
しばらく待つと、Compute Optimizer マネージメントコンソールの「アカウント管理」に、組織内の全てのアカウントがリストアップされ、オプトインのステータスがアクティブになりました。
メンバーアカウントを委任管理者に設定する
Organizations の Compute Optimizer はメンバーアカウントを委任管理者にできるため、これを設定します。
委任管理者を設定すると、以降は委任管理者で設定をすることができます。
ダッシュボードで推奨事項を確認する
早速 Compute Optimizer のダッシュボードから推奨事項を確認してみたいと思います。
Compute Optimizer を設定したばかりなのに、既に過去の使用状況から推奨事項を表示してくれるようです。
どうやら組織内のアカウントのうちの一つに、EBS でアイドル状態になっているものがあるようなので、詳細を確認してみます。
EC2 にアタッチされていない EBS ボリュームがあることが分かりました。
リソース ID のリンクから、推奨事項を確認してみます。スナップショットを取ってこの EBS ボリュームを削除すれば、月に 1.92 USD コスト削減できると表示されています。
そこで、該当アカウントのマネージメントコンソールから EBS の状況を確認してみました。
確かに EC2 にはアタッチされておらず使用可能な状態となっており、スナップショットもありました。
実はこれは先日、昔運用していた Web サービスの EC2 インスタンスを停止状態で取っておいたものを、もう使わないだろうと削除したのですが、その時の EBS とスナップショットを削除し忘れていたものでした……。
今回の検証で、不要なリソースの消し忘れで毎月 1.92 USD の無駄なコストがかかり続けていたことが分かるという、Compute Optimizer の効果を体感することになりました。
副作用はないようなので、Organizations のアカウント全体で有効にしてもいいのではないでしょうか。
なお、Compute Optimizer は基本無料ですが、メトリクスを分析できる期間がデフォルトでは 14 日間しかありません。もう少し長い期間のメトリクスを元に推奨事項を確認するためには、拡張インフラストラクチャメトリクスを有効にする必要があります。これには少しですが費用がかかってしまうため注意です。
参考