10.4. KJAR サービスからのイミュータブル KIE Server のデプロイ

KJAR ファイルとしてすでにビルドされているサービスを使用して、イミュータブル KIE Server をデプロイできます。

サービスを Maven リポジトリーに指定する必要があります。Business Central のビルトインリポジトリーまたは独自のリポジトリーを使用できます (例: Nexus デプロイメント)。サーバー Pod が起動すると、これは KJAR サービスを Maven リポジトリーから取得します。Pod 上のサービスが更新したり、変更することはありません。Pod の毎回の再起動またはスケーリング時に、サーバーはリポジトリーからファイルを取得するため、デプロイメントをイミュータブルに保つには、それらのファイルが Maven リポジトリーで変更されないようにする必要があります。

実行中のイミュータブル KIE Server でサービスのデプロイまたはデプロイ解除を行うことはできません。Business Central または Business Central Monitoring を使用すると、モニター情報を表示できます。KIE Server は OpenShift 環境で 1 つの Pod のように実行します。必要に応じて、コンテナーベースの統合ワークフローを使用できます。

Business Central または Business Central Monitoring が同じ名前空間にデプロイされる場合、これはイミュータブル KIE Server を自動的に検出します。Business Central または Business Central Monitoring を使用してイミュータブル KIE Server でサービスの起動および停止 (デプロイではない) を実行でき、監視データを表示できます。

10.4.1. KJAR サービスでのイミュータブル KIE Server のテンプレート設定の開始

イミュータブル KIE Server を KJAR サービスからデプロイするには、以下のテンプレートファイルのいずれかを使用します。

  • rhpam711-kieserver-postgresql.yaml: 永続ストレージに PostgreSQL Pod を使用します。他のテンプレートを使用する特別な理由がない限り、このテンプレートを使用します。
  • rhpam711-kieserver-mysql.yaml: 永続ストレージに MySQL Pod を使用します。
  • rhpam711-kieserver-externaldb.yaml: 永続ストレージに外部データベースサーバーを使用します。

    重要

    外部データベースサーバーの標準 KIE Server イメージには、MySQL および PostgreSQL 外部データベースサーバー用のドライバーが含まれます。別のデータベースサーバーを使用する場合は、カスタムの KIE Server イメージをビルドする必要があります。手順は、「外部データベースのカスタム KIE Server 拡張イメージのビルド」 を参照してください。

手順

  1. Red Hat カスタマーポータルの Software Downloads ページから製品配信可能ファイル rhpam-7.11.0-openshift-templates.zip をダウンロードします。
  2. 必要なテンプレートファイルを展開します。
  3. 以下のいずれかの方法を使用してテンプレートのデプロイを開始します。

    • OpenShift Web UI を使用するには、OpenShift アプリケーションコンソールで Add to Project → Import YAML / JSON を選択してから <template-file-name>.yaml ファイルを選択または貼り付けます。Add Template ウィンドウで、Process the template が選択されていることを確認し、Continue をクリックします。
    • OpenShift コマンドラインコンソールを使用するには、以下のコマンドラインを準備します。

      oc new-app -f <template-path>/<template-file-name>.yaml -p KIE_SERVER_HTTPS_SECRET=kieserver-app-secret -p PARAMETER=value

      このコマンドラインで、以下のように変更します。

      • <template-path> を、ダウンロードしたテンプレートファイルのパスに置き換えます。
      • <template-file-name> は、テンプレート名に置き換えます。
      • 必要なパラメーターに設定するために必要な数だけ -p PARAMETER=value ペアを使用します。

次のステップ

テンプレートのパラメーターを設定します。「KJAR サービスからのイミュータブル KIE Server の必須パラメーターの設定」 の手順に従い、共通のパラメーターを設定します。テンプレートファイルを表示して、すべてのパラメーターの説明を確認します。

10.4.2. KJAR サービスからのイミュータブル KIE Server の必須パラメーターの設定

テンプレートをイミュータブル KIE Server を KJAR サービスからデプロイするように設定する際、いずれの場合でも以下のパラメーターを設定する必要があります。

前提条件

