請求アラームの設定方法を画像付きで説明する
目次
はじめに
AWS を使い始めた頃、「どのサービスにどれくらいの費用がかかるか分からない」「知らない間に高額請求が来そうで怖い」と感じた経験はないでしょうか。そんな不安を解消してくれるのが、AWS の請求アラーム機能です。
請求アラームを設定しておくと、AWS の利用料金があらかじめ設定した閾値を超えたタイミングでメール通知を受け取れるようになります。本記事では、AWS Budgets・Amazon SNS・Amazon CloudWatch の3つのサービスを組み合わせて、請求アラームをゼロから設定する手順を画像付きで解説します。
請求アラームを設定する3ステップの概要
設定の流れは以下の3ステップです。
- 請求アラートの有効化:AWS Budgets の設定画面で請求データの監視を有効にする
- SNS の設定:アラーム発生時のメール通知先を Amazon SNS で設定する
- CloudWatch の設定:閾値となる金額を CloudWatch アラームとして作成する
なお、SNS と CloudWatch の操作はリージョンを「米国東部(バージニア北部)us-east-1」に切り替えてから実施する必要があります。請求に関するメトリクスはこのリージョンにのみ集約されているためです。
請求アラームを設定する手順
1. 請求アラートを有効化する(AWS Budgets)
課題:デフォルト状態では CloudWatch から請求データを参照できないため、まず有効化が必要。
解決策:AWS Budgets の「請求方法」設定から「請求アラートを受け取る」をオンにする。
AWS コンソールのサービス一覧から AWS Budgets を開きます。左のメニューから「請求方法」を選択し、「請求アラートを受け取る」にチェックを入れて「設定の保存」をクリックします。

Billing のページを開いたときに「アクセス権限が必要です」というエラーが表示される場合は、現在利用している IAM ユーザーに請求データへのアクセス権限が付与されていない状態です。この手順はルートアカウントで実施するか、IAM ユーザーに請求データへの権限を付与してから再度試みてください。

2. SNS トピックとサブスクリプションを作成する
課題:CloudWatch アラームが発火したとき、どこへ通知を送るかを事前に定義しておく必要がある。
解決策:Amazon SNS でトピック(通知チャンネル)とサブスクリプション(通知先のメールアドレス)を作成する。
Amazon SNS のサービスページを開きます。このときリージョンが「米国東部(バージニア北部)us-east-1」になっていることを確認してください。左メニューの「トピック」をクリックし、「トピックの作成」を選択します。

トピックの作成画面では、タイプに「スタンダード」を選択し、分かりやすい名前(例:billing-alarm-topic)を入力します。その他の設定はデフォルトのまま、画面下の「トピックの作成」をクリックします。

トピックが作成されたら、次に通知先のメールアドレスを紐づけるサブスクリプションを作成します。作成したトピックのページから「サブスクリプションの作成」をクリックします。

サブスクリプションの設定では、以下の2項目のみ入力します。
- プロトコル:Eメール
- エンドポイント:通知を受け取りたいメールアドレス
入力が終わったら「サブスクリプションの作成」をクリックします。

正常に設定できていれば、指定したメールアドレスに Amazon SNS からの確認メールが届きます。メール内の「Confirm subscription」リンクをクリックしてください。

リンクをクリックすると、ブラウザに確認完了のページが表示されます。

SNS のトピックページに戻り、サブスクリプションのステータスが「確認済」になっていることを確認します。「Confirm subscription」をクリックする前の状態では「保留中の確認」と表示されているため、必ずここで確認済みになっているかをチェックしてください。

これで SNS の設定は完了です。
3. CloudWatch で請求アラームを作成する
課題:AWS の利用料金が指定額を超えたときにアラームを発火させる仕組みが必要。
解決策:CloudWatch の「請求」メニューからアラームを作成し、先ほど作成した SNS トピックと連携させる。
Amazon CloudWatch のサービスページを開きます。こちらもリージョンが「us-east-1」になっていることを確認してください。他のリージョンでは表示されない「請求」タブがメニューに表示されますので、そこから「アラームの作成」をクリックします。

「メトリクスの選択」をクリックし、「請求」→「概算合計請求額」の順に選択します。メトリクス名は EstimatedCharges なのでこちらを選択し、「メトリクスの選択」をクリックします。


次に閾値を設定します。「メトリクスおよび条件の指定」画面では、メトリクスの部分はそのまま変更せず、「条件」の部分でアラームを発火させる金額(閾値)を入力します。例えば、利用料金が $10 を超えたらアラームを発報させたい場合は下図のように設定します。設定が終わったら「次へ」をクリックします。

次はアラーム通知の設定です。「既存の SNS トピックを選択」を選び、ステップ2で作成した SNS トピックを指定します。設定が終わったら「次へ」をクリックします。

アラームの名前と説明を入力します。この内容はアラームメールの本文にも記載されるため、「利用料金 $10 超過アラーム」など内容が分かるような名称にしておくと便利です。入力が終わったら「次へ」をクリックします。

確認画面が表示されるので、内容に問題がなければ画面下の「アラームの作成」をクリックします。これで設定は完了です。
4. 動作を確認する
設定が完了した後、AWS の利用料金が設定した閾値を超えると、以下のようなアラームメールが届きます。閾値を実際の想定利用額に合わせて調整し、正しくメールが届くかを確認しておきましょう。

まとめ:AWS 請求アラームを最初に設定しておくべき理由
本記事で紹介したポイントをまとめます。
- 請求アラームは AWS Budgets・SNS・CloudWatch の3サービスを組み合わせて設定する
- SNS と CloudWatch の操作は必ず us-east-1 リージョンで行う
- SNS サブスクリプション作成後は、届いた確認メールの「Confirm subscription」を必ずクリックする
- CloudWatch アラームのメトリクスは EstimatedCharges(概算合計請求額)を選択する
- アラーム名を具体的に記入しておくと、通知メールで何のアラームか即座に判別できる
AWS は従量課金のため、使い忘れたリソースが思わぬ高額請求につながることがあります。特に RDS インスタンスは「停止」してから7日後に自動的に再起動される仕様があり、停止したつもりが課金が続いていたというケースも珍しくありません。請求アラームを適切な閾値で設定しておくことが、AWS を安心して使い続けるための第一歩です。AWS を始めたばかりの方は、アカウント作成直後にこの設定を済ませることをおすすめします。







ディスカッション
コメント一覧
まだ、コメントがありません