CloudWatch アラームと SNS を使用して EC2 インスタンスの自動復旧をモニタリングする方法を教えてください。

最終更新日: 2019 年 3 月 12 日

Amazon Elastic Compute Cloud (Amazon EC2) インスタンスの自動復旧を設定したいと考えてます。Amazon CloudWatch (CloudWatch) およびAmazon Simple Notification Service (Amazon SNS) を使用して、これらの自動復旧アクションをどのようにモニタリングしますか ?

簡単な説明

CloudWatch アラームを設定して、障害が発生した Amazon EC2 インスタンスを自動的に復旧して、Amazon SNS から通知がくるようにできます。ただし、SNS 通知自身には自動復旧アクションの結果は含まれません。

また、CloudWatch Events のルールを設定して、インスタンス用にAWS Personal Health Dashboard (AWS Health) イベントをモニタリングする必要もあります。その後、インスタンスの自動復旧アクションの結果が通知されます。

解決方法

注: AWS コマンドラインインターフェイス (AWS CLI) コマンドの実行中にエラーが発生した場合は、AWS CLI の最新バージョンを使用していることを確認してください

最初に、Amazon EC2 インスタンス 用に CloudWatch アラームを作成します。 

  • Send notification to には、SNS トピック名を入力します。
  • アクションを実行するためには, 復旧するを選択します。

詳細については、「EC2 インスタンスを自動で復旧させるように CloudWatch アラームを設定する方法を教えてください。」を参照してください。

次に、以下の AWS Health イベントをモニタリングするために CloudWatch Events を設定しますTargetで 、作成した SNS トピックを選択します。

  • AWS_EC2_INSTANCE_AUTO_RECOVERY_SUCCESS
  • AWS_EC2_INSTANCE_AUTO_RECOVERY_NO_ACTION
  • AWS_EC2_INSTANCE_AUTO_RECOVERY_FAILURE

また、AWS コマンドラインインターフェイス (AWS CLI) を使用して、EC2 インスタンス自動修復に関連に付けられている AWS Health イベントを一覧表示します。以下の通り、適切な --region を含めた describe-event-types コマンドを使用します。

$ aws health describe-event-types --filter services=EC2 --query eventTypes[].code --region us-east-1 | grep AUTO_RECOVERY
"AWS_EC2_INSTANCE_AUTO_RECOVERY_FAILURE",
"AWS_EC2_INSTANCE_AUTO_RECOVERY_NO_ACTION",
"AWS_EC2_INSTANCE_AUTO_RECOVERY_SUCCESS",

自動復旧の結果は、AWS アカウントの主な連絡先と代替連絡先の両方に電子メールで送信されます。以下のような E メールの件名を探します。

  • [Auto Recovery] Amazon EC2 インスタンスの復旧 : 正常
  • [Auto Recovery] Amazon EC2 インスタンスの復旧 : アクションなし
  • [Auto Recovery] Amazon EC2 インスタンスの復旧 : 失敗

この記事は役に立ちましたか?


請求に関するサポートまたは技術サポートが必要ですか?