このトピックでは、EventBridge が提供するイベントストリーム機能を使用して、ApsaraMQ for Kafka インスタンス間でメッセージをルーティングする方法について説明します。
前提条件
EventBridge がアクティブ化されており、必要な権限がResource Access Management (RAM) ユーザーに付与されていること。 詳細については、「EventBridge をアクティブ化し、RAM ユーザーに権限を付与する」をご参照ください。
ApsaraMQ for Kafka インスタンスが購入およびデプロイされていること。 インスタンスが [実行中] 状態であることを確認してください。 詳細については、「概要」トピックの「手順」セクションにある「手順 2: インスタンスの購入とデプロイ」をご参照ください。
背景情報
エンドツーエンドのストリーミングデータをリアルタイムで処理するための軽量チャネルの一種であるイベントストリームを使用すると、軽量ストリーミングデータをフィルタリングおよび変換し、データウェアハウス間、データ処理プログラム間、およびデータ分析システムとデータ処理システム間でデータを同期できます。 イベントストリームを使用して、ソース ApsaraMQ for Kafka インスタンスから宛先 ApsaraMQ for Kafka インスタンスにメッセージをルーティングできます。イベントバスを定義する必要はありません。 詳細については、「概要」をご参照ください。
手順 1: 宛先インスタンスのイベントストリームを作成する
宛先インスタンスのイベントストリームを作成する必要があります。 たとえば、中国 (北京) リージョンにある ApsaraMQ for Kafka インスタンスから中国 (上海) リージョンにある ApsaraMQ for Kafka インスタンスにメッセージをルーティングする場合、中国 (上海) リージョンにイベントストリームを作成する必要があります。
EventBridge コンソール にログインします。
上部のナビゲーションバーで、リージョンを選択します。
左側のナビゲーションペインで、[イベントストリーム] をクリックします。
[イベントストリーム] ページで、[イベントストリームの作成] をクリックします。
[イベントストリームの作成] ページで、[タスク名] パラメーターと [説明] パラメーターを構成し、画面の指示に従って他のパラメーターを構成します。 次に、[保存] をクリックします。 次のセクションでは、パラメーターについて説明します。
タスクの作成
[ソース] ステップで、[データプロバイダー] パラメーターを [apsaramq For Kafka] に設定し、画面の指示に従って他のパラメーターを構成します。 次に、[次のステップ] をクリックします。 次の表では、パラメーターについて説明します。
パラメーター
説明
例
リージョン
ソース ApsaraMQ for Kafka インスタンスが存在するリージョン。
中国 (北京)
Apsaramq For Kafka インスタンス
ルーティングするメッセージが生成される ApsaraMQ for Kafka インスタンス。
MQ_INST_115964845466****_ByBeUp3p
トピック
ルーティングするメッセージが生成される ApsaraMQ for Kafka インスタンスのトピック。
topic
グループ ID
ソースインスタンスのコンシューマーグループの名前。 別のコンシューマーグループを使用してイベントソースを作成します。 使用中のコンシューマーグループは使用しないでください。 そうしないと、既存のメッセージの送受信に失敗する可能性があります。
GID_http_1
同時実行クォータ (コンシューマー)
ソースインスタンスのコンシューマーの数。
1
コンシューマーオフセット
メッセージが消費されるオフセット。
最新のオフセット
ネットワーク構成
メッセージをルーティングするネットワークのタイプ。
ベーシックネットワーク
VPC
仮想プライベートクラウド (VPC)。 このパラメーターは、ネットワーク構成 を セルフマネージドインターネット に設定した場合にのみ必須です。
vpc-bp17fapfdj0dwzjkd****
vSwitch
ApsaraMQ for Kafka インスタンスが関連付けられている vSwitch の ID。 このパラメーターは、ネットワーク構成 を セルフマネージドインターネット に設定した場合にのみ必須です。
vsw-bp1gbjhj53hdjdkg****
セキュリティグループ
ApsaraMQ for Kafka インスタンスが属するセキュリティグループの ID。 このパラメーターは、ネットワーク構成 を セルフマネージドインターネット に設定した場合にのみ必須です。
alikafka_pre-cn-7mz2****
データ形式
データ形式機能は、ソースから配信されたバイナリデータを特定のデータ形式にエンコードするために使用されます。 メッセージルーティングシナリオでは、このパラメーターをバイナリに設定します。
バイナリ
バッチプッシュ
バッチプッシュ機能は、一度に複数のイベントを集約するのに役立ちます。 この機能は、一括プッシュの件数 パラメーターまたは バッチプッシュ間隔 (単位:秒) パラメーターで指定された条件が満たされた場合にトリガーされます。
たとえば、メッセージパラメーターを 100 に、間隔 (単位: 秒) パラメーターを 15 に設定した場合、経過時間が 10 秒しかない場合でも、メッセージ数が 100 に達するとプッシュが実行されます。
有効
一括プッシュの件数
各関数呼び出しで送信できるメッセージの最大数。 要求は、バックログ内のメッセージ数が指定された値に達した場合にのみ送信されます。 有効な値: 1 ~ 10000。
100
バッチプッシュ間隔 (単位:秒)
関数が呼び出される時間間隔。 システムは、指定された時間間隔で集約されたメッセージを Function Compute に送信します。 有効な値: 0 ~ 15。 単位: 秒。 値 0 は、集約直後にメッセージが送信されることを指定します。
3
[フィルタリング] ステップで、イベントをフィルタリングするために使用するルールを指定し、[次のステップ] をクリックします。
説明この例の設定に基づいて、メッセージ値内の特定のコンテンツを使用してイベントをフィルタリングすることはできません。 メッセージルーティングシナリオでは、[変換] ステップを構成する必要はありません。
Sink (ターゲット) ステップで、サービスタイプ パラメーターを [apsaramq For Kafka] に設定し、画面の指示に従って他のパラメーターを構成します。 次に、[保存] をクリックします。 次の表では、パラメーターについて説明します。
パラメーター
説明
例
インスタンス ID
作成した宛先 ApsaraMQ for Kafka インスタンス。
test
Topic
作成した宛先 ApsaraMQ for RocketMQ インスタンスのトピック。
test
確認モード (ACK)
メッセージを受信した後、ApsaraMQ for Kafka インスタンスがクライアントに確認応答 (ACK) を送信するモード。
なし
メッセージ本文 (値)
EventBridge は、イベントから特定のデータを抽出し、Base64 形式でデータをデコードしてから、イベントターゲットにデータをルーティングします。
バイナリ抽出
$.data.valueメッセージキー
EventBridge は、JSONPath を使用してイベントからデータを抽出し、イベントの指定されたコンテンツをイベントターゲットにルーティングします。
部分イベント
$.data.key
タスクプロパティ
イベントストリームの再試行ポリシーと配信不能キューを指定します。 詳細については、「再試行ポリシーと配信不能キュー」をご参照ください。
[イベントストリーム] ページに戻り、作成したイベントストリームを見つけ、有効にする[アクション] 列の をクリックします。
[注] メッセージで、[OK] をクリックします。
イベントストリームを有効にするには、30 ~ 60 秒かかります。 [イベントストリーム] ページの [ステータス] 列で進捗状況を確認できます。
手順 2: イベントストリームをテストする
ApsaraMQ for Kafka コンソール にログインします。
上部のナビゲーションバーで、手順 1: 宛先インスタンスのイベントストリームを作成する で指定したソースインスタンスが存在するリージョンを選択します。
左側のナビゲーションペインで、インスタンスリスト をクリックします。
インスタンスリスト ページで、手順 1: 宛先インスタンスのイベントストリームを作成する で指定したソースインスタンスを見つけ、詳細[アクション] 列の をクリックします。
左側のナビゲーションペインで、[トピック] をクリックします。
表示されるページで、手順 1: 宛先インスタンスのイベントストリームを作成する で指定したトピックの名前をクリックします。
[トピックの詳細] ページの右上隅にある [メッセージの送信] をクリックします。
[メッセージの送受信を開始] パネルで、[送信方法] パラメーターを [コンソール] に設定し、[メッセージキー] パラメーターと [メッセージコンテンツ] パラメーターを構成して、[OK] をクリックします。
インスタンスリスト ページに戻ります。
インスタンスリスト ページで、手順 1: 宛先インスタンスのイベントストリームを作成する で指定した宛先インスタンスを見つけ、詳細[アクション] 列の をクリックします。
左側のナビゲーションペインで、[トピック] をクリックします。
手順 1: 宛先インスタンスのイベントストリームを作成する で指定したトピックの名前をクリックします。
[トピックの詳細] ページで、[メッセージクエリ] タブをクリックします。
[検索方法]、[パーティション]、[ポイントインタイム] パラメーターを構成します。 次に、[検索] をクリックします。
返されたメッセージキーと値が、送信したメッセージのキーと値と同じかどうかを確認します。