[レポート]コスト管理を再考する #AWSSummit
どーもsutoです。
開催中となるAWS Summit Onlineの「コスト管理を再考する」のセッションレポートです。
セッション情報
概要
クラウドへの移行検討段階におけるお客様環境の TCO と移行後の効果を定量比較によりスムーズな意思決定を支援するプログラムであるクラウドエコノミクスについて、お客様の活用例を交えてご紹介いたします。加えて、コスト最適化の新プログラムである Cloud Financial Management (CFM) のご紹介と、コスト削減アプローチについてお客様事例を交えてご紹介いたします。
Speaker
小野 俊樹
アマゾン ウェブ サービス ジャパン株式会社
事業開発マネージャー
本セッションの対象者
- プロジェクト単体で本来かかっている費用を配賦したい
- 費用配賦の仕組みは整備済だけど、最近のアップデートに追いつけてない
- コスト管理の担当者にアサインされたが、前任者の整備した仕組みがわからない
話すこと
- AWSにおけるコスト管理を実現するために活用できるサービスや考え方
- (考え方やデザインにフォーカスを置いて話す)
話さないこと
- マルチアカウント構成の設計詳細については取り扱わない
レポート
組織利用におけるコスト管理について
- AWS Organizationの一括請求(Consolidated billing)
- メリット1:取りまとめたアカウント間で各種割引の共有
- Reserved Instance(RI)などの割引を組織間で共有
- 組織全体で使用量を合算しボリュームディスカウントの適用をうける
- メリット2:複数アカウントにわたってコスト状況をトラックできる
- RIやサービスプラン等の活用状況も確認可能
- 利用時に必要となること
- 配賦ルールによる分配
- コスト管理者の悩みの背景
- プロジェクトチーム:AWS利用費はプロジェクト単位の予算で管理しているので、意図せず費用が変わってしまうのは困る
- 組織管理部門:サービスプラン購入などオンデマンド価格からコスト最適化がしたい(生じる費用差をコスト管理の運用費としたい)
コスト管理に活用できるサービス
- 前述した悩みを解決し、配賦ルールを実現するのに有用なサービス
- AWS Cost Explorer
- AWSリソースの使用量・使用料金を可視化し分析できる
- 事前定義されたレポートでサービス毎・連結アカウント毎の月別使用料や毎月のEC2実行時間のコストも出してくれる
- AWS Cost and Usage Reports(CUR)
- AWSリソースの使用量・使用料金を月単位で確認できるテキストレポート
- 昔からあるDetailed Billing Report(DBR)もあるが、こちらは廃止が予定されており、CURへ移行することを推奨
- Redshift/QuickSight/Athenaでデータ読み込み、分析が可能
- 料金を配賦ルールに則って各AWSアカウントに配分する際に有用
- →複数プロジェクトで利用しているAWSアカウントから各プロジェクト毎で利用している使用料金分のみをSelectする、といった使い方ができる
- その他の活用例は以下
配賦ルールを考える場合に抑えておきたい3ポイント
- Resource Tag/Cost Allocation Tagの活用
- 一括請求配下のAWSアカウントの利用料をタグでグループ化できる
- AWS Cost Categoriesを利用したグルーピング
- AWSのコストと使用量をユーザが設定したカテゴリにルールベースで分類できる
- Consolidated Billingにおける割引共有の理解
- 機能毎に「共有の無効化」を設定することが可能
- Resource Tag
- AWSリソースに付与するラベルデータ
- タグが付与できるリソースはサービスによって異なるので注意
- Cost Allocation Tag
- Cost AllocationレポートおよびCURに指定したリソースタグを出力する
- ユーザ定義タグとAWS generated tagsを指定することが可能
- →活用例としてSnapshotコストのトラッキング
- Resource Tag/Cost Allocation Tagの活用の考慮点
- 一貫したタグ付与をする運用の仕組みを整備する必要がある
- →AWS Organizationsのタグポリシーを有効活用する
- タグを付与できないリソースに対する配賦ルールを定める必要がある
- →未分類コストとしてカウントされることを防ぐ
- AWS Cost Categories
- 分類したカテゴリは、Cost Explorer、Budgets、CURで利用可能
- ルールに指定できるDimensionは、Account、Tag、Charge Type、Service
- AWS Credit/Reserved Instance/サービスプランは共有の無効化が可能
- 配賦ルールが複雑になるケースならば、運用の効率性と費用のトレードオフで無効化してしまうのも選択肢の1つ
まとめ
感想
AWSを利用する上でコスト効率を意識することは大変重要です。何故なら従量課金の形態だから。余分なインスタンス/サービスを作成・設定しっぱなしで長時間放置するとあっという間に高額になってしまいます。
また本セッションで紹介されたコスト管理の悩みはどの会社でもあるあるな問題ですね。一括請求機能でまとめるにしても、会社としてのルール(各部署への予算配分と支払いの統括ルール)と噛み合わないため、AWSサービスとしても効率化できず、会社側のプロセスや作業が増えてしまうんですよね。その辺りを経験している方からみると、今回のキモとなる部分はまとめにある「配賦ルールは複雑にしすぎず、バランスを考えてルールを作る」というところだと思います。プロジェクト費用の請求ルールは会社・組織によって違うと思いますので、そのルールに則れるかたちで「この新規プロジェクトは新規AWSアカウントにするか既存アカウント上にするか」といった判断を本セッションの内容を理解することで適切に配賦ルールを作ることができると思います。