モニタリングAWS HealthAmazon でのイベント EventBridge - AWS Health

翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。

モニタリングAWS HealthAmazon でのイベント EventBridge

アマゾンを使える EventBridge 検出して対応するAWS Healthイベント。次に、作成したルールに基づいて、 EventBridge イベントがルールで指定されている値に一致するときに、1 つ以上のターゲットアクションを呼び出します。イベントのタイプに応じて、イベント情報の取得、追加イベントの開始、通知の送信、是正措置の実施、またはその他のアクションを実行することができます。例えば、更新が予定されている AWS リソース (Amazon Elastic Compute Cloud (Amazon EC2) インスタンスなど) が AWS アカウント内にある場合に、AWS Health を使用して E メール通知を受け取ることができます。

メモ
  • AWS Health は、ベストエフォートベースでイベントを配信します。イベントが常に EventBridge。

  • 任意 EventBridge 作成したルールは、ユーザーのに関する通知しか受信できませんAWS アカウント。AWS Organizations 内にあるその他アカウントの組織イベントは受信できません。詳細については、「組織ビューでのアカウント全体の AWS Health イベントの集計」を参照してください。

のターゲットは、複数のターゲットタイプから選択できます。 EventBridge あなたの一部としてAWS Health以下を含むワークフロー

  • AWS Lambda 関数

  • Amazon Kinesis Data Streams

  • Amazon Simple Queue Service (Amazon SQS) キュー

  • 組み込みターゲット ( CloudWatch のアラームアクション)

  • Amazon Simple Notification Service (Amazon SNS) のトピック

例えば、AWS Health イベントの発生時に、Lambda 関数を使用して通知を Slack チャネルに渡すことができます。または、Lambda を使用して EventBridge Amazon SNS でカスタムテキストまたは SMS 通知を送信するにはAWS Healthイベントが発生した場合。

以下に対応して作成できる自動化およびカスタマイズされたアラートのサンプルについてAWS Healthイベント、を参照してくださいAWS Healthツールに GitHub。

AWS Health の AWS リージョンについて

を作成する必要があります EventBridge 受信する各リージョンのルールAWS Healthイベント。ルールを作成しなければ、イベントは受信されません。例えば、米国西部 (オレゴン) リージョンからイベントを受信するには、このリージョンのルールを作成する必要があります。

AWS Health イベントにはリージョン固有ではないものもあります。リージョンに固有ではないイベントはグローバルイベントと呼ばれます。これには、AWS Identity and Access Management (IAM) について送信されるイベントが含まれます。グローバルイベントを受信するには、米国東部 (バージニア北部) リージョンのルールを作成する必要があります。

でグローバルイベントを受け取るにはAWS GovCloud (US)、でルールを作成する必要がありますAWS GovCloud (米国西部) リージョン。

AWS Health の公開イベントについて

のみAWS Healthアカウントに固有のイベントが配信されます EventBridge。これには、Amazon EC2 インスタンスに必要な更新などのイベント、またはアカウントとリソースに影響する可能性があるその他のスケジュールされた変更イベントが含まれます。

現在、使用できません EventBridge 値を返すパブリックからのイベントService Health Dashboard。Service Health Dashboard からのイベントにより、リージョンでのサービスの可用性に関する情報が提供されます。これらのイベントはAWS アカウント、だから彼らはに届けられません EventBridge。

代わりに、AWS HealthコンソールとDescribeEventDetailsオペレーション。いずれかのオプションを使用してイベントに関する情報を返してから、そのイベントが Service Health Dashboard からのパブリックイベントであるか、AWS アカウントに固有のイベントであるかを特定できます。

次のオプションを使用して、イベントがパブリックかアカウント固有かを識別できます。

  • AWS Health Dashboard で、イベントの [Affected resources] (影響を受けるリソース) タブを選択します。リソースがあるイベントは、アカウントに固有です。リソースのないイベントはパブリックであり、アカウント固有のものではありません。詳細については、「の開始方法AWS Healthダッシュボード — アカウントの状態」を参照してください。

  • AWS Health API を使用して、eventScopeCode パラメータを返します。イベントには PUBLICACCOUNT_SPECIFIC、または NONE の値を指定できます。詳細については、『』を参照してください。DescribeEventDetailsのオペレーションAWS HealthAPI リファレンス