手順

  1. 以下のパラメーターを設定します。

    • Credentials secret (CREDENTIALS_SECRET): 「管理ユーザーのシークレットの作成」で作成される管理ユーザーの認証情報を含むシークレットの名前。
    • KIE Server Keystore Secret Name (KIE_SERVER_HTTPS_SECRET): 「KIE Server のシークレットの作成」で作成した KIE Server のシークレットの名前。
    • KIE Server Certificate Name (KIE_SERVER_HTTPS_NAME): 「KIE Server のシークレットの作成」で作成したキーストアの証明書名。
    • KIE Server Keystore Password (KIE_SERVER_HTTPS_PASSWORD): 「KIE Server のシークレットの作成」で作成したキーストアのパスワード。
    • アプリケーション名 (APPLICATION_NAME): OpenShift アプリケーションの名前。これは、Business Central Monitoring および KIE Server のデフォルト URL で使用されます。OpenShift はアプリケーション名を使用して、デプロイメント設定、サービス、ルート、ラベル、およびアーティファクトの個別のセットを作成します。同じテンプレートを同じプロジェクトで使用して複数のアプリケーションをデプロイすることもできますが、その場合はアプリケーション名を同じにすることはできません。また、アプリケーション名は、KIE Server が Business Central で参加するサーバーの設定 (サーバーテンプレート) または Business Central Monitoring の名前を決定するものとなります。複数の KIE Server をデプロイしている場合は、それぞれのサーバーに異なるアプリケーション名があることを確認する必要があります。
    • Maven リポジトリーの URL (MAVEN_REPO_URL): Maven リポジトリーの URL。KIE Server にデプロイするすべてのプロセス (KJAR ファイル) をこのリポジトリーにアップロードする必要があります。
    • Maven リポジトリーの ID (MAVEN_REPO_ID): Maven リポジトリーの ID。デフォルト値は repo-custom です。
    • Maven リポジトリーのユーザー名 (MAVEN_REPO_USERNAME): Maven リポジトリーのユーザー名。
    • Maven リポジトリーのパスワード (MAVEN_REPO_PASSWORD): Maven リポジトリーのパスワード。
    • KIE Server コンテナーのデプロイメント (KIE_SERVER_CONTAINER_DEPLOYMENT): デプロイメントが Maven リポジトリーからプルする必要のあるデシジョンサービス (KJAR ファイル) の識別情報。形式は <containerId>=<groupId>:<artifactId>:<version> になります。また、コンテナーのエイリアス名で指定する場合には、形式は <containerId>(<aliasId>)=<groupId>:<artifactId>:<version> になります。以下の例に示されるように、区切り文字 | を使用して 2 つ以上の KJAR ファイルを指定できます。

      containerId=groupId:artifactId:version|c2(alias2)=g2:a2:v2
    • KIE Server モード (KIE_SERVER_MODE): rhpam711-kieserver-*.yaml テンプレートで、デフォルト値は PRODUCTION です。PRODUCTION モードでは、SNAPSHOT バージョンの KJAR アーティファクトは KIE Server にデプロイできず、既存のコンテナーでアーティファクトのバージョンを変更することはできません。PRODUCTION モードで新規バージョンをデプロイするには、同じ KIE Server で新規コンテナーを作成します。SNAPSHOT バージョンをデプロイするか、または既存コンテナーのアーティファクトのバージョンを変更するには、このパラメーターを DEVELOPMENT に設定します。
    • ImageStream 名前空間 (IMAGE_STREAM_NAMESPACE): イメージストリームが利用可能な名前空間。OpenShift 環境でイメージストリームが利用可能な場合 (「イメージストリームとイメージレジストリーの可用性確認」 を参照) は、名前空間が openshift になります。イメージストリームファイルをインストールしている場合は、名前空間が OpenShift プロジェクトの名前になります。

次のステップ

必要な場合は、追加のパラメーターを設定します。

デプロイを完了するには、「KJAR サービスの使用によるイミュータブル KIE Server テンプレートデプロイの実行」 の手順に従います。

10.4.3. イミュータブル KIE Server のイメージストリーム namespace の設定

openshift ではない名前空間でイメージストリームを作成した場合は、テンプレートで名前空間を設定する必要があります。

すべてのイメージストリームが Red Hat OpenShift Container Platform 環境ですでに利用可能な場合は、この手順を省略できます。

前提条件

手順

「イメージストリームとイメージレジストリーの可用性確認」 の説明に従ってイメージストリームファイルをインストールした場合は、ImageStream Namespace (IMAGE_STREAM_NAMESPACE) パラメーターを OpenShift プロジェクトの名前に設定します。

10.4.4. KJAR サービスの使用によるイミュータブル KIE Server 用の Business Central または Business Central Monitoring インスタンスについての情報の設定

同じ名前空間で Business Central または Business Central Monitoring インスタンスから KIE Server への接続を有効にする必要がある場合は、Business Central または Business Central Monitoring インスタンスに関する情報を設定する必要があります。

Business Central または Business Central Monitoring インスタンスは、KIE Server と同じ認証情報シークレット (CREDENTIALS_SECRET) を使用して設定する必要があります。

前提条件

