【AWS】Healthイベントの通知設定

AWSとて障害は起きます

AWSとて障害は起きます。クラウドサービスはいついかなるときにも、突然使えなくなったり、システム停止が起きる可能性はあります。これまでも幾度か大きな障害も起こりました。そんな時に備えるちょっと便利な機能を紹介します。

AWS Healthとは

AWS Healthは、AWSサービスの状態とパフォーマンスに関するリアルタイム情報を提供するサービスです。予告なく発生する問題や障害に関する情報をイベントとして提供し、AWS管理者はこのイベントをリアルタイムで確認することにより運用上のリスクを軽減できます。

AWS Healthで検知するイベントは次のような種類に分かれます

  1. 情報イベント: 一般的なアップデートや通知。

  2. 警告イベント: インフラストラクチャに関する問題が発生している可能性があるが、サービスにはまだ影響していない。

  3. 障害イベント: サービスやリソースに問題が発生し、ユーザーアクションが必要。

  4. スケジュールされたメンテナンス: 予定されたメンテナンスの通知。

AWS Healthイベントの通知設定を行うことで、重要なイベントに関する通知を受け取ることができます。通知方法としては、Eメール、SMS、SNSトピック、APIエンドポイントなどが利用できます。


通知を受け取る利点

AWS Healthイベントの通知を受け取ることで、次の利点を享受できます

  • 障害やメンテナンスに早期に気付き、素早く対処できる。

  • ビジネス関係者や適切なチームに通知を送信し、連携を強化できる。

  • クラウドインフラの信頼性を高め、サービスの可用性を向上させる。


通知設定

イベントを通知するにはEventBridgeとSNSを連携させます。社内の管理者や監視センターなどにメール通知を飛ばす設定をするとよいでしょう。


通知設定の参考

イベント通知設定するCloudFormationコードを紹介したいと思います。
このコードを実行して出来上がるAWSリソースは以下です。
SNS
 ・トピック
 ・サブスクリプション(Eメールアドレス)
Eventbridge
 ・AWS Healthをトリガー
 ・SNS連携

AWSTemplateFormatVersion: 2010-09-09

Description: >
  SNS and EventBridge stack for AWS Health notifications  

Parameters:

  EmailAddress:
    Type: String
    Description: Email address to subscribe to SNS topic  

Resources:

  SNSTopic:
    Type: AWS::SNS::Topic
    Properties:
      Subscription:
        - Endpoint: !Ref EmailAddress
          Protocol: email
      TopicName: Health-alert
      DisplayName: Health-alert

  SNSTopicPolicy:
    Type: AWS::SNS::TopicPolicy
    Properties:
      Topics:
        - !Ref SNSTopic
      PolicyDocument:
        Version: "2012-10-17"
        Statement:
          -
            Effect: "Allow"
            Principal:
              Service: "events.amazonaws.com"
            Action: "sns:Publish"
            Resource: !Ref SNSTopic

  EventRule:
    Type: AWS::Events::Rule  
    Properties:
      Name: Health-alert
      EventPattern:
        source:
          - "aws.health"
      State: "ENABLED"
      Targets:
        - 
          Arn: !Ref SNSTopic
          Id: MySNSTarget

※ポイント:
東京リージョンをメインに利用している場合は、東京リージョンとバージニアリージョンの両方にHealthイベント通知の設定をするとよいでしょう。
(グローバルサービスはバージニアリージョンで検知するため)


まとめ

 AWS Healthイベントの通知設定は、クラウドインフラの信頼性向上に欠かせない要素です。障害に備え、早期に対処するために、AWS Healthを活用し、適切な通知設定を行いましょう。


参考


この記事が気に入ったらサポートをしてみませんか?