第2章 開発 (オーサリング) 環境における Red Hat Process Automation Manager クラスター
開発者は、Red Hat Process Automation Manager を使用して、ユーザーの意思決定をサポートするルールとプロセスを作成できます。
Red Hat Process Automation Manager をクラスター開発環境として設定すると、高可用性の利点が得られます。クラスター環境では、開発者が $node1
で作業していて、そのノードで障害が発生した場合に、この開発者が作業した内容はクラスターの別のノードに保存され、そちらで確認できます。
多くの開発環境には、ルールとプロセスを作成する Business Central と、このルールとプロセスをテストする 1 台以上の Process Server があります。
Red Hat Process Automation Manager のクラスター開発環境を構築するには、以下のタスクを実行する必要があります。
- マシンに Red Hat JBoss EAP 7.2 with Red Hat Data Grid 7.3.1 を設定します。
- マシンに Java メッセージングサーバー (JMS) ブローカーである、AMQ Broker を設定します。
- マシンに NFS ファイルサーバーを設定します。
- Red Hat JBoss EAP 7.2 と Red Hat Process Automation Manager 7.6 をダウンロードして、各マシンにインストールします。各マシンはクラスターノードの 1 つとなります。
- クラスターノードごとに Business Central を設定して、クラスターの操作を開始します。
Red Hat Data Grid は Infinispan のオープンソースソフトウェアプロジェクトで構築されています。Red Hat Data Grid は、スケーラビリティーに優れた全文検索と解析エンジンで、インデックス化の機能が含まれているので、大量のデータを素早くほぼリアルタイムに保存、検索、および解析できます。Red Hat Process Automation Manager のクラスター環境では、クラスターノード全体にわたる複雑な検索を効率的に実施できます。
JMS ブローカーは、ローカルでメッセージを受信して保存し、そのメッセージを受信者に転送するソフトウェアコンポーネントです。AMQ Broker を使用すると、アプリケーションがメッセージングプロバイダーと通信できます。また、メッセージ駆動型 Bean、Enterprise JavaBean、servlet などのコンポーネントがどのようにメッセージを送受信するかを指定します。
2.1. Red Hat Data Grid のインストールおよび設定
クラスターノード全体をより効率的に検索するために Red Hat Data Grid を使用するには、Red Hat Process Automation Manager のクラスター環境用に Red Hat Data Grid をインストールして設定します。以下の説明に従って、高可用性ではない、簡素化された環境を別のマシンに設定します。
Red Hat JBoss EAP の Red Hat Data Grid モジュールに関する情報は、『Red Hat Data Grid User Guide』の「Red Hat Data Grid modules for EAP」を参照してください。
Business Central と同じノードに Red Hat Data Grid はインストールしないでください。
前提条件
- Java 8.0 以降と互換性のある Java Virtual Machine (JVM) 環境がインストールされている。
-
バックアップを作成してある Red Hat JBoss EAP システム (バージョン 7.2 またはそれ以降) が利用できる。Red Hat JBoss EAP システムのベースディレクトリーを
EAP_HOME
とします。 - Red Hat Process Automation Manager がインストールおよび設定済みである。
- インストールを完了するために必要なユーザーパーミッションが十分に付与されている。
手順
Red Hat カスタマーポータルの Software Downloads ページに移動し (ログインが必要)、ドロップダウンオプションから製品およびバージョンを選択します。
- 製品: Data Grid
- バージョン: 7.3
お使いのシステムの任意の場所に、Red Hat JBoss Data Grid 7.3.0 Server (
jboss-datagrid-7.3.0-1-server.zip
) のインストールファイルをダウンロードします。展開したディレクトリーは、
JDG_HOME
となります。Red Hat Data Grid を実行するには、
JDG_HOME/bin
に移動して以下のコマンドの 1 つを入力します。Linux または UNIX ベースのシステムの場合:
$ ./standalone.sh -c clustered.xml
Windows の場合:
standalone.bat -c clustered.xml
2.2. AMQ Broker のダウンロードおよび設定
AMQ Broker により、アプリケーションがメッセージングプロバイダーに接続できるようになります。また、メッセージ駆動型 Bean、Enterprise JavaBean、servlet などのコンポーネントがどのようにメッセージを送受信するかを指定します。以下の説明を使用して、別のマシンに高可用性ではなく、簡素化された環境を設定します。
高可用性のRed Hat Process Automation Manager クラスター環境用の AMQ Broker を設定するには、「Using AMQ Broker」を参照してください。
手順
Red Hat カスタマーポータルの Software Downloads ページに移動し (ログインが必要)、ドロップダウンオプションから製品およびバージョンを選択します。
- 製品: AMQ Broker
- バージョン: 7.2.0
-
Red Hat AMQ Broker 7.2.0 (
amq-broker-7.2.0-bin.zip
) の横の Download をクリックします。 -
amq-broker-7.2.0-bin.zip
ファイルを展開します。 -
amq-broker-7.2.0-bin/amq-broker-7.2.0/bin
のディレクトリーに移動します。 以下のコマンドを入力します。以下のプレースホルダーを置き換えて、ブローカーおよびブローカーのユーザーを作成します。
-
<HOST>
は、AMQ Broker をインストールしたサーバーの IP アドレスまたはホスト名に置き換えます。 -
<AMQ_USER>
および<AMQ_PASSWORD>
は、任意のユーザー名とパスワードの組み合わせに置き換えます。 <BROKER_NAME>
は作成するブローカーの名前に置き換えます。./artemis create --host <HOST> --user <AMQ_USER> --password <AMQ_PASSWORD> --require-login <BROKER_NAME>
-
AMQ Broker を実行するには、
amq-broker-7.2.0-bin/amq-broker-7.2.0/bin
ディレクトリーで以下のコマンドを入力します。amq-broker-7.2.0/bin/<BROKER_NAME>/bin/artemis run
2.3. NFS サーバーの設定
Business Central クラスター環境には、共有ファイルシステムが必要で、その共有ファイルシステムに、各クラスターノードからアクセスできる必要がある。
NFS バージョン 4 サーバーをデプロイして設定しておく必要がある。
手順
- NFS バージョン 4 共有をエクスポートするようにサーバーを設定します。Red Hat Enterprise Linux での NFS 共有のエクスポートの方法については、「 ファイルシステムの管理」の「NFS 共有のエクスポート」を参照してください。NFS サーバーの作成に関する情報は、「How to configure NFS in RHEL 7」を参照してください。
サーバーで、
/etc/exports
ファイルに以下の行を追加し、rw,sync,no_root_squash
オプションを指定して/opt/kie/data
共有を作成します。/opt/kie/data *(rw,sync,no_root_squash)
たとえば、
/opt/kie/data
は共有フォルダー、*
は NFS サーバーに接続可能な IP アドレス、(rw,sync,no_root_squash)
は NFS に最小限必要なオプションを指します。以下に例を示します。/opt/kie/data 192.268.1.0/24(rw,sync,no_root_squash)
注記'/opt/kie/data' の代わりに別の共有名を使用できます。別の共有名を使用する場合には、Business Central を実行する全ノードの設定時に、この名前を使用する必要があります。
各クライアントノードで、既存のディレクトリーに共有フォルダーをマウントします。
# mount <SERVER_IP>:/opt/kie/data /opt/kie/data/niogit
以下のプロパティーを
standalone-full-ha.xml
ファイルに追加し、.niogit
およびmaven-repository
ディレクトリーを nfs 共有フォルダーとしてバインドします。<property name="org.uberfire.nio.git.dir" value="/opt/kie/data/niogit"/> <property name="org.guvnor.m2repo.dir" value="/opt/kie/data/maven-repository"/>
2.4. Red Hat JBoss EAP 7.2 および Red Hat Process Automation Manager のダウンロードおよび展開
クラスターの各ノードで Red Hat JBoss EAP 7.2 および Red Hat Process Automation Manager 7.6 をダウンロードして、インストールします。
手順
クラスターの各ノードに Red Hat JBoss EAP 7.2 をインストールします。
Red Hat カスタマーポータルの Software Downloads ページに移動し (ログインが必要)、ドロップダウンオプションから製品およびバージョンを選択します。
- 製品: Enterprise Application Platform
- バージョン: 7.2
-
Red Hat JBoss Enterprise Application Platform 7.2.0 (
JBEAP-7.2.0/jboss-eap-7.2.0.zip
) の横にある Download をクリックします。
-
jboss-eap-7.2.0.zip
ファイルを展開します。以下の例では、EAP_HOME
をjboss-eap-7.2/jboss-eap-7.2
ディレクトリーとします。 - 最新の Red Hat JBoss EAP パッチが利用できる場合には、ダウンロードして適用します。
クラスターの各ノードで Red Hat Process Automation Manager をダウンロードします。
Red Hat カスタマーポータルの Software Downloads ページに移動し、ドロップダウンオプションから製品およびバージョンを選択します。
- 製品: Process Automation Manager
- バージョン: 7.6
-
Red Hat Process Automation Manager 7.6.0 Business Central Deployable for Red Hat JBoss EAP 7 (
rhpam-7.6.0-business-central-eap7-deployable.zip
) をダウンロードします。
-
rhpam-7.6.0-business-central-eap7-deployable.zip
ファイルを一時ディレクトリーに展開します。以下のコマンドでは、このディレクトリーをTEMP_DIR
とします。 -
TEMP_DIR/rhpam-7.6.0-business-central-eap7-deployable/jboss-eap-7.2
の内容をEAP_HOME
にコピーします。 - 最新の Red Hat Process Automation Manager のパッチが利用できる場合には、ダウンロードして適用します。
-
EAP_HOME/bin
ディレクトリーに移動します。 Business Central へのログインに使用する、
admin
ロール持つユーザーを作成します。以下のコマンドの<username>
および<password>
を、作成するユーザーとそのパスワードに置き換えます。$ ./add-user.sh -a --user <USERNAME> --password <PASSWORD> --role admin,rest-all
注記必ず、既存のユーザー、ロール、またはグループとは異なるユーザー名を指定してください。たとえば、
admin
という名前のユーザーは作成しないでください。パスワードは 8 文字以上で、数字と、英数字以外の文字をそれぞれ 1 文字以上使用する必要があります。ただし & の文字は使用できません。
Process Server にログインするのに使用する、
kie-server
ロールを持つユーザーを作成します。$ ./add-user.sh -a --user <USERNAME> --password <PASSWORD> --role kie-server
- ユーザー名とパスワードを書き留めておきます。
2.5. クラスターでの Business Central の設定および実行
Red Hat JBoss EAP と Business Central のインストール後に、Red Hat Data Grid と AMQ Broker を使用してクラスターを設定できます。クラスターの各ノードで以下の手順を実行します。
この手順では、基本的なクラスター設定を説明します。より詳細な設定は『Red Hat JBoss EAP 7.2 設定ガイド』を参照してください。
前提条件
- 「Red Hat Data Grid のインストールおよび設定」 の記載どおりに、Red Hat Data Grid 7.3.1 がインストールされている。
- 「AMQ Broker のダウンロードおよび設定」 の説明通りに AMQ Broker がインストールされ、設定されている。
- 「Red Hat JBoss EAP 7.2 および Red Hat Process Automation Manager のダウンロードおよび展開」の説明通りに、クラスターの各ノードに Red Hat JBoss EAP および Red Hat Process Automation Manager がインストールされている。
- xref:nfs-server-configure-proc> に記載されているように、パーティションをマウントした NFS サーバーが利用できる。
手順
NFS で共有されているディレクトリーを
/data
としてマウントします。Root ユーザーで以下のコマンドを入力します。mkdir /data mount <NFS_SERVER_IP>:<DATA_SHARE> /data
<NFS_SERVER_IP> は NFS サーバーマシンの IP アドレスまたはホスト名に、<DATA_SHARE> は設定した共有名 (例:
/opt/kie/data
) に置き換えます。-
テキストエディターで
EAP_HOME/standalone/configuration/standalone-full.xml
ファイルを開きます。 <system-properties>
要素でプロパティーを編集または追加し、以下のプレースホルターを置き換えます。-
<AMQ_USER>
および<AMQ_PASSWORD>
は、AMQ Broker の作成時に定義した認証情報に置き換えます。 -
<AMQ_BROKER_IP_ADDRESS>
は AMQ Broker の IP アドレスに置き換えます。 <INFINISPAN_NODE_IP>
は、Red Hat Data Grid のインストール先の IP アドレスに置き換えます。<system-properties> <property name="appformer-jms-connection-mode" value="REMOTE"/> <property name="appformer-jms-username" value="<AMQ_USER>"/> <property name="appformer-jms-password" value="<AMQ_USER_PASSWORD>"/> <property name="appformer-jms-url" value="tcp://<AMQ_BROKER_IP_ADDRESS>:61616?ha=true&retryInterval=1000&retryIntervalMultiplier=1.0&reconnectAttempts=-1"/> <property name="org.appformer.ext.metadata.infinispan.port" value="11222"/> <property name="org.appformer.ext.metadata.infinispan.host" value="<INFINISPAN_NODE_IP>"/> <property name="org.appformer.ext.metadata.infinispan.realm" value="ApplicationRealm"/> <property name="org.appformer.ext.metadata.infinispan.cluster" value="kie-cluster"/> <property name="org.appformer.ext.metadata.index" value="infinispan"/> <property name="org.uberfire.nio.git.dir" value="/data"/> <property name="es.set.netty.runtime.available.processors" value="false"/> </system-properties>
-
オプション: Red Hat Data Grid のデプロイメントで認証が必要な場合には、
<system-properties>
要素でプロパティーを編集または追加し、以下のプレースホルターを置き換えます。-
<SERVER_NAME>
は、Red Hat Data Grid のサーバー設定で指定したサーバー名に置き換えます。 <SASL_QOP>
は、Red Hat Data Grid サーバー設定の auth、auth-int および auth-conf の値に置き換えます。<property name="org.appformer.ext.metadata.infinispan.server.name" value="<SERVER_NAME>"/> <property name="org.appformer.ext.metadata.infinispan.sasl.qop" value="<SASL_QOP>"/> <property name="org.appformer.ext.metadata.infinispan.username" value=""/> <property name="org.appformer.ext.metadata.infinispan.password" value=""/>
-
-
standalone-full.xml
ファイルを保存します。 クラスターを起動するには
EAP_HOME/bin
に移動して、以下のコマンドの 1 つを入力します。Linux または UNIX ベースのシステムの場合:
$ ./standalone.sh -c standalone-full.xml
Windows の場合:
standalone.bat -c standalone-full.xml
2.6. Red Hat Process Automation Manager クラスターの検証
Red Hat Process Automation Manager を設定したら、アセットを作成してシステムが機能していることを検証します。
手順
-
Web ブラウザーで、
<node-IP-address>:8080/business-central
を入力します。.<node-IP-address>
は特定のノードの IP アドレスに置き換えます。 -
インストール時に作成した
admin
ユーザーの認証情報を入力します。Business Central ホームページが表示されます。 -
Menu
Design Projects の順に選択します。 - MySpace スペースを開きます。
-
Try Samples
Mortgages OK の順にクリックします。Assets ウィンドウが表示されます。 -
Add Asset
Data Object をクリックします。 -
Data Object フィールドに
MyDataObject
を入力し、OK をクリックします。 -
Spaces
MySpace Mortgages の順にクリックし、アセットリストに MyDataObject
があることを確認します。 Web ブラウザーに以下の URL を入力します。
<node_IP_address>
には、クラスターの別のノードのアドレスに置き換えます。http://<node_IP_address>:8080/business-central
-
MyDataObject
アセットを作成した最初のノードの Business Central にログインするときに使用した認証情報と同じものを入力します。 -
Menu
Design Projects の順に選択します。 - MySpace スペースを開きます。
- Mortgages プロジェクトを選択します。
-
MyDataObject
がアセットリストにあることを確認します。 - Mortgages プロジェクトを削除します。