AWSコスト配分タグで始めるコスト管理
- POSTS
1. はじめに AWS上でプロジェクトごとの料金を把握できていますか。
AWSアカウント上に複数のプロジェクトが稼働していて、特定のプロジェクトでどのくらい料金がかかっているか確認する方法を書いていきます。
プロジェクトごとに料金を把握するのに必要な要素は、 Billing and Cost Management の コスト配分タグ です。
コスト配分タグについて学んでいきましょう。
2. コスト配分タグとは? コスト配分タグとは、AWSリソースにタグ付けを行い、コストをタグ単位で分析、可視化できる仕組みのことを言います。
2.1 コスト配分タグの概要 タグは、多くのAWSリソースにKey, Valueの形式で付与可能です。
リソースタイプ キー バリュー Lambda Project cloud-steps S3 Project cloud-steps このようにLambda, S3にProjectキーを付与することができます。 Projectごとにタグを設定するとcloud-stepsで利用しているリソースを抽出することができます。
2.1 「ユーザー定義タグ」と「AWS生成タグ」の違い ユーザー定義タグとAWS生成タグの違いについて説明します。
ユーザー定義タグとは、その名の通りユーザーがAWSリソースに対して定義できるタグのことです。
CloudFormationテンプレート例 VPC: Type: AWS::EC2::VPC Properties: CidrBlock: 192.168.0.0/20 EnableDnsSupport: true EnableDnsHostnames: true Tags: - Key: Name - Key: Project 一方で、AWS生成タグとは、AWSが自動的にAWSリソースに付与するタグのことをいいます。
AWSタグ例 aws:cloudformation:stack-id aws:createdBy aws:cloudformation:stack-name 3. コスト配分タグの使い方ステップ 3.1. タグの付与 タグをリソースに付与します。
タグの付与単位は各現場のタグの付与方針によります。
ここでは、プロジェクト単位でタグを付与します。
タグの設定意図は、プロジェクト単位のコストを可視化すとためです。
VPC: Type: AWS::EC2::VPC Properties: CidrBlock: 192.168.0.0/20 EnableDnsSupport: true EnableDnsHostnames: true Tags: - Key: Project Value: cloud-steps 3.2. コスト配分タグ(ユーザー定義タグ)の有効化 AWSマネージメントコンソールの検索フォームから Billing and Cost Management 左メニューのコスト組織>コスト配分タグをクリックする コスト配分タグ画面が表示されたらユーザー定義のコスト配分タグタブを選択 コスト配分タグとして有効化したいタグキーにチェックを入れる。※ここでは、cloud-stepsを選択 有効化ボタンをクリック 3.3. コスト配分タグ(AWS生成コスト配分タグ)の有効化(任意) AWSマネージメントコンソールの検索フォームから Billing and Cost Management 左メニューのコスト組織>コスト配分タグをクリックする コスト配分タグ画面が表示されたらAWS生成コスト配分タブを選択 コスト配分タグとして有効化したいタグキーにチェックを入れる。※ここでは、aws:createdByを選択する 有効化ボタンをクリック 3.4. コストエクスプローラーの利用 AWSマネージメントコンソールの検索フォームから Billing and Cost Management 左メニューのコストと使用状況の分析>Cost Explolerを選択する 右メニューのレポートパラメータのフィルター機能でユーザータグごとのコストを抽出する グループ化の条件>ディメンション>Tag>Project フィルター>タグ>Project>cloud-stepsをクリックする。 5. 躓いたポイント コスト配分タグは有効化直後反映されないことがあります。