AWS認定資格 WEB問題集&徹底解説機械学習エンジニア アソシエイト(MLA)
AWSサービスの一つであるAWS Billing and Cost Managementはどんな内容なのでしょうか?また、AWS認定資格の機械学習エンジニア-アソシエイト(MLA)に合格するためには、サービスのどんなポイントを押さえておけばよいのでしょうか?
ここでは、そんなあなたの疑問に回答していきたいと思います
1. サービス概要
AWS Billing and Cost Managementは、AWSの請求・支払いと、コストの分析・整理・予算管理・最適化の機能をまとめたコンソール(とその背後の機能群)です。 請求書の確認や支払い方法の設定といった「経理の窓口」と、Cost Explorer・AWS Budgets・データエクスポート(Cost and Usage Report)・Cost Anomaly Detectionなどの「コスト管理ツール」が1か所に集約されています。
個々のツールにはそれぞれ解説ページがあるため、このページでは全体の地図として、どの目的にどの機能を使うかを整理します。 MLA(Machine Learning Engineer - Associate)では、SageMakerの学習ジョブや推論エンドポイントのコストをタグで配分し、可視化・予算管理・異常検知する場面で、BCMの機能群の使い分けが問われます。
2. 主な特徴と機能
2.1 請求と支払い
- 請求書(Bills): 月ごとの請求額をサービス・リージョン・アカウント別に確認し、請求書(インボイス)をダウンロードする。
- 支払いと支払いプロファイル: 未払い残高や支払い履歴の確認、支払い方法の登録。用途別に支払い方法を分けることもできる。
- クレジットと注文書: AWSクレジットの残高と適用先の確認、社内調達プロセスに合わせた注文書(PO)の管理。
- 請求設定: 請求書のメール送付、無料利用枠のアラート、組織内でのリザーブドインスタンス/Savings Plans割引やクレジットの共有設定。
- 一括請求(Organizations): 管理アカウントが全メンバーアカウントの請求をまとめて支払い、利用量を合算してボリューム割引を受ける。追加料金はかからない。
2.2 コストの分析
- AWS Cost Explorer: 過去のコストと使用量をグラフで分析し、サービス・アカウント・タグなどでグループ化やフィルタを行う。将来コストの予測も可能。
- データエクスポート(Data Exports): Cost and Usage Report 2.0などの詳細な明細データをS3へ定期出力し、AthenaやQuickSightで分析する。
- Cost Anomaly Detection: 機械学習で通常と異なるコストの増え方を検出し、メールやSNSで通知する。
- AWS Free Tier: 無料利用枠の使用状況と、月末までの予測使用量を確認する。
- 分割コスト配分データ: 共有されたコンテナ基盤(Amazon ECSなど)のコストを、タスク単位などに細かく配分する。
2.3 コストの整理(配分)
- コスト配分タグ: リソースに付けたタグを、BCMでコスト配分タグとして有効化すると、Cost Explorerやデータエクスポートでタグ別に集計できる。有効化は管理アカウントで行い、反映には最大24時間かかる。過去最大12か月分へのバックフィルも依頼できる。
- コストカテゴリ: アカウント・タグ・サービスなどの条件を組み合わせて、コストを「チーム」「アプリケーション」「環境」などの独自の分類に割り当てる。共有コストを分割するルールも定義できる。
2.4 予算と計画
- AWS Budgets: コストや使用量の予算を設定し、実績や予測がしきい値を超えたら通知する。予算アクションで権限の制限やインスタンスの停止も自動化できる。
- Pricing Calculator: 新しいワークロードの費用を見積もる。コンソール内の計算ツールでは、自社の割引やコミットメントを反映した見積もりもできる。
2.5 節約とコミットメント
- Cost Optimization Hub: 未使用リソースの削除、ライトサイジング、Savings Plans・リザーブドの購入などの推奨をまとめて表示する。
- Savings Plans/リザーブド: 1年または3年の利用をコミットして割引を受ける。SageMaker向けにはSageMaker Savings Plansがある。購入推奨、使用率、カバレッジを確認できる。
3. アーキテクチャおよび技術要素
- 各サービスの使用量が計測され、料金が計算されて、アカウントの請求データに日々反映される。
- Organizationsを使う場合は、管理アカウントがメンバーアカウントのコストを集約して1枚の請求書で支払う。
- リソースのタグをコスト配分タグとして有効化すると、以後の請求データにタグの列が付き、Cost Explorer・Budgets・データエクスポートで使えるようになる。過去の期間に反映したい場合は、管理アカウントからバックフィル(最大12か月)を依頼する。
- Cost Explorerで対話的に分析し、Budgetsでしきい値を監視し、Cost Anomaly Detectionで想定外の増加を検知し、データエクスポートで明細をS3へ出力してBIで深掘りする、という分担で使う。
- Cost Optimization Hubや各種推奨をもとに、ライトサイジングやSavings Plansの購入などの最適化を行い、効果をCost Explorerで確認する。
4. セキュリティと認証・認可
- IAMアクセスの有効化: 既定ではIAMユーザーやロールは請求情報を参照できない。ルートユーザーが「IAMアクセスのアクティブ化」を設定したうえで、IAMポリシーで権限を付与する。
- きめ細かな権限: 請求(billing:)、支払い(payments:)、Cost Explorer(ce:)、Budgets(budgets:)、データエクスポートなどのアクション単位で、経理担当・開発者・閲覧者ごとに権限を分ける。
- メンバーアカウントの可視範囲: 管理アカウントのCost Management設定で、メンバーアカウントがCost Explorerで参照できるデータを制御する。請求ビューを使えば、特定の範囲のコストデータだけを共有することもできる。
- 監査: 請求・コスト管理関連のAPI呼び出しはCloudTrailに記録される。
- データの保護: データエクスポートの出力先S3バケットは、バケットポリシーと暗号化で保護し、閲覧者を限定する。
5. 料金形態
請求書・支払い・一括請求・コスト配分タグなど、BCMコンソールの基本機能の利用に追加料金はかかりません。 ただし、Cost ExplorerのAPI呼び出し、一部のBudgetsの機能、データエクスポートの保存先となるS3やAthenaでの分析など、ツールによっては個別の料金が発生します。各ツールの料金は個別の料金ページで確認してください。
6. よくあるアーキテクチャ・設計パターン
- MLプロジェクト別のコスト把握: SageMakerのノートブック、学習ジョブ、推論エンドポイント、S3バケットに
Projectタグを付け、コスト配分タグとして有効化し、Cost Explorerでプロジェクト別に表示する。 - 学習コストの暴走防止: プロジェクトごとにBudgetsで月額予算と予測アラートを設定し、Cost Anomaly Detectionで急な増加(停止忘れのエンドポイントや大規模な学習ジョブ)を検知する。
- 詳細分析基盤: データエクスポートで明細をS3へ出力し、Athenaでクエリ、QuickSightで部門別ダッシュボードを作る。
- コミットメントの最適化: 推論エンドポイントのように常時稼働する使用量には、Cost Explorerの推奨をもとにSageMaker Savings Plansを購入し、使用率とカバレッジを監視する。
- マルチアカウントの集約: Organizationsの一括請求で請求を一本化し、コストカテゴリで事業部門・環境別に分類して配分する。
7. 設定・デプロイ手順(ハンズオン例)
- ルートユーザーでアカウント設定を開き、IAMユーザー/ロールによる請求情報へのアクセスを有効化する。担当者には必要な権限だけをIAMポリシーで付与する。
- Billing and Cost Managementコンソールの「請求書」で、当月のサービス別・リージョン別の請求額を確認する。
- 「コスト配分タグ」で、リソースに付けた
Projectなどのユーザー定義タグを選んで有効化する(反映まで最大24時間)。 - Cost Explorerで、サービス=SageMakerに絞り込み、
Projectタグでグループ化してコストを確認する。 - Budgetsでプロジェクト別の月額予算を作成し、実績80%と予測100%でSNS通知を設定する。
- Cost Anomaly Detectionでサービス単位のモニターを作り、異常検知時の通知先を登録する。詳細分析が必要ならデータエクスポートでS3への定期出力を作成する。
8. 試験で問われやすいポイント
8.1 機能の使い分け
- Q: 過去のコストをグラフで分析し、将来のコストを予測したい場合は?
A: AWS Cost Explorer。 - Q: 予算を超えそう、または超えたときに通知を受けたい場合は?
A: AWS Budgets(予測値に対するアラートも設定できる)。 - Q: 普段と異なるコストの急増を自動で検知したい場合は?
A: AWS Cost Anomaly Detection。 - Q: 最も詳細な請求明細をS3に出力してAthenaで分析したい場合は?
A: データエクスポート(Cost and Usage Report)。
8.2 タグによるコスト配分
- Q: SageMakerのリソースにタグを付けたのに、Cost Explorerでタグ別に表示できない。最初に行うことは?
A: Billing and Cost Managementコンソールで、そのタグをコスト配分タグとして有効化する(反映まで最大24時間)。 - Q: 有効化前の過去の期間もタグ別に集計したい場合は?
A: 管理アカウントからコスト配分タグのバックフィルを依頼する(最大12か月。当時リソースにタグが付いていたことが前提)。 - Q: タグだけでなく、アカウントやサービスを組み合わせてコストを独自に分類したい場合は?
A: コストカテゴリを使う。
8.3 ML ワークロードのコスト最適化
- Q: 常時稼働するSageMakerの推論エンドポイントのコストを下げる購入オプションは?
A: SageMaker Savings Plans。購入推奨はBCMのSavings Plansの画面で確認できる。 - Q: 停止忘れのエンドポイントなど、想定外の支出を早く見つけるには?
A: Budgetsの予測アラートとCost Anomaly Detectionを組み合わせ、Cost Explorerで原因を絞り込む。 - Q: 開発者に請求情報を見せるためにルートユーザーの認証情報を共有すべき?
A: いいえ。IAMアクセスを有効化し、必要な請求・コスト管理の権限だけをIAMで付与する。