RabbitMQ データを SingleStore に自動で継続的にレプリケーションする方法
常時稼働のアプリケーションには、自動フェイルオーバー機能とリアルタイムのデータアクセスが欠かせません。CData Sync を使えば、SingleStore インスタンスにRabbitMQ のデータをリアルタイムで統合できます。すべてのデータを1カ所に集約し、アーカイブ、レポーティング、分析、機械学習、AI などさまざまな用途に活用できます。
SingleStore を同期先として設定する
CData Sync を使って、RabbitMQ のデータ を SingleStore にレプリケーションできます。同期先を追加するには、接続タブに移動します。
- 接続の追加をクリックします。
- 同期先タブを選択し、SingleStore コネクタを探します。
- 該当行の末尾にある接続の設定アイコンをクリックして、新しい接続ページを開きます。接続の設定アイコンが表示されていない場合は、コネクタのダウンロードアイコンをクリックして SingleStore コネクタをインストールします。新しいコネクタのインストールについて詳しくは、ヘルプドキュメントの「接続」セクションをご覧ください。
- SingleStore に接続するには、必要な接続プロパティを入力し、認証スキームを選択します(以下を参照):
- Server:SingleStore データベースをホストしているサーバーのホスト名または IP アドレスを入力します。
- Port:SingleStore データベースをホストしているサーバーのポート番号を入力します。
- Database(オプション):SingleStore サーバーに接続する際のデフォルトデータベースを入力します。設定しない場合は、すべてのデータベースのテーブルが利用可能になります。
標準認証で接続する
標準認証を使用する場合は、以下を設定します:
- User:SingleStore サーバーで認証するためのユーザー名を入力します。
- Password:SingleStore サーバーで認証するためのパスワードを入力します。
統合セキュリティで接続する
標準のユーザー名とパスワードの代わりに、IntegratedSecurity を True に設定して、Windows 認証を介して信頼できるユーザーをサーバーに認証させることができます。
SSL 認証で接続する
SSL 認証を使用して、安全なセッションで SingleStore データに接続できます。以下の接続プロパティを設定してデータに接続します:
- SSLClientCert:クライアント証明書の証明書ストア名を設定します。双方向 SSL(トラストストアとキーストアがクライアントとサーバーの両方に保持される場合)で使用されます。
- SSLClientCertPassword:クライアント証明書ストアがパスワードで保護されている場合は、ストアのパスワードを設定します。
- SSLClientCertSubject:TLS/SSL クライアント証明書のサブジェクトを入力します。ストア内の証明書を特定するために使用されます。
- SSLClientCertType:クライアントストアの証明書タイプを入力します。
- SSLServerCert:サーバーから受け入れる証明書を入力します。
SSH 認証で接続する
SSH を使用すると、リモートマシンに安全にログインできます。SSH 経由で SingleStore データにアクセスするには、以下の接続プロパティを設定します:
- SSHClientCert:クライアント証明書の証明書ストア名を設定します。
- SSHClientCertPassword:クライアント証明書ストアがパスワードで保護されている場合は、ストアのパスワードを設定します。
- SSHClientCertSubject:TLS/SSL クライアント証明書のサブジェクト。ストア内の証明書を特定するために使用されます。
- SSHClientCertType:クライアントストアの証明書タイプ。
- SSHPassword:SSH サーバーで認証するためのパスワード。
- SSHPort:SSH 操作に使用するポート。
- SSHServer:認証先の SSH 認証サーバー。
- SSHServerFingerPrint:接続先ホストの検証に使用される SSH サーバーのフィンガープリント。
- SSHUser:SSH サーバーで認証するためのユーザー名を設定します。
- 接続が確立されたら、作成およびテストをクリックして接続を作成、テスト、保存します。
これで SingleStore に接続され、データソースとしても同期先としても使用できるようになりました。
NOTE:ラベル機能を使って、データソースや同期先にラベルを追加できます。
この記事では、RabbitMQ のデータ を SingleStore にロードし、同期先として活用する方法をご紹介します。
RabbitMQ への接続を設定する
RabbitMQ への接続は、接続タブから設定できます。RabbitMQ アカウントへの接続を追加するには、接続タブに移動します。
- 接続の追加をクリックします。
- データソース(RabbitMQ)を選択します。
- 接続プロパティを設定します。
RabbitMQ Management HTTP API について
RabbitMQ は、複数のメッセージングプロトコルをサポートするオープンソースのメッセージブローカーです。RabbitMQ Management HTTP API は、RabbitMQ サーバーの管理データと監視データに HTTP 経由でアクセスする手段を提供します。この API では、仮想ホスト、エクスチェンジ、キュー、バインディング、コネクション、チャネル、コンシューマー、ユーザー、権限、ポリシー、クラスター全体の統計情報を取得できます。
HTTP API を利用するには、RabbitMQ サーバーで Management プラグインを有効化する必要があります。デフォルトでは、管理インターフェースはポート 15672 でリッスンします。
Basic 認証の設定
RabbitMQ Management HTTP API は HTTP Basic 認証を使用します。RabbitMQ 管理ユーザーのユーザー名とパスワードを指定する必要があります。
管理 API へのアクセスを有効にするには、以下のステップで進めます:
- サーバーで RabbitMQ Management プラグインが有効になっていることを確認します(rabbitmq-plugins enable rabbitmq_management)。
- 既存の管理ユーザーを使用するか、適切な管理タグ(management、policymaker、monitoring、または administrator)を持つユーザーを作成します。
- RabbitMQ Management HTTP API の完全なベース URL を控えておきます(例:http://localhost:15672)。
RabbitMQ サーバーを設定したら、以下の接続プロパティを設定して接続します:
- AuthScheme:Basic に設定します。
- URL:RabbitMQ Management HTTP API のベース URL に設定します(例:http://localhost:15672)。
- User:RabbitMQ の管理ユーザー名に設定します(例:guest)。
- Password:RabbitMQ の管理パスワードに設定します。
接続文字列の例:
Profile=C:\profiles\RabbitMQ.apip;AuthScheme=Basic;URL=http://localhost:15672;User=guest;Password=guest;
利用可能なテーブル
RabbitMQ プロファイルでは、以下のテーブルにアクセスできます:
- Overview - クラスター全体の統計情報と RabbitMQ ノードに関する情報
- Nodes - RabbitMQ クラスター内の個々のノードに関する情報
- NodeMemory - 特定のクラスターノードの詳細なメモリ使用状況の内訳
- Connections - ブローカーへのすべてのオープンな AMQP コネクションの一覧
- Channels - すべてのコネクションにわたるオープンな AMQP チャネルの一覧
- Consumers - すべてのキューに登録されたコンシューマーの一覧
- Exchanges - すべての仮想ホストで宣言されたエクスチェンジの一覧
- Queues - すべての仮想ホストで宣言されたキューの一覧
- Bindings - エクスチェンジとキュー間のすべてのバインディングの一覧
- VirtualHosts - ブローカーに設定された仮想ホストの一覧
- VhostPermissions - 特定の仮想ホスト内のユーザー権限
- Users - すべての RabbitMQ ユーザーの一覧
- Permissions - すべての仮想ホストにわたる全ユーザーの権限レコード
- TopicPermissions - 全ユーザーのトピックレベルの権限レコード
- Policies - 仮想ホスト内のキューおよびエクスチェンジに適用されたポリシーの一覧
- OperatorPolicies - 仮想ホスト内のキューに適用されたオペレーターポリシーの一覧
- Parameters - 仮想ホストごとのコンポーネントパラメータ(例:federation、shovel)の一覧
- GlobalParameters - すべての仮想ホストに適用されるグローバルパラメータの一覧
- VhostLimits - 特定の仮想ホストに設定されたリソース制限
- UserLimits - 特定のユーザーに設定されたリソース制限
- FeatureFlags - フィーチャーフラグの一覧と、ノード上での有効/無効の状態
- DeprecatedFeatures - 非推奨機能の一覧と、その使用状態
- AuthAttempts - ノードの認証試行統計
- ClusterName - RabbitMQ クラスターの名前
- WhoAmI - 現在認証されている管理ユーザーに関する情報
- ExchangeBindingsSource - 特定のエクスチェンジがソースとなっているバインディング
- ExchangeBindingsDestination - 特定のエクスチェンジが宛先となっているバインディング
- QueueBindings - 仮想ホスト内の特定のキューのバインディング
- RabbitMQ に接続をクリックして、接続が正しく設定されていることを確認します。
- 作成およびテストをクリックして変更を保存します。
レプリケーションクエリの設定
CData Sync では、ポイント&クリック操作と SQL クエリの両方でレプリケーションを制御できます。レプリケーションを設定するには、ジョブタブに移動し、ジョブを追加をクリックします。レプリケーションのデータソースと同期先を選択します。
テーブル全体をレプリケーションする
テーブル全体をレプリケーションするには、ジョブのタスクタブでタスクを追加をクリックし、SingleStore にレプリケーションしたい RabbitMQ テーブルをリストから選択して、再度タスクを追加をクリックします。
レプリケーションのカスタマイズ
タスクのカラムタブとクエリタブを使って、レプリケーションをカスタマイズできます。カラムタブでは、レプリケーションするカラムの指定、同期先でのカラム名の変更、レプリケーション前のデータ操作などが可能です。クエリタブでは、SQL クエリを使ってフィルタ、グループ化、ソートを追加できます。
レプリケーションのスケジュール
ジョブの概要タブを選択し、スケジュールの下にある設定をクリックします。10分ごとから月1回まで、指定した間隔でジョブを自動実行するようにスケジュールできます。
レプリケーションジョブを設定したら、変更を保存をクリックします。RabbitMQ のデータ から SingleStore へのレプリケーションを管理するジョブをいくつでも設定できます。
レプリケーションジョブの実行
ジョブに必要なすべての設定が完了したら、レプリケーションしたい RabbitMQ テーブルを選択し、実行をクリックします。レプリケーションが正常に完了すると、ジョブの実行時間とレプリケーションされた行数を示す通知が表示されます。
無料トライアル & 詳細情報
RabbitMQ のデータ を SingleStore にレプリケーションする方法をご覧いただきました。CData Sync ページで詳細をご確認いただき、30日間の無料トライアルをダウンロードして、エンタープライズデータの統合を始めましょう。
ご不明な点がございましたら、サポートチームがいつでもお手伝いいたします。