第3章 Decision Server への IBM WebSphere の設定
IBM WebSphere に Decision Server をデプロイする前に、デプロイ可能な kie-server.war
ファイルを受け入れるようにサーバーを設定する必要があります。
前提条件
IBM WebSphere の IBM Integrated Solutions Console にログインしています。コンソールの左側にあるメインメニューには、アプリケーションサーバーを設定するために必要なリンクがすべて含まれています。
図3.1 IBM Integrated Solutions Console
3.1. JVM ヒープサイズの拡大 リンクのコピーリンクがクリップボードにコピーされました!
IBM WebSphere のデフォルトの JVM ヒープサイズでは、Decision Server にデプロイする際にエラーが発生します。この問題を回避するには、ヒープサイズを増やします。
-
Integrated Solutions Console で、Servers
Server Types WebSphere application servers に移動します。 アプリケーションサーバーの一覧で、Decision Server をデプロイするサーバー (例:
server1
) をクリックします。server1
の設定ページが開きます。Server Infrastructure で Java and Process Management を展開し、Process definition をクリックします。
図3.2 アプリケーションサーバーの設定ページ
Additional Properties の下にある Java Virtual Machine をクリックします。
図3.3 プロセスの定義設定ページ
サーバーページを起動するのに使用する JVM の General Properties が開きます。
Initial heap size および Maximum heap size の両方を
2048
に変更します。この値で Decision Server をテストします。図3.4 JVM 設定ページ
- Apply をクリックします。
Messages ウィンドウで Save をクリックして、マスター設定への変更を保存します。
図3.5 メッセージのポップアップ
-
端末で、インストール時に指定した WebSphere Application Server の
/bin
ディレクトリーに移動して、サーバーを停止して再起動します。 以下のコマンドを実行します。
sudo ./stopServer.sh server1
sudo ./stopServer.sh server1
Copy to Clipboard Copied! Toggle word wrap Toggle overflow sudo ./startServer.sh server1
sudo ./startServer.sh server1
Copy to Clipboard Copied! Toggle word wrap Toggle overflow
3.2. セキュリティーの有効化 リンクのコピーリンクがクリップボードにコピーされました!
管理セキュリティーを有効にして、ユーザーおよびグループを作成するのに必要な権限を取得します。
-
メインメニューで、Security
Global Security をクリックします。Enable Application Security オプションが選択されていることを確認します。選択していても、サーバーレベルで上書きされる可能性があります。 - Security Configuration Wizard をクリックし、Next をクリックします。
- ユーザー情報を含むリポジトリーを選択します。たとえば、ローカル設定で Federated repositories を選択します。
- Next をクリックします。
- プライマリー管理ユーザー名 および パスワード を入力します。
- Next をクリックし、Finish をクリックします。
Messages ウィンドウで Save をクリックして、マスター設定への変更を保存します。
図3.6 メッセージのポップアップ
-
端末で、インストール時に指定した WebSphere Application Server の
/bin
ディレクトリーに移動して、サーバーを停止して再起動します。 以下のコマンドを実行します。
sudo ./stopServer.sh server1
sudo ./stopServer.sh server1
Copy to Clipboard Copied! Toggle word wrap Toggle overflow sudo ./startServer.sh server1
sudo ./startServer.sh server1
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 図3.7 グローバルセキュリティー設定ページ
3.3. ユーザーおよびグループの作成 リンクのコピーリンクがクリップボードにコピーされました!
web ブラウザーで
http://TARGET_SERVER:9060/ibm/console
に移動し、前の手順で作成したユーザーの認証情報でログインします (例:http://localhost:9060/ibm/console
)。WebSphere Integrated Solutions Console が開きます。
-
Users and Groups
Manage Groups をクリックします。 Create をクリックして、
kie-server
グループを作成します。図3.8 作成されたグループ
-
Users and Groups
Manage Users をクリックします。 Create をクリックし、ユーザーの認証情報を入力します。
重要選択した User ID が、ロールまたはグループの既知のタイトルと競合 しない ことを確認してください。
たとえば、
kie-server
ロールがある場合に、kie-server
という名前のユーザーを作成 することはできません 。図3.9 ユーザーの作成ダイアログウィンドウ
- Group Membership をクリックします。
-
ユーザーを
kie-server
グループに割り当て、Create をクリックします。
3.4. JMS リソースの設定 リンクのコピーリンクがクリップボードにコピーされました!
IBM WebSphere にサービスバスがない場合は作成し、Decision Server から JMS メッセージを送受信します。
3.4.1. サービスバスの作成 リンクのコピーリンクがクリップボードにコピーされました!
-
Service Integration
Buses New をクリックします。 - 新しいバス名を入力し、Bus Security オプションの選択を解除します。
- Next をクリックしてから Finish をクリックし、サービスバスを作成します。
3.4.1.1. バスメンバーの追加 リンクのコピーリンクがクリップボードにコピーされました!
バスメンバー (サービスバスに追加されているサーバーまたはクラスター) を追加します。
-
Service Integration
Buses をクリックし、作成しておいたサービスバスをクリックします。 - Topology セクションで Bus Members をクリックし、Add をクリックします。
- Add a New Bus Member ウィザードを使用し、サーバーと、永続性に関するメッセージストアのタイプを選択します。メッセージストアのプロパティーを指定することもできます。
- Finish をクリックし、バスメンバーを追加します。
3.4.2. JMS 接続ファクトリーの作成 リンクのコピーリンクがクリップボードにコピーされました!
Decision Server 間でメッセージを送受信するには、JMS 接続ファクトリーを作成する必要があります。これは、メッセージをキューに送信する際に接続を確立するのに必要です。
接続ファクトリー KIE.SERVER.REQUEST
および KIE.SERVER.RESPONSE
を作成します。
このファクトリー名は、実際のニーズおよび会社のガイドラインに基づいて変更できます。
-
Resources
JMS Connection Factories をクリックします。 - 正しいスコープを選択し、New をクリックします。
- Default Messaging Provider オプションを選択し、OK をクリックします。
ファクトリーの名前および JNDI 名を入力します。以下が例になります。
-
名前:
KIE.SERVER.REQUEST
-
JNDI 名:
jms/conn/KIE.SERVER.REQUEST
注記KIE.SERVER.RESPONSE
の JNDI 名はjms/conn/KIE.SERVER.RESPONSE
です。-
名前:
Bus Name ドロップダウンリストから、サービスバスを選択します。
その他のオプションの値はデフォルトのままにします。
- Apply および Save をクリックして、マスター設定への変更を保存します。
3.4.3. JMS キューの作成 リンクのコピーリンクがクリップボードにコピーされました!
JMS キューは、ポイントツーポイントメッセージング (point-to-point messaging) の宛先エンドポイントになります。
KIE.SERVER.REQUEST
(要求用) および KIE.SERVER.RESPONSE
(応答用) のキューを作成します。
-
Resources
JMS Queues をクリックします。 - 正しいスコープを選択し、New をクリックします。
- Default Messaging Provider オプションを選択し、OK をクリックします。
キューの名前および JNDI 名を入力します。たとえば、以下のようになります。
-
名前:
KIE.SERVER.REQUEST
-
JNDI 名:
jms/KIE.SERVER.REQUEST
注記すべての JNDI 名は、上記の例と同じ規則に従います。
-
名前:
- Bus Name ドロップダウンリストから、先に作成したサービスバスを選択します。
Queue Name ドロップダウンリストで、Create Service Integration Bus Destination を選択します。
サービス統合バスを作成する Create New Queue フォームが開きます。
- 一意の識別子を入力し、作成しておいたバスメンバーを選択します。
- Apply および Save をクリックして、マスター設定への変更を保存します。
3.4.4. JMS アクティベーション仕様の作成 リンクのコピーリンクがクリップボードにコピーされました!
JMS アクティベーション仕様が必要です。これは、キューとメッセージ駆動型 Bean との間のブリッジとして機能します。
Decision Server サーバー用の KIE.SERVER.REQUEST
(要求用) および KIE.SERVER.RESPONSE
(応答用) のアクティベーション仕様を作成します。
-
Resources
JMS Activation Specifications をクリックします。 - 正しいスコープを選択し、New をクリックします。
- Default Messaging Provider オプションを選択し、OK をクリックします。
アクティべーション仕様の名前および JNDI 名を入力します。たとえば、以下のようになります。
-
名前:
KIE.SERVER.REQUEST
-
JNDI 名:
jms/activation/KIE.SERVER.REQUEST
注記他のアクティべーション仕様のすべての JNDI 名は、上記の例と同じ規則に従います。
-
名前:
- Destination Type ドロップダウンリストで、Queue を選択します。
-
(前の手順で作成した) Destination lookup を入力します (例:
jms/KIE.SERVER.REQUEST
)。 Bus Name ドロップダウンリストから、サービスバスを選択します。
その他のオプションの値はデフォルトのままにします。
- Apply および Save をクリックして、マスター設定への変更を保存します。
これで、IBM WebSphere に Decision Server を設定するのに必要な JMS を設定することができました。
3.4.5. カスタム Java Virtual Machine (JVM) プロパティーの追加 リンクのコピーリンクがクリップボードにコピーされました!
IBM WebSphere を起動するのに使用する JVM に、カスタムプロパティーを追加する必要があります。
-
Servers
Server Types WebSphere Application Servers をクリックします。 - アプリケーションサーバーの一覧で、Decision Server をデプロイするサーバーを選択します。
-
Server Infrastructure で Java and Process Management
Process Definition をクリックします。 Additional Properties セクションで Java Virtual Machine をクリックします。
これにより、IBM WebSphere を起動するのに使用する JVM の設定プロパティーが開きます。
- Additional Properties の下で Custom Properties をクリックします。
New
Custom JVM Properties をクリックして、以下のプロパティーを作成します。 Expand 表3.1 Decision Server に必要なプロパティー 名前 値 説明 org.jboss.logging.provider
jdk
このプロパティーは、
CA SiteMinder TAI (SMTAI)
が環境にインストールされている場合のみ必要になります。このプロパティーを使用すると、Dashbuilder でログを記録するために、Hibernate がlog4j
ではなく、JDK
を強制的に使用しようとします。CA SiteMinder TAI (SMTAI)
には古いバージョンのlog4j
が含まれており、これにより競合が生じます。org.apache.wink.jaxbcontextcache
off
このプロパティーは、IBM WebSphere Apache Wink フレームワークが
JAXBContexts
をキャッシュしないようにします。キャッシュが行われると、パフォーマンスにマイナスの影響があり、REST API のカスタムタイプのシリアライズへの干渉が生じるためです。kie.server.jms.queues.response
jms/conn/KIE.SERVER.RESPONSE
Decision Server で使用される応答用の接続ファクトリーの JNDI 名。
org.kie.server.domain
WSLogin
JMS の使用時にユーザーの認証に使用される JAAS
LoginContext
ドメイン。org.jbpm.server.ext.disabled
true
Decision Central 機能は RHDM で対応していないため、無効にします。無効にしないと Decision Server が有効のままとなり、起動時にエラーメッセージが表示されます。
org.jbpm.ui.server.ext.disabled
true
Decision Central 機能は RHDM で対応していないため、無効にします。無効にしないと Decision Server が有効のままとなり、起動時にエラーメッセージが表示されます。
org.jbpm.case.server.ext.disabled
true
Decision Central 機能は RHDM で対応していないため、無効にします。無効にしないと Decision Server が有効のままとなり、起動時にエラーメッセージが表示されます。
- Save をクリックして、マスター設定への変更を保存します。
- IBM WebSphere を再起動して変更を有効にします。