4.6. Karaf (OSGi) での Red Hat JBoss Data Grid の実行
Apache Karaf は強力で軽量な OSGi ベースのランタイムコンテナーで、コンポーネントとアプリケーションがデプロイされます。OSGi は、スタンドアロン JVM 環境に存在しない動的コンポーネントモデルを実装します。Karaf などの OSGi コンテナーには、アプリケーションのライフサイクルを管理するためのツールが含まれています。
バージョン番号を含む、各モジュール間の依存関係はすべて明示的に指定する必要があります。同じ名前のクラスが複数存在する場合は、OSGi の厳格なルールにしたがって、バンドルによって使用されるクラスが指定されます。
4.6.1. Karaf で Red Hat JBoss Data Grid のデプロイメントを実行 (リモートクライアントサーバー) リンクのコピーリンクがクリップボードにコピーされました!
リンクのコピーリンクがクリップボードにコピーされました!
Red Hat JBoss Data Grid の Hot Rod クライアントは、Karaf などの OSGi ベースのコンテナーで実行できます。 Karaf にデプロイされたクライアントアプリケーションは既存の JBoss Data Grid サーバーに接続できます。
JBoss Data Grid の Maven リポジトリーを使用して Karaf を設定します。また、JBoss Data Grid は
org/infinispan/infinispan-remote/${VERSION}
にある features
ファイルを必要とします。このファイルは OSGi の Hot Rod クライアントの依存関係をすべてリストし、さらに Karaf (バージョン 2.3.3 または 3.0) への機能のインストールを単純化します。
4.6.2. Karaf への Hot Rod クライアント機能のインストール リンクのコピーリンクがクリップボードにコピーされました!
リンクのコピーリンクがクリップボードにコピーされました!
Red Hat JBoss Data Grid の Hot Rod 機能は、次のように Karaf にインストールされます。
前提条件
Red Hat JBoss Data Grid の Maven リポジトリーを設定する必要があります。
手順4.3 Karaf への Hot Rod クライアント機能のインストール
Karaf 2.3.3
Karaf 2.3.3 では次のコマンドを使用します。karaf@root> features:addUrl mvn:org.infinispan/infinispan-remote/${VERSION}/xml/features
karaf@root> features:addUrl mvn:org.infinispan/infinispan-remote/${VERSION}/xml/features
Copy to Clipboard Copied! Toggle word wrap Toggle overflow karaf@root> features:install infinispan-remote
karaf@root> features:install infinispan-remote
Copy to Clipboard Copied! Toggle word wrap Toggle overflow - 機能が正しくインストールされたことを確認します。
karaf@root> features:list //output
karaf@root> features:list //output
Copy to Clipboard Copied! Toggle word wrap Toggle overflow
Karaf 3.0.0
次のコマンドを使用します。karaf@root> feature:repo-add mvn:org.infinispan/infinispan-remote/${VERSION}/xml/features
karaf@root> feature:repo-add mvn:org.infinispan/infinispan-remote/${VERSION}/xml/features
Copy to Clipboard Copied! Toggle word wrap Toggle overflow karaf@root> feature:install infinispan-remote
karaf@root> feature:install infinispan-remote
Copy to Clipboard Copied! Toggle word wrap Toggle overflow - 機能が正しくインストールされたことを確認します。
karaf@root> feature:list
karaf@root> feature:list
Copy to Clipboard Copied! Toggle word wrap Toggle overflow
この代わりに、-i
コマンドパラメーターを以下のように使用して、Hot Rod クライアント機能をインストールすることもできます。karaf@root()> feature:repo-add -i mvn:org.infinispan/infinispan-remote/${VERSION}/xml/features
karaf@root()> feature:repo-add -i mvn:org.infinispan/infinispan-remote/${VERSION}/xml/features
Copy to Clipboard Copied! Toggle word wrap Toggle overflow
4.6.3. Karaf での Red Hat JBoss Data Grid のインストール (ライブラリーモード) リンクのコピーリンクがクリップボードにコピーされました!
リンクのコピーリンクがクリップボードにコピーされました!
Red Hat JBoss Data Grid の JAR ファイルには必要な OSGi マニフェストヘッダーが含まれ、これらのヘッダーは OSGi ランタイム環境内で OSGi バンドルとして使用されます。また、必要なサードパーティーの依存関係をインストールする必要があります。これらの依存関係は、個別にインストールできますが、必要な依存関係をすべて定義する
features
ファイルを用いて同時にインストールすることもできます。
features
ファイルを使用してバンドルをインストールするには、以下を実行します。
- Karaf 内の feature リポジトリーを登録します。
- リポジトリーに含まれる機能をインストールします。
手順4.4 features
ファイルを使用したバンドルのインストール
Karaf コンソールの起動
以下のコマンドを使用して Karaf コンソールを起動します。cd $APACHE_KARAF_HOME/bin ./karaf
$ cd $APACHE_KARAF_HOME/bin $ ./karaf
Copy to Clipboard Copied! Toggle word wrap Toggle overflow feature リポジトリーの登録
次のように feature リポジトリーを登録します。- Karaf 2.3.3 の場合
karaf@root()> features:addUrl mvn:org.infinispan/infinispan-embedded/${VERSION}/xml/features
karaf@root()> features:addUrl mvn:org.infinispan/infinispan-embedded/${VERSION}/xml/features
Copy to Clipboard Copied! Toggle word wrap Toggle overflow karaf@root> features:install infinispan-embedded
karaf@root> features:install infinispan-embedded
Copy to Clipboard Copied! Toggle word wrap Toggle overflow - Karaf 3.0.0 の場合
karaf@root()> feature:repo-add mvn:org.infinispan/infinispan-embedded/${VERSION}/xml/features
karaf@root()> feature:repo-add mvn:org.infinispan/infinispan-embedded/${VERSION}/xml/features
Copy to Clipboard Copied! Toggle word wrap Toggle overflow karaf@root> feature:install infinispan-embedded
karaf@root> feature:install infinispan-embedded
Copy to Clipboard Copied! Toggle word wrap Toggle overflow
結果
JBoss Data Grid が Karaf を使用してライブラリーモードで実行されます。
feature リポジトリーの URL は、以下の形式を使用して Maven アーティファクト座標から構成されます。
mvn:<groupId>/<artifactId>/<version>/xml/features
mvn:<groupId>/<artifactId>/<version>/xml/features
重要
JPA キャッシュストアは、JBoss Data Grid 7.0 の Apache Karaf でサポートされません。
重要
ライブラリーモードでのクエリー (JBoss Data Grid 『Developer Guide』 で取り上げています) は JBoss Data Grid 7.0 の Apache Karaf ではサポートされません。