AWS Health Service Health Dashboard 通知ツールを使用して、パブリックイベントに関する通知を受けることもできます。詳細については、『』を参照してください。aws-health-tools上に GitHub ウェブサイト。

の作成 EventBridge のルールAWS Health

を作成できます EventBridge 通知を受けるためのルールAWS Healthアカウント内のイベント。AWS Health に対するイベントルールを作成する前に、以下を完了しておきます。

を作成するには EventBridge のルールAWS Health

  1. アマゾンを開く EventBridge コンソールでhttps://console.aws.amazon.com/events/

  2. AWS リージョン を変更するには、ページの右上隅にあるリージョンセレクターを使用します。AWS Health イベントを追跡するリージョンを選択します。

  3. ナビゲーションペインで [Rules] (ルール) を選択します。

  4. [Create rule] (ルールを作成) を選択します。

  5. [Define rule detail] (ルールの詳細を定義) ページで、ルールの名前と説明を入力します。

  6. [Event bus] (イベントバス) と [Rule type] (ルールタイプ) のデフォルト値を維持して、[Next] (次へ) を選択します。

  7. 上にイベントパターンの作成ページ、イベントソース、選択してくださいAWSイベントと EventBridge パートナーイベント

  8. []イベントパターン、にとってAWS のサービス、選択してくださいヘルス

  9. [Event Type] (イベントタイプ) で、以下のいずれかのオプションを選択します。

    • [Specific Health Abuse Events] (特定の不正行為に関する Health イベント) – イベントタイプ名に Abuse という単語が含まれている AWS Health イベント用のルールを作成します。

    • [Specific Health events] (特定の Health イベント) – 特定の AWS のサービス (Amazon EC2 など) のイベント用のルールを作成します。

  10. [Any service] (任意のサービス) または [Specific service(s)] (特定のサービス) を選択できます。特定のサービスを選択する場合は、以下のオプションの 1 つを選択します。

    • すべてのイベントタイプのカテゴリに適用されるルールを作成するには、[Any event type category] (任意のイベントタイプのカテゴリ) を選択します。

    • [Specific event type category(s)] (特定のイベントタイプのカテゴリ) を選択してから、[issue][accountNotification]、または [scheduledChange] などの値をリストから選択します。

    ヒント
    • 特定のサービスのすべての AWS Health イベントをモニタリングする場合は、[Any event type category] (任意のイベントタイプのカテゴリ) と [Any resource] (任意のリソース) を選択することをお勧めします。これにより、指定したサービスに対して、新しいイベントタイプのコードを含む、すべての AWS Health イベントがルールで確実にモニタリングされます。ルールの例については、すべての Amazon EC2 イベントを参照してください。

    • 複数のサービスまたはイベントタイプのカテゴリをモニタリングするルールを作成できます。そのためには、ルールのイベントパターンを手動で更新する必要があります。詳細については、「複数のサービスおよびカテゴリに対するルールの作成」を参照してください。

  11. 特定のサービスおよびイベントタイプのカテゴリを選択した場合は、イベントタイプのコードに対して以下のいずれかのオプションを選択します。

    • すべてのイベントタイプのコードに適用されるルールを作成するには、[Any event type code] (任意のイベントタイプのコード) を選択します。

    • [Specific event type code(s)] (特定のイベントタイプのコード) を選択し、リストから 1 つ以上の値を選択します。これにより、特定のイベントタイプのコードにのみ適用されるルールが作成されます。例えば、AWS_EC2_INSTANCE_STOP_SCHEDULEDAWS_EC2_INSTANCE_RETIREMENT_SCHEDULED を選択すると、これらのイベントがアカウントで発生した場合に、それらのイベントのみにルールが適用されます。

  12. 影響を受けるリソースに対して、以下のいずれかのオプションを選択します。

    • すべてのリソースに適用されるルールを作成するには、[Any resource] (任意のリソース) を選択します。

    • [Specific resource(s)] (特定のリソース) を選択し、1 つ以上のリソースの ID を入力します。例えば、i-EXAMPLEa1b2c3de4 などの Amazon EC2 インスタンス ID を指定して、このリソースのみに影響を及ぼすイベントを監視できます。

  13. ルールのセットアップを見直して、イベントモニタリング要件を満たしていることを確認します。

  14. [Next] (次へ) を選択します。

  15. [Select target(s)] (ターゲットを選択) ページで、このルール用に作成したターゲットタイプを選択してから、そのタイプに必要な追加のオプションを設定します。例えば、イベントを Amazon SQS キューまたは Amazon SNS トピックに送信できます。

  16. [Next] (次へ) を選択します。

  17. (オプション) [Configure tags] (タグの設定) ページで、いずれかのタグを追加し、[Next] (次へ) を選択します。

  18. [Review and create] (確認および作成) ページで、ルールの設定を確認し、イベントモニタリング要件を満たしていることを確認してください。

  19. [ルールの作成] を選択します。