手順

  1. 以下のパラメーターを設定します。

    • Name of the Business Central service (BUSINESS_CENTRAL_SERVICE): Business Central または Business Central Monitoring の OpenShift サービス名。
  2. 以下の設定が、Business Central または Business Central Monitoring と同じ設定と同じ値に設定されていることを確認します。

    • Maven リポジトリーの URL (MAVEN_REPO_URL): サービスのデプロイに使用する必要のある外部 Maven リポジトリーの URL。
    • Maven リポジトリーのユーザー名 (MAVEN_REPO_USERNAME): Maven リポジトリーのユーザー名。
    • Maven リポジトリーのパスワード (MAVEN_REPO_PASSWORD): Maven リポジトリーのパスワード。

次のステップ

必要な場合は、追加のパラメーターを設定します。

デプロイを完了するには、「KJAR サービスの使用によるイミュータブル KIE Server テンプレートデプロイの実行」 の手順に従います。

10.4.5. KJAR サービスを使用したイミュータブル KIE Server の公開インターネットへの接続のない環境での Maven ミラーへのアクセスの設定

KJAR サービスを使用してテンプレートをイミュータブル KIE Server をデプロイするように設定する際に、OpenShift 環境に公開インターネットへの接続がない場合は、「オフラインで使用する Maven ミラーリポジトリーの用意」 に従って設定した Maven ミラーへのアクセスを設定する必要があります。

前提条件

手順

Maven ミラーへのアクセスを設定するには、以下のパラメーターを設定します。

  • Maven ミラー URL (MAVEN_MIRROR_URL): 「オフラインで使用する Maven ミラーリポジトリーの用意」 で設定した Maven ミラーリポジトリーの URL。この URL は、OpenShift 環境の Pod からアクセスできるようにする必要があります。
  • Maven mirror of (MAVEN_MIRROR_OF): ミラーから取得されるアーティファクトを定める値。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 リポジトリー (BUSINESS_CENTRAL_MAVEN_SERVICE) を設定する場合には、ミラーからこのリポジトリーのアーティファクトを除外するように MAVEN_MIRROR_OF を変更します (例: external:*,!repo-rhpamcentr)。
    • 両方のリポジトリーを設定している場合は、ミラーからこのリポジトリーを両方除外するように MAVEN_MIRROR_OF を変更します (例: external:*,!repo-rhpamcentr,!repo-custom)。repo-custom は、MAVEN_REPO_ID で設定した ID に置き換えます。

次のステップ

必要な場合は、追加のパラメーターを設定します。

デプロイを完了するには、「KJAR サービスの使用によるイミュータブル KIE Server テンプレートデプロイの実行」 の手順に従います。

10.4.6. KJAR サービスの使用によるイミュータブル KIE Server の RH-SSO 認証パラメーターの設定

RH-SSO 認証を使用する必要がある場合は、テンプレートを KJAR サービスを使用してイミュータブル KIE Server をデプロイするように設定する際に追加の設定を実行します。

重要

LDAP 認証および RH-SSO 認証を同じデプロイメントに設定しないようにしてください。

前提条件

  • Red Hat Process Automation Manager のレルムが RH-SSO 認証システムに作成されている。
  • Red Hat Process Automation Manager のユーザー名およびパスワードが RH-SSO 認証システムに作成されている。利用可能なロールの一覧については、14章Red Hat Process Automation Manager ロールおよびユーザー を参照してください。

    「管理ユーザーのシークレットの作成」 で説明されているように、管理ユーザーのシークレットで設定されたユーザー名およびパスワードを使用してユーザーを作成する必要があります。このユーザーには kie-server,rest-all,admin ロールが必要です。

  • クライアントが、デプロイしている Red Hat Process Automation Manager 環境のすべてのコンポーネントについて RH-SSO 認証システムに作成されている。クライアントのセットアップには、コンポーネントの URL が含まれます。環境のデプロイ後に URL を確認し、編集できます。または、Red Hat Process Automation Manager デプロイメントはクライアントを作成できます。ただし、このオプションの環境に対する制御の詳細度合はより低くなります。
  • 「KJAR サービスでのイミュータブル KIE Server のテンプレート設定の開始」 で説明されているテンプレートの設定を開始している。

