AWSでのサーバ運用と言えば、CloudWatch。
カスタムメトリクスと組み合わせれば、大概の状況は監視できます。

 

Physical NotificationsPhysical Notifications / Johan Larsson

 

その監視している値が、ある値を超えたとき。メールを飛ばしてみましょう。

 

メールを飛ばすための手順は、

  • 1. AWS SNS (Simple Notification Service)で Topicを作成
  • 2. その Topicでメールによる通知を申請 (Subscribe)
  • 3. EC2か CloudWatchから Alarmを作成し上記 Topicを関連づける

です。

 

1と2で「どんな方法で警告を通知するのか」を予め決めておき、

3で「監視している値が何を超えたら、どの通知方法で警告するか」を決めます。

 

 

1. AWS SNS (Simple Notification Service)で Topicを作成

 Topicというのは「どんな方法で通知するか」のパターンです。
 なので、以下のような組み合わせ分作っておくと便利です!

 - メールで通知
 - 電話とメールで通知
 - 特定サーバにHTTPリクエストで通知

 

 1.1 "Create New Topic"から新しい Topicを作ります

 

 

 1.2 "Topic Name"を入力し、"Create Topic"。

 

 

2. その Topicでメールによる通知を申請 (Subscribe)

 いま作ったTopicに、通知先となるメールアドレスを関連づけます。

 SNSの通知先は申請制なので、通知先をSubscribe(申請)して
 身元確認が正常に行われればAWSから承認される、という流れです。

 

 2.1 Topicを選んで "Create Subscription"をクリック。

 

 2.2 プロトコルとしてここでは "EMail" を選びます。
 宛先に、通知対象となるメールアドレスを入力し、Subscribe(申請)します。

 

 2.3 指定したメールアドレスに届いたメールを確認。
 メール本文に記載された "Confirm subscription"をクリックして身元を証明しましょう。

 

 

3. EC2か CloudWatchから Alarmを作成し上記 Topicを関連づける

 設定もあと少し!EC2か CloudWatchから Alarmを作成します。
 このとき、通知先としてこれまで設定してきた Topicを指定します。

 

以上です。

これで、監視項目の値が指定した閾値をこえるとメールが飛びます!