例 : すべての Amazon EC2 イベントに対するルール

以下の例では、 EventBridge イベントタイプのカテゴリ、イベントコード、およびリソースなど、すべての Amazon EC2 イベントを管理します。


          の作成方法のスクリーンショット EventBridge すべての Amazon EC2 イベントのみに対するルール。

例 : 特定の Amazon EC2 イベントに対するルール

以下の例では、 EventBridge 以下を監視します。

  • Amazon EC2 サービス

  • scheduledChange イベントタイプのカテゴリ

  • AWS_EC2_INSTANCE_TERMINATION_SCHEDULED および AWS_EC2_INSTANCE_RETIREMENT_SCHEDULED のイベントタイプのコード

  • i-EXAMPLEa1b2c3de4 という ID を持つインスタンス


          の作成 EventBridge 特定の Amazon EC2 イベントのみに対するルール。

複数のサービスおよびカテゴリに対するルールの作成

前の手順の例は、単一のサービスおよびイベントタイプのカテゴリに対してルールを作成する方法を示しています。複数のサービスやイベントタイプのカテゴリに対してルールを作成することもできます。つまり、モニタリングするサービスやカテゴリごとに個別のルールを作成する必要はありません。そのためには、イベントパターンを編集し、変更を手動で入力する必要があります。

次のオプションの 1 つを使用できます。

既存のルールにサービスとカテゴリを追加するには

  1. の中に EventBridge コンソール、ルールページで、ルール名を選択します。

  2. 右上隅の[Edit] (編集) を選択します。

  3. [Next] (次へ) を選択します。

  4. [Event pattern] (イベントパターン) で [Edit pattern] (パターンを編集) をクリックしてから、変更内容をテキストフィールドに入力します。

  5. [Review and update] (確認と更新) ページが表示されるまで [Next] (次へ) を選択します。

  6. [Update rule] (ルールを更新) を選択して変更を保存します。

新しいルールにサービスとカテゴリを追加するには

  1. の作成 EventBridge のルールAWS Health」の手順をステップ 9 まで実行します。

  2. リストから単一のサービスまたはカテゴリを選択する代わりに、[Event pattern] (イベントパターン) で [Edit pattern] (パターンを編集) を選択します。

  3. テキストフィールドに変更を入力します。独自のイベントパターンを作成するためのモデルとして、以下のサンプルパターンを参照してください。

  4. イベントパターンを確認してから、「の作成 EventBridge のルールAWS Health」の残りの手順を実行してルールを作成します。

APIまたは AWS Command Line Interface (AWS CLI) の使用

新しいルールまたは既存のルールについては、PutRuleAPI オペレーションまたはaws events put-ruleコマンドを使用して、イベントパターンを更新します。AWS CLI コマンドの例については、AWS CLI コマンドリファレンスput-rule を参照してください。

例: 複数のサービスとイベントタイプのカテゴリ

次のイベントパターンでは、次のイベントを監視するルールを作成します。issue,accountNotification、およびscheduledChange3つのイベントタイプカテゴリAWSのサービス: Amazon EC2、Amazon EC2 Auto Scaling、およびAmazon VPC。

