個人AWS環境で予算のアラートをslackに通知する
概要
- 個人のAWS環境で多額の金額を請求されることを防ぐために、予め予算管理でしきい値を設けておき、さらにしきい値が超えたらアラート通知をslackへ飛ばせるようにしておく。
- 手順に沿って進めていけば最終的にしきい値が超えたときの流れは下記のような感じになるはず。
[AWS Budgets] =publish⇒ [SNSトピック] =subscribe⇒ [AWS Chatbot] =notify⇒ [slack]
- 細かい手順の説明は省いているが、貼っている公式ドキュメントと併せて進めていけば最後までいけるはず。
手順
前提
SNSトピックの作成
予算のアラートをパブリッシュする先を作る。
- SNSのコンソール画面にアクセス。
- 「トピックの作成」ボタンを押す。
- 色々設定できるが、「タイプ」は「スタンダード」を選択する。
- FIFOが多分予算の通知で使えなさそうなので。
- あとは基本的にデフォルトの内容で大丈夫。
- 最後に「トピックの作成」ボタンを押すと作成される。
- トピックを作成したあと、下記のリンクの手順に従って予算がSNSのトピックにアラートを送信するためのアクセス権限を付ける。
Chatbotの作成
Chatbotを作成してSNSからサブスクライブしたメッセージをslackに通知させるための仕組みを作る。
- Chatbotのコンソール画面にアクセス。
- 「チャットクライアントを設定」のプルダウンで「slack」を選択し、「クライアントを設定」ボタンを押下する。
- 上記の手順含め、基本的には下記のリンクの手順に従えばslackへの通知設定ができるはず
AWS Budgets(予算)の作成
- AWS Budgetsのコンソール画面で「予算を作成」ボタンを押す。
- 予算タイプは「コスト予算 – 推奨」で大丈夫だと思う。
- 月次ごととか色々しきい値を設定できるので好きなように設定する。
- 「アラートの設定」の「Amazon SNS アラート 情報」でARN情報を入れる必要があるが、そこに前述で作成したSNSトピックのARN情報を入れる。
- あとはそのまま流れに沿って進めて予算を作成すれば、アラート通知含めて完了となる。