1
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 3 years have passed since last update.

AWS Budgetsを設定して利用料金が予算を超えた場合に通知する

Last updated at Posted at 2020-12-10

はじめに

AWSのサービスを利用するに当たり、設定ミスにより知らぬ間に利用料金が増えてしまうことがあります。
いつの間にか高額請求されてしまうことのないように、
毎月の閾値を決め、その料金まで利用したら通知されるというような設定をAWSで行なっていきます。

今回はSlackへの通知とメール送信を同時に行うように設定します。
また、使用料が予算の50%,80%...それぞれのタイミングで通知されるようにします。

設定手順

設定対象のAWSサービスは下記の3つです。

  • Amazon SNS
  • AWS Chatbot
  • AWS Budgets

ルートユーザでログイン

今回は請求に関する設定のため、
ルートユーザでログインして設定を行なっていきます。

Amazon SNSの設定

SNSのトピックを作成します。
設定はデフォルトで名前は CostAlert にしました。
タイプはスタンダードに設定しました。
ここで表示されているARNは次の設定に使用します。
スクリーンショット 2020-12-11 0.52.20.png

次に、編集でアクセスポリシーを編集します。
下記のコードをStatementの下の行に追加します。
その際にInsert-ARN-hereに先ほどのARNを入力します。

{
    "Sid": "AWSBudgets-notification-1",
    "Effect": "Allow",
    "Principal": {
        "Service": "budgets.amazonaws.com"
    },
    "Action": "SNS:Publish",
    "Resource": "Insert-ARN-here"
},
 

保存して、Amazon SNSの設定は終了です。

Slackの設定

Slackで通知する。チャンネルを決めるか新しく作成します。

AWS Chatbotの設定

AWS Chatbotで新しいクライアントを設定します。
スクリーンショット 2020-12-11 0.28.15.png

クライアントの種類はSlackを選択します。
スクリーンショット 2020-12-11 0.30.35.png

権限リクエストの画面が表示されるので、通知したいワークスペースを選択して許可します。
設定したクライアントで新しいチャネルを設定します。

設定名はaws-alert-confにします。
アクセス許可の項目ではロール名のみ設定し他はデフォルト設定にします。
スクリーンショット 2020-12-11 0.55.43.png

Slackチャネルの項目で、先ほど決定したSlackのチャンネルをここで設定します。
スクリーンショット 2020-12-11 0.35.43.png

通知オプションはSNSを作成したリージョンを選び、
先ほど作成したトピックを選択します。
スクリーンショット 2020-12-11 0.42.15.png

これで、AWS Chatbotの設定は終了です。

AWS Budgetsの設定

最後にAWS Budgetsの設定を行います。
右上のアカウントの項目の[マイ請求ダッシュボード]
-> 左の[Budgets]
-> [予算を作成する]で遷移していきします。
スクリーンショット 2020-12-07 1.33.09.png

閾値を超えた場合に通知を行いたいので[コスト予算]を選択します。
スクリーンショット 2020-12-07 1.33.40.png

予算の名前は任意で設定します。
間隔は月別にします。
Budget effective datesは定期予算にします。

予算額については$10を設定しました。
スクリーンショット 2020-12-10 23.55.13.png

実際にアラートされる金額を設定します。
予算額の50%($5)を設定しました。
毎月$5を超えた場合に通知が来るようになります。

次に通知の設定です。
Eメールの受信者にアラートを受信したいメールアドレスを設定します。
Amazon SNSには最初に作成したSNSトピックのARNを設定します。
スクリーンショット 2020-12-11 1.16.19.png

また、新しいしきい値というボタンがありますので、
こちらのボタンを押して閾値の設定を同様に設定することで80%の通知、100%の通知...と増やすことができます。
スクリーンショット 2020-12-13 23.50.22.png

あとは作成まで進めば完了です。

通知例

動作確認のために、閾値を最低限まで低くして待機してみました。
(その他AWSサービスを触ったり...)

待機してみると、Slackとメールに通知が来ていました。

Slackの例
スクリーンショット 2020-12-13 23.34.29.png

Gmailの例
スクリーンショット 2020-12-13 23.35.18.png

同じように、もし動作確認のために閾値を低く設定していた場合は、
確認出来次第、設定を戻しておきましょう。

最後に

これで閾値に設定した金額になったらすぐにわかるようになったので、
安心してAWSを触れるようになりました。

1
1
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
1
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?