{ "detail": { "eventTypeCategory": [ "issue", "accountNotification", "scheduledChange" ], "service": [ "AUTOSCALING", "VPC", "EC2" ] }, "detail-type": [ "AWS Health Event" ], "source": [ "aws.health" ] }

AWS Chatbot を使用した AWS Health イベントの受信

Slack や Amazon Chime など、チャットクライアントで AWS Health イベントを直接受け取れます。このイベントを使用して、AWS のアプリケーションとインフラストラクチャに影響を及ぼす可能性がある、最近の AWS のサービス問題を特定することができます。その後、AWS Health Dashboard にサインインして、更新に関する詳細情報を確認できます。例えば、AWS アカウントで AWS_EC2_INSTANCE_STOP_SCHEDULED イベントタイプに対してモニタリングしている場合、AWS Health イベントを Slack チャネルに直接表示できます。

前提条件

開始する前に、以下のものが必要です。

  • AWS Chatbot で構成されたチャットクライアント。Amazon Chime と Slack を設定できます。詳細については、AWS Chatbot 管理者ガイドAWS Chatbot の開始方法を参照してください。

  • 作成した、およびサブスクライブした Amazon SNS トピック。SNS トピックが既にある場合、既存のトピックを使用できます。詳細については、「Amazon Simple Notification Service デベロッパーガイド」の「Amazon SNS の使用開始」を参照してください。

AWS Chatbot を使用して AWS Health イベントを受信するには

  1. の作成 EventBridge のルールAWS Health」の手順をステップ 13 まで実行します。

    1. ステップ 14 でターゲットを選択するときに、SNS トピックを選択します。これと同じ SNS トピックを AWS Chatbot コンソールで使用します。

    2. 残りの手順を完了して、ルールを作成します。

  2. AWS Chatbot コンソールに移動します。

  3. Slack チャネル名など、チャットクライアントを選択し、[Edit] (編集) を選択します。

  4. [Notifications - optional] (通知 – オプション) セクションの [Topics] (トピック) で、ステップ 1 で指定したものと同じ SNS トピックを選択します。

  5. [Save] (保存) を選択します。

    メトリックAWS Healthにイベントを送信します EventBridge それはあなたのルールに合っている、AWS Healthイベントがチャットクライアントに表示されます。

  6. イベント名を選択して、AWS Health Dashboard で詳細情報を確認します。

例 : Slack に送信される AWS Health イベント

以下は、Slack チャネルに表示されている、米国東部 (バージニア北部) での Amazon EC2 と Amazon Simple Storage Service (Amazon S3) の 2 つの AWS Health イベントの例です。


          Slack チャネルで 2 つの AWS Health イベントがどのように表示されるかを示すスクリーンショット。

Amazon EC2 インスタンスのアクションの自動化

Amazon EC2 インスタンスに対してスケジュールされたイベントに対応するアクションを自動化することができます。メトリックAWS Healthあなたにイベントを送りますAWSアカウント、あなたの EventBridge その後、ルールは次のようなターゲットを呼び出すことができますAWS Systems Manager自動化文書。ユーザーに代わってアクションを自動化します。

例えば、Amazon EC2 インスタンスの使用停止イベントが Amazon Elastic Block Store (Amazon EBS)-backed EC2 インスタンスに対してスケジュールされている場合、AWS Health が AWS_EC2_PERSISTENT_INSTANCE_RETIREMENT_SCHEDULED イベントタイプを AWS Health Dashboard に送信します。ルールでこのイベントタイプが検出されると、インスタンスの停止と開始を自動化できます。この方法では、これらのアクションを手動で実行する必要はありません。

注記

Amazon EC2 インスタンスに対するアクションを自動化するには、そのインスタンスが Systems Manager によって管理されている必要があります。

詳細については、次を参照してください。による Amazon EC2 の自動化 EventBridge()Linux インスタンス用 Amazon EC2 ユーザーガイド

前提条件