手順

  1. 以下のパラメーターを設定します。

    • RH-SSO URL (SSO_URL): RH-SSO の URL。
    • RH-SSO Realm name (SSO_REALM): Red Hat Process Automation Manager の RH-SSO レルム。
    • RH-SSO が無効な SSL 証明書の検証 (SSO_DISABLE_SSL_CERTIFICATE_VALIDATION): RH-SSO インストールで有効な HTTPS 証明書を使用していない場合は true に設定します。
  2. 以下の手順のいずれかを実行します。

    1. RH-SSO で Red Hat Process Automation Manager のクライアントを作成した場合は、テンプレートで以下のパラメーターを設定します。

      • Business Central or Business Central Monitoring RH-SSO Client name (BUSINESS_CENTRAL_SSO_CLIENT): Business Central または Business Central Monitoring の RH-SSO クライアント名。
      • KIE Server RH-SSO クライアント名 (KIE_SERVER_SSO_CLIENT): KIE Server の RH-SSO クライアント名。
      • KIE Server RH-SSO クライアントのシークレット (KIE_SERVER_SSO_SECRET): KIE Server のクライアントに対して RH-SSO に設定するシークレットの文字列。
    2. RH-SSO で Red Hat Process Automation Manager のクライアントを作成するには、テンプレートで以下のパラメーターを設定します。

      • KIE Server RH-SSO クライアント名 (KIE_SERVER_SSO_CLIENT): KIE Server 向けに RH-SSO に作成するクライアント名。
      • KIE Server RH-SSO クライアントのシークレット (KIE_SERVER_SSO_SECRET): KIE Server のクライアントに対して RH-SSO に設定するシークレットの文字列。
      • RH-SSO Realm Admin Username (SSO_USERNAME) および RH-SSO Realm Admin Password (SSO_PASSWORD): Red Hat Process Automation Manager の RH-SSO レルムのレルム管理者ユーザーのユーザー名およびパスワード。必要なクライアントを作成するためにこのユーザー名およびパスワードを指定する必要があります。

次のステップ

必要な場合は、追加のパラメーターを設定します。

デプロイを完了するには、「KJAR サービスの使用によるイミュータブル KIE Server テンプレートデプロイの実行」 の手順に従います。

デプロイの完了後に、RH-SSO 認証システムで Red Hat Process Automation Manager のコンポーネントの URL が正しいことを確認してください。

10.4.7. KJAR サービスの使用によるイミュータブル KIE Server の LDAP 認証パラメーターの設定

LDAP 認証を使用する必要がある場合は、KJAR サービスからイミュータブル KIE Server をデプロイするようにテンプレートを設定するには、以下のように追加で設定を行います。

重要

LDAP 認証および RH-SSO 認証を同じデプロイメントに設定しないようにしてください。

前提条件

手順

  1. テンプレートの AUTH_LDAP* パラメーターを設定します。これらのパラメーターは、Red Hat JBoss EAP の LdapExtended ログインモジュールの設定に対応します。これらの設定に関する説明は、LdapExtended ログインモジュール を参照してください。

    注記

    LDAP フェイルオーバーを有効にする場合は、AUTH_LDAP_URL パラメーターに、2 つ以上の LDAP サーバーアドレスをスペースで区切って設定できます。

    LDAP サーバーでデプロイメントに必要なすべてのロールが定義されていない場合は、Red Hat Process Automation Manager ロールに LDAP グループをマップできます。LDAP のロールマッピングを有効にするには、以下のパラメーターを設定します。

    • RoleMapping rolesProperties ファイルパス (AUTH_ROLE_MAPPER_ROLES_PROPERTIES): /opt/eap/standalone/configuration/rolemapping/rolemapping.properties など、ロールのマッピングを定義するファイルの完全修飾パス名。このファイルを指定して、該当するすべてのデプロイメント設定でこのパスにマウントする必要があります。これを実行する方法については、「(任意) LDAP ロールマッピングファイルの指定」を参照してください。
    • RoleMapping replaceRole プロパティー (AUTH_ROLE_MAPPER_REPLACE_ROLE): true に設定した場合、マッピングしたロールは、LDAP サーバーに定義したロールに置き換えられます。false に設定した場合は、LDAP サーバーに定義したロールと、マッピングしたロールの両方がユーザーアプリケーションロールとして設定されます。デフォルトの設定は false です。

次のステップ

必要な場合は、追加のパラメーターを設定します。

デプロイを完了するには、「KJAR サービスの使用によるイミュータブル KIE Server テンプレートデプロイの実行」 の手順に従います。

10.4.8. KJAR サービスの使用によるイミュータブル KIE Server 用の外部データベースサーバーを使用するパラメーターの設定

rhpam711-kieserver-externaldb.yaml テンプレートを使用して KIE Server 用に外部データベースサーバーを使用する場合は、KJAR サービスからイミュータブル KIE Server をデプロイするようにテンプレートを設定するには、以下のように追加で設定を行います。

前提条件

手順

  1. 以下のパラメーターを設定します。

    • KIE Server External Database Driver (KIE_SERVER_EXTERNALDB_DRIVER): サーバーの種類に応じたサーバーのドライバー。

      • mysql
      • postgresql
      • mariadb
      • mssql
      • db2
      • oracle
      • sybase
    • KIE Server External Database User (KIE_SERVER_EXTERNALDB_USER) および KIE Server External Database Password (KIE_SERVER_EXTERNALDB_PWD): 外部データベースサーバーのユーザー名およびパスワード。
    • KIE Server External Database URL (KIE_SERVER_EXTERNALDB_URL): 外部データベースサーバーの JDBC URL。

      注記

      EntrepriseDB Postgres データベースサーバーを使用している場合は、jdbc:postgresql:// で始まる URL を使用し、jdbc:edb:// は使用しないでください。または、URL を設定せず、代わりにホストとポートのパラメーターを設定します。

    • KIE Server External Database Host (KIE_SERVER_EXTERNALDB_SERVICE_HOST) および KIE Server External Database Port (KIE_SERVER_EXTERNALDB_SERVICE_PORT): 外部データベースサーバーのホスト名およびポート番号。これらのパラメーターを、KIE_SERVER_EXTERNALDB_URL パラメーターを設定する代わりに設定できます。
    • KIE Server External Database Dialect (KIE_SERVER_EXTERNALDB_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 プロパティーHibernate SQL 方言 の表を参照してください。

    • KIE Server External Database name (KIE_SERVER_EXTERNALDB_DB): 外部データベースサーバーで使用するデータベース名。
    • JDBC Connection Checker class (KIE_SERVER_EXTERNALDB_CONNECTION_CHECKER): データベースサーバーの JDBC connection checker class の名前。この情報がないと、データベースサーバー接続は、データベースサーバーの再起動時などで接続が失われた後に復元することができません。
    • JDBC Exception Sorter class (KIE_SERVER_EXTERNALDB_EXCEPTION_SORTER): データベースサーバーの JDBC exception sorter class の名前。この情報がないと、データベースサーバー接続は、データベースサーバーの再起動時などで接続が失われた後に復元することができません。
  2. 「外部データベースのカスタム KIE Server 拡張イメージのビルド」 で説明されているように、外部データベースサーバーを使用するためにカスタムイメージを作成している場合は、以下のパラメーターを設定します。

    • Drivers Extension Image (EXTENSIONS_IMAGE): 拡張イメージの ImageStreamTag 定義 (例: jboss-kie-db2-extension-openshift-image:11.1.4.4)
    • Drivers ImageStream Namespace (EXTENSIONS_IMAGE_NAMESPACE): 拡張イメージのアップロード先の名前空間 (例: openshift またはプロジェクト名前空間)
  3. MySQL バージョン 8 の外部データベースサーバーを使用する場合は、mysql_native_password プラグインを有効にして、認証に使用してください。このプラグインに関する詳細は、MySQL 8.0 Reference ManualNative 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 テーブルを更新する必要があります。

次のステップ

必要な場合は、追加のパラメーターを設定します。

デプロイを完了するには、「KJAR サービスの使用によるイミュータブル KIE Server テンプレートデプロイの実行」 の手順に従います。

10.4.9. KJAR サービスの使用によるイミュータブル KIE Server からの Prometheus メトリクス収集の有効化

KIE Server デプロイメントを Prometheus を使用してメトリクスを収集し、保存するように設定する必要がある場合は、デプロイ時に KIE Server でこの機能のサポートを有効にします。

前提条件

手順

Prometheus メトリクス収集のサポートを有効にするには、Prometheus Server 拡張無効 (PROMETHEUS_SERVER_EXT_DISABLED) パラメーターを false に設定します。

次のステップ

必要な場合は、追加のパラメーターを設定します。

デプロイを完了するには、「KJAR サービスの使用によるイミュータブル KIE Server テンプレートデプロイの実行」 の手順に従います。

Prometheus メトリクス収集の設定方法は、KIE Server の管理とモニターリング を参照してください。

10.4.10. KJAR サービスの使用によるイミュータブル KIE Server テンプレートデプロイの実行

OpenShift Web UI またはコマンドラインで必要なすべてのパラメーターを設定した後に、テンプレートのデプロイを実行します。

手順

使用している方法に応じて、以下の手順を実行します。

  • OpenShift Web UI の場合は Create をクリックします。

    • This will create resources that may have security or project behavior implications メッセージが表示された場合は、Create Anyway をクリックします。
  • コマンドラインに入力して、Enter キーを押します。

次のステップ

環境の要件に応じて、任意で 13章環境をデプロイした後の任意の手順 で説明されている手順を完了します。