RabbitMQ のデータをBoomi AtomSphere で連携利用する方法:CData JDBC Driver

桑島義行
桑島義行
テクニカルディレクター
CData JDBC ドライバを使って、データ統合サービス(iPaaS)のBoomi で RabbitMQ のデータ をノーコードで連携。



Boomi AtomSphere https://boomi.com/は、Boomi 社が提供する、 シングルインスタンス、マルチテナントアーキテクチャを特徴としているデータ統合サービス(iPaaS)です。データ統合機能だけでなく、マスターデータのハブ機能、EDI、APIManagement、WorkFlow といったビジネスユースに必要なデータ連携のすべてを実現する機能をシングルプラットフォームで提供しています。

この記事では、Boomi AtomSphere のオンプレミスAtom deployment 機能を使って、CData JDBC ドライバ経由でRabbitMQ のデータにアクセスする方法を紹介します。CData Drivers を使うことで、RDB のようにBoomi 内でRabbitMQ のデータを扱うことができるようになります。

Boomi のon-Premise Atom depleyment の作成

on-Premise Atom deployment (右上の青部分)を利用する構成としました。この機能を利用することでOn-Premise 側に配置したCData JDBC ドライバ経由でのSaaS 連携を実現します。

  • ブラウザからBoomi Atom のManage > Atom Management のタブを開きます。
  • +New > Atom を開きます。
  • Atom Setup ダイアログが開くので、ブラウザを開いているマシンのOS(本例ではWindows10Pro 64bit)のSetup ファイルをダウンロードします。
  • Boomi on-premise Atom
  • ダウンロードした「atom_install64.exe」を実行するとインストーラが起動します。
  • Setup Wizard を進めます。
  • ブラウザからBoomi Atom へのログインする時のUser・Password をセットして、Atom Name はデフォルトのまま、次に進みます。
  • on-Premise Atom deployment のインストールディレクトリ(デフォルト)を指定して次に進みます。
  • Setup Wizard を終了(Finish)します。
  • ブラウザからBoomi Atom のManage > Atom Management のタブを開いて、上記で作成したon-Premise Atom Deployment が起動していることを確認します。なお、Windows マシンの場合、サービスからも起動を確認できます。on-Premise Atom deployment の作成は以上です。
  • オンプレミスAtom のインストールを確認

Boomi on-Premise Atom deployment モジュールへのJDBC ドライバの配置

次に別途ダウンロード・インストールしたCData JDBC Driver for API をBoomi on-premise Atom モジュールに配置していきます。

    JDBC Drivers ファイルをCData 製品のインストールフォルダからon-Premise Atom deployment インストールパス配下のパスにコピーします。
  • cdata.jdbc.api.jar
  • cdata.jdbc.api.lic (試用版では.lic ファイルは不要)
  • コピー元:C:\Program Files\CData\CData JDBC Driver for API 2019J\lib
  • コピー先:C:\Boomi AtomSphere\Atom - 10.211.55.9\lib

コピーしたらBoomi Atom をブラウザからリスタート(Restart Atom)してください。作成したon-Premise Atom deployment のInstalledLibraries にJDBCの.jar ファイルが表示されれば成功です。

JDBC Driver のon-premise Atom への配置

RabbitMQ のConnectionの作成

Boomi Atom からRabbitMQ のデータソースに接続するためのConnection を作成します。

  • Welcom 画面の「Component > Connetion」を選択するとCreate Component ウィザードが開きます。
  • RabbitMQ への接続用のConnection 設定として以下の値をセットします。
    • Type: Connection
    • Component Name: ConnectionCDataAPI
    • Folder: 任意のパス
    • Connector: Database
  • RabbitMQ のデータ Connection 作成1
  • そしてJDBC Driver の接続設定を行います。

    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 へのアクセスを有効にするには、以下のステップで進めます:

    1. サーバーで RabbitMQ Management プラグインが有効になっていることを確認します(rabbitmq-plugins enable rabbitmq_management)。
    2. 既存の管理ユーザーを使用するか、適切な管理タグ(management、policymaker、monitoring、または administrator)を持つユーザーを作成します。
    3. 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 - 仮想ホスト内の特定のキューのバインディング
    • Driver Type: Custom
    • Class Name: cdata.jdbc.api.APIDriver
    • User Name: 本来であれば不要ですが、空のままだと後の手順でバリデーションエラーが発生するので適当な値をセットします
    • Password: 本来であれば不要ですが、空のままだと後の手順でバリデーションエラーが発生するので適当な値をセットします
    • Connection URL: jdbc:api:Profile=C:\profiles\\RabbitMQ.apip;AuthScheme=Basic;URL=http://localhost:15672;User=guest;Password=guest;
  • RabbitMQ のデータ Connection 作成2
  • Connection の値を設定したら接続テストを行います。右上のTest Connection ボタンをクリックします。実行するAtom を選択する画面が表示されるので、上記手順で作成したon-Premise Atom deployment を選択します。
  • テスト接続が成功することを確認してFinish ボタンでウィザードを閉じます。
  • 作成した RabbitMQ のデータ への接続Connection を保存(Save)します。

Boomi Atom でのRabbitMQ のデータ Profile の作成

次にProfile を設定していきます。ProfileとはSQL(SELECT/INSERT/UPDATE/DELETE)実行時のフィールド定義です。

  • RabbitMQ のデータ のテーブルをSELECT するProfile を作成していきます。
    • Type: Profle
    • Component Name: ProfileCDataAPI
    • Folder: 任意のパス
    • Connector: Database
  • RabbitMQ のデータ Profile の作成1
  • 二つのパラメータに、Display Name: デフォルト, Type: Select と値をセットしたら右上のImportボタンをクリックします。
  • RabbitMQ のデータ Profile の作成2
  • Database Import Wizardが開くので、以下のパラメータをセットして次に進みます。
    • Browse in: 上記手順で作成したon-Premise Atom deployment
    • Connection: 上記手順で作成した接続Connection
  • RabbitMQ のデータ Profile の作成3
  • RabbitMQ のデータ 内のオブジェクトがテーブル一覧として表示されます。取得するテーブルにチェックをオンにして次に進みます。
  • RabbitMQ のデータ Profile のテーブル選択
  • テーブル内のカラム一覧が表示されます。使用する項目のチェックをオンにして次に進みます。
  • RabbitMQ のデータ Profile のカラム選択
  • Import ウィザードが完了します。
  • DataElements のField アイコンをクリックすると選択テーブル内のカラムが定義されていることを確認できます。また、SQL Script には取得時のSQL(SELECT)が表示されています。作成したProfile を保存します。
  • RabbitMQ のデータ Profile の確認
  • これでRabbitMQ のデータ がBoom Atom で利用できるProfile として登録されました。

Boomi AtomSphere でのRabbitMQ のデータ の利用

あとは、設定されたProfile はRDB と同じようにBoomi Atom 内で利用することができます。カラムにマッピングを行うこともできます。

RabbitMQ のデータ Profile をBoomi 内でマッピング

このようにCData JDBC ドライバをアップロードすることで、簡単にBoomi AtomSphere でRabbitMQ のデータ データをノーコードで連携し、使うことが可能です。

是非、CData JDBC Driver for API 30日の無償評価版 をダウンロードして、お試しください。

はじめる準備はできましたか?

API Driver で RabbitMQ のライブデータに接続

RabbitMQ に接続