Red Hat Decision Manager と Red Hat Fuse の統合
ガイド
概要
はじめに リンクのコピーリンクがクリップボードにコピーされました!
システム管理者は、Apache Karaf および Red Hat JBoss Enterprise Application Platform で、Red Hat Decision Manager と Red Hat Fuse を統合して、統合サービス間の通信を容易化します。
Red Hat Decision Manager は、Spring Boot 上の Red Hat Fuse との統合をサポートしません。
第1章 Red Hat Fuse および Red Hat Decision Manager リンクのコピーリンクがクリップボードにコピーされました!
Red Hat Fuse は、アジャイル統合ソリューションの一部である、分散型のクラウドネイティブ統合プラットフォームです。チームはこの分散アプローチを使用することで、必要に応じて統合サービスをデプロイできます。Fuse には、統合エキスパート、アプリケーション開発者、ビジネスユーザーなど、さまざまなユーザーに柔軟にサービスを提供でき、各自がデプロイメント、アーキテクチャー、ツールを選択できます。API 中心のコンテナーベースのアーキテクチャーは、各サービスを切り離して、個別に作成、展開、デプロイできるようにします。その結果、企業全体のコラボレーションをサポートする統合ソリューションが実現できます。
Red Hat Decision Manager は、ビジネスルール管理、複合イベント処理、Decision Model & Notation (DMN) 実行、およびプランニングの問題を解決するための Red Hat Business Optimizer を組み合わせた、オープンソースの意思決定管理プラットフォームです。これにより、ビジネス上の意思決定を自動化し、そのロジックをビジネス全体で利用できるようにします。
ルール、デシジョンテーブル、DMN モデルなどのビジネスアセットはプロジェクト内で組織化され、Business Central リポジトリーに保存されます。これにより、ビジネス全体で一貫性や透明性を維持し、監査を行えます。ビジネスユーザーは、IT 担当者からのサポートなしでビジネスロジックを編集できます。
Apache Karaf コンテナープラットフォームまたは Red Hat JBoss Enterprise Application Platform に Red Hat Fuse をインストールしてから、このコンテナーに Red Hat Decision Manager をインストールし、設定してください。
Red Hat Decision Manager 7.8 がサポートする Red Hat Fuse のバージョンについては、Red Hat Process Automation Manager 7 でサポートされる設定 を参照してください。
1.1. Red Hat Decision Manager の Karaf 機能 リンクのコピーリンクがクリップボードにコピーされました!
以下の表では、Red Hat Decision Manager の Karaf 機能を紹介します。
| 機能 | 説明 |
|---|---|
|
| Drools のコアとコンパイラーが含まれており、プレーン DRL から KIE ベースと KIE セッションを作成するのに使用します。また、実行可能モデルの実装も含まれています。永続性、プロセス、またはデシジョンテーブルを必要とせずに Drools を使用してルール評価ができます。 |
|
| Drools テンプレートが含まれています。 |
|
|
プロセスまたはデシジョンテーブルを必要とせずに、Drools を使用して永続性 (Persistence) とトランザクション (Transaction) でルール評価を行います。 |
|
| デシジョンテーブルと合わせて、Drools を使用します。 |
|
コアエンジン JAR および |
Red Hat Decision Manager と KIE スキャナー ( |
|
|
Fuse と Red Hat Decision Manager を統合する Apache Camel エンドポイントである |
|
|
|
第2章 Apache Karaf 上に Fuse を統合した Red Hat Decision Manager のデシジョンエンジンおよびプロセスエンジン リンクのコピーリンクがクリップボードにコピーされました!
Apache Karaf は、スタンドアロンで、オープンソースのランタイム環境です。OSGi Alliance の OSGi 標準に基づいています。Karaf は、高度なクラ出力ディングサポートを備えた OSGi バンドルを通じてモジュール化のサポートを提供します。Karaf コンテナーでは、依存関係の複数のバージョンを並行してデプロイできます。ホットコードスワップを使用すると、コンテナーをシャットダウンせずにモジュールをアップグレードまたは置き換えることができます。
Red Hat Decision Manager は、Karaf 機能を使用して、Karaf で FUSE と統合されます。これらの機能を使用して、Karaf 上の FUSE 向けに Red Hat Decision Manager の個別のコンポーネントをインストールできます。
機能ファイルは XML ファイルで、このファイルを使用して特定の機能向けにどの DOSGI バンドルをインストールするかを指定します。以下の機能 XML ファイルにより、Red Hat Decision Manager と Fuse on Karaf の統合を容易にします。
rhba-features-<FUSE-VERSION>-features.xmlこのファイルは、Karaf にインストールした Fuse に含まれており、
<FUSE-VERSION>は Fuse のバージョンに置き換えます。このファイルは、system/org/jboss/fuse/features/rhba-featuresディレクトリーの Karaf システムリポジトリーに保存されます。このファイルには、Red Hat Decision Manager 機能をインストールするための前提条件が含まれています。kie-karaf-features-7.39.0.Final-redhat-00005-features-fuse.xmlこのファイルは Red Hat Decision Manager に含まれており、Red Hat Decision Manager 機能を提供します。この機能により、Red Hat Fuse にデプロイできる OSGi 機能が決まります。OSGi ユーザーは、このファイルから機能をインストールして、Red Hat Decision Manager を Fuse にインストールし、それぞれのアプリケーションで使用できます。この機能ファイルは、Red Hat Process Automation Manager で配布されるオンラインおよびオフラインの Maven リポジトリーに配置されています。この機能ファイルは、Red Hat Process Automation Manager で配布されるオンラインおよびオフラインの Maven リポジトリーに配置されています。このファイルのグループ ID、アーティファクト ID、およびバージョン (GAV) 識別子は、
org.kie:kie-karaf-features:7.39.0.Final-redhat-00005です。
2.1. Karaf 上の古くなった Red Hat Decision Manager 機能 XML ファイルの削除 リンクのコピーリンクがクリップボードにコピーされました!
お使いの環境に、以前の Red Hat Decision Manager 機能 XML ファイル (例: kie-karaf-features-<VERSION>-features.xml) が含まれている場合には、このファイルと関連するファイルすべてを削除してから、最新の機能 XML ファイルをインストールする必要があります。
前提条件
- 以前の機能 XML ファイルが Apache Karaf の環境に存在する。
手順
以下のコマンドを実行して、使用環境に以前の Red Hat Decision Manager 機能 XML ファイルが含まれているかどうかを確認します。
JBossFuse:karaf@root> feature:repo-list JBossFuse:karaf@root> feature:list
$ JBossFuse:karaf@root> feature:repo-list $ JBossFuse:karaf@root> feature:listCopy to Clipboard Copied! Toggle word wrap Toggle overflow 以下のコマンドを入力します。
<FUSE_HOME>は Fuse のインストールディレクトリーに置き換えて、Red Hat Fuse コンソールを起動します。./<FUSE_HOME>/bin/fuse
$ ./<FUSE_HOME>/bin/fuseCopy to Clipboard Copied! Toggle word wrap Toggle overflow 以下のコマンドを入力します。
<FEATURE_NAME>は、アンインストールする機能の名前に置き換えて、以前の機能 XML ファイルを使用するアプリケーションまたは機能をアンインストールします。JBossFuse:karaf@root> features:uninstall <FEATURE_NAME>
JBossFuse:karaf@root> features:uninstall <FEATURE_NAME>Copy to Clipboard Copied! Toggle word wrap Toggle overflow 以下の例では、機能の削除方法を紹介します。
JBossFuse:karaf@root> features:uninstall drools-module JBossFuse:karaf@root> features:uninstall jbpm JBossFuse:karaf@root> features:uninstall kie-ci
JBossFuse:karaf@root> features:uninstall drools-module JBossFuse:karaf@root> features:uninstall jbpm JBossFuse:karaf@root> features:uninstall kie-ciCopy to Clipboard Copied! Toggle word wrap Toggle overflow Karaf の home で、
drools、kie、またはjbpmを使用するバンドルへの参照を検索します。以下の例では、grepを使用してこれらのコンポーネントを検索する方法を示しています。karaf@root> list -t 0 -s | grep drools karaf@root> list -t 0 -s | grep kie karaf@root> list -t 0 -s | grep jbpm
karaf@root> list -t 0 -s | grep drools karaf@root> list -t 0 -s | grep kie karaf@root> list -t 0 -s | grep jbpmCopy to Clipboard Copied! Toggle word wrap Toggle overflow この例は、上記のコマンドからの出力です。
250 │ Active │ 80 │ 7.19.0.201902201522 │ org.drools.canonical-model 251 │ Active │ 80 │ 7.19.0.201902201522 │ org.drools.cdi 252 │ Active │ 80 │ 7.19.0.201902201522 │ org.drools.compiler
250 │ Active │ 80 │ 7.19.0.201902201522 │ org.drools.canonical-model 251 │ Active │ 80 │ 7.19.0.201902201522 │ org.drools.cdi 252 │ Active │ 80 │ 7.19.0.201902201522 │ org.drools.compilerCopy to Clipboard Copied! Toggle word wrap Toggle overflow 以下のコマンドを入力します。
BUNDLE_IDは、検索で返されたバンドル ID に置き換えて、以前の手順で検出されたバンドルを削除します。karaf@root> osgi:uninstall BUNDLE_ID
karaf@root> osgi:uninstall BUNDLE_IDCopy to Clipboard Copied! Toggle word wrap Toggle overflow 次のコマンドを入力して、古くなった
drools-karaf-featuresの URL を削除します。karaf@root> features:removeurl mvn:org.kie/kie-karaf-features/VERSION.Final-redhat-VERSION/xml/features
karaf@root> features:removeurl mvn:org.kie/kie-karaf-features/VERSION.Final-redhat-VERSION/xml/featuresCopy to Clipboard Copied! Toggle word wrap Toggle overflow - Fuse を再起動します。
2.2. XML ファイルを使用した Karaf への Red Hat Decision Manager 機能のインストール リンクのコピーリンクがクリップボードにコピーされました!
Karaf に Red Hat Decision Manager 機能をインストールして、Red Hat Decision Manager プロセス向けに動的ランタイム環境を作成します。
前提条件
- Apache Karaf コンテナーで Red Hat Fuse が利用できるようになっている。Apache Karaf への Fuse のインストール手順については、Installing Red Hat Fuse on the Apache Karaf container を参照してください。
- 「Karaf 上の古くなった Red Hat Decision Manager 機能 XML ファイルの削除」 に記載されているように、以前の Red Hat Decision Manager 機能 XML ファイルが削除されている。
手順
Red Hat Decision Manager の機能をインストールするには、次のコマンドを入力します。
JBossFuse:karaf@root> feature:install <FEATURE_NAME>
$ JBossFuse:karaf@root> feature:install <FEATURE_NAME>
org.drools.osgi.spring.OsgiKModuleBeanFactoryPostProcessor の代わりに org.kie.spring.KModuleBeanFactoryPostProcessor を使用して、OSGi 環境の KIE 要素を後処理します。
kie-spring 機能をインストールする前に drools-module 機能をインストールしないようにしてください。先にインストールしてしまうと、drools-compiler バンドルにより、kie-spring がエクスポートしたパッケージが検出されなくなります。
これらの機能を間違った順番でインストールした場合は、osgi:refresh drools-compiler_bundle_ID を実行して、drools-compiler が強制的に Import-Package メタデータをリビルドするようにします。
このコマンドでは、<FEATURE_NAME> は、「Red Hat Decision Manager の Karaf 機能」 に記載の機能の 1 つに置き換えます。
2.3. Maven を使用した Karaf への Red Hat Decision Manager 機能のインストール リンクのコピーリンクがクリップボードにコピーされました!
必要に応じて、Apache Karaf 上にある Fuse で Red Hat Decision Manager をインストールして、統合サービスをデプロイします。
前提条件
- Apache Karaf インストールに Red Hat Fuse 7.6 が存在する。インストール手順については、Installing Red Hat Fuse on the Apache Karaf container を参照してください。
- 「Karaf 上の古くなった Red Hat Decision Manager 機能 XML ファイルの削除」 の説明のように、以前の機能 XML ファイルが削除されている。
手順
-
Maven リポジトリーを設定するには、テキストエディターで
FUSE_HOME/etc/org.ops4j.pax.url.mvn.cfgファイルを開きます。 https://maven.repository.redhat.com/ga/リポジトリーがorg.ops4j.pax.url.mvn.repositories変数に存在することを確認します。必要に応じて、追加してください。注記エントリーは、コンマ、スペース、およびバックスラッシュ (, \) で区切ります。バックスラッシュを追加すると、強制的に改行されます。
Fuse を起動するには以下のコマンドを入力します。
<FUSE_HOME>は Fuse のインストールディレクトリーに置き換えます。./FUSE_HOME/bin/fuse
$ ./FUSE_HOME/bin/fuseCopy to Clipboard Copied! Toggle word wrap Toggle overflow インストールの前提条件が含まれる機能ファイルに参照を追加するには、以下のコマンドを入力します。
<FUSE_VERSIONは、インストールする Fuse のバージョンに置き換えます。feature:repo-add mvn:org.jboss.fuse.features/rhba-features/<FUSE-VERSION>/xml/features
$ feature:repo-add mvn:org.jboss.fuse.features/rhba-features/<FUSE-VERSION>/xml/featuresCopy to Clipboard Copied! Toggle word wrap Toggle overflow 以下のコマンドを入力して、Red Hat Decision Manager 機能の XML ファイルへの参照を追加します。
JBossFuse:karaf@root> features:addurl mvn:org.kie/kie-karaf-features/VERSION/xml/features-fuse
$ JBossFuse:karaf@root> features:addurl mvn:org.kie/kie-karaf-features/VERSION/xml/features-fuseCopy to Clipboard Copied! Toggle word wrap Toggle overflow 現在の
drools-karaf-featuresバージョンをチェックするには、Red Hat Process Automation Manager 7 Supported Configurations ページを参照してください。以下のコマンドを入力して、Red Hat Decision Manager 機能の XML ファイルで提供される機能をインストールします。このコマンドでは、
<FEATURE_NAME>は、「Red Hat Decision Manager の Karaf 機能」 に記載の機能の 1 つに置き換えます。JBossFuse:karaf@root> features:install <FEATURE_NAME>
JBossFuse:karaf@root> features:install <FEATURE_NAME>Copy to Clipboard Copied! Toggle word wrap Toggle overflow 次のコマンドを入力して、インストールを確認します。
JBossFuse:karaf@root>feature:list
$ JBossFuse:karaf@root>feature:listCopy to Clipboard Copied! Toggle word wrap Toggle overflow 機能が正常にインストールされると、ステータスは
startedになります。
第3章 Red Hat JBoss Enterprise Application Platform へ の Fuse のインストール リンクのコピーリンクがクリップボードにコピーされました!
Red Hat Decision Manager で使用できるように Red Hat JBoss EAP 7.2.3 に Red Hat Fuse 7.6 をインストールし、必要に応じて統合サービスをデプロイします。
Red Hat Fuse 7.6 は Red Hat JBoss EAP 7.2.3 でサポートされていますが、Red Hat Decision Manager は Red Hat JBoss EAP 7.3 でサポートされています。デプロイメント環境の安定性を確保するには、サポートされている Red Hat JBoss EAP バージョンに基づいて、Fuse および Red Hat Decision Manager を別の Red Hat JBoss EAP インスタンスにインストールしてください。
前提条件
- Red Hat JBoss Enterprise Application Platform 7.3 に Red Hat Decision Manager がインストールされている。インストールの説明は、Red Hat JBoss EAP 7.3 への Red Hat Decision Manager のインストールおよび設定 を参照してください。
- Red Hat JBoss Enterprise Application Platform 7.2.3 が別のインスタンスで利用できる。
手順
- Red Hat JBoss Enterprise Application Platform 7.2.3 に Red Hat Fuse 7.6 をインストールします。インストールの説明は、Install Fuse 7.6 on JBoss EAP 7.2 を参照してください。
-
テキストエディターで、Fuse のホームディレクトリーにある
pom.xmlを開きます。 以下の例のように
pom.xmlファイルを編集して、kie-camelコンポーネントの依存関係を含めて、統合プロジェクトを作成します。Copy to Clipboard Copied! Toggle word wrap Toggle overflow
第4章 kie-camel コンポーネント リンクのコピーリンクがクリップボードにコピーされました!
kie-camel コンポーネントは、Fuse と Red Hat Decision Manager が統合された Red Hat Fuse が提供する Apache Camel エンドポイントです。このコンポーネントを使用して、ルートにするプルして実行できる Maven グループ ID、アーティファクト ID、バージョン (GAV) の識別子を使用して、Red Hat Decision Manager モジュールを指定できます。また、ファクトとしてメッセージボディーの一部を指定できます。埋め込みエンジンや KIE Server で、kie-camel コンポーネントを使用できます。
埋め込みエンジン
このシナリオでは、KIE エンジンが Fuse 統合プロジェクトと同じコンテナーで実行されます。エンジン間の通信には、KIE コマンドを使用できます。Camel プロデューサーを作成するには、以下の URI を使用します。
kie-local:kie-session-name?action=execute
kie-local:kie-session-name?action=execute
たとえば、次のコマンドを入力して、Spring の Camel ルートを初期化します。
<from uri="direct:runCommand" /> <to uri="kie-local:kie-session1?action=execute"/>
<from uri="direct:runCommand" />
<to uri="kie-local:kie-session1?action=execute"/>
KIE Server
このシナリオでは、kie-camel コンポーネントは KIE Server REST API を使用して KIE Server に接続します。こうすることでユーザーは、KIE Server API を使用して KIE Server と通信できます。プロデューサーを作成するには、以下の URI を使用します。
kie:http://username:password@kie-server-url`
kie:http://username:password@kie-server-url`
たとえば、次のコマンドを入力して、Spring の Camel ルートを初期化します。
<from uri="direct:runCommand" /> <to uri="kie:http://user:psswd@localhost:8080/kie-server-services/services/rest/server"/>
<from uri="direct:runCommand" />
<to uri="kie:http://user:psswd@localhost:8080/kie-server-services/services/rest/server"/>
メッセージには以下のヘッダーが含まれます。
| ヘッダー | 説明 |
|---|---|
|
| KIE Server クライアント (必須) |
|
| KIE Server クライアント (必須) |
|
| クライアントメソッドパラメーターの値 (任意) |
|
| メッセージボディーを保存するメソッドパラメーター (任意) |
付録A バージョン情報 リンクのコピーリンクがクリップボードにコピーされました!
本書の最終更新日: 2022 年 3 月 8 日 (火)