AWSがチャットボートサービス「AWS Chatbot」のβ版を更改(2019/7/24)されました。
https://aws.amazon.com/jp/chatbot/
公式に簡単なハンズオン(英語)があったので、日本語で手順を書いておきます。
AWS ChatBot概要
Amazon Simple Notification Service(SNS)を使って、SlackやAWS Chimeにメッセージ通知を行える。
連携可能なサービス
現時点(7/27)で連携可能なサービスは以下。
https://docs.aws.amazon.com/ja_jp/chatbot/latest/adminguide/related-services.html
- Amazon CloudWatch
- AWS Health
- AWS Budgets
- AWS Security Hub
- Amazon GuardDuty
- AWS CloudFormation
料金
AWS Chatbotは無料(7/27時点)
ハンズオン(15分程度)
公式でお試し設定方法が書いてたので試してみました。
https://docs.aws.amazon.com/ja_jp/chatbot/latest/adminguide/setting-up.html
公式は英語なので、日本語で手順書きます。
今回はSlackへのメッセージ通知をやります。
概要
CloudWatchアラームを設定し、アラーム通知をSlackチャンネルに送ります。
0.事前確認
- Slackチャンネルの用意
- AWS SNSのトピック設定(DynamoDBなど使ってる人はデフォルトで設定されてます)
1.IAMユーザ作成
Adminレベルのユーザを作ります。
- IAMコンソール( https://console.aws.amazon.com/iam/) 開く
- 「ユーザ」選択
- 「ユーザを追加」選択
- ユーザ名:Administrator
- 「AWS マネジメントコンソールへのアクセス」をチェック
- コンソールのパスワード:カスタムパスワード
- パスワード入力
- 「パスワードのリセットが必要」チェック外す(どっちでもOK)
- 「次のステップ:アクセス権限」選択
- 「グループの作成」選択
- グループ名:Administrators
- 「ポリシーのフィルタ」を選択
- 「AWS 管理のジョブ機能」をチェック
- 「AdministratorAccess」をチェック
- 「グループの作成」を選択
- 「次のステップ:タグ」を選択
- 「次のステップ:確認」を選択
- 「ユーザの作成」を選択
2.ChatBotの設定
AWS ChatBotを設定します。
- ChatBotコンソール(https://console.aws.amazon.com/chatbot/) を開く
- 「Configure new client」を選択
- Slackの連携ページが開くので、連携先Slackワークスペースを選択して「confirm」を選択
- Slack Channel:連携したいChannelを選択
- IAM permissions(RoleName):適当なロール名を入力(なんでもOK)
- SNS topics(SNS Region):どこでもOK(SNSトピックがあるとこ)
- SNS topics(SNS topics):どれでもOK
- 「configure」を選択
3.CloudWatchアラームの設定
アラームを設定します。
- CloudWatchコンソール(https://console.aws.amazon.com/cloudwatch/) を開く
- 「アラーム」を選択
- 「アラームの作成」を選択
- 「メトリクスの選択」を選択
- 検索欄:SNS
- SNS>トピックメトリクス
- 適当なトピック名をチェック(どれでもOK)
- 条件(しきい値の種類):静的
- 条件(アラーム条件を定義):以下
- 条件(しきい値を定義します):1
- 「次へ」を選択
- 通知(アラーム状態):アラーム状態
- 通知(SNSトピック):既存のSNSトピックを選択
- 通知(通知の送信先):適当に選択
- 「次へ」を選択
- アラーム名:なんでもOK
- アラームの説明:なんでもOK
- 「次へ」を選択
- 「アラームの作成」を選択
4.結果を確認
Slackチャンネルをみましょう。3分くらい待てば通知が来るはずです。
おわりに
今までチャットボットはLambdaなどで手作りでしたが、これだと設定だけで簡単にBotが使えますね。
GuardDutyの不正アクセス通知とかは欲しかったので試してみようかと思います。
今後の機能拡張に期待です。