ルールを作成する前に、AWS Identity and Access Management (IAM) ポリシーと IAM ロールを作成して、ロールの信頼ポリシーを更新しておく必要があります。

ロール用のカスタマー管理ポリシーを作成するには、次の手順に従います。このポリシーは、ユーザーに代わってアクションを実行するためのロールアクセス許可を付与します。この手順では、IAM コンソールの JSON ポリシーエディタを使用します。

IAM ポリシーを作成するには

  1. AWS Management Console にサインインして、IAM コンソール (https://console.aws.amazon.com/iam/) を開きます。

  2. ナビゲーションペインで、[ポリシー] を選択します。

  3. [Create policy] (ポリシーを作成) を選択します。

  4. [JSON] タブを選択します。

  5. 次の JSON をコピーし、エディタでデフォルトの JSON を置き換えます。

    { "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "ec2:StartInstances", "ec2:StopInstances", "ec2:DescribeInstanceStatus" ], "Resource": [ "*" ] }, { "Effect": "Allow", "Action": [ "ssm:*" ], "Resource": [ "*" ] }, { "Effect": "Allow", "Action": [ "sns:Publish" ], "Resource": [ "arn:aws:sns:*:*:Automation*" ] }, { "Effect": "Allow", "Action": [ "iam:PassRole" ], "Resource": "arn:aws:iam::123456789012:role/AutomationEVRole" } ] }
    1. Resource パラメータで、Amazon リソース名 (ARN) として自分の AWS アカウント ID を入力します。

    2. ロール名を置き換えることも、デフォルトを使用することもできます。この例は AutomationEVRole を使用します。

  6. [Next: (次へ:)] を選択します タグ

  7. (オプション) キーバリューペアとしてのタグを使用して、メタデータをポリシーに追加することができます。

  8. [Next: (次へ:)] を選択します 確認.

  9. 上に[ポリシーの確認]ページに a と入力してください[Name] (名前)、などAutomationEVRolePolicyそしてオプション説明

  10. [Summary] (概要) ページで、ポリシーが許容する許可を確認します。ポリシーが適切であれば、[Create policy] (ポリシーの作成) を選択します。

このポリシーによって、このロールが実行できるアクションが定義されます。詳細については、IAM ユーザーガイドIAM ポリシーの作成 (コンソール) を参照してください。

このポリシーを作成したら、IAM ロールを作成し、そのロールにポリシーをアタッチする必要があります。

AWS サービスのロールを作成するには

  1. AWS Management Console にサインインして、IAM コンソール (https://console.aws.amazon.com/iam/) を開きます。

  2. ナビゲーションペインで [Roles] (ロール) を選択してから、[Create role] (ロールを作成する) を選択します。

  3. 信頼できるエンティティの種類の選択 で、AWS サービス を選択します。

  4. このロールを引き受けることを許可するサービスに [EC2] を選択します。

  5. [Next: (次へ:)] を選択します アクセス許可.

  6. 作成したポリシー名を入力します。例:AutomationEVRolePolicyを選択し、ポリシーの横にあるチェックボックスをオンにします。

  7. [Next: (次へ:)] を選択します タグ

  8. (オプション) キーと値のペアとしてタグを使用し、メタデータをロールに追加できます。

  9. [Next: (次へ:)] を選択します 確認.

  10. [Role name] (ロール名) には AutomationEVRole を入力します。この名前は、作成した IAM ポリシーの ARN に表示される名前と同じものにする必要があります。

  11. (オプション) [Role description] (ロールの説明) に、ロールの説明を入力します。

  12. ロール情報を確認し、[Create role (ロールの作成)] を選択します。

詳細については、IAM ユーザーガイドAWS のサービス用ロールの作成を参照してください。

最後に、作成したロールの信頼ポリシーを更新できます。この手順を完了して、でこのロールを選択できるようにする必要があります EventBridge コンソール。

ロールの信頼ポリシーを更新するには

  1. AWS Management Console にサインインして、https://console.aws.amazon.com/iam/ で IAM コンソールを開きます。

  2. ナビゲーションペインで [Roles] (ロール) を選択します。

  3. AWS アカウントのロールのリストで、作成したロールの名前 (AutomationEVRole など) を選択します。

  4. [Trust relationships] タブを選択し、続いて [Edit trust relationship] を選択します。

  5. [Policy Document] (ポリシードキュメント) には、以下の JSON をコピーし、デフォルトポリシーを削除して、その代わりにコピーした JSON を貼り付けます。

    { "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Principal": { "Service": [ "ssm.amazonaws.com", "events.amazonaws.com" ] }, "Action": "sts:AssumeRole" } ] }
  6. [Update Trust Policy] (信頼ポリシーの更新) をクリックします。

詳細については、IAM ユーザーガイドロールの信頼ポリシーの変更 (コンソール) を参照してください。

のルールを作成する EventBridge

のルールを作成するには、次の手順を実行します。 EventBridge コンソールを使用して、使用停止が予定されている EC2 インスタンスの停止と起動を自動化できます。

のルールを作成するには EventBridge Systems Manager 自動アクション用

  1. アマゾンを開く EventBridge コンソールでhttps://console.aws.amazon.com/events/

  2. ナビゲーションペインの [Events] (イベント) で、[Rules] (ルール) を選択します。

  3. [Create rule] (ルールの作成) ページで、ルールの [Name] (名前) と [Description] (説明) を入力します。

  4. [Define pattern] (パターンの定義) で、[Event pattern] (イベントパターン) を選択してから、[Pre-defined pattern by service] (サービスごとに事前定義されたパターン) を選択します。

  5. [Service provider] (サービスプロバイダー) で、AWS を選択します。

  6. [Service name] (サービス名) には [Health] を選択します。

  7. [Event type] (イベントタイプ) には [Specific Health events] (特定の Health イベント) を選択します。

  8. [Specific service(s)] (特定のサービス) を選択し、[EC2] を選択します。

  9. [Specific event type category(s)] (特定のイベントタイプのカテゴリ) を選択し、[scheduledChange] を選択します。

  10. [Specific event types code(s)] (特定のイベントタイプのコード) を選択し、イベントタイプのコードを選択します。

    例えば、Amazon EC2 EBS-backed インスタンスの場合、AWS_EC2_PERSISTENT_INSTANCE_RETIREMENT_SCHEDULED を選択します。Amazon EC2 インスタンスの store-backed インスタンスの場合、AWS_EC2_INSTANCE_RETIREMENT_SCHEDULED を選択します。

  11. [任意のリソース] を選択します。

    [Event pattern] (イベントパターン) は以下の例のようになります。

    { "source": [ "aws.health" ], "detail-type": [ "AWS Health Event" ], "detail": { "service": [ "EC2" ], "eventTypeCategory": [ "scheduledChange" ], "eventTypeCode": [ "AWS_EC2_PERSISTENT_INSTANCE_RETIREMENT_SCHEDULED" ] } }
  12. Systems Manager オートメーションドキュメントターゲットを追加します。[Select targets] (ターゲットを選択) の [Target] (ターゲット) で [SSM Automation] (SSM オートメーション) を選択します。

  13. [ドキュメント] で、[AWS-RestartEC2Instance] を選択します。

  14. [Configure automation parameters(s)] (オートメーションパラメータの構成) を展開し、[Input Transformer] (入力トランスフォーマー) を選択します。

  15. [Input Path] (入力パス) フィールドに、{"Instances":"$.resources"} を入力します。

  16. 2 番目のフィールドに、{"InstanceId": <Instances>} を入力します。

  17. [Use existing role] (既存のロールを使用) を選択してから、作成した IAM ロール (AutomationEVRole など) を選択します。

    ターゲットは以下の例のようになります。

    
              の「SSM オートメーション」の例のスクリーンショット EventBridge コンソール。
    注記

    必要な EC2 と Systems Manager のアクセス許可と、信頼されたリレーションシップを持つ既存の IAM ロールがない場合、ロールはリストに表示されません。詳細については、「前提条件」を参照してください。

  18. [Create] (作成) を選択します。

    ルールに一致するイベントがアカウント内で発生すると、 EventBridge 指定したターゲットにイベントを送信します。