MEGAZONEブログ

Optimize costs in your multi-account environments
マルチアカウント環境におけるコストの最適化
Pulisher : Enterprise Managed Service Group イ・ヘイン
Description : マルチアカウント環境でコストを最適化する方法について学ぶセッションです。
はじめに
マルチアカウント環境を運営する上で最も重要視されていたのは、セキュリティやOUのような領域でした。 それに比べて、costに関連する部分は比較的多く取り上げられなかったのですが、このセッションを通じて、マルチアカウント環境ではどのような方法でコスト最適化ができるかを知るためにセッションを申し込みました。
セッションの概要紹介
このセッションは、マルチアカウント環境内でコスト最適化のために実装できるいくつかのベストプラクティスと技術を共有する発表形式のセッションで行われました。

職種によって、コスト最適化戦略へのアプローチの仕方について異なる視点を持っています。
まず、エンジニア/開発者/クラウドアーキテクチャから見てみましょう。
エンジニアや開発者は、一般的に予算の上限を超えないようにする方法を知りたがっています。 また、ソースコードをデプロイする際に、より効果的な方法があるかどうか、彼らが使用するワークロードがコストレビューに合格したかどうかなどについて問い合わせがあります。

次に、社内の内部オペレーションチームから求められる内容は上記の通りです。
彼らは、投資収益率を計算できるように、ITサービスが実際にビジネスにプラスの影響を与えているかどうかを理解することに非常に関心があります。
また、このチームの主な特徴は、マルチアカウント環境で組織全体を全体的に見ているため、実際にどの組織でどのくらいの費用を使用したのかということに関心があります。

アカウント全体のコストを管理する方法について、3つのステップに分けて説明しました。
1つ目は、理解して計画することです。
そのためには、まずしっかりとした基本構造を備えたマルチアカウント環境を構築する必要があります。
このような基本構造が整えば、コスト分析ツールを使用してコスト分析ツールを実装することができ、これにより視覚化することができます。
このような過程を経て最終的に実装し、全体的なコスト管理を実現することができます。
しかし、このスライドを見ると、矢印の円形が動いていることがわかります。
これは、クラウドを運用する上で、ビジネスの成長と規模が変化し続ける中で、コストを管理し、環境の制御機能を評価する方法を検討することは、1回限りの取り組みで終わらないことを意味します。


したがって、簡単に要約すると、コスト最適化を提案する際には、ビジネス目標を理解して正しい意思決定を行うことが重要です。2つ目は、マルチカウント環境の構造を設定することです。 単一のアカウントで構成することもできますが、ワークロードの規模と複雑さが増すにつれて、AWSはAWS組織を使用して複数のアカウントを設定することを推奨しています。

コスト可視性を実現するためのいくつかのベストプラクティスについて説明します。
AWS組織を設定したと仮定して説明します。 統合請求を設定する理由は、組織に対する単一の請求書を提供し、各メンバーアカウント内の支出と費用を確認できるためです。 また、もしSavings Planなどを使用している場合、割引特典も享受することができ、これはAWS組織のMasterアカウント内で設定することができます。
また、財務チームには通常複数のチームがあるので、請求専用権限を設定することも重要です。これは、最小限の権限の原則に従う必要があることを意味します。財務チーム内の特定のグループの個人に権限を付与して、特定の人員だけがビリングページにアクセスできるように分離することが重要です。


そして、AWSにはいくつかのコスト分析ツールがあります。
Cost Explorerを使うと、組織のユーザーだけでなく、個々のサービスに支出される費用を確認することができ、シンプルで使いやすく、自動で使うことができます。
二つ目はCost and Usage Reportです。ほとんどの組織は、より深い概要を持ち、各サービスがどのように使用されているかについての詳細情報を収集することを好みます。このサービスでは、カスタマイズされたダッシュボードとカスタマイズされたクエリを構築することができます。 したがって、コストエクスプローラーで得られるものよりも少し柔軟性があり、そのAPIを呼び出してレポートを生成したり、削除したりすることもできます。

先ほど説明した内容を1つの章表にまとめたものです。
セッションを終えて
マルチアカウント環境と単一アカウント環境でのコスト最適化に対する大きな違いは、コスト関連サービスに対する権限制御をAWS ControlTowerを使って制御できることと、Savings Planなどのような料金割引関連サービスをMasterアカウントからサブアカウントに一度に適用できる点だと思います。
結論的にコスト最適化のために使えるサービスは似ていますが、サブアカウントに対する制御などを統合して制御して確認することができるという利点があり、一括して管理するのが容易だと思います。
この記事の読者はこんな記事も読んでいます
-
Compute re:Invent 2023Apple on AWS: Managing dev environments on Amazon EC2 Mac instances(Apple on AWS:Amazon EC2 Macインスタンスで開発環境を管理する)
-
Compute re:Invent 2023Optimizing for cost and performance with AWS App Runner(AWS App Runnerによるコストとパフォーマンスの最適化)
-
Partner Enablement re:Invent 2023Migration and modernization: Become your customer’s strategic partner