はじめに
こんにちは!BFT名古屋支店・新卒のゴンザレスです。
Amazon EventBridgeを初めて使う際にどんな仕組みか分からん~となったので、Amazon EventBridgeがどんなサービスなのかを初心者向けにまとめてみました。
Amazon EventBridgeとは
アプリケーション同士を繋ぐ役割をするサービスのことです。
Amazon EventBridgeが二つのアプリケーションと連携します。
片方のアプリケーションで起こった動作を検知し、それをもう一つのアプリケーションに伝えるというイメージです。
片方のアプリケーションで起こった動作のことをAmazon EventBridgeでは「イベント」と呼びます。
繋ぎたい二つのアプリケーションの一方を「時計のアラーム」、もう一方を「人間」に例えて図にすると以下のようになります。
ここで言うアプリケーションはAWSのサービスだけでなく、Software-as-a-Service (SaaS) アプリケーションやカスタムアプリケーションも含まれています。
Amazon EventBridgeはAWSのサービス同士だけでなく、SaaSアプリケーションとAWSのサービス、カスタムアプリケーションとAWSのサービスを繋ぐこともできます。
Software-as-a-Service (SaaS) アプリケーションやカスタムアプリケーションについては後でもう少し詳しく説明します。
どうですか、イメージは沸きましたでしょうか。
Amazon EventBridgeはアプリケーション同士を繋ぐ、まさに "橋"(Bridge)のような役割をしています。
Amazon EventBridgeに関する用語
Amazon EventBridgeがどのようなサービスかを理解するにあたって、知っておきたい用語をいくつか紹介します。
Amazon EventBridgeでは、「ルール」を設定することでサービス同士を繋ぐことができます。
具体的な「ルール」の設定方法はこちらの記事からどうぞ。
【AWS】EventBridgeでCloudWatchとLambdaをつなぐ! - BFT名古屋 TECH BLOG
「ルール」を設定するために理解が必要な、以下四点の用語を紹介します。
1.イベントソース
2.イベントバス
3.ターゲット
4.JSON
順に詳しく説明していきます。
イベントソースとは
イベントソースとは、イベントの送信元となるサービスやアプリケーションのことを指します。
イベントソースには以下3種類があります。
・SaaSアプリケーション
例:Zendesk、Datadog、PagerDuty など
Amazon EventBridgeと連携しているSaaS アプリケーションで、イベントとして設定する際のコードを一から書く必要がありません。
・カスタムアプリケーション
Python、Node.js、Java、Go などを含む開発言語で作られたアプリケーション
・AWSのアプリケーション
例:AWS Lambda、Amazon SQS、Amazon SNS、AWS Step Functions、Amazon Kinesis Data Streams など
イベントバスとは
イベントバスは、ルールの保存場所というようなイメージです。
基本的には「デフォルトのイベントバス」が自分の使っているAWSアカウントに対して、一つ作成されています。
AWSのサービス同士をAmazon EventBridgeで連携する場合は、「デフォルトのイベントバス」を使用すればOKです。
SaaS アプリケーションのイベントを作成したい場合は「パートナーイベントバス」、独自のアプリケーションのイベントを作成したい場合は「カスタムイベントバス」を使用してください。
ターゲットとは
Amazon EventBridgeがイベントソースから受け取ったイベントを配信する相手のこと、つまり配信先のことです。
JSONとは
JSONとは、イベントを定義する際に書くコードのことです。
設定する際には、「イベントパターン」と表示されます。
書き方は各サービスごとにテンプレートがあります。
ルールを設定する際にテンプレートを使用することができ、一からコードを書く手間を省けるというメリットがあります。
おわりに
Amazon EventBridgeについてどんなサービスなのかをざっくりとまとめてみました。
Amazon EventBridgeってこんなサービスなんだな~とイメージをしてもらえれば幸いです。
以上ここまで読んでいただきありがとうございました。