Red Hat Process Automation Manager 用のデシジョン管理アーキテクチャーの設計
概要
はじめに リンクのコピーリンクがクリップボードにコピーされました!
ビジネスアナリスト、システム管理者、またはビジネスルール開発者が作成する Red Hat Process Automation Manager のビジネスアセットのタイプと、これらのアセットの開発、保存、実行、デプロイの方法は、ビジネス自動化環境のニーズにより異なります。アセット開発用に Business Central または外部統合開発環境 (IDE)、ストレージおよびバージョン管理用にビルトインまたは外部の Git リポジトリー、デプロイメント用に KIE Server または埋め込み型アプリケーション、またはその他の実装の組み合わせを使用するデシジョン管理アーキテクチャーを設計できます。Red Hat Process Automation Manager を Red Hat OpenShift Container Platform 環境にデプロイして、コンテナー実装を強化することもできます。
このドキュメントでは、デシジョン管理アーキテクチャーの設計時に考慮する Red Hat Process Automation Manager の実装の基本的な概念とオプションを説明します。環境に最適な実装を確認するには、Red Hat テクニカルアカウントマネージャーまたはソリューションアーキテクトにお問い合わせください。
多様性を受け入れるオープンソースの強化 リンクのコピーリンクがクリップボードにコピーされました!
Red Hat では、コード、ドキュメント、Web プロパティーにおける配慮に欠ける用語の置き換えに取り組んでいます。まずは、マスター (master)、スレーブ (slave)、ブラックリスト (blacklist)、ホワイトリスト (whitelist) の 4 つの用語の置き換えから始めます。この取り組みにより、これらの変更は今後の複数のリリースに対して段階的に実施されます。詳細は、弊社の CTO である Chris Wright のメッセージ を参照してください。
第1章 Red Hat Process Automation Manager のインストール環境オプション リンクのコピーリンクがクリップボードにコピーされました!
Red Hat Process Automation Manager を使用して、ビジネスアプリケーションを開発する開発環境、デシジョンをサポートするアプリケーションを実行するランタイム環境、またはその両方を設定できます。
- 開発環境: 通常、1 つの Business Central インストールと 1 つ以上の KIE Server インストールで構成されます。開発者は Business Central を使用して、デシジョンやその他のアーティファクトを作成できるほか、KIE Server を使用して、作成したアーティファクトをテストできます。
- ランタイム環境: Business Central の有無にかかわらず、1 つ以上の KIE Server インスタンスで構成されます。Business Central には Process Automation Manager コントローラーが組み込まれています。Business Central をインストールしている場合は、Menu → Deploy → Execution Server ページを使用してコンテナーを作成および維持します。Business Central なしで KIE Server の管理を自動化する場合は、ヘッドレス Process Automation Manager コントローラーを使用できます。
また、開発環境およびランタイム環境の両方をクラスター化することもできます。クラスター化した開発環境またはランタイム環境は、統合グループまたは 2 台以上のサーバーのクラスターで構成されます。Red Hat Process Automation Manager の開発環境をクラスター化すると、高可用性やコラボレーションの強化などの利点があります。また、Red Hat Process Automation Manager のランタイム環境をクラスター化すると、高可用性および負荷分散の利点が得られます。高可用性を実現することで、1 台のサーバーで障害が発生したときにデータが損失する可能性を減らすことができます。サーバーでの障害発生時に、別のサーバーにより、障害が発生したサーバーにあるデータのコピーを提供して、障害に対応します。障害が発生したサーバーは、再度オンラインになると、クラスターに復帰します。
ランタイム環境のクラスター化は、現在 Red Hat JBoss EAP 7.4 および Red Hat OpenShift Container Platform でのみサポートされています。
第2章 Red Hat Process Automation Manager におけるデシジョン作成アセット リンクのコピーリンクがクリップボードにコピーされました!
Red Hat Process Automation Manager は、デシジョンサービスにビジネスデシジョンを定義するのに使用可能なアセットを複数サポートします。デシジョン作成アセットはそれぞれ長所が異なるため、目的やニーズに合わせて、アセットを 1 つ、または複数を組み合わせて使用できます。
以下の表では、デシジョンサービスでデシジョンを定義する最適な方法を選択できるように、Red Hat Process Automation Manager プロジェクトでサポートされている主要なデシジョン作成アセットを紹介します。
| アセット | 主な特徴 | オーサリングツール | ドキュメント |
|---|---|---|---|
| DMN (Decision Model and Notation) モデル |
| Business Central または DMN 準拠のエディター | |
| ガイド付きデシジョンテーブル |
| Business Central | |
| スプレッドシートのデシジョンテーブル |
| スプレッドシートエディター | |
| ガイド付きルール |
| Business Central | |
| ガイド付きルールテンプレート |
| Business Central | |
| DRL ルール |
| Business Central または統合開発環境 (IDE) | |
| 予測モデルマークアップ言語 (PMML: Predictive Model Markup Language) モデル |
| PMML または XML エディター |
ビジネスデシジョンを定義する場合は、クラウドネイティブなデシジョンサービス用に Red Hat build of Kogito の利用を検討することもできます。Red Hat build of Kogito マイクロサービスを初めて使用する場合は、Red Hat Process Automation Manager での Red Hat build of Kogito の使用 を参照してください。
第3章 Red Hat Process Automation Manager を使用したプロジェクトのストレージおよびビルドオプション リンクのコピーリンクがクリップボードにコピーされました!
Red Hat Process Automation Manager プロジェクトの開発時は、バージョン管理されたリポジトリーを使用してプロジェクトのバージョンを追跡し、安定した環境でプロジェクトアセットを管理し、テストおよびデプロイメント用にプロジェクトをビルドできるようにする必要があります。このようなすべてのタスクに対して、Business Central を使用することも、Business Central と外部ツールおよびリポジトリーを組み合わせて使用することもできます。Red Hat Process Automation Manager は、プロジェクトのバージョン管理用の Git リポジトリー、プロジェクト管理用の Apache Maven、およびさまざまな Maven ベース、Java ベース、またはカスタムツールベースのビルドオプションをサポートしています。
次のオプションは、Red Hat Process Automation Manager プロジェクトのバージョン管理、ストレージ、およびビルドの主な方法です。
| バージョン管理オプション | 説明 | ドキュメント |
|---|---|---|
| Business Central の Git VFS | Business Central には、ビルトインの Git Virtual File System (VFS) が含まれており、ここにオーサリング環境で作成したプロセス、ルール、その他のアーティファクトをすべて保存します。Git は、リビジョンをコミットオブジェクトとして実装する分散バージョン管理システムです。変更をリポジトリーにコミットすると、Git リポジトリーに新規コミットオブジェクトが作成されます。Business Central にプロジェクトを作成すると、そのプロジェクトは Business Central に接続される Git リポジトリーに追加されます。 | 該当なし |
| 外部 Git リポジトリー | Business Central の外部の Git リポジトリーに Red Hat Process Automation Manager プロジェクトがある場合は、このプロジェクトを Red Hat Process Automation Manager スペースにインポートし、Git フックを使用して内部と外部の Git リポジトリーを同期できます。 |
| 管理オプション | 説明 | ドキュメント |
|---|---|---|
| Business Central Maven リポジトリー | Business Central には、オーサリング環境で作成したプロジェクトアセットを整理およびビルドするビルトイン Maven リポジトリーが含まれています。Maven は、リポジトリーを使用して Java ライブラリー、プラグイン、およびその他のビルドアーティファクトを格納する分散ビルド自動化ツールです。プロジェクトとアーキタイプをビルドする場合、Maven はローカルリポジトリーまたはリモートリポジトリーから Java ライブラリーと Maven プラグインを動的に取得して、プロジェクト間の共有依存関係をプロモートします。 注記 実稼働環境では、Business Central で設定した外部 Maven リポジトリーの使用を検討してください。 | 該当なし |
| 外部 Maven リポジトリー |
Nexus や Artifactory などの外部 Maven リポジトリーに Red Hat Process Automation Manager プロジェクトがある場合は、接続情報を使用して |
| ビルドオプション | 説明 | ドキュメント |
|---|---|---|
| Business Central (KJAR) | Business Central は、ビルトイン Maven リポジトリーまたは設定した外部 Maven リポジトリーのいずれかに保存されている Red Hat Process Automation Manager プロジェクトをビルドします。Business Central のプロジェクトは、プロジェクトのビルド時に、デプロイメントに必要な全コンポーネントが含まれるナレッジ JAR (KJAR) ファイルとして自動的にパッケージ化されます。 | |
| スタンドアロン Maven プロジェクト (KJAR) |
Business Central 外にスタンドアロンの Red Hat Process Automation Manager Maven プロジェクトがある場合は、プロジェクトの | |
| 埋め込み型 Java アプリケーション (KJAR) |
埋め込み型 Java アプリケーションをもとに Red Hat Process Automation Manager プロジェクトをビルドする場合は、 | |
| CI/CD ツール (KJAR) | 継続的インテグレーションと継続的デリバリー (CI/CD) にツールを使用する場合は、Red Hat Process Automation Manager Git リポジトリーと統合して、指定されたプロジェクトをビルドするようにツールセットを設定できます。デプロイメントの最適化を図るため、プロジェクトが KJAR ファイルとしてパッケージ化およびビルドされていることを確認してください。 | 該当なし |
| OpenShift の S2I (コンテナーイメージ) | Red Hat OpenShift Container Platform で Red Hat Process Automation Manager を使用する場合は、Red Hat Process Automation Manager プロジェクトを通常の方法で KJAR ファイルとしてビルドするか、Source-to-Image (S2I) を使用してプロジェクトをコンテナーイメージとしてビルドできます。S2I は、アプリケーションのソースコードをインプットとして使用するイメージを記述して、アセンブルされたアプリケーションを実行する新規イメージを出力として作成できるフレームワークおよびツールです。開発者が簡単に再現可能なコンテナーイメージをビルドできる点が、S2I ツールを使用する主な利点です。 Red Hat Process Automation Manager イメージは、指定できる Git リポジトリーのソースを使用して、KJAR ファイルを S2I として自動的にビルドします。スクリプトを作成したり、S2I ビルドを管理したりする必要はありません。 | S2I コンセプトの場合: Red Hat OpenShift Container Platform 製品ドキュメントの イメージ。 Operator ベースのデプロイメントプロセスの場合: Operator を使用した Red Hat OpenShift Container Platform 4 への Red Hat Process Automation Manager 環境のデプロイ。KIE Server 設定で、KIE Server インスタンスを追加し、Set Immutable server configuration をクリックして、S2I デプロイメント用のソース Git リポジトリーを設定します。 |
第4章 Red Hat Process Automation Manager を使用したプロジェクトのデプロイメントオプション リンクのコピーリンクがクリップボードにコピーされました!
Red Hat Process Automation Manager プロジェクトの開発、テスト、ビルド後に、プロジェクトをデプロイして、作成したビジネスアセットの使用を開始できます。Red Hat Process Automation Manager プロジェクトは、コンテナー実装を強化するために、設定済みの KIE Server、埋め込み型 Java アプリケーション、または Red Hat OpenShift Container Platform 環境にデプロイできます。
次のオプションは、Red Hat Process Automation Manager プロジェクトのデプロイメントの主な方法です。
| デプロイメントオプション | 説明 | ドキュメント |
|---|---|---|
| OpenShift 環境へのデプロイメント | Red Hat OpenShift Container Platform は、Docker と Kubernetes を組み合わせて、コンテナーの作成と管理を可能にします。OpenShift には、Business Central と KIE Server の両方をインストールできます。Red Hat Process Automation Manager は、Red Hat Process Automation Manager オーサリング環境、管理サーバー環境、イミュータブルサーバー環境、またはトライアル環境を OpenShift にデプロイするために使用できるテンプレートを提供します。OpenShift では、Red Hat Process Automation Manager のコンポーネントは、個別の OpenShift Pod としてデプロイされます。各 Pod を個別にスケールアップおよびスケールダウンして、特定のコンポーネントに必要な数だけコンテナーを提供できます。標準の OpenShift の手法を使用して Pod を管理し、負荷を分散できます。 |
テンプレートを使用した Red Hat OpenShift Container Platform 3 への Red Hat Process Automation Manager 環境のデプロイメント |
| KIE Server へのデプロイメント | KIE Server は、Red Hat Process Automation Manager に含まれるサーバーで、パッケージ化およびデプロイされた Red Hat Process Automation Manager プロジェクト (KJAR ファイル) からデシジョンサービス、プロセスアプリケーション、およびその他のデプロイ可能なアセットを実行します。このサービスは、ランタイム時に、インスタンス化した KIE コンテナー、または デプロイメントユニット を介して使用されます。デプロイメントユニットは、Business Central を使用するか、関連する REST API を備えた (マネージド KIE Server インスタンスと見なされる) ヘッドレス Process Automation Manager コントローラーを使用して、KIE Server でデプロイおよび保守できます。また、デプロイメントユニットは、スタンドアロン Maven プロジェクト、埋め込み型 Java アプリケーション、またはその他のカスタム環境 (管理対象外 の KIE Server インスタンスと見なされる) から KIE Server または Java クライアント API を使用して、デプロイおよび保守することもできます。 | Red Hat Process Automation Manager プロジェクトのパッケージ化およびデプロイ |
| 埋め込み型 Java アプリケーションへのデプロイメント | Red Hat Process Automation Manager プロジェクトを独自の Java 仮想マシン (JVM) 環境、マイクロサービス、またはアプリケーションサーバーにデプロイする場合は、プロジェクトの WAR ファイルにアプリケーションリソースをバンドルして、KIE コンテナーと同様のデプロイメントユニットを作成できます。また、コア KIE API (KIE Server API ではない) を使用して、KIE コンテナーを定期的に更新するように KIE スキャナーを設定することもできます。 |
第5章 Red Hat Process Automation Manager を使用したプロジェクトのアセット実行オプション リンクのコピーリンクがクリップボードにコピーされました!
Red Hat Process Automation Manager プロジェクトをビルドして KIE Server または他の環境にデプロイした後に、デプロイされたアセットを実行してテストまたはランタイムで使用できます。デプロイ後の実行に加えて、またはその代わりに、アセットをローカルで実行することもできます。
次のオプションは、Red Hat Process Automation Manager アセット実行の主な方法です。
| 実行オプション | 説明 | ドキュメント |
|---|---|---|
| KIE Server での実行 | Red Hat Process Automation Manager プロジェクトアセットを KIE Server にデプロイした場合は、KIE Server REST API または Java クライアント API を使用して、デプロイされたアセットを実行および操作できます。また、Business Central や、Business Central の外部にあるヘッドレス Process Automation Manager コントローラーを使用して、デプロイされたアセットに関連付けられた KIE Server インスタンスの設定と KIE コンテナーを管理することもできます。プロセス定義の場合、Business Central を直接使用してプロセスインスタンスを実行できます。 | |
| 埋め込み型 Java アプリケーションでの実行 | 独自の Java 仮想マシン (JVM) 環境、マイクロサービス、またはアプリケーションサーバーに Red Hat Process Automation Manager プロジェクトアセットをデプロイした場合は、カスタム API またはアプリケーションとコア KIE API (KIE Server API ではない) との対話により、埋め込みエンジンでアセットを実行できます。 | |
| ローカル環境で実行して拡張テストを行う方法 | 開発サイクルの一環として、アセットをローカルで実行して、Red Hat Process Automation Manager で作成したアセットが意図したとおりに機能することを確認できます。デプロイ後のアセットの実行に加えて、またはその代わりに、ローカル実行を使用できます。 |
デプロイメントおよび実行環境に応じて、Smart Router を使用して、複数の独立した KIE Server インスタンスを単一のサーバーであるかのように集約できます。Smart Router は、クライアントアプリケーションから任意のサービスへの呼び出しを受け取り、サービスを実行する KIE Server に各呼び出しを自動的にルーティングできる単一のエンドポイントです。Smart Router の詳細は、Red Hat JBoss EAP クラスター環境への Red Hat Process Automation Manager のインストールおよび設定 を参照してください。
第6章 Red Hat Process Automation Manager を使用したデシジョン管理アーキテクチャーの例 リンクのコピーリンクがクリップボードにコピーされました!
以下のシナリオは、デシジョン管理アーキテクチャーにおける Red Hat Process Automation Manager のインストール、アセットオーサリング、プロジェクトのストレージ、プロジェクトのデプロイメント、およびアセット実行の一般的なバリエーションを示しています。各セクションでは、使用方法およびツール、ならびに特定のアーキテクチャーの利点をまとめています。これらの例は基本的なものであり、Red Hat Process Automation Manager の具体的な目的やニーズに応じて検討できる組み合わせのごく一部です。
- Business Central および KIE Server を使用した OpenShift 上の Red Hat Process Automation Manager 環境
-
インストール環境: Red Hat OpenShift Container Platform 上の Red Hat Process Automation Manager。Operator を使用して、必要に応じて
rhpam-authoring環境およびその他のタイプの環境をデプロイします。 - プロジェクトのストレージおよびビルド環境: Git フックを使用して Business Central の Git リポジトリーと同期するプロジェクトバージョン管理用の外部 Git リポジトリー、および KIE Server で設定されたプロジェクト管理およびビルド用の外部 Maven リポジトリー
- アセットオーサリングツール: Business Central
- 主なアセットタイプ: デシジョン用の Decision Model and Notation (DMN) モデルおよびプロセス用の Business Process Model and Notation (BPMN) モデル
- プロジェクトのデプロイメントおよび実行環境: Red Hat OpenShift Container Platform の KIE Server
シナリオの利点:
- クラウドベースのデプロイメント環境における Red Hat Process Automation Manager のコンテナー化された実装。Red Hat Process Automation Manager のコンポーネントは、別の OpenShift Pod としてデプロイされます。各 Pod を個別にスケールアップおよびスケールダウンして、特定のコンポーネントに必要な数だけコンテナーを提供できます。標準の OpenShift の手法を使用して Pod を管理し、負荷を分散できます。
- Business Central のリポジトリー、アセット、アセットデザイナー、およびプロジェクトビルドオプションへのアクセス。
- 統合と安定性の最適化を図るために DMN および BPMN を使用する、標準化されたアセットオーサリングアプローチ。
- アセットのデプロイメントと実行のための KIE Server 機能と KIE API へのアクセス。
図6.1 Business Central および KIE Server を使用した OpenShift 上の Red Hat Process Automation Manager
-
インストール環境: Red Hat OpenShift Container Platform 上の Red Hat Process Automation Manager。Operator を使用して、必要に応じて
- Business Central および KIE Server を使用した Red Hat JBoss EAP 上の Red Hat Process Automation Manager
- インストール環境: Red Hat JBoss Enterprise Application Platform 上の Red Hat Process Automation Manager
- プロジェクトのストレージおよびビルド環境: Git フックを使用して Business Central の Git リポジトリーと同期するプロジェクトバージョン管理用の外部 Git リポジトリー、および KIE Server で設定されたプロジェクト管理およびビルド用の外部 Maven リポジトリー
- アセットオーサリングツール: Business Central
- 主なアセットタイプ: デシジョン用の Decision Model and Notation (DMN) モデルおよびプロセス用の Business Process Model and Notation (BPMN) モデル
- プロジェクトのデプロイメントおよび実行環境: KIE Server
シナリオの利点:
- オンプレミス開発環境での Red Hat Process Automation Manager の安定した実装
- Business Central のリポジトリー、アセット、アセットデザイナー、およびプロジェクトビルドオプションへのアクセス
- 統合と安定性の最適化を図るために DMN および BPMN を使用する、標準化されたアセットオーサリングアプローチ
- アセットのデプロイメントと実行のための KIE Server 機能と KIE API へのアクセス
図6.2 Business Central および KIE Server を使用した Red Hat JBoss EAP 上の Red Hat Process Automation Manager
- IDE および KIE Server を使用した Red Hat JBoss EAP 上の Red Hat Process Automation Manager
- インストール環境: Red Hat JBoss Enterprise Application Platform 上の Red Hat Process Automation Manager
- プロジェクトのストレージおよびビルド環境: プロジェクトバージョン管理用の外部 Git リポジトリー (Business Central と非同期)、および KIE Server で設定されたプロジェクト管理とビルド用の外部 Maven リポジトリー
- アセットオーサリングツール: VSCode などの統合開発環境 (IDE)、および他のデシジョン形式のスプレッドシートエディターまたは Decision Model and Notation (DMN) モデリングツール
- 主なアセットタイプ: Drools ルール言語 (DRL) ルール、スプレッドシートデシジョンテーブル、デシジョン用の Decision Model and Notation (DMN) モデル、およびプロセス用の Business Process Model and Notation (BPMN) モデル
- プロジェクトのデプロイメントおよび実行環境: KIE Server
シナリオの利点:
- オンプレミス開発環境での Red Hat Process Automation Manager の柔軟な実装
- 外部 IDE およびその他のアセットオーサリングツールを使用してビジネスアセットを定義する機能
- アセットのデプロイメントと実行のための KIE Server 機能と KIE API へのアクセス
図6.3 IDE および KIE Server を使用した Red Hat JBoss EAP 上の Red Hat Process Automation Manager
- IDE および埋め込み型 Java アプリケーションを使用する Red Hat Process Automation Manager
- インストール環境: カスタムアプリケーション内に埋め込まれた Red Hat Process Automation Manager ライブラリー
- プロジェクトのストレージおよびビルド環境: プロジェクトバージョン管理用の外部 Git リポジトリー (Business Central と非同期)、および埋め込み型 Java アプリケーションで設定されたプロジェクト管理 (KIE Server で未設定) とビルド用の外部 Maven リポジトリー
- アセットオーサリングツール: VSCode などの統合開発環境 (IDE)、および他のデシジョン形式のスプレッドシートエディターまたは Decision Model and Notation (DMN) モデリングツール
- 主なアセットタイプ: Drools ルール言語 (DRL) ルール、スプレッドシートデシジョンテーブル、デシジョン用の Decision Model and Notation (DMN) モデル、およびプロセス用の Business Process Model and Notation (BPMN) モデル
- プロジェクトのデプロイメントおよび実行環境: Java 仮想マシン (JVM) 環境、マイクロサービス、カスタムアプリケーションサーバーなどにある埋め込み型 Java アプリケーション
シナリオの利点:
- 埋め込み型 Java アプリケーションを使用したオンプレミス開発環境での Red Hat Process Automation Manager のカスタム実装
- 外部 IDE およびその他のアセットオーサリングツールを使用してビジネスアセットを定義する機能
- カスタム API を使用した (KIE Server API ではなく) コア KIE API の対話と、埋め込みエンジンでのアセット実行
図6.4 IDE および埋め込み型 Java アプリケーションを使用する Red Hat Process Automation Manager
第7章 関連情報 リンクのコピーリンクがクリップボードにコピーされました!
付録A バージョン情報 リンクのコピーリンクがクリップボードにコピーされました!
このドキュメントの最終更新日: 2024 年 3 月 14 日 (木)
付録B お問い合わせ先 リンクのコピーリンクがクリップボードにコピーされました!
Red Hat Process Automation Manager のドキュメントチーム: brms-docs@redhat.com