4.2.5. 環境のカスタム KIE Server 設定の構成
Business Automation Operator のすべての環境タイプには、デフォルトで 1 つまたは複数の KIE Server が含まれます。
必要に応じて、KIE Server のカスタム設定を構成できます。この場合、デフォルトの KIE Server は作成されず、設定する KIE Server のみがデプロイされます。
前提条件
- 「環境の基本設定の構成」 の説明に従って、インストーラーウィザードで Business Automation Operator を使用して Red Hat Process Automation Manager 環境の基本設定を行っている。
- 認証に RH-SSO または LDAP を使用する必要がある場合は、「環境のセキュリティー設定の構成」 の説明に従ってセキュリティー設定を完了している。
手順
- Installation、Security、または Console タブが開いている場合は、KIE Servers タブが表示されるまで Next をクリックします。
- Add new KIE Server をクリックして、新規の KIE Server 設定を追加します。
- Id フィールドに、KIE Server の ID を入力します。KIE Server が Business Central または Business Central Monitoring インスタンスに接続される場合、この ID はサーバーが加わるサーバーグループを決めるものとなります。
- Name フィールドに、KIE Server の名前を入力します。
- Deployments フィールドに、デプロイする同様の KIE Server の数を入力します。インストーラーは、同じ設定で複数の KIE Server をデプロイできます。KIE Server のID および名前は自動的に変更され、一意な状態に保たれます。
- 「KIE Server のシークレットの作成」 の説明に従って KIE Server のシークレットを作成している場合、Keystore secret フィールドにシークレットの名前を入力します。
- 必要に応じて、KIE Server のレプリカ数を Replicas フィールドに入力します。
KIE Server のカスタムイメージを使用する必要がある場合は、以下の追加の手順を実行します。
- Set KIE Server image をクリックします。
-
OpenShift イメージストリームタグではなく Docker イメージ名を使用する必要がある場合は、Kind の値を
DockerImage
に変更します。 - イメージストリームの名前を Name フィールドに入力します。
イメージストリームが
openshift
名前空間にない場合は、名前空間を Namespace フィールドに入力します。カスタムイメージの作成手順については、「KIE Server のカスタムイメージの作成」 を参照してください。
Source to Image (S2I) ビルドを使用して、イミュータブル KIE Server を設定する必要がある場合は、以下の追加の手順を実行します。
重要Maven リポジトリーからサービスをプルするイミュータブル KIE Server を設定する必要がある場合は、Set Immutable server configuration をクリックせず、この手順も実行しないでください。代わりに、
KIE_SERVER_CONTAINER_REPLOYMENT
環境変数を設定します。- Set Immutable server configuration をクリックします。
-
KIE Server コンテナーデプロイメント フィールドに、デプロイメントが Source to Image (S2I) ビルドの結果から展開する必要があるサービスの識別情報 (KJAR ファイル) を入力します。形式は
<containerId>=<groupId>:<artifactId>:<version>
になります。また、コンテナーのエイリアス名で指定する場合には、形式は<containerId>(<aliasId>)=<groupId>:<artifactId>:<version>
になります。以下の例に示されるように、区切り文字|
を使用して 2 つ以上の KJAR ファイルを指定できます (例:containerId=groupId:artifactId:version|c2(alias2)=g2:a2:v2
)。 - OpenShift 環境に公開インターネットへの接続がない場合は、「オフラインで使用する Maven ミラーリポジトリーの用意」 に従って、Maven mirror URL フィールドに設定した Maven ミラーの URL を入力します。
- Artifact directory フィールドで、Maven が正常にビルドされた後に、必要なバイナリーファイル (KJAR ファイルおよびその他の必要なファイル) が含まれるプロジェクト内のパスを入力します。通常、このディレクトリーはビルドのターゲットディレクトリーです。ただし、Git リポジトリーのこのディレクトリーにビルド済みのバイナリーを提供できます。
-
S2I ビルドにカスタムベース KIE Server イメージを使用する必要がある場合は、Set Base build image をクリックして、Name フィールドにイメージストリームの名前を入力します。イメージストリームが
openshift
名前空間にない場合は、名前空間を Namespace フィールドに入力します。OpenShift イメージストリームタグではなく Docker イメージ名を使用する必要がある場合は、Kind の値をDockerImage
に変更します。 Set Git source をクリックし、以下のフィールドに情報を入力します。
- S2I Git URI: サービスのソースが含まれる Git リポジトリーの URI。
- Reference: Git リポジトリーのブランチ。
- コンテキストディレクトリー: (オプション) Git リポジトリーからダウンロードされたプロジェクト内のソースへのパス。デフォルトで、ダウンロードされたプロジェクトのルートディレクトリーはソースディレクトリーです。
- Git Webhook を設定して Git リポジトリーの変更が KIE Server の自動リビルドをトリガーするように設定するには、Add new Webhook をクリックします。Type リストから Webhook のタイプを選択し、Secret フィールドに Webhook のシークレット文字列を入力します。
- 必要に応じて、Resource quotas 下のフィールドに必要な CPU およびメモリーの上限値を入力します。複数の KIE Server を設定している場合は、制限値はそれぞれのサーバーに別々に適用されます。
RH-SSO 認証を選択している場合は、KIE Server の RH-SSO を設定します。
- Client name フィールドにクライアント名を入力し、Client secret フィールドにクライアントシークレットを入力します。この名前を持つクライアントが存在しない場合は、デプロイメントでこの名前およびシークレットを持つ新規クライアントの作成を試行します。
- デプロイメントで新規クライアントを作成する場合は、KIE Server へのアクセスに使用する HTTP および HTTPS URL を SSO HTTP URL フィールドおよび SSO HTTPS URL フィールドに入力します。この情報は、クライアントに記録されます。
外部 AMQ メッセージブローカーを使用して JMS API から KIE Server と対話する場合は、Enable JMS Integration 設定を有効にします。JMS 統合を設定するための追加のフィールドが表示され、必要に応じて値を入力する必要があります。
- User name、Password: ブローカーのユーザー認証が環境で必要な場合の、標準ブローカーユーザーのユーザー名およびパスワード。
- Executor:この設定を選択して JMS Executor を無効にします。Executor はデフォルトで有効になります。
- Executor transacted: この設定を選択して、Executor キューで JMS トランザクションを有効にします。
- Enable signal: この設定を選択して JMS 経由でシグナルの設定を有効にします。
- Enable audit: この設定を選択して JMS 経由で監査ロギングを有効にします。
- Audit transacted: この設定を選択して、監査キューで JMS トランザクションを有効にします。
- Queue executor、Queue request、Queue response、Queue signal、Queue audit: 使用するキューのカスタム JNDI 名。これらの値のいずれかを設定する場合は、AMQ キュー パラメーターも設定する必要があります。
- AMQ Queues: AMQ キュー名はコンマで区切られます。これらのキューはブローカーの起動時に自動的に作成され、JBoss EAP サーバーの JNDI リソースとしてアクセスできます。カスタムキュー名を使用する場合は、このフィールドでサーバーが使用するすべてのキューの名前を入力する必要があります。
- Enable SSL integration: AMQ ブローカーへの SSL 接続を使用する場合は、この設定を選択します。この場合は、「AMQ ブローカー接続のシークレットの作成」 で作成したシークレットの名前や、シークレットに使用したキーストアおよび信頼ストアの名前およびパスワードも指定する必要があります。
- KIE Server Pod の Java 仮想マシンの設定をカスタマイズする必要がある場合は、Enable JVM configuration ボックスを選択してから、Enable JVM configuration の下のフィールドに情報を入力します。すべてのフィールドは任意です。設定可能な JVM パラメーターは、「JVM 設定パラメーター」 を参照してください。
Database type フィールドで、KIE Server が使用する必要のあるデータベースを選択します。以下の値を使用できます。
-
mysql
: 個別の Pod に作成される MySQL サーバー。 -
postgresql
: 個別の Pod に作成される PostgreSQL サーバー。他の設定を使用する特別な理由のない限り、この設定を使用します。 -
h2
: 個別の Pod を必要としないビルトインされたh2
データベースエンジン。この設定を使用する場合は、KIE Server Pod をスケーリングしないでください。 -
external
: 外部データベースサーバー。
-
external
以外のデータベースを選択している場合は、データベースを保存するために Persistent Volume Claim (PVC: 永続ボリューム要求) が作成されます。必要に応じて、永続ボリュームの設定パラメーターを指定します。- また、Size フィールドに、永続ボリュームのサイズを入力します。
- StorageClass name フィールドで、永続ボリュームのストレージクラス名を入力します。
external
データベースを選択した場合は、必要に応じて、KIE Server 拡張イメージを設定します。PostgreSQL、MySQL、MariaDB 以外のデータベースサーバーを使用する場合には、「外部データベースのカスタム KIE Server 拡張イメージのビルド」 の説明に従い、KIE Server 拡張イメージに、データベースサーバーのドライバーを指定する必要があります。KIE Server をこの拡張イメージを使用するように設定するには、以下の変更を加ます。- Enable extension image stream ボックスを選択します。
-
Extension image stream tag フィールドに、作成したイメージの ImageStreamTag 定義を入力します (例:
jboss-kie-db2-extension-openshift-image:11.1.4.4
)。 -
必要に応じて、Extension image stream namespace フィールドに、イメージをプッシュした名前空間を入力します。このフィールドに値を入力しない場合、Operator はイメージが
openshift
名前空間にあると予想します。 - オプションで、Extension image install directory フィールドに、各種の拡張機能が置かれている拡張イメージ内のディレクターを入力します。「外部データベースのカスタム KIE Server 拡張イメージのビルド」 の手順を使用してイメージをビルドした場合は、このフィールドに値を入力しないでください。
外部データベースサーバーを選択している場合は、追加のフィールドに以下の情報を入力します。
Driver: サーバーの種類に応じてデータベースサーバードライバーを入力します。
-
mysql
-
postgresql
-
mariadb
-
mssql
-
db2
-
oracle
-
sybase
-
Dialect: サーバーの種類に応じて、サーバーの Hibernate方言を入力します。共通の設定は以下のとおりです。
-
org.hibernate.dialect.MySQL5InnoDBDialect
-
org.hibernate.dialect.MySQL8Dialect
-
org.hibernate.dialect.MariaDB102Dialect
-
org.hibernate.dialect.PostgreSQL95Dialect
-
org.hibernate.dialect.PostgresPlusDialect
(EntrepriseDB Postgres Advanced Server で使用される) -
org.hibernate.dialect.SQLServer2012Dialect
(MS SQL で使用される) -
org.hibernate.dialect.DB2Dialect
-
org.hibernate.dialect.Oracle10gDialect
org.hibernate.dialect.SybaseASE15Dialect
サポートされる方言の完全リストは、Red Hat JBoss EAP ドキュメントの「 Hibernate properties 」の表 A.7 を参照してください。
-
- Host: 外部データベースサーバーのホスト名を入力します。
- Port: 外部データベースサーバーのポート番号を入力します。
Jdbc URL: 外部データベースサーバーの JDBC URL を入力します。
注記EntrepriseDB Postgres データベースサーバーを使用している場合は、
jdbc:postgresql://
で始まる URL を使用し、jdbc:edb://
は使用しないでください。または、URLを設定せず、代わりにホストとポートのパラメーターを設定します。- NonXA: データソースを XA 以外のモードで設定する必要がある場合にこのボックスを選択します。
- JNDI name: アプリケーションがデータソースに使用する JNDI 名を入力します。
- User name および Password: 外部データベースサーバーのユーザー名およびパスワードを入力します。
- Background validation: 必要に応じて、このボックスを選択してバックグラウンド SQL 検証を有効にし、バックグラウンド検証の間隔を入力します。
- 必要に応じて、最小および最大の接続プールサイズ、有効な接続チェッカークラス、およびデータベースサーバーの例外ソータークラスを設定します。
MySQL バージョン 8 の外部データベースサーバーを使用する場合は、
mysql_native_password
プラグインを有効にして、認証に使用してください。このプラグインに関する詳細は、MySQL 8.0 Reference Manual の Native Pluggable Authentication を参照してください。Red Hat on Red Hat OpenShift Container Platform が提供する MySQL バージョン 8 のイメージを使用してプラグインを有効にするには、
MYSQL_DEFAULT_AUTHENTICATION_PLUGIN
環境変数をmysql_native_password
に設定してください。MySQL バージョン 8 サーバーでユーザーを作成してから
mysql_native_password
プラグインを有効にした場合には、プラグインを有効にしてからmysql-user
テーブルを更新する必要があります。必要に応じて、環境変数を随時設定します。環境変数を設定するには、Add new Environment variable をクリックしてから、変数の名前および値を Name フィールドおよび Value フィールドに入力します。
設定した Maven リポジトリーからサービスをプルするイミュータブル KIE Server を設定する必要がある場合は、以下の設定を入力します。
-
KIE_SERVER_CONTAINER_DEPLOYMENT
環境変数を設定します。変数には、デプロイメントが Maven リポジトリーからプルする必要のあるサービス (KJAR ファイル) の ID 情報が含まれている必要があります。形式は<containerId>=<groupId>:<artifactId>:<version>
になります。また、コンテナーのエイリアス名で指定する場合には、形式は<containerId>(<aliasId>)=<groupId>:<artifactId>:<version>
になります。以下の例に示されるように、区切り文字|
を使用して 2 つ以上の KJAR ファイルを指定できます (例:containerId=groupId:artifactId:version|c2(alias2)=g2:a2:v2
)。 - 外部 Maven リポジトリーの設定
-
外部 Maven リポジトリーを設定する必要がある場合には、以下の変数を設定します。
-
MAVEN_REPO_URL
: Maven リポジトリーの URL -
MAVEN_REPO_ID
: Maven リポジトリーの ID (例:repo-custom
) -
MAVEN_REPO_USERNAME
: Maven リポジトリーのユーザー名 -
MAVEN_REPO_PASSWORD
: Maven リポジトリーのパスワード
-
OpenShift 環境が公開インターネットに接続されていない場合は、「オフラインで使用する Maven ミラーリポジトリーの用意」 に従って設定した Maven ミラーにアクセスできるように設定します。以下の変数を設定してください。
-
MAVEN_MIRROR_URL
: 「オフラインで使用する Maven ミラーリポジトリーの用意」 でセットアップした Maven ミラーリポジトリーの URL。この URL は、OpenShift 環境の Pod からアクセスできるようにする必要があります。この KIE Server を S2I として設定している場合は、この URL をすでに入力されています。 MAVEN_MIRROR_OF
: ミラーから取得されるアーティファクトを定める値。この KIE Server を S2I として設定している場合は、この値を設定しません。mirrorOf
値の設定方法は、Apache Maven ドキュメントの「Mirror Settings」を参照してください。デフォルト値はexternal:*
です。この値の場合、Maven はミラーから必要なアーティファクトをすべて取得し、他のリポジトリーにクエリーを送信しません。外部の Maven リポジトリー (
MAVEN_REPO_URL
) を設定する場合は、ミラーからこのリポジトリー内のアーティファクトを除外するようにMAVEN_MIRROR_OF
を変更します (例:external:*,!repo-custom
)。repo-custom
は、MAVEN_REPO_ID
で設定した ID に置き換えます。オーサリング環境でビルトイン Business Central Maven リポジトリーを使用する場合は、ミラーからこのリポジトリーのアーティファクトを除外するように
MAVEN_MIRROR_OF
を変更します (例:external:*,!repo-rhpamcentr
)。
-
-
Prometheus を使用してメトリクスを収集し、保存するように KIE Server デプロイメントを設定する必要がある場合は、
PROMETHEUS_SERVER_EXT_DISABLED
環境変数をfalse
に設定します。Prometheus メトリクス収集の設定方法は、「KIE Server の管理および監視」を参照してください。 -
{RH-SSO} 認証を使用し、{RH-SSO} を使用したアプリケーションの対話で CORS のサポートが必要な場合は、SSO
_ENABLE_CORS
変数をtrue
に設定します。 一部のオーサリング環境では、複数のユーザーが同じ KIE Server に同時にサービスをデプロイできることを確認する必要があります。デフォルトでは、ユーザーは、Business Central を使用して KIE Server にサービスをデプロイして数秒待ってから追加サービスをデプロイする必要があります。
OpenShiftStartupStrategy
設定はデフォルトで有効になり、この制限が発生します。制限を削除するには、コントローラーストラテジー を使用するようにrhpam-authoring
環境を設定します。これについての特定のニーズがない限り、この変更を行わないでください。コントローラーストラテジーを有効にする場合は、Business Central と同じ環境内のすべての KIE Server でこの変更を行ってください。注記高可用性の Business Central を使用する環境でコントローラーストラテジーを有効にしないでください。この環境では、コントローラーストラテジーは正しく機能しません。
KIE Server でコントローラーストラテジーを有効にするには、
KIE_SERVER_STARTUP_STRATEGY
環境変数をControllerBasedStartupStrategy
に設定し、KIE_SERVER_CONTROLLER_OPENSHIFT_ENABLED
環境変数をfalse
に設定します。
次のステップ
追加の KIE Server を設定するには、Add new KIE Server を再びクリックし、新規サーバー設定の手順を繰り返します。
Smart Router およびプロセスインスタンス移行 (PIM) を使用せずに環境をデプロイする場合は、Finish をクリックしてから、Deploy をクリックして環境をデプロイします。それ以外の場合は、引き続き Smart Router の設定パラメーターの設定を行います。