Red Hat Training
A Red Hat training course is available for Red Hat Decision Manager
第4章 Red Hat Decision Manager におけるクラスター化 (デザインタイム開発環境向け)
本セクションは、Git リポジトリーをクラスター化する必要がある Decision Central の開発環境に主眼を置いています。Decision Server の実稼働環境では、クラスター環境を構築する必要はありません。
Red Hat では、デザインタイム開発環境向けに、2 つまたはそれ以上のコンピューターをクラスター化した高可用性クラスター環境の構築について検討することを推奨します。これにより、協調作業が促進され高可用性が得られます。
たとえば、クラスター化が設定されている場合、開発者 X が Decision Central ノード 1 でルールを作成すると、Decision Central ノード 2 で作業中の開発者 Y がそのルールを見ることができます。さらに、クラスター環境の各ノードで作業中の開発者全員が、同一コンテンツを同期された状態で見ることができます。
また、クラスター化によりルールの開発環境に高可用性がもたらされます。開発者 X がノード 1 で作業中にそのノードに異常が発生したとしても、開発者 X の作業内容が維持されクラスター環境のどのノードからでもの内容にアクセスすることができます。
以下のセクションでは、クラスター化された Red Hat Decision Manager 環境を構築する方法について説明します。
4.1. Elasticsearch の設定
Elasticsearch は、スケーラビリティーに優れたオープンソースの全文検索および解析エンジンです。これにより、大量のデータを素早くほぼリアルタイムに保存、検索、および解析できます。Red Hat Decision Manager のクラスター環境では、ノード全体にわたる複雑な検索を効率的に実施できます。Elasticsearch は、クラスター環境のメインノードに設定します。
手順
- Elasticsearch のインストールファイルをダウンロードして展開します。
elasticsearch/config/elasticsearch.yml
ファイルの内容を以下のように置き換えます。ここで、<MAIN_NODE_IP>
はクラスターのメインノードの IP アドレスです。cluster.name: kie-cluster transport.host: <MAIN_NODE_IP> http.host: <MAIN_NODE_IP> transport.tcp.port: 9300 xpack.security.enabled: false discovery.zen.minimum_master_nodes: 1
以下のプラグインをインストールします。
Linux または UNIX ベースのシステムの場合は、以下のように入力します。
./bin/elasticsearch-plugin install x-pack
Windows の場合は、以下のように入力します。
bin\elasticsearch-plugin.bat install x-pack
メインノードで Elasticsearch を実行します。
Linux または UNIX ベースのシステムの場合は、以下のように入力します。
./bin/elasticsearch
Windows の場合は、以下のように入力します。
bin\elasticsearch.bat
4.2. ActiveMQ JMS ブローカーのアクティブ化
Elasticsearch をインストールしたら、クラスターのメインノードで ActiveMQ JMS ブローカーをアクティブ化する必要があります。
前提条件
クラスターのメインノードにインストールされた Elasticsearch
手順
EAP_HOME/standalone/configuration/standalone.xml
ファイルに以下のプロパティーを追加します。-
socket-binding-group 要素に
<socket-binding name="activemq" port="61616"/>
を追加します。 -
messaging-activemq サブシステム要素の
<server name="default">
に、<remote-acceptor name="activemq-acceptor" socket-binding="activemq"/>
を追加します。
-
socket-binding-group 要素に
- クラスターの各ノードについて、「クラスターノードへの Decision Central のインストール」に記載のステップをすべて実施します。
4.3. クラスターノードへの Decision Central のインストール
本セクションのステップをすべて実施して、クラスターの各ノードに Decision Central をインストールして実行します。
前提条件
- すべての Red Hat Decision Manager ノードがアクセスできる NFS マウントしたディレクトリーが利用可能
- クラスターのメインノードにインストールされた Elasticsearch
- クラスターのメインノードでアクティブ化した ActiveMQ JMS ブローカー
手順
- クラスターの各ノード上に Decision Central をインストールします。Decision Central のインストールの詳細については、「2章Red Hat Decision Manager のインストール」を参照してください。
./standalone.xml
ファイルの以下のプロパティーを編集します。ここで、-
<MAIN_NODE>
はクラスターのメインノードの IP アドレスです -
<JMS_BROKER_USER>
は JMS ブローカー用のユーザー名です <JMS_BROKER_PASSWORD>
は JMS ブローカー用のパスワードです<system-properties> <property name="org.uberfire.nio.git.dir" value=" <niogit_dir_on_shared_nfs>"/> <property name="appformer-cluster" value="true"/> <property name="appformer-jms-url" value="tcp://<MAIN_NODE_IP>:61616"/> <property name="appformer-jms-username" value="<JMS_BROKER_USER>"/> <property name="appformer-jms-password" value="<JMS_BROKER_PASSWORD>"/> <property name="org.appformer.ext.metadata.index" value="elastic"/> <property name="org.appformer.ext.metadata.elastic.port" value="9300"/> <property name="org.appformer.ext.metadata.elastic.host" value="<MAIN_NODE_IP>"/> <property name="org.appformer.ext.metadata.elastic.cluster" value="kie-cluster"/> <property name="org.appformer.ext.metadata.elastic.retries" value="10"/> </system-properties>
-
クラスター環境のメインノードにインストールした Red Hat JBoss EAP において、
admin
ロールを持つユーザーを作成します。この時、ユーザー名およびパスワードは、前のステップで作成した <JMS_BROKER_USER> および <JMS_BROKER_PASSWORD> の値と一致させます。$ <MAIN_NODE_EAP_HOME>/bin/./add-user.sh -a --user <JMS_BROKER_USER> --password <JMS_BROKER_USER> --role admin
Decision Central を起動するには、クラスターの各ノードにおいて以下のコマンドのいずれかを入力します。
Linux または UNIX ベースのシステムの場合:
EAP_HOME/bin/standalone.sh
Windows の場合:
EAP_HOME\bin\standalone.bat