View a markdown version of this page

EventBridge カスタムイベントバスとは - Amazon EventBridge

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

EventBridge カスタムイベントバスとは

EventBridge カスタムイベントバスは、1 つのチームが実行し、多くのチームやアカウントが使用するサーバーレスイベントバスです。PutEvents または を使用してイベントを発行しますPutRawEvents。各イベントは、フィルタが一致するサブスクライバーにルーティングされ、バスに設定した保持期間中、すべてのイベントのコピーが保持されます。 AWS Resource Access Manager (AWS RAM) を通じてバスを他のアカウントと共有し、それらの各アカウントは独自のサブスクライバーをアタッチします。バス所有者は、ユーザーに代わってルーティングを書き込みません。

EventBridge コンソールでは、バスタイプはこのバスのカスタムイベントバスとして表示され、ルールとターゲットを使用するバスのカスタムイベントバス - Classic として表示されます。CLI、SDK、IAM の名前については、「」を参照してくださいカスタムイベントバスの名前、エンドポイント、IAM アクセス許可。

主な特徴

  • を介したクロスアカウント共有 AWS RAM。コンシューマーアカウントがイベントソース、または 3 つすべてを発行、サブスクライブ、アタッチできるようにする 4 つの管理アクセス許可があります。

  • すべてのイベントの保持期間は 1~365 日間で、バスに設定されます。

  • サブスクライバーごとに、イベントグループ内の順序付き (FIFO) 配信。

  • 各サブスクライバーの開始位置。これにより、新しいサブスクライバーは保持されたイベントを読み取ることができ、一時停止したサブスクライバーは損失なく再開できます。

  • 発行時、コンテンツ別、または指定したキー別に、5 分以内に重複排除します。

  • PutRawEvents JSON、Avro、Protobuf、または raw バイトの場合は、フィルタリング用のスキーマレジストリの逆シリアル化を使用します。

  • 状態が変化する AWS API アクションを直接呼び出すユニバーサルターゲットと、カスタマイズされたターゲット。

リソース

3 つのリソースを使用します。

イベントバス

イベントバスは、 PutEventsまたは で公開したイベントを受信しPutRawEvents、サブスクライバーにルーティングして保持します。バスで保持期間、オプションの AWS KMS キー、オプションのクロスアカウント共有を設定します。バスが通過する状態については、「」を参照してくださいバスの状態とそれぞれの許可。

サブスクライバー

サブスクライバーは、必要なイベントにフィルタとそれを受信する 1 つのターゲットで名前を付けます。を使用して作成しますCreateSubscriber。1 つのバスを監視し、フィルターに一致するイベントを保持し、オプションでそれぞれを変換して、1 つのターゲットに配信します。複数のターゲットにイベントを送信するには、ターゲットごとに 1 つのサブスクライバーを作成します。

イベントソース

イベントソースは、 AWS サービスまたは Software as a Service (SaaS) パートナーからイベントをバスに取り込みます。で作成しCreateEventSource、送信元と送信先バスに名前を付けると、EventBridge がイベントを移動します。

バスとサブスクライバーの Amazon リソースネーム (ARNs) は、EventBridge が生成する識別子で終わります。例: arn:aws:events:us-east-1:111122223333:event-busv2/orders/EXAMPLE1234567890abcdef。名前ではなく、完全な ARN を保存します。バスを削除して同じ名前の別のバスを作成する場合、新しいバスの識別子は異なります。

1 つのバス、多数のアカウント

別のアカウントにバスを使用させるには、バスを と共有 AWS RAM し、管理アクセス許可の 1 つをアタッチします。たとえば、そのアカウントにサブスクライバーAWSRAMEventBridgeEventBusV2SubscribeOnlyをアタッチさせます。その後、アカウントはバスに独自のサブスクライバーを作成して所有します。サブスクライバーはリスト表示時にのみ表示され、すべてのサブスクライバーが表示されます。コンシューマーアカウントはバスを変更または削除できず、 を使用してサブスクライバーを取り消すことができますRevokeResource。アクセス許可、リソースポリシー、失効については、「」を参照してくださいカスタムイベントバスを他のアカウントと共有する。

カスタムイベントバスがイベントをルーティングして保持する方法

バスは、到着時に各イベントを一致するサブスクライバーにルーティングします。また、バスは設定した日数だけイベントを保持します。保持により、2 つの機能が可能になります。

  • サブスクライバーは、過去の時点から開始できます。保持されたイベントを再生する方法と、今日作成したサブスクライバーが昨日公開されたイベントを読み取る方法です。

  • サブスクライバーは、イベントを失うことなく一時停止し、後で再開できます。

詳細については、「保持期間の選択」および「保持されたイベントをサブスクライバーに再生する」を参照してください。

カスタムイベントバスとカスタムイベントバスの違い - Classic

機能 カスタムイベントバス カスタムイベントバス - Classic
クロスアカウントの使用 バスを共有します AWS RAM。各コンシューマーアカウントは、バスでサブスクライバーを作成して所有します。 バスリソースポリシーを介して他のアカウントを付与するか、他のアカウントのバスにイベントを転送します。
Retention 設定した期間、バスに組み込まれます。 保持されません。イベントを保持するには、アーカイブを追加します。
順序付け サブスクライバーあたりのイベントグループ内の FIFO 配信。 利用できません。
リプレイ 保持されたイベントに対するサブスクライバーの開始位置。 アーカイブから再生します。
APIs発行 PutEvents JSON の場合は 、Avro や Protobuf などの任意の形式PutRawEventsの場合は 。 PutEvents JSON 用。
重複排除 発行時、コンテンツ別、または指定したキー別。 利用できません。
ルーティングリソースあたりのターゲット サブスクライバーごとに 1 つのターゲット。 ルールごとに最大 5 つのターゲット。

ユースケース

  • プラットフォームチームは 1 つのordersバスを実行し、フルフィルメント、請求、分析チームのアカウントと共有します。各チームは独自のサブスクライバーをアタッチします。プラットフォームチームはルーティングを編集しません。

  • 支払いサービスはアカウント番号EventGroupIdごとに を使用して発行し、FIFO サブスクライバーは各アカウントのイベントを順番にキューに配信します。

  • 新しい分析コンシューマーは 30 日前に開始位置で作成され、ライブトラフィックに追いつく前に 1 か月分の保持イベントを読み取ります。

料金

発行するイベント、サブスクライバーへの配信、保持に対して料金が発生します。料金については、「Amazon EventBridge の料金」を参照してください。

次の手順