Amazon RDS イベント通知の概要 - Amazon Aurora

Amazon RDS イベント通知の概要

Amazon RDS は、サブスクライブ可能なカテゴリにイベントをグループ分けします。これにより、そのカテゴリのイベントが発生すると、通知を受け取ることができます。

イベントサブスクリプションの対象となる RDS リソース

Amazon Aurora の場合、イベントは DB クラスターレベルと DB インスタンスレベルの両方で発生します。次のリソースのイベントカテゴリにサブスクライブできます。

  • DB インスタンス

  • DB クラスター

  • DB クラスタースナップショット

  • DB パラメータグループ

  • DB セキュリティグループ

  • RDS Proxy

  • カスタムエンジンバージョン

例えば、特定の DB インスタンスのバックアップカテゴリにサブスクライブした場合、DB インスタンスに影響するバックアップ関連のイベントが発生するたびに通知が送信されます。DB インスタンスの設定変更カテゴリにサブスクライブした場合は、DB インスタンスが変更されると、通知を受け取ります。また、イベント通知サブスクリプションが変更されても、通知を受け取ります。

複数の異なるサブスクリプションを作成することもできます。例えば、すべての DB インスタンスの全イベント通知を受信するサブスクリプションや、DB インスタンスのサブセットに関する重要なイベントのみを含むサブスクリプションを作成することもできます。2 番目のサブスクリプションでは、フィルターで 1 つ以上の DB インスタンスを指定します。

Amazon RDS イベント通知にサブスクライブする基本的な手順は次のとおりです。

Amazon RDS イベント通知にサブスクライブする手順は次のとおりです。

  1. Amazon RDS コンソール、AWS CLI、または API を使用して、Amazon RDS イベント通知サブスクリプションを作成します。

    Amazon RDS では、Amazon SNS トピックの ARN を使用して各サブスクリプションを識別します。Amazon RDS コンソールでは、サブスクリプションの作成時に ARN が作成されます。Amazon SNS コンソール、AWS CLI、または Amazon SNS API を使用して ARN を作成します。

  2. サブスクリプションの作成で指定したアドレス宛てに、Amazon RDS から承認の E メールまたは SMS メッセージが送信されます。

  3. サブスクリプションを確認するには、受信した通知に記載されているリンクを選択します。

  4. Amazon RDS コンソールでは、サブスクリプションのステータスで [My Event Subscriptions] (イベントのサブスクリプション) が更新されます。

  5. Amazon RDS は、サブスクリプションを作成したときに指定したアドレスへの通知の送信を開始します。

Amazon SNS を使用する際の Identity and Access Management に関する詳細については、Amazon Simple Notification Service デベロッパーガイドの「Identity and access management in Amazon SNS」を参照してください。

DB インスタンスからのイベント通知の処理には、AWS Lambda を使用することができます。詳細については、AWS Lambda デベロッパーガイドの「Amazon RDS で AWS Lambda を使用する」を参照してください。

RDS イベント通知のデリバリー

Amazon RDS は、サブスクリプションを作成するときに指定したアドレスに通知を送信します。通知には、メッセージに関する構造化メタデータを提供する、メッセージ属性を含めることができます。メッセージ属性の詳細については、「Aurora の Amazon RDS イベントカテゴリとイベントメッセージ」を参照してください。

イベント通知が配信されるまでに最大 5 分かかります。

重要

Amazon RDS はイベントストリーミングのイベントの順番を保証しません。イベントの順番は変わる場合があります。

Amazon SNS が受信登録している HTTP または HTTPS エンドポイントに通知を送信した場合、エンドポイントに送信される POST メッセージには、JSON ドキュメントを含むメッセージ本文が含まれます。詳細については、Amazon Simple Notification Service デベロッパーガイドの「Amazon SNS メッセージと JSON 形式」を参照してください。

テキストメッセージで通知を送信するように SNS を設定できます。詳細については、Amazon Simple Notification Service デベロッパーガイドの「Mobile text messaging (SMS)」を参照してください。

サブスクリプションを削除せずに通知を無効にするには、Amazon RDS コンソールで [Enabled] (有効) として [No] (いいえ) を選択します。または、AWS CLI や Amazon RDS API を使用して Enabled パラメータをfalse に設定します。

Amazon RDS イベント通知の請求

Amazon RDS イベント通知の請求は、Amazon SNS を通じて行われます。使用したイベント通知に対して、Amazon SNS 料金が適用されます。Amazon SNS の請求の詳細については、「Amazon Simple Notification Service 料金表」を参照してください。

Amazon EventBridgei を使用した Aurora イベントの例

次の例は、JSON 形式のさまざまなタイプの Aurora イベントを示しています。JSON 形式でイベントをキャプチャして表示する方法を示すチュートリアルについては、「チュートリアル: Amazon EventBridge を使用して DB インスタンスの状態変化をログに記録する」を参照してください。

DB クラスターイベントの例

以下は、JSON 形式の DB クラスターイベントの例です。イベントは、my-db-cluster という名前のクラスターにパッチが適用されたことを示します。イベント ID は RDS-EVENT-0173 です。

{ "version": "0", "id": "844e2571-85d4-695f-b930-0153b71dcb42", "detail-type": "RDS DB Cluster Event", "source": "aws.rds", "account": "123456789012", "time": "2018-10-06T12:26:13Z", "region": "us-east-1", "resources": [ "arn:aws:rds:us-east-1:123456789012:cluster:my-db-cluster" ], "detail": { "EventCategories": [ "notification" ], "SourceType": "CLUSTER", "SourceArn": "arn:aws:rds:us-east-1:123456789012:cluster:my-db-cluster", "Date": "2018-10-06T12:26:13.882Z", "Message": "Database cluster has been patched", "SourceIdentifier": "my-db-cluster", "EventID": "RDS-EVENT-0173" } }

DB パラメータグループイベントの例

以下は、JSON 形式の DB パラメータグループイベントの例です。イベントは、パラメータグループ time_zone でパラメータ my-db-param-group が更新されたことを示します。イベント ID は RDS-EVENT-0037 です。

{ "version": "0", "id": "844e2571-85d4-695f-b930-0153b71dcb42", "detail-type": "RDS DB Parameter Group Event", "source": "aws.rds", "account": "123456789012", "time": "2018-10-06T12:26:13Z", "region": "us-east-1", "resources": [ "arn:aws:rds:us-east-1:123456789012:pg:my-db-param-group" ], "detail": { "EventCategories": [ "configuration change" ], "SourceType": "DB_PARAM", "SourceArn": "arn:aws:rds:us-east-1:123456789012:pg:my-db-param-group", "Date": "2018-10-06T12:26:13.882Z", "Message": "Updated parameter time_zone to UTC with apply method immediate", "SourceIdentifier": "my-db-param-group", "EventID": "RDS-EVENT-0037" } }

DB クラスタースナップショットイベントの例

以下は、JSON 形式の DB クラスタースナップショットイベントの例です。イベントは、my-db-cluster-snapshot という名前のスナップショットの作成を示します。イベント ID は RDS-EVENT-0074 です。

{ "version": "0", "id": "844e2571-85d4-695f-b930-0153b71dcb42", "detail-type": "RDS DB Cluster Snapshot Event", "source": "aws.rds", "account": "123456789012", "time": "2018-10-06T12:26:13Z", "region": "us-east-1", "resources": [ "arn:aws:rds:us-east-1:123456789012:cluster-snapshot:rds:my-db-cluster-snapshot" ], "detail": { "EventCategories": [ "backup" ], "SourceType": "CLUSTER_SNAPSHOT", "SourceArn": "arn:aws:rds:us-east-1:123456789012:cluster-snapshot:rds:my-db-cluster-snapshot", "Date": "2018-10-06T12:26:13.882Z", "SourceIdentifier": "my-db-cluster-snapshot", "Message": "Creating manual cluster snapshot", "EventID": "RDS-EVENT-0074" } }