PAMの開発環境をローカルで作成して触ってみるための手順


Red Hat Process Automation Manager(PAM)の開発環境をローカルに作成して、起動してみるところまで。
製品バージョンによって多少異なるところもありますので、あくまで参考に。
(DBは、とりあえずはデフォルトでH2DBがついてるので、そのままサンプル動かしてみることはできます。でも、PAM再起動でデータは消えてしまうのでご注意ください)
DBをPostgreSQLに変更する手順はこちらを参照ください→PAMで利用するDBを変更する方法(PostgreSQLの場合)

ここでの前提

  • ローカルPCに構築(ちなみに個人環境はMacBook Pro 4コア16GB。 2コア4GB以上推奨)
  • JDK 8 or 11がインストール済み(私はOpenJDK11を使用)
  • PAMの製品バージョンは、7.9.x
  • Business Central + Kie Server を同一EAP上にデプロイ
  • EAP(Red Hat Enterprise Application Platform)のバージョンは、7.3.x

※製品のサポートされる環境やテスト済みの環境については、こちらのページをチェックください。

とりあえず触ってみるための環境なので、こんな感じの構成にします。
同一EAP上に、Business CentralとKie Serverをデプロイします。
何も設定変更しないと、データベースはH2DBが使われます。

ちなみに、軽くコンポーネント説明をすると、

Business Central

プロセスの開発・ビルド・デプロイ等を行うことができる、Webアプリ。プロセスエディタもある。
Kie Serverと連携して、実装したプロセスをテスト実行することができる。Kie Serverの管理機能もある。
business-central.warで提供される。必ずしも使わなくてもよい。

Kie Server

プロセスのランタイム環境を含むWebアプリ。
プロセスのプロジェクトをデプロイして実行することができる。
kie-server.warで提供される

必要なもの

JDKとPostgreSQLは、あらかじめダウンロードサイトから取得して、インストールしておいてください。

インストール手順

流れはざっとこんな感じです。

  1. EAPインストールして
  2. Business CentralをEAP上にデプロイして
  3. Kie ServerをEAP上にデプロイして
  4. PAM用アプリユーザ作って
  5. EAP起動して、Business Centralにログイン

(注:ここでは、ZIPをダウンロードして展開するインストール方法について記述します。インストーラーを使ってインストールする場合は、以下のいくつかの手順は省略されます)

手順を細かく記載

アプリケーション・サーバーである、EAPをまずインストールします。
EAPのインストールフォルダを適当な場所に作成し、その配下にインストールしていきます。
ここでは、ダウンロードしたzipを解凍するだけです。

$ mkdir paminstall
$ cd paminstall
$ unzip $DONWLOAD_PATH/jboss-eap-7.3.0.zip

これにより、/paminstallフォルダの下に、jboss-eap-7.3フォルダが作成されます。ここを、$EAP_HOMEとします。

Business Centralを解凍して、$EAP_HOMEに上書きします。
(上書き先を間違えないように! /paminstallフォルダ直下で、unzipします)

$ unzip -qo $DONWLOAD_PATH/rhpam-7.9.0-business-central-eap7-deployable.zip

次に、Kie Serverのzipを適当なFolderで解凍します。
解凍すると、2つのFolderができます。

kie-server.war
SecurityPolicy

kie-server.warフォルダを、$EAP_HOME/standalone/deployments/に移動します。
SecurityPolicyフォルダ配下のファイルを、$EAP_HOME/bin/に移動します。

$ unzip $DONWLOAD_PATH/rhpam-7.9.0-kie-server-ee8.zip
$ mv kie-server.war/ $EAP_HOME/standalone/deployments/
$ mv SecurityPolicy/* $EAP_HOME/bin/

kie-server.warを自動デプロイするための.dodeployファイルを作成します。

$ touch $EAP_HOME/standalone/deployments/kie-server.war.dodeploy

ここまでで、EAP上にPAMがデプロイできたことになります。
起動する前に、PAM用のアプリユーザを作成します。

アプリユーザは、Business Central用のユーザと、Kie Serverコントロール用のユーザを2つ作成します。
Business Central用ユーザ: 所属グループは、admin,kie-server,rest-all とする
Kie Server用ユーザ:所属グループは、kie-server,rest-all とする
以下、作成例。(ユーザの追加は、/bin/add-user.shで行います)

$ ./jboss-eap-7.3/bin/add-user.sh -a --user pamadmin --password pamadmin1! --role admin,kie-server,rest-all
$ ./jboss-eap-7.3/bin/add-user.sh -a --user controllerUser --password 'controllerUser1234;' --role kie-server,rest-all 

次に、Business CentralからKie Serverに接続できるように、設定追加します。
/$EAP_HOME/standalone/configuration/standalone-full.xmlを編集します。

standalone-full.xml
・・・
<system-properties>
・・・
(コメントアウトされている以下の箇所をアンコメントする。ここで設定するuserとpwdは、上記でKie Server用に作成したユーザとパスをセットする)
   <property name="org.kie.server.location" value="http://localhost:8080/kie-server/services/rest/server"/>
   <property name="org.kie.server.controller" value="http://localhost:8080/business-central/rest/controller"/>
   <property name="org.kie.server.controller.user" value="controllerUser"/>
   <property name="org.kie.server.controller.pwd" value="controllerUser1234;"/>
   <property name="org.kie.server.user" value="controllerUser"/>
   <property name="org.kie.server.pwd" value="controllerUser1234;"/>
   <property name="org.kie.server.id" value="default-kieserver"/>
</system-properties>
・・・

さて、では、PAMがデプロイされたEAPを起動してみましょう!
Kie ServerをデプロイしたEAPを起動する際は、standalone-full.xmlを使います。

$ ./jboss-eap-7.3/bin/standalone.sh -c standalone-full.xml

しばらくしてコンソールログにJBoss EAP 7.3.0.GA (WildFly Core 10.1.2.Final-redhat-00001) は 34294ms で開始しました というような表示がされたのを確認して、ログイン画面にアクセスしてみましょう。

PAMログイン画面

http://localhost:8080/business-central/

先ほど作った、PAM用ユーザでログインします。(pamadmin/pamadmin1!)
ログインできれば、以下のようなホーム画面が表示されます。

Business Centralのホーム画面


ログインユーザが属するロール(またはグループ)によって、利用可能な機能が異なります。

表示言語が英語になっている場合

ホーム画面の右上の歯車アイコンをクリックすると、設定画面が開きます。

(英語表示の例)

Languages をクリックし、表示したい言語に変更します。

サンプルをインストールして動かしてみる

PAMにはいくつかのサンプルプロジェクトが用意されており、ビルドして動かすことができるようになっています。

サンプルの試し方

サンプルの解説は、別の記事にて書く予定です。