SNS@AWSリソース¶
はじめに¶
本サイトにつきまして、以下をご認識のほど宜しくお願いいたします。
01. SNSとは:Simple Notification Service¶
クラウドパブリッシュ/サブスクライブシステムとして働く。
送受信の関係が多対多のパブリッシュ/サブスクライブパターンであり、プッシュベースの通信方式である。
AWSのクラウドメッセージブローカー (例:AWS MQ) よりも機能が少なくシンプルである。
01-02. 仕組み¶
メッセージキュー (例:AWS SQS) とは異なりメッセージをルーティングできるが、メッセージをキューイングできない。
パブリッシャーがパブリッシュしたメッセージをトピック (サブスクリプションのグループ) で受信し、サブスクライバーに転送する。
02. セットアップ¶
コンソール画面の場合¶
設定項目 | 説明 |
---|---|
トピック | 複数のサブスクリプションをグループ化したもの。 |
サブスクリプション | 宛先に送信するメッセージの種類を設定する。 |
トピック¶
設定項目 | 説明 |
---|---|
サブスクリプション | サブスクリプションを登録する。 |
アクセスポリシー | トピックへの認可スコープを設定する。 |
配信再試行ポリシー | サブスクリプションのHTTP/HTTPSエンドポイントが失敗した時の再試行方法を設定する。 - https://docs.aws.amazon.com/sns/latest/dg/sns-message-delivery-retries.html |
配信ステータスのログ記録 | サブスクリプションへの発信のログをAWS CloudWatchログに転送するように設定する。 |
暗号化 |
サブスクリプション¶
▼ Kinesis Data Firehose¶
Kinesis Data Firehoseに送信する。
▼ SQS¶
SQSに送信する。
▼ AWS Lambda¶
AWS Lambdaに送信する。
▼ Eメール¶
メールアドレスに送信する。
▼ HTTP/HTTPS¶
Webhook用のエンドポイントに送信する。
- AWS Chatbotのドメイン名 (
https://global.sns-api.chatbot.amazonaws.com
) - incident.io (
https://api.incident.io/v2/alert_events/cloudwatch/*****
)
▼ json
形式のメール¶
メースアドレスにjson
形式で送信する。
▼ SMS¶
SMSに送信する。
電話番号を設定する必要がある。