logologo
Amazon EventBridgeとは?構成要素・使い方を解説
thumb_amazoneventbridge_01

Amazon EventBridgeとは?構成要素・使い方を解説

アンドエンジニア編集部
2024.09.13
この記事でわかること
Amazon EventBridgeとは、AWSによるイベント駆動型のサーバレスサービスを指します
システムやサービスからイベントを取り込んで、他のアプリケーションと連携します
AWSのサービスと統合可能で、フルマネージドで信頼性の高いスケーラビリティを実現します

Amazon EventBridgeとは

img_amazoneventbridge_01

Amazon EventBridgeとは、AWSで提供されるイベント駆動型のサーバレスサービスを表します。自社で開発したアプリケーションやAWSの提供サービス、サードパーティ製ソフトウェアなどから、イベントを取り込んでアプリケーションを実行できるようにします。

【参考】:Amazon EventBridge

イベント駆動型とは

イベント駆動型とは、イベントの発信や応答に応じて必要なアプリケーションを起動する形式を指し、疎結合のアプリケーション連携の形式を表します。ここで言うイベントとは、システムの状況に応じて得られる情報や動作を表します。

この実行方法は、システムやサービスから得られるイベントによって速やかに起動することが可能で、信頼性の確保と負荷に応じたスケーラビリティを実現します。

Amazon EventBridgeの概要

Amazon EventBridgeは、イベントを使用してアプリケーションやサービスを接続し、実行するサービスです。この実行方法をイベント駆動型アプリケーションと呼びます。

Amazon EventBridgeは、以前のAmazon CloudWatch Eventsサービスが進化したものです。Amazon CloudWatch Eventsは、AWS内のイベント駆動が中心でしたが、Amazon EventBridgeでは、サードパーティ製ソフトウェアのイベント取り込みが可能になっています。

【参考】:Amazon EventBridge ユーザーガイド / Amazon EventBridgeとは

Amazon EventBridgeの特徴

Amazon EventBridgeは、パイプとイベントバスという2種類のイベントの処理方法を提供します。このイベント処理を用いて、サーバレスで追加のコードを書くことなく、AWSのサービスと統合できるほか、フルマネージドで信頼性の高いスケーラビリティを実現できます。

イベントバスとパイプは、組み合わせて使用することができます。

【参考】:Amazon EventBridge の特徴

Amazon EventBridgeの料金体系

Amazon EventBridgeは、サービスの構成要素ごとに費用が発生します。具体的には、イベントバスに公開されたイベント、スキーマ検出のために取り込まれたイベント、イベントリプレイが対象です。無料枠が設定されているため、最初に無料で試してみることができます。

【参考】:Amazon EventBridge の料金

AWSの無料利用枠とは?利用方法と対象AWSサービスを解説!

Amazon EventBridgeのサービス構成要素

img_amazoneventbridge_02

Amazon EventBridgeのサービスは、いくつかの機能で構成されています。最初にサービス構成要素の用語がわかると、役割に応じてどのように利用するのか理解が深まります。ここでは、Amazon EventBridgeのサービス構成要素の用語と概要を解説していきます。

【参考】:Amazon EventBridge の特徴 【参考】:Amazon EventBridge のよくある質問

イベントバス

イベントバスとは、Amazon EventBridgeが提供するイベントの処理方法の1つです。イベントを受信するルーターの役割を持っており、イベントをさまざまなソースから多数のターゲットへ配信できます。その際、受信したイベントをフィルタリングしたり変換したりすることもできます。

【参考】:Amazon EventBridge ユーザーガイド / イベントバス

パイプ

パイプは、1対1のポイント接続を行うイベント処理の方法です。それぞれのパイプは、ソースノードからイベントを受け取ると、必要な処理を施してターゲットとなる配信先へ送ります。パイプにおいても、オプションでフィルタリングや変換が可能です。

イベントソースとターゲット

Amazon EventBridgeは、イベントソースとターゲットの間でイベントを仲介します。

イベントソースはイベントの発信元で、イベント送信を行うサービスやアプリケーションが該当し、「イベントプロデューサー」と呼ぶ場合もあります。ターゲットはイベントの配信先で、配信先のリソースやエンドポイントを指し、「イベントコンシューマー」と呼ぶ場合もあります。

スケジューラ

スケジューラは、タスクやイベントをスケジューリングするための仕組みです。サーバレスで実行可能なタスクスケジューラで、タスクをスケジュールに従って1度だけ、あるいは定期実行させることができます。

受け取ったイベントによって、Lambdaとの連携も可能です。AWSサービス全体で数百万のスケジュールの作成や実行が可能で、管理の簡素化が可能です。

API Destinations

API Destinationsは、HTTPを用いるウェブAPIで用います。エンドポイントへの接続に使用する承認方法と認証情報を定義します。HTTPを用いるエンドポイントターゲットに対して、Connectionを作成・保存して、ターゲットへのイベント配信に使用します。

イベントリプレイ

イベントは、アーカイブを作成することによって再度イベントとして使用できます。このイベントの再生機能を「イベントリプレイ」と呼びます。

アプリケーションを更新するなどの場合、イベントを一時中断して再開することができます。この場合、イベントリプレイを、履歴イベントを再生することでシステムの一貫性を確保できます。

スキーマレジストリ

スキーマレジストリとは、スキーマを検索しアクセスするための集積情報を表します。ここで言うスキーマはイベントの構造で、イベントに含まれているデータの、各要素の形式やタイトル、名前、電話番号などの情報を含む情報の構造体を示します。

Amazon EventBridgeを使うには

img_amazoneventbridge_03

Amazon EventBridgeを使うには、最初にイベントのルールを作成します。Amazon EventBridge コンソールから、「ルール」→「ルールの作成」と進めていきます。

ここでは、イベントバスを指定しますが、デフォルトのバス、カスタム、パートナーイベントバスから選びます。通常は、アカウントからのイベントと一致させるために、デフォルトのイベントバスを使用します。

【参考】:Amazon EventBridge ユーザーガイド / Amazon EventBridgeの開始方法 【参考】:Amazon EventBridge ユーザーガイド / Amazon EventBridge イベントパターン

ルールタイプを指定する

次に「ルールの作成」では、イベントのルールタイプを、「イベントパターンを持つルール」「スケジュール」から選びます。

「イベントパターンを持つルール」は、イベントパターンとイベントが一致したときに実行されるルールです。「スケジュール」は、定期実行などスケジュールに従って実行されるルールを指し、cronによる定期実行あるいは10分ごとなど規則的なレートから選択します。

イベントソースおよびイベントパターンを設定する

続いて、イベントの配信元となるイベントソースを設定します。イベントソースは、「AWSイベントまたはEventBridgeパートナーイベント」「その他」「すべてのイベント」から選択します。通常は「AWSイベントまたはEventBridgeパートナーイベント」を選びます。

イベントパターンは、イベントと同じ構造をJSON形式で記述していきます。その後、イベントパターンが適切か、サンプルイベントやカスタムイベントを用いて確認します。AWSのイベントを生成するサービス一覧は以下のサイトにあります。イベントパターンもこちらから確認できます。

【参考】:Amazon EventBridge ユーザーガイド / AWS でイベントを生成する サービス

JSONファイルとは?基本構造からファイルの作り方、読み書き方法まで解説

ターゲットの指定

最後にターゲットを指定します。ターゲットタイプは、「EventBridgeイベントバス」「EventBridge API」「AWSサービス」から選びます。

実際のターゲットは、最大5つまで同一ルールで指定することができます。Lambda関数やEC2 API、ECSタスク、Kinesisストリーミング、APIゲートウェイ、CloudWatch Logsのロググループなどから指定します。

AWS Lambdaとは?できることを分かりやすく解説!
AWSのサーバー提供サービスであるAmazon EC2とは?活用方法や料金体系等を解説!
AWS Kinesisとは?メッセージキューサービスの概要や特徴を解説

EventBridgeの使い方

EventBridgeの使い方ですが、EventBridgeはルールを作成するだけで有効になります。使用しない場合は、スケジュールの状態の「有効化」をオフ(無効)にします。

このスケジュール状態は、CloudWatchログから確認できます。同様にLambdaのログなど、ターゲットで指定した各サービスのログからも確認することができます。

Amazon EventBridgeはアプリケーション全体のイベント管理に有効

img_amazoneventbridge_04

ウェブで連携するアプリケーションは、多くのシステム間連携によって構築されています。そのため、問題が生じた際にもそれぞれの連携状態を確認する必要があります。

Amazon EventBridgeは、イベント駆動型のシステムを構築し、システム間連携をイベントを通じて実現します。そのため、複雑化するアプリケーションを統一し、大規模アプリケーションの保全性を高めてくれるでしょう。

\転職するか迷っていてもOK!/
マイナビエージェントに無料登録して
転職サポートを受ける

気になる人のXをフォローしよう!
公式LINE
公式YouTube
マイナビITエージェント

編集部オススメコンテンツ

thumb_gptowten_01
ChatGPTの面白い使い方15選!ビジネスや遊び相手になる事例
アンドエンジニア編集部
2024.02.19

アンドエンジニアへの取材依頼、情報提供などはこちらから

お問い合わせ・情報提供

カテゴリー

編集部おすすめコンテンツ

アンドエンジニアへの取材依頼、情報提供などはこちらから

logologo
Powered by マイナビ AGENT