クラウドセキュリティエンジニアブログ

ニューリジェンセキュリティのクラウドセキュリティエンジニアチームが AWSなどのクラウドセキュリティについて気になることや調べたことを書くブログ

JAWS-UG SRE支部 #5で「創業1年目のスタートアップでAWSコストを抑えるために取り組んでいること」というタイトルで登壇しました

JAWS-UG SRE支部 #5で登壇した内容です。

こんにちは、クラウドセキュリティアーキテクトの大島悠司です。
円安が続く中、AWSのコスト削減に力を入れている企業も多いのではないでしょうか。
今回は、弊社で実践しているコストを抑えるために取り組んでいることから、おすすめの施策をいくつかご紹介します。

技術的取り組み

アカウント一元管理によるコスト把握

AWSアカウントを複数利用してる組織は多いと思います。
複数アカウントの一元管理のため、AWS Organizationを活用することをお勧めします。
AWS Organizationを活用することで、コストの一元管理も可能になるため、各アカウントのコストを横断的に分析できるようになります。

権限制限によるコスト抑制

できるだけ権限を制限することで、不要なリソースを作成させないようにしましょう。
例えば、開発環境はある程度の自由度を持たせますが、ステージング環境や本番環境は手作業によるデプロイを制限します。
その代わり、ステージング環境や本番環境は、CloudFormationなどによる自動デプロイを推進します。
手作業によるデプロイは、不要なリソースが残りがちですが、自動化を推進することで最低限のリソースしか作成させないので、コスト抑制につながります。

セキュリティアラートによる認知

セキュリティサービスをフル活用して、全アカウントを横断で監視できるようにしましょう。
CISベンチマークなどを活用して、各アカウントのリソース作成状況を把握することで、不要リソースに気付ける可能性があります。
重要なのは、コスト削減策のみで考えるのではなく、セキュリティなども一緒に考えることです。
セキュリティを意識すればおのずとコストは抑えられると考えます。

アカウント設計とIAM設計のポイントは、以下のブログをご覧ください。

devblog.nuligen.com

AWS Budgetによる認知

AWS Budgetでコストアラートを設定しましょう。
マルチアカウントの場合は、全アカウント合計と各アカウントに対してアラートを設定しましょう。
この時、アラートを1つしか設定していないと閾値を超えたことしか分かりません。
もしアラートを見逃してしまったら、思わぬコスト増加に気付くことができなくなります。 そのため、アラートは段階的に設定し、コストの増加量にも気づけるようにしておきます。

アラートメールの受け取り先

セキュリティやコストなど、全てのアラートは複数人に送信するようにしましょう。
特定の個人だけが受け取るようにしておくと見逃しのもとになりますし、そもそも個人に責任を負わせることは運用上望ましくありません。
組織の規模にもよりますが、例えば部単位に送信したりチャットサービスに連携することで、複数人が気付けるようにすることが大事です。
セキュリティやコストはみんなで対処していきましょう。

管理的取り組み

AWS Cost Explorerによる定期分析

Cost Explorerによる分析は定期的に行いましょう。
月末、アラート発生時はもちろん、平時の際にもコスト状況を確認することをお勧めします。
全アカウントの前月比や、各アカウントのサービス毎のコスト比を定期的に確認し、日頃からコストの遷移状況を抑えておきましょう。

分析結果の全体共有とコスト削減策の提案

分析した結果は全体に周知するようにしましょう。
弊社でも、サマリ、要因、対応策などを提示し、個別に調整しつつコスト抑制を推進するようにしています。
前述の通り、セキュリティやコストといった課題は多くの関係者と共有し、解決していくことが大事です。

まとめ

AWS Well-Architectedにあるように、各柱は相互に関わっています。
コスト削減策のみにとどまらず、セキュリティなど他の要素も考慮しつつ、トータルで施策を考えていくことが大事になります。
また、日頃からコストの状況を把握しながら課題を関係者と共有し、各個人が自分事として解決していける組織づくりを目指していきましょう。