1
3

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 5 years have passed since last update.

AWS Chatbot(β)の設定方法と注意点

Posted at

#ごあいさつ
 こんにちは、kimuraです。
 今回はβ発表されているAWS Chatbotをslackで設定してみます。
 まだまだ使い勝手は良くないですが、非常に将来に期待のできるサービスですので、ぜひ試してみてください。

#本日は先に注意点!

 本日は先に注意点を書いておきます。
 設定した後にやりたいことと違った、というのでは残念なことになりますので。

  • 2019年9月16日現在、対応しているサービスは下記のみです。

AWS Chatbot開発者ガイド(英語版のみ)

 上記の開発者ガイドのQAによれば、今現在でchatbot経由での通知に対応しているサービスは

  1. AWS Billing and Cost Management
  • AWS Config Events
  • Amazon GuardDuty Events
  • AWS Health Events
  • AWS Security Hub Events
  • AWS Systems Manager Events including the following:
  • AWS Systems Manager Configuration Compliance Events
  • AWS Systems Manager Maintenance Windows Events
  • AWS Systems Manager Parameter Store Events

のみです。
 これ以外のサービスからのメッセージは無視されます。
 なので、例えばLambdaファンクションのfaildを検知させようとしてもできませんので注意してください。
 どんどん増えてはいるようなので、ドキュメントの更新を待ちましょう。

  • slackを無料で使っている場合はアプリを10個までしかインストールできません

 後ほど説明しますが、AWS Chatbotをslackにインストール(連係)する必要があります。
 slack無料利用だと、10個までしかアプリが使えないので、webhookいっぱい使ってる人は気を付けましょう。

  • chatbot削除時は、slackからアプリを消すのではなく、最初にAWS chatbotの設定を削除してください

 先にAWS Chatbotの設定を削除してからでないと、権限不足で削除ボタンが機能しなくなります。
 もし、先にslackのアプリの方を先に削除した場合は、もう一度別途同じ設定でAWS Chatbotを新規作成すると、slack連携が元に戻ります。
 先にAWS側の設定を全て削除してからslackのアプリを削除しましょう。

設定開始

####まずは、SNSトピックを作りましょう。
 既存のものでも構いませんが、サブスクリプションがchatbotサービスによって自動で作られるので、他と混じるのが嫌な場合は別途作ってください。

 サブスクリプションはこの時作成する必要がありませんので、空のトピックを作るだけです。
 注意点は、例えばCloudwatchアラームから連携する場合などは、各リージョンにSNSトピックを作成しておく必要がある、というところです。

####AWS Chatbot作成
 AWS Chatbotは「管理とガバナンス」のところにあります。
 もしくは検索でchatbotなどを選択しましょう。

SnapCrab_NoName_2019-9-16_9-58-35_No-00.png

 初期画面で新規作成(configure new client)すると、slackかchimeを選択する画面になります。
 今回はslackを選択します。
 とはいえ、chimeでもやることはそう変わらないと思われます。

SnapCrab_NoName_2019-9-16_9-58-45_No-00.png

SnapCrab_NoName_2019-9-16_9-59-10_No-00.png

「configure」をクリックすると、ブラウザでログインしているワークスペースが表示されます。
ログインしていなければワークスペース名を入力する画面が表示されますので、正しく入力し、ログインしてください。

SnapCrab_NoName_2019-9-16_9-59-50_No-00.png

 設定画面は全部で三つのパートに分かれます。
 まずはslackのチャンネルを選択しましょう。
 Publicであれば、下の検索画面で選択が可能です。Privateであればチャンネル名を明記してください。

 IAMについては初回であれば新規作成で問題ありません。
 今現在の連携サービスであれば、Cloudwatchの閲覧系権限が全てあれば問題ありません。

SnapCrab_NoName_2019-9-16_10-0-24_No-00.png

 最後にSNSトピックスを選択します。
 リージョンと、先ほど作成したトピックスを選択しましょう。

 SnapCrab_NoName_2019-9-16_10-4-1_No-00.png

 最初の画面に戻ると、chatbot用のコンフィグが作成済みになっています。

####トピックスを確認

SnapCrab_NoName_2019-9-16_12-39-59_No-00.png

 chatbot作成後に、SNSトピックスを見に行くと、自動的にサブスクリプションが作成されています。
 エンドポイントはslackのchatbot用になっているはずです。
 もし作成されていない場合は、もう一度AWS Chatbotの管理画面でSNSトピックを外して登録、再度SNSを登録し直すと上手くいきます。

####slack側の設定

 これでAWS側の設定はほぼ完了しました。
 後はslack側の設定を終えれば、疎通確認ができます。

SnapCrab_NoName_2019-9-16_10-42-33_No-00.png

 今回はchatbot用にチャンネルを作成しました。
 このチャンネルに「アプリを追加する」してください。

SnapCrab_NoName_2019-9-16_10-42-44_No-00.png

 AWS Chatbotが表示されていますので、「追加」してください。
 これで連携は完了です。

####疎通テストをしよう

SnapCrab_NoName_2019-9-16_11-30-28_No-00.png

 連携サービスがhealthとか、GuardDutyとか即時試せないものばかりなので、Cloudwatchアラームで上図のようなアラームを入れました。

SnapCrab_NoName_2019-9-16_14-40-2_No-00.png

 slackに通知されると上のようになります。
 自分でLambdaなどを使ってslack通知するよりは整理されている感じがしますね。
 今後も対応サービスは増えていくと思いますので、楽しみですね。

1
3
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
3

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?