コンテンツへスキップ

Eventing RabbitMQ が GA に移行することを発表

公開日: 2022-08-02 、  改訂日: 2024-01-17

Eventing RabbitMQ が GA に移行することを発表

著者: Gab Satchi、VMware のシニアソフトウェアエンジニア

Eventing RabbitMQ が正式版(GA)になったことを発表します。このマイルストーンにより、提供される API は今後のイテレーションで安定した状態を維持します。クイックスタートはこちらにあります。

主な機能

任意の RabbitMQ インスタンスを使用する

Eventing RabbitMQ は、RabbitMQ Cluster Kubernetes Operatorを使用してプロビジョニングされた RabbitMQ クラスターでうまく機能しますが、他の手段でプロビジョニングされた RabbitMQ インスタンスを使用するように構成することもできます。RabbitMQ ブローカーとソースの両方に rabbitmqClusterReference フィールドが含まれており、オペレーターを使用して作成された RabbitMQ クラスターを参照するか、RabbitMQ インスタンスの資格情報を含む Secret を参照できます。完全なドキュメントはこちらにあります。

並列処理とイベント順序

RabbitMQ はデフォルトでイベントに先入れ先出し (FIFO) 順序モードを使用します。ただし、順序付けが不要で、スループットが高い方が望ましいユースケースもあります。RabbitMQ ブローカーとソースの両方に、複数のメッセージを並行して処理するように構成できる parallelism アノテーションが含まれています。FIFO モードと高スループット モードの両方を概説した例は、こちらにあります。

クォーラムキュー

クォーラムキューは、マルチノードセットアップで使用されるフォールトトレラントな複製キュータイプです。RabbitMQ はデフォルトでクォーラムキューを使用します。キュータイプは RabbitMQ ブローカー用に構成でき、ブローカーにサブスクライブされているトリガーはすべてキュータイプを継承します。完全なドキュメントはこちらにあります

メトリクス

Eventing RabbitMQ は、こちらにある Eventing メトリクスのサブセットをミラーリングします。シングルテナントの性質上、Broker - Filter メトリクスは適用されません。

アーキテクチャ

Eventing RabbitMQ は、ブローカー、トリガー、およびソースオブジェクトごとに専用のリソースが作成されるシングルテナントモデルに従います。このアプローチにはいくつかのオーバーヘッドがありますが、利点もあります。- Pod は、特定のブローカー、トリガー、またはソースの予想されるトラフィックを処理するように自動スケーリングできます。- ユーザーの既存のポリシーとロールをロールベースのアクセス制御 (RBAC) に使用できます。- クラスターで実行されている内容の透明性が向上します。

Eventing RabbitMQ broker architecture

ブローカーを作成すると、CloudEvents を受信できるイングレスポッドと、CloudEvents を RabbitMQ システム経由でルーティングするために必要な RabbitMQ リソースが自動的に作成されます。トリガーは、RabbitMQ からメッセージを消費し、アドレス指定可能なリソースに CloudEvents を送信するディスパッチャーポッドを作成します。

Eventing RabbitMQ source architecture

RabbitMQSource オブジェクトは、キューからメッセージを取得し、CloudEvents に変換して、これらの CloudEvents をアドレス指定可能なコンシューマーに送信できます。

パフォーマンス

適切なスループットと許容可能なレイテンシを確保するために、各リリースで一連のパフォーマンステストが実行されます。最新の実行結果は、こちらにあります。

採用者

Eventing RabbitMQ は現在、VMware Event Broker Appliance(VEBA)、Cloud Native Runtimes(CNR)で使用されています。

フィードバック

この新しいリリースを試してみて、問題や質問があればフィードバックをお寄せください。新しい問題はこちらで作成できます。

サイトのトラフィックを理解するために、分析と Cookie を使用しています。サイトの使用に関する情報は、その目的のために Google と共有されます。詳細はこちら。