Red Hat OpenShift Container Platform への Red Hat Process Automation Manager のデプロイ
概要
はじめに
開発者またはシステム管理者は、オーサリング環境、管理サーバー環境、イミュータブルサーバー環境、その他のサポートされる環境など、Red Hat OpenShift Container Platform でさまざまな Red Hat Process Automation Manager 環境をデプロイできます。
多様性を受け入れるオープンソースの強化
Red Hat では、コード、ドキュメント、Web プロパティーにおける配慮に欠ける用語の置き換えに取り組んでいます。まずは、マスター (master)、スレーブ (slave)、ブラックリスト (blacklist)、ホワイトリスト (whitelist) の 4 つの用語の置き換えから始めます。この取り組みにより、これらの変更は今後の複数のリリースに対して段階的に実施されます。詳細は、弊社の CTO である Chris Wright のメッセージ を参照してください。
パート I. Operator を使用した Red Hat OpenShift Container Platform 4 への Red Hat Process Automation Manager 環境のデプロイメント
システムエンジニアは、Red Hat OpenShift Container Platform 4 に Red Hat Process Automation Manager 環境をデプロイして、サービス、プロセスアプリケーション、およびその他のビジネスアセットを開発または実行するインフラストラクチャーを提供します。OpenShift Operator を使用して、構造化された YAML ファイルに定義された環境をデプロイして、必要に応じてこの環境を維持して変更できます。
前提条件
- Red Hat OpenShift Container Platform 4 の環境を利用できる。現在のリリースがサポートする OpenShift Container Platform の正確なバージョンは、Red Hat Process Automation Manager 7 でサポートされる設定 を参照してください。
- デプロイメントする OpenShift プロジェクトが作成されている。
- OpenShift Web コンソールを使用してプロジェクトにログインしている。
以下のリソースが OpenShift クラスターで利用できる。アプリケーションの負荷によっては、許容可能なパフォーマンスのために、より多くのリソース割り当てが必要になることがあります。
- オーサリング環境の場合は、Business Central Pod 用に 4 ギガバイトのメモリーと 2 つの仮想 CPU コアが必要です。高可用性のデプロイメントでは、レプリカごとにこれらのリソースが必要で、2 つのレプリカがデフォルトで作成されます。
- 実稼働環境またはイミュータブルな環境の場合は、Business Central Monitoring Pod の各レプリカに 2 ギガバイトのメモリーと 1 つの仮想 CPU コアが指定されます。
- 各 KIE Server Pod の各レプリカについて、2 ギガバイトのメモリーと 1 つの仮想 CPU コア。
- Smart Router Pod の各レプリカについて、1 ギガバイトのメモリーと半分の仮想 CPU コア。
高可用性オーサリングのデプロイメントでは、MySQL、Red Hat AMQ、および Red Hat Data Grid の Pod に、設定されたデフォルトに応じて追加のリソースが必要になります。
注記MaxMetaspaceSize
のデフォルト値は以下の通りです。- Business Central イメージ: 1024m
- KIE Server イメージ: 512m
- その他のイメージ: 256m
動的永続ボリューム (PV) のプロビジョニングが有効になっている。または、動的 PV プロビジョニングが有効でない場合は、十分な永続ボリュームが利用できる状態でなければなりません。デフォルトでは、デプロイされるコンポーネントには以下の PV サイズが必要です。
- それぞれの KIE Server デプロイメントで、このデータベースに 1 つの 1Gi PV が必要になります。データベース PV のサイズは変更できます。複数の KIE Server をデプロイでき、それぞれに異なるデータベース PV が必要になります。この要件は、外部データベースサーバーを使用する場合には適用されません。
- デフォルトでは、Business Central は 1 Gi 分の PV が必要です。Business Central 永続ストレージの PV サイズを変更できます。
- Business Central Monitoring には、1 つの 64Mi PV が必要です。
- Smart Router には、1 つの 64Mi PV が必要です。
-
高可用性オーサリング環境は Business Central Monitoring の Pod がある環境をデプロイする場合、OpenShift 環境は
ReadWriteMany
モードで永続ボリュームをサポートします。ご使用の環境がこのモードに対応していない場合は、NFS を使用してボリュームをプロビジョニングできます。OpenShift のパブリックおよび専用クラウドでのアクセスモードのサポートに関する情報は、Red Hat OpenShift Container Platform ドキュメントの アクセスモード を参照してください。
第1章 Red Hat OpenShift Container Platform における Red Hat Process Automation Manager の概要
Red Hat Process Automation Manager は、Red Hat OpenShift Container Platform 環境にデプロイすることができます。
この場合に、Red Hat Process Automation Manager のコンポーネントは、別の OpenShift Pod としてデプロイされます。各 Pod のスケールアップおよびスケールダウンを個別に行い、特定のコンポーネントに必要な数だけコンテナーを提供できます。標準の OpenShift の手法を使用して Pod を管理し、負荷を分散できます。
以下の Red Hat Process Automation Manager の主要コンポーネントが OpenShift で利用できます。
KIE Server (実行サーバー (Execution Server) とも呼ばれる) は、デシジョンサービス、プロセスアプリケーション、およびその他のデプロイ可能なアセット (サービス と総称される) を実行するインフラストラクチャー要素です。サービスのすべてのロジックは実行サーバーで実行されます。
通常、KIE Server にはデータベースサーバーが必要です。別の OpenShift Pod にデータベースサーバーを提供したり、別のデータベースサーバーを使用するように OpenShift で実行サーバーを設定したりできます。また、KIE Server では H2 データベースを使用できますが、使用する場合は、Pod をスケーリングできません。
一部のテンプレートでは、KIE Server Pod をスケールアップして、同一または異なるホストで実行するコピーを必要な数だけ提供できます。Pod をスケールアップまたはスケールダウンすると、そのコピーはすべて同じデータベースサーバーを使用し、同じサービスを実行します。OpenShift は負荷分散を提供しているため、要求はどの Pod でも処理できます。
KIE Server Pod を個別にデプロイし、サービスの異なるグループを実行することができます。この Pod もスケールアップやスケールダウンが可能です。複製された個別の KIE Server Pod を必要な数だけ設定することができます。
Business Central は、オーサリングサービスに対する Web ベースのインタラクティブ環境です。また、管理および監視コンソールも提供します。Business Central を使用してサービスを開発し、それらを KIE Server にデプロイできます。また、Business Central を使用してプロセスの実行を監視することもできます。
Business Central は一元化アプリケーションです。複数の Pod を実行し、同じデータを共有する高可用性用に設定できます。
Business Central には開発するサービスのソースを保管する Git リポジトリーが含まれます。また、ビルトインの Maven リポジトリーも含まれます。設定に応じて、Business Central はコンパイルしたサービス (KJAR ファイル) をビルドイン Maven リポジトリーに配置できます (設定した場合は外部 Maven リポジトリーにも可能)。
- Business Central Monitoring は Web ベースの管理および監視コンソールです。KIE Server へのサービスのデプロイメントを管理し、監視情報を提供しますが、オーサリング機能は含まれません。このコンポーネントを使用して、ステージング環境および実稼働環境を管理できます。
- Smart Router は、KIE Server と、KIE Server と対話するその他のコンポーネントとの間の任意のレイヤーです。環境に、複数の KIE Server で実行するサービスが多数含まれる場合、Smart Router はすべてのクライアントアプリケーションに対応するエンドポイントを 1 つ提供します。クライアントアプリケーションは、サービスを要求する REST API 呼び出しを実行できます。Smart Router は、特定の要求を処理できる KIE Server を自動的に呼び出します。
OpenShift 内でさまざまな環境設定にこのコンポーネントおよびその他のコンポーネントを配置できます。
1.1. オーサリング環境のアーキテクチャー
Red Hat Process Automation Manager では、Business Central のコンポーネントに、オーサリングサービス用の Web ベースの対話型ユーザーインターフェイスが含まれています。KIE Server のコンポーネントでこれらのサービスを実行します。
KIE Server は、データベースサーバーを使用して、プロセスサービスの状態を保存します。
Business Central を使用して、KIE Server 上でサービスをデプロイすることもできます。複数の KIE Server を使用して異なるサービスを実行して同じ Business Central から複数のサーバーを制御できます。
単一のオーサリング環境
単一のオーサリング環境では、Business Central のインスタンスが 1 つだけ実行されます。複数のユーザーが同時に Web インターフェイスにアクセスできますが、パフォーマンスが制限される可能性があり、フェイルオーバー機能はありません。
Business Central には、開発したサービスの各種ビルドバージョン (KJAR ファイル/アーティファクト) を格納する、ビルトイン Maven リポジトリーが含まれています。継続的インテグレーション/継続的デプロイメント (CICD) ツールを使用して、リポジトリーからこのようなアーティファクトを取得し、必要に応じて移動できます。
Business Central は、ビルトインの Git リポジトリーにソースコードを保存します (.niogit
ディレクトリーに保存)。組み込まれたインデックスメカニズムを使用して、サービス内でアセットをインデックス化します。
Business Central では、Maven リポジトリーと Git リポジトリーに永続ストレージを使用します。
単一のオーサリング環境には、デフォルトで KIE Server インスタンスが 1 台含まれています。この KIE Server インスタンスは、ビルトインの H2 データベースエンジンを使用して、プロセスサービスの状態を保存します。
単一のオーサリング環境では、コントローラーストラテジー を使用できます。Business Central には、KIE Server を管理できるコンポーネントである コントローラー が含まれています。Business Central に接続するように KIE Server を設定した場合、KIE Server は REST API を使用してコントローラーに接続します。この接続を使用すると、WebSocket が永続的に解放されます。コントローラーストラテジーを使用する OpenShift デプロイメントでは、KIE Server インスタンスはそれぞれ、Business Central コントローラーに接続するように初期設定されます。
Business Central ユーザーインターフェイスを使用して KIE Server でサービスをデプロイしたり管理したりする場合、KIE Server はコントローラー接続の WebSocket を使用して要求を受け取ります。サービスをデプロイする場合は、KIE Server が Business Central の一部である Maven リポジトリーから必要なアーティファクトを要求します。
クライアントアプリケーションは、REST API 経由で、KIE Server で実行されるサービスを使用します。
図1.1 単一のオーサリング環境のアーキテクチャー図
KIE Server のクラスタリングと複数の KIE Server の使用
KIE Server Pod をスケーリングして、KIE Server のクラスター環境を実行できます。KIE Server をスケーリングするには、ビルトインの H2 データベースエンジンではなく、別の Pod でデータベースサーバーを使用するか、外部のデータベースサーバーを使用する必要があります。
クラスターデプロイメントでは、複数の KIE Server インスタンスが同じサービスを実行します。このようなサーバーは、Business Central コントローラーから同じ要求を受信できるように、同じサーバー ID を使用して Business Central コントローラーに接続します。Red Hat OpenShift Container Platform ではサーバー間の負荷分散が可能です。同じクライアントからの要求が別のインスタンスで処理される可能性があるため、クラスター化された KIE Server インスタンスで実行するデシジョンサービスや Red Hat build of OptaPlanner のサービスは、ステートレスでなければなりません。
独立した KIE Server を複数デプロイして、異なるサービスを実行することも可能です。このような場合、サーバーは異なるサーバー ID 値を指定して Business Central コントローラーに接続します。各サーバーにサービスをデプロイする場合は、Business Central UI を使用できます。
Smart Router
任意の Smart Router コンポーネントは、クライアントアプリケーションと KIE Server インスタンスの間にレイヤーを提供します。独立した KIE Server インスタンスを複数使用する場合に役立ちます。
クライアントアプリケーションは、異なる KIE Server インスタンスで実行されるサービスを使用できますが、常に Smart Router に接続されます。Smart Router は自動的に、必要なサービスを実行する KIE Server インスタンスに要求を渡します。また、Smart Router では、サービスのバージョン管理も可能で、追加の負荷分散レイヤーも提供されます。
高可用性オーサリング環境
高可用性 (HA) のオーサリング環境では Business Central Pod がスケーリングされるため、複数の Business Central インスタンスが実行されます。Red Hat OpenShift Container Platform は、ユーザー要求の負荷分散を提供します。この環境は、複数のユーザーに最適なパフォーマンスを提供し、フェイルオーバーをサポートします。
Business Central の各インスタンスには、構築されたアーティファクト用の Maven リポジトリーが含まれており、ソースコードには .niogit
の Git リポジトリーを使用します。このインスタンスは、リポジトリー用に共有の永続ストレージを使用します。このストレージには、ReadWriteMany
アクセス権のある永続ボリュームが必要です。
Red Hat DataGrid のインスタンスは、Business Central で開発されたすべてのプロジェクトとアセットをインデックス化します。
Red Hat AMQ インスタンスは、Business Central のすべてのインスタンス間に、Java CDI メッセージを伝播します。たとえば、新規プロジェクトが作成された場合、アセットがインスタンスの 1 つでロックまたは変更された場合に、その情報が即座に他の全インスタンスで反映されます。
コントローラーストラテジーは、クラスターデプロイメントには適していません。OpenShift デプロイメントの場合は、高可用性の Business Central はOpenShift スタートアップストラテジー を使用して KIE Server を管理する必要があります。
KIE Server デプロイメント (スケーリング可能) ごとに、現在の状態を反映する ConfigMap を作成します。Business Central は、ConfigMap を読み込むことで全 KIE Server を検出します。
ユーザーが KIE Server 設定 (例: サービスのデプロイまたはアンデプロイ) で変更を要求した場合に、Business Central は KIE Server への接続を開始し、REST API 要求を送信します。KIE Server は、すべてのインスタンスが再デプロイされ、新規設定が反映されるように、ConfigMap を変更して新しい設定の状態を反映してから、その再デプロイをトリガーします。ConfigMaps の詳細は、KIE 設定および ConfigMaps を参照してください。
OpenShift 環境で、独立した KIE Server を複数デプロイできます。KIE Server にはそれぞれ、必要な設定が指定された個別の ConfigMap が設定されます。KIE Server は個別にスケーリングできます。
OpenShift デプロイメントに、Smart Router を追加できます。
図1.2 高可用性オーサリング環境のアーキテクチャー図
第2章 OpenShift 環境に Red Hat Process Automation Manager をデプロイする準備
OpenShift 環境に Red Hat Process Automation Manager をデプロイする前に、手順をいくつか完了する必要があります。追加イメージ (たとえば、プロセスの新しいバージョン、または別のプロセス) をデプロイする場合は、この手順を繰り返す必要はありません。
トライアル環境をデプロイする場合は、「Red Hat レジストリーに対してお使いの環境が認証されていることを確認する方法」 で説明されている手順を完了し、その他の準備手順は行わないでください。
2.1. Red Hat レジストリーに対してお使いの環境が認証されていることを確認する方法
Red Hat OpenShift Container Platform の Red Hat Process Automation Manager コンポーネントをデプロイするには、OpenShift が Red Hat レジストリーから適切なイメージをダウンロードできることを確認します。
OpenShift は、お使いのサービスアカウントのユーザー名とパスワードを使用して Red Hat レジストリーへの認証が行われるように設定する必要があります。この設定は namespace ごとに固有であり、Operator が機能している場合は、openshift
namespace に対する設定がすでに完了しています。
ただし、Red Hat Process Automation Manager のイメージストリームが openshift
名前空間にない場合や、Red Hat Process Automation Manager を新規バージョンに自動更新するように設定されている場合、Operator はこのプロジェクトの名前空間にイメージをダウンロードする必要があります。対象の名前空間の認証設定を完了する必要があります。
手順
-
oc
コマンドで OpenShift にログインして、プロジェクトがアクティブであることを確認します。 - Registry Service Accounts for Shared Environments で説明されている手順を実行します。Red Hat カスタマーポータルにログインして、このドキュメントにアクセスし、レジストリーサービスアカウントを作成する手順を実行します。
- OpenShift Secret タブを選択し、Download secret のリンクをクリックして、YAML シークレットファイルをダウンロードします。
-
ダウンロードしたファイルを確認して、
name:
エントリーに記載の名前をメモします。 以下のコマンドを実行します。
Copy to Clipboard Copied! Toggle word wrap Toggle overflow oc create -f <file_name>.yaml oc secrets link default <secret_name> --for=pull oc secrets link builder <secret_name> --for=pull
oc create -f <file_name>.yaml oc secrets link default <secret_name> --for=pull oc secrets link builder <secret_name> --for=pull
<file_name>
はダウンロードしたファイルに、<secret_name>
はファイルのname:
のエントリーに記載されている名前に置き換えてください。
2.2. KIE Server のシークレットの作成
OpenShift は シークレット と呼ばれるオブジェクトを使用してパスワードやキーストアなどの機密情報を保持します。OpenShift のシークレットに関する詳細は、Red hat OpenShift Container Platform ドキュメントの What is a secret を参照してください。
KIE Server では HTTPS でアクセスできるように SSL 証明書を使用します。このデプロイメントでは、サンプルシークレットを自動的に作成できます。ただし、実稼働環境では、KIE Server の SSL 証明書を作成し、これをシークレットとして OpenShift 環境に提供する必要があります。
手順
KIE Server の SSL 暗号化向けの秘密鍵と公開鍵で
keystore.jks
という名前の SSL キーストアを生成します。キーストアの作成と証明書の使用の詳細は、How to Configure Server Security を参照してください。注記実稼働環境で、想定されている KIE Server の URL と一致する、有効な署名済み証明書を生成します。
-
証明書の名前をメモします。Red Hat Process Automation Manager 設定におけるこのデフォルト名は
jboss
です。 -
キーストアファイルのパスワードをメモします。Red Hat Process Automation Manager 設定におけるこのデフォルトの値は
mykeystorepass
です。 oc
コマンドを使用して、新しいキーストアファイルからシークレットkieserver-app-secret
を生成します。Copy to Clipboard Copied! Toggle word wrap Toggle overflow oc create secret generic kieserver-app-secret --from-file=keystore.jks
$ oc create secret generic kieserver-app-secret --from-file=keystore.jks
2.3. Business Central へのシークレットの作成
HTTPS アクセスを提供するために、Business Central では SSL 証明書を使用します。このデプロイメントでは、サンプルシークレットを自動的に作成できます。ただし、実稼働環境では、Business Central の SSL 証明書を作成し、これをシークレットとして OpenShift 環境に提供する必要があります。
Business Central と KIE Server に同じ証明書およびキーストアを使用しないでください。
手順
KIE Server の SSL 暗号化向けの秘密鍵と公開鍵で
keystore.jks
という名前の SSL キーストアを生成します。キーストアの作成と証明書の使用の詳細は、How to Configure Server Security を参照してください。注記実稼働環境で、Business Central の予想される URL と一致する有効な署名済み証明書を生成します。
-
証明書の名前をメモします。Red Hat Process Automation Manager 設定におけるこのデフォルト名は
jboss
です。 -
キーストアファイルのパスワードをメモします。Red Hat Process Automation Manager 設定におけるこのデフォルトの値は
mykeystorepass
です。 oc
コマンドを使用して、新しいキーストアファイルからシークレットbusinesscentral-app-secret
を生成します。Copy to Clipboard Copied! Toggle word wrap Toggle overflow oc create secret generic businesscentral-app-secret --from-file=keystore.jks
$ oc create secret generic businesscentral-app-secret --from-file=keystore.jks
2.4. AMQ ブローカー接続のシークレットの作成
KIE Server を AMQ ブローカーに接続し、AMQ ブローカー接続に SSL を使用する場合は、接続の SSL 証明書を作成し、これを OpenShift 環境にシークレットとして指定する必要があります。
手順
KIE Server の SSL 暗号化向けの秘密鍵と公開鍵で
keystore.jks
という名前の SSL キーストアを生成します。キーストアの作成と証明書の使用の詳細は、How to Configure Server Security を参照してください。注記実稼働環境で、AMQ ブローカー接続の予想される URL に一致する有効な署名済みの証明書を生成します。
-
証明書の名前をメモします。Red Hat Process Automation Manager 設定におけるこのデフォルト名は
jboss
です。 -
キーストアファイルのパスワードをメモします。Red Hat Process Automation Manager 設定におけるこのデフォルトの値は
mykeystorepass
です。 oc
コマンドを使用して、新しいキーストアファイルからbroker-app-secret
という名前のシークレットを生成します。Copy to Clipboard Copied! Toggle word wrap Toggle overflow oc create secret generic broker-app-secret --from-file=keystore.jks
$ oc create secret generic broker-app-secret --from-file=keystore.jks
2.5. Smart Router のシークレットの作成
HTTPS アクセスを提供するために、Smart Router では SSL 証明書を使用します。このデプロイメントでは、サンプルシークレットを自動的に作成できます。ただし、実稼働環境では、Smart Router の SSL 証明書を作成し、これをシークレットとして OpenShift 環境に提供する必要があります。
Smart Router の証明書およびキーストアに、KIE Server または Business Central で使用されているものと同じものを指定しないでください。
手順
KIE Server の SSL 暗号化向けの秘密鍵と公開鍵で
keystore.jks
という名前の SSL キーストアを生成します。キーストアの作成と証明書の使用の詳細は、How to Configure Server Security を参照してください。注記実稼働環境で、Smart Router の予想される URL と一致する有効な署名済み証明書を生成します。
-
証明書の名前をメモします。Red Hat Process Automation Manager 設定におけるこのデフォルト名は
jboss
です。 -
キーストアファイルのパスワードをメモします。Red Hat Process Automation Manager 設定におけるこのデフォルトの値は
mykeystorepass
です。 oc
コマンドを使用して、新しいキーストアファイルからシークレットsmartrouter-app-secret
を生成します。Copy to Clipboard Copied! Toggle word wrap Toggle overflow oc create secret generic smartrouter-app-secret --from-file=keystore.jks
$ oc create secret generic smartrouter-app-secret --from-file=keystore.jks
2.6. 外部データベースのカスタム KIE Server 拡張イメージのビルド
KIE Server に外部データベースサーバーを使用し、そのデータベースサーバーが MySQL または PostgreSQL 以外の場合は、環境をデプロイする前にこのサーバー用のドライバーを使用するカスタムの KIE Server 拡張イメージをビルドする必要があります。
このビルド手順の手順を完了して、次のデータベースサーバーのいずれかにドライバーを提供します。
- Microsoft SQL Server
- IBM DB2
- Oracle データベース
- Sybase
必要に応じて、この手順を使用して、以下のデータベースサーバーのいずれかに対応する新しいバージョンのドライバーをビルドできます。
- MySQL
- MariaDB
- PostgreSQL
データベースサーバーのサポートされるバージョンは、Red Hat Process Automation Manager 7 でサポートされる設定 を参照してください。
ビルド手順では、既存の KIE Server イメージを拡張するカスタム拡張イメージを作成します。このカスタム拡張イメージは OpenShift 環境にインポートしてから、EXTENSIONS_IMAGE
パラメーターで参照する必要があります。
前提条件
-
oc
コマンドを使用して OpenShift 環境にログインしている。OpenShift ユーザーにはregistry-viewer
ロールが必要です。registry-viewer
ロールの割り当てに関する詳細は、OpenShift Container Platform 4.10 ドキュメント の「レジストリー」の章の「レジストリーへのアクセス」セクションを参照してください。 - Oracle Database、IBM DB2、または Sybase の場合は、データベースサーバーベンダーから JDBC ドライバーをダウンロードしている。
以下の必要なソフトウェアをインストールしている。
- Docker: インストール手順は、Get Docker を参照してください。
- CEKit バージョン 3.11.0 以降: インストール手順は、Installation を参照してください。
CEKit の以下のライブラリーおよび拡張機能。詳細は、Dependencies を参照してください。
-
docker
:python3-docker
パッケージまたは同様のパッケージで提供される。 -
docker-squash
:python3-docker-squash
または同様のパッケージで提供される。 -
behave
:python3-behave
パッケージまたは同様のパッケージで提供される。
-
手順
- IBM DB2、Oracle Database、または Sybase の場合、JDBC ドライバー JAR ファイルをローカルディレクトリーに指定します。
-
Red Hat カスタマーポータルの Software Downloads ページから製品配信可能ファイル
rhpam-7.13.5-openshift-templates.zip
をダウンロードします。 -
ファイルを展開し、コマンドラインを使用して、展開したファイルの
contrib/jdbc/cekit
ディレクトリーに移動します。このディレクトリーには、カスタムビルドのソースコードが含まれます。 データベースサーバーのタイプに応じて、以下のコマンドのいずれかを入力します。
Microsoft SQL Server の場合:
Copy to Clipboard Copied! Toggle word wrap Toggle overflow make mssql
make mssql
MySQL の場合:
Copy to Clipboard Copied! Toggle word wrap Toggle overflow make mysql
make mysql
PostgreSQL の場合:
Copy to Clipboard Copied! Toggle word wrap Toggle overflow make postgresql
make postgresql
MariaDB の場合:
Copy to Clipboard Copied! Toggle word wrap Toggle overflow make mariadb
make mariadb
IBM DB2 の場合:
Copy to Clipboard Copied! Toggle word wrap Toggle overflow make db2 artifact=/tmp/db2jcc4.jar version=10.2
make db2 artifact=/tmp/db2jcc4.jar version=10.2
このコマンドで、
/tmp/db2jcc4.jar
を IBM DB2 ドライバーのパス名に置き換え、10.2
をドライバーのバージョンに置き換えます。Oracle Database の場合:
Copy to Clipboard Copied! Toggle word wrap Toggle overflow make oracle artifact=/tmp/ojdbc7.jar version=7.0
make oracle artifact=/tmp/ojdbc7.jar version=7.0
このコマンドで、
/tmp/ojdbc7.jar
を Oracle Database ドライバーのパス名に置き換え、7.0
をドライバーのバージョンに置き換えます。Sybase の場合:
Copy to Clipboard Copied! Toggle word wrap Toggle overflow make build sybase artifact=/tmp/jconn4-16.0_PL05.jar version=16.0_PL05
make build sybase artifact=/tmp/jconn4-16.0_PL05.jar version=16.0_PL05
このコマンドで、
/tmp/jconn4-16.0_PL05.jar
をダウンロードされた Sybase ドライバーのパス名に置き換え、16.0_PL05
をドライバーのバージョンに置き換えます。または、Sybase ドライバーのドライバークラスまたはドライバーの XA クラスを更新する必要がある場合は、以下のコマンドに
DRIVER_CLASS
変数またはDRIVER_XA_CLASS
変数を設定してください。Copy to Clipboard Copied! Toggle word wrap Toggle overflow export DRIVER_CLASS=another.class.Sybase && make sybase artifact=/tmp/jconn4-16.0_PL05.jar version=16.0_PL05
export DRIVER_CLASS=another.class.Sybase && make sybase artifact=/tmp/jconn4-16.0_PL05.jar version=16.0_PL05
以下のコマンドを入力して、ローカルで利用可能な Docker イメージをリスト表示します。
Copy to Clipboard Copied! Toggle word wrap Toggle overflow docker images
docker images
ビルドされたイメージの名前 (例:
jboss-kie-db2-extension-openshift-image
) およびイメージのバージョンタグ (11.1.4.4
など (latest
タグではない)) をメモします。-
OpenShift 環境のレジストリーに直接アクセスし、イメージをレジストリーにプッシュします。ユーザーパーミッションに応じて、イメージを
openshift
名前空間またはプロジェクト名前空間にプッシュできます。レジストリーへのアクセスおよびイメージのプッシュの手順は、Red Hat OpenShift Container Platform 製品ドキュメントの クラスターからレジストリーへの直接アクセス を参照してください。
2.7. Git フックの準備
オーサリング環境では、Business Central のプロジェクトのソースコードが変更された場合に Git フックを使用してカスタムの操作を実行できます。Git フックは一般的に、アップストリームのリポジトリーを操作する時に使用します。
Git フックが SSH 認証を使用してアップストリームのリポジトリーを操作できるようにするには、リポジトリーに、認証用の秘密鍵と既知のホストファイルも指定する必要があります。
Git フックを設定しない場合は、この手順を飛ばして次に進んでください。
手順
Git フックファイルを作成します。方法は、Git hooks reference documentation を参照してください。
注記Business Central では
pre-commit
スクリプトはサポートされません。post-commit
スクリプトを使用してください。設定マップ (ConfigMap)、またはこれらのファイルを含む永続ボリュームを作成します。ConfigMaps の詳細は、KIE 設定および ConfigMaps を参照してください。
Git フックが 1 つまたは複数の固定スクリプトファイルで構成される場合は、
oc
コマンドを使用して設定アップを作成します。以下に例を示します。Copy to Clipboard Copied! Toggle word wrap Toggle overflow oc create configmap git-hooks --from-file=post-commit=post-commit
oc create configmap git-hooks --from-file=post-commit=post-commit
Git フックはロングファイルで構成されるか、実行可能ファイルや JAR ファイルなどのバイナリーに依存する場合は、永続ボリュームを使用します。永続ボリュームと永続ボリューム要求を作成し、ボリュームと要求を関連付けて、このファイルをボリュームに転送する必要があります。
永続ボリュームおよび永続ボリューム要求の手順は、Red Hat OpenShift Container Platform ドキュメントの Storage を参照してください。永続ボリュームへのファイルのコピー方法は、Transferring files in and out of containers を参照してください。
Git フックスクリプトが SSH 認証を使用してアップストリームのリポジトリーと対話する必要がある場合は、必要なファイルでシークレットを作成します。
-
リポジトリーに格納されている公開鍵に一致する秘密鍵を使用して、
id_rsa
ファイルを作成します。 -
リポジトリーの正しい名前、アドレス、公開鍵で
known_hosts
ファイルを作成します。 以下のように
oc
コマンドを使用して、2 つのファイルでシークレットを作成します。Copy to Clipboard Copied! Toggle word wrap Toggle overflow oc create secret git-hooks-secret --from-file=id_rsa=id_rsa --from-file=known_hosts=known_hosts
oc create secret git-hooks-secret --from-file=id_rsa=id_rsa --from-file=known_hosts=known_hosts
注記デプロイメントでこのシークレットを使用する場合は、
id_rsa
とknown_hosts
ファイルを、Business Central の Pod にある/home/jboss/.ssh
ディレクトリーにマウントします。
-
リポジトリーに格納されている公開鍵に一致する秘密鍵を使用して、
2.8. NFS を使用した ReadWriteMany
アクセスモードの永続ボリュームのプロビジョニング
Business Central Monitoring または高可用性 Business Central をデプロイする場合、ご使用の環境は ReadWriteMany
アクセスモードで永続ボリュームをプロビジョニングする必要があります。
お使いの設定で ReadWriteMany
アクセスモードの永続ボリュームのプロビジョニングが必要であるものの、環境がそのようなプロビジョニングに対応しない場合は、NFS を使用してボリュームをプロビジョニングします。それ以外の場合、この手順は省略します。
手順
NFS サーバーをデプロイし、NFS を使用して永続ボリュームをプロビジョニングします。NFS を使用して永続ボリュームをプロビジョニングする方法の詳細は、OpenShift Container Platform Storage ガイドの "Persistent storage using NFS" のセクションを参照してください。
2.9. S2I ビルドに使用する Business Central からのソースコードのデプロイメント
Source-to-Image (S2I) プロセスを使用してイミュータブル KIE Server を作成する予定がある場合は、Git リポジトリーにサービスのソースコードを提供する必要があります。オーサリングサービスに Business Central を使用する場合は、サービスのソースコードをデプロイメントして、S2I ビルドを使用する別の Git リポジトリー (GitHub や GitLab のオンプレミスインストールなど) に配置できます。
S2I プロセスを使用する予定がない場合や、サービスのオーサリングに Business Central を使用していない場合は、この手順を飛ばして次に進んでください。
手順
以下のコマンドを使用してソースコードをデプロイメントします。
Copy to Clipboard Copied! Toggle word wrap Toggle overflow git clone https://<business-central-host>:443/git/<MySpace>/<MyProject>
git clone https://<business-central-host>:443/git/<MySpace>/<MyProject>
このコマンドでは、以下の変数を置き換えてください。
-
<business-central-host>
: Business Central を実行しているホスト -
<MySpace>
: プロジェクトが配置された Business Central 領域の名前 -
<MyProject>
: プロジェクトの名前
注記Business Central でプロジェクトの完全な URL を表示するには、Menu → Design → <MyProject> → Settings の順にクリックします。
注記HTTPS 通信に自己署名証明書を使用している場合にこのコマンドを実行すると、エラーメッセージ
SSL certificate problem
が表示され失敗する可能性があります。このような場合は、GIT_SSL_NO_VERIFY
環境変数を使用するなど、git
で SSL 証明書の検証を無効にします。Copy to Clipboard Copied! Toggle word wrap Toggle overflow env GIT_SSL_NO_VERIFY=true git clone https://<business-central-host>:443/git/<MySpace>/<MyProject>
env GIT_SSL_NO_VERIFY=true git clone https://<business-central-host>:443/git/<MySpace>/<MyProject>
-
- S2I ビルドの別の Git リポジトリー (GitHub または GitLab など) へのソースコードのアップロード
2.10. ネットワークが制限された環境でのデプロイメントの準備
公開インターネットに接続されていないネットワークが制限された環境に Red Hat Process Automation Manager をデプロイできます。ネットワークが制限された環境での Operator のデプロイメント方法は、Red Hat OpenShift Container Platform ドキュメントの Using Operator Lifecycle Manager on restricted networks を参照してください。
Red Hat Process Automation Manager 7.13 では、制限付きネットワークへのデプロイはテクノロジープレビュー専用です。Red Hat のテクノロジープレビュー機能のサポートの詳細は、テクノロジープレビュー機能のサポート範囲 を参照してください。
公開インターネットへの送信アクセスが設定されていないデプロイメントを使用するには、必要なすべてのアーティファクトのミラーが含まれる Maven リポジトリーを用意する必要もあります。このリポジトリーを作成する方法は、「オフラインで使用する Maven ミラーリポジトリーの準備」 を参照してください。
2.11. オフラインで使用する Maven ミラーリポジトリーの準備
Red Hat OpenShift Container Platform 環境に公開インターネットへの送信アクセスが設定されていない場合には、必要なアーティファクトすべてのミラーが含まれる Maven リポジトリーを用意して、このリポジトリーを使用できるようにする必要があります。
Red Hat OpenShift Container Platform 環境がインターネットに接続されている場合は、この手順を飛ばして次に進むことができます。
前提条件
- 公開インターネットへの送信アクセスが設定されているコンピューターが利用できる。
手順
書き込みアクセス権がある Maven リリースリポジトリーを設定します。リポジトリーは認証なしで読み取りアクセスを許可する必要があり、OpenShift 環境にはこのリポジトリーへのネットワークアクセスが必要です。
OpenShift 環境に、Nexus リポジトリーマネージャーをデプロイできます。OpenShift への Nexus の設定方法は、Red Hat OpenShift Container Platform 3.11 ドキュメントの Nexus の設定 を参照してください。記載の手順は、OpenShift Container Platform 4 にも該当します。
このリポジトリーをミラーとして使用し、公開されている Maven アーティファクトをホストします。これらのサービスをイミュータブルサーバーにデプロイメントしたり、Business Central の監視を使用してマネージドサーバーにデプロイメントしたりするために、このリポジトリーで独自のサービスを提供することもできます。
- 公開インターネットに送信アクセスができるコンピューターで、以下のアクションを実行します。
Red Hat カスタマーポータルの Software Downloads ページに移動し (ログインが必要)、ドロップダウンオプションから製品およびバージョンを選択します。
- 製品: Process Automation Manager
バージョン: 7.13.5
-
Red Hat Process Automation Manager 7.13.5 Offliner Content List (
rhpam-7.13.5-offliner.zip
) の製品配信可能ファイルをダウンロードして展開します。 -
rhpam-7.13.5-offliner.zip
ファイルの内容を任意のディレクトリーに展開します。 ディレクトリーに移動し、以下のコマンドを入力します。
Copy to Clipboard Copied! Toggle word wrap Toggle overflow ./offline-repo-builder.sh offliner.txt
./offline-repo-builder.sh offliner.txt
このコマンドは、
repository
サブディレクトリーを作成し、必要なアーティファクトをこのサブディレクトリーにダウンロードします。これはミラーリポジトリーです。一部のダウンロードが失敗したことを示すメッセージが表示された場合は、同じコマンドを再度実行してください。ダウンロードが再び失敗する場合は、Red Hat サポートに連絡してください。
-
repository
サブディレクトリーのすべてのアーティファクトを、作成した Maven ミラーリポジトリーにアップロードします。アーティファクトをアップロードするには、Git リポジトリー Maven リポジトリー tools から利用できる Maven リポジトリー Provisioner ユーティリティーを使用できます。
-
Red Hat Process Automation Manager 7.13.5 Offliner Content List (
Business Central 外でサービスを開発し、追加の依存関係がある場合は、ミラーリポジトリーにその依存関係を追加します。サービスを Maven プロジェクトとして開発した場合は、以下の手順を使用し、これらの依存関係を自動的に用意します。公開インターネットへに送信接続できるコンピューターで、この手順を実行します。
-
ローカルの Maven キャッシュディレクトリー (
~/.m2/repository
) のバックアップを作成して、ディレクトリーを削除します。 -
mvn clean install
コマンドを使用してプロジェクトのソースをビルドします。 すべてのプロジェクトで以下のコマンドを入力し、Maven を使用してプロジェクトで生成したすべてのアーティファクトのランタイムの依存関係をすべてダウンロードするようにします。
Copy to Clipboard Copied! Toggle word wrap Toggle overflow mvn -e -DskipTests dependency:go-offline -f /path/to/project/pom.xml --batch-mode -Djava.net.preferIPv4Stack=true
mvn -e -DskipTests dependency:go-offline -f /path/to/project/pom.xml --batch-mode -Djava.net.preferIPv4Stack=true
/path/to/project/pom.xml
を、プロジェクトのpom.xml
ファイルのパスに置き換えます。-
ローカルの Maven キャッシュディレクトリー (
~/.m2/repository
) から作成した Maven ミラーリポジトリーにすべてのアーティファクトをアップロードします。アーティファクトをアップロードするには、Git リポジトリー Maven リポジトリー tools から利用できる Maven リポジトリー Provisioner ユーティリティーを使用できます。
-
ローカルの Maven キャッシュディレクトリー (
第3章 OpenShift Operator を使用した Red Hat Process Automation Manager 環境のデプロイと管理
Red Hat Process Automation Manager 環境をデプロイするために、OpenShift Operator は環境を記述する YAML ソースを使用します。Red Hat Process Automation Manager は、YAML ソースを作成し、環境をデプロイするために使用できるインストーラーを提供します。
Business Automation Operator で環境をデプロイする場合は、環境の YAML 記述を作成し、環境が常にこの記述と一致していることを確認します。記述を編集して環境を変更することができます。
Red Hat OpenShift Container Platform で Operator アプリケーションを削除することで、環境を削除できます。
高可用性の Business Central で環境を削除すると、Operator は、JBoss Datagrid および JBoss AMQ StatefulSet の生成時に作成された永続ボリューム要求 (PVC) を削除しません。この動作は、Kubernetes 設計の一部で、永続ボリューム要求を削除するとデータが損失される可能性があります。StatefulSet の削除時における永続ボリューム要求の取り扱いは、Kubernetes documentation を参照してください。
同じ namespace とアプリケーション名を使用する新規環境を構築すると、その環境ではパフォーマンスが向上されるように永続ボリュームを再利用します。
新規デプロイメントで古いデータを使用しないようにするには、Persistent Volume Claim を手動で削除します。
3.1. Business Automation Operator のサブスクライブ
Operator を使用して Red Hat Process Automation Manager をデプロイできるようにするには、OpenShift で Business Automation Operator にサブスクライブする必要があります。
手順
- OpenShift Web クラスターコンソールでプロジェクトに移動します。
- OpenShift Web コンソールのナビゲーションパネルで、Catalog → OperatorHub または Operators → OperatorHub を選択します。
- Business Automation を検索し、これを選択してから Install をクリックします。
Create Operator Subscription ページで、ターゲットの名前空間および承認ストラテジーを選択します。
必要に応じて、承認ストラテジー を
Automatic
に設定して、Operator の自動更新を有効にします。Operator の更新は直ちに製品を更新しませんが、製品を更新する前に必要になります。特定のすべての製品デプロイメントの設定を使用して、自動または手動の製品更新を設定します。- Subscribe をクリックしてサブスクリプションを作成します。
3.2. Operator を使用した Red Hat Process Automation Manager 環境のデプロイ
Business Automation Operator にサブスクライブした後に、インストーラーウィザードを使用して Red Hat Process Automation Manager 環境を設定し、デプロイできます。
Red Hat Process Automation Manager 7.13 では、Operator インストーラーウィザードはテクノロジープレビュー機能となっています。Red Hat のテクノロジープレビュー機能の詳細は、テクノロジープレビュー機能のサポート範囲 を参照してください。
3.2.1. Business Automation Operator の使用による Red Hat Process Automation Manager 環境のデプロイメントの開始
Business Automation Operator を使用して Red Hat Process Automation Manager 環境のデプロイメントを開始するには、インストーラーウィザードにアクセスします。インストーラーウィザードは Operator にサブスクライブするとデプロイされます。
前提条件
- Business Automation Operator にサブスクライブしている。Operator にサブスクライブする方法は、「Business Automation Operator のサブスクライブ」 を参照してください。
手順
- Red Hat OpenShift Container Platform Web クラスターコンソールメニューで、Catalog → Installed operators または Operators → Installed operators を選択します。
-
businessautomation
が含まれる Operator の名前をクリックします。この Operator の情報が表示されます。 - ウィンドウの右側にある Installer リンクをクリックします。
- プロンプトが出されたら、OpenShift 認証情報でログインします。
結果
ウィザードの Installation タブが表示されます。
3.2.2. 環境の基本設定の設定
Business Automation Operator を使用して Red Hat Process Automation Manager 環境のデプロイを開始した後に、環境のタイプを選択し、他の基本的な設定を行う必要があります。
前提条件
- 「Business Automation Operator の使用による Red Hat Process Automation Manager 環境のデプロイメントの開始」 の説明に従って、Business Automation Operator を使用して Red Hat Process Automation Manager 環境のデプロイを開始し、インストーラーウィザードにアクセスしている。
手順
- Application Name フィールドに、OpenShift アプリケーションの名前を入力します。この名前は、すべてのコンポーネントのデフォルト URL で使用されます。
Environment リストで、環境のタイプを選択します。このタイプは、デフォルトの設定を定めるものです。この設定を必要に応じて変更することができます。以下のタイプは Red Hat Process Automation Manager で利用できます。
-
rhpam-trial
: すばやく設定でき、アセットの開発や実行の評価やデモに使用できる試用版の環境。Business Central と KIE Server 1 台が含まれています。この環境では永続ストレージを使用しないため、この環境で実行した作業内容は保存されません。 -
rhpam-authoring
: Business Central を使用してサービスを作成および修正する環境。これは、オーサリング作業用に Business Central を提供する Pod およびサービスのテスト実行用に KIE Server を提供する Pod で構成されます。 rhpam-authoring-ha
: Business Central を使用してサービスを作成し、変更する環境。これは、オーサリング作業用に Business Central を提供する Pod およびサービスのテスト実行用に KIE Server を提供する Pod で構成されます。このバージョンのオーサリング環境は、高可用性が確保されるように Business Central Pod のスケーリングをサポートします。重要Red Hat Process Automation Manager 7.13 では、Operator を使用した高可用性 Business Central 機能のデプロイメントはテクノロジープレビューとしてのみご利用いただけます。Red Hat Technology Preview 機能の詳細は、テクノロジープレビュー機能のサポート範囲 を参照してください。
-
rhpam-production
: ステージングおよび実稼働用として既存のサービスを実行するのに使用する環境。この環境には、Business Central Monitoring、Smart Router、および KIE Server Pod の 2 つのグループが含まれます。このようなすべてのグループに対してサービスのデプロイおよびデプロイ解除を実行できます。Business Central Monitoring を使用してサービスをデプロイし、実行し、停止し、またそれらの実行を監視します。 rhpam-production-immutable
: ステージングおよび実稼働の目的で既存のサービスを実行するための別の環境。ソースからサービスをビルドしたり、Maven リポジトリーからサービスをプルする KIE Server Pod を 1 つ以上設定できます。その後、必要に応じて各 Pod を複製できます。Pod からサービスを削除したり、新しいサービスを Pod に追加したりすることはできません。サービスの別のバージョンを使用するか、他の方法で設定を変更する場合は、新規のサーバーイメージをデプロイして、以前のイメージを置き換えます。コンテナーベースの統合ワークフローを使用して、Pod を管理できます。
この環境を設定する場合は、KIE Servers タブで KIE Server をカスタマイズし、Set immutable server configuration ボタンをクリックするか、
KIE_SERVER_CONTAINER_DEPLOYMENT
環境変数を設定します。KIE Server の設定手順は、「環境のカスタム KIE Server 設定の設定」 を参照してください。
-
- 必要に応じて、Console タブを使用して、この環境に Business Central Monitoring を追加して、プロセスサービスの実行を監視、停止、および再起動することもできます。Business Central Monitoring の設定手順は、「環境の Business Central 設定の設定」 を参照してください。
新しいバージョンへの自動アップグレードを有効にするには、Enable Upgrades ボックスを選択します。このボックスを選択すると、Red Hat Process Automation Manager 7.13 の新しいパッチバージョンが利用可能になると、Operator は自動的にこのバージョンにデプロイメントをアップグレードします。サービスはすべて確保され、アップグレードプロセス全体で通常通り利用できます。
同じ自動アップグレードプロセスを、Red Hat Process Automation Manager 7.x の新規マイナーバージョンが利用できる場合にも有効にする場合は、Include minor version upgrade のチェックボックスを選択します。
注記Red Hat Process Automation Manager のコンポーネントにカスタムイメージを使用する場合は、自動更新を無効にします。
- イメージのダウンロードにイメージタグを使用する場合は、Use Image Tags ボックスを選択します。この設定は、カスタムレジストリーを使用する場合や、Red Hat サポートがダイレクトされる場合に役立ちます。
デプロイメントへの SSL 接続を無効にする場合は、Disable SSL Routes ボックスを選択します。この場合、外部に公開されるすべてのルートはクリアテキスト (HTTP) 接続を使用します。
注記このボックスを選択しないと、セキュアな (HTTPS) ルートのみが外部に公開されます。
Custom registry のカスタムイメージレジストリーを使用する場合は、Image registry フィールドにレジストリーの URL を入力します。このレジストリーに適切に署名され、認識された SSL 証明書がない場合は、Insecure ボックスを選択します。
特定のイメージを使用するためのイメージレジストリーの設定方法は、「特定のイメージを使用するためのイメージレジストリーの設定」 を参照してください。
Admin user の Username フィールドおよび Password フィールドに、Red Hat Process Automation Manager の管理者ユーザーのユーザー名およびパスワードを入力します。
重要RH-SSO または LDAP 認証を使用する場合は、同じユーザーを、Red Hat Process Automation Manager の
kie-server,rest-all,admin
ロールで認証システムに設定する必要があります。オプション: 起動ストラテジーを選択します。
OpenShiftStartupStrategy
設定はデフォルトで有効にされます。一部のオーサリング環境では、複数のユーザーが同じ KIE Server に同時にサービスをデプロイできることを確認する必要があります。デフォルトでは、Business Central を使用して KIE Server にサービスをデプロイした後に、ユーザーは数秒待ってから追加のサービスをデプロイする必要があります。
OpenShiftStartupStrategy
設定はデフォルトで有効になり、この制限が発生します。制限を削除するには、Startup Strategy リストからControllerBasedStartupStrategy
設定を選択します。注記高可用性の Business Central を使用する環境でコントローラーベースのストラテジーを有効にしないでください。
- オプション: HTTPS 通信のトラストストアとして OpenShift CA バンドルを使用する場合は、Use OpenShift CA Bundle ボックスを選択します。
オプション: Admin ユーザーの認証情報を含むシークレットを使用する場合は、次のタスクを実行します。
-
Admin user configuration リストから、
Secret configuration
を選択します。 -
OpenShift admin credentials secret の Secret フィールドに、シークレットの名前を入力します。Secret フィールドを空白にした場合、
kie-admin-credentials
のデフォルトのシークレットが使用されます。 -
OpenShift admin credentials secret の Username フィールドに、シークレットで使用する管理者ユーザーのユーザー名を入力します。Username フィールドを空白にした場合、
kie-admin-credentials
のデフォルトのユーザー名が使用されます。 OpenShift admin credentials secret の Password フィールドに、シークレットで使用する管理者ユーザーのパスワードを入力します。Password フィールドを空白にすると、
kie-admin-credentials
のデフォルトパスワードが使用されます。注記kie-admin-credentials
がない場合、デフォルトのユーザー名とパスワードでkie-admin-credentials
が生成されます。
-
Admin user configuration リストから、
次のステップ
デフォルト設定で環境をデプロイする必要がある場合は、Finish をクリックしてから Deploy をクリックして環境をデプロイします。それ以外の場合は、引き続き他の設定パラメーターの設定を行います。
3.2.2.1. 特定のイメージを使用するためのイメージレジストリーの設定
環境の基本設定中に、特定のイメージを使用するようにカスタムレジストリーを設定できます。基本的な環境設定の詳細は、「環境の基本設定の設定」 を参照してください。
前提条件
- 「環境の基本設定の設定」 の説明に従って、Business Automation Operator を使用して Red Hat Process Automation Manager 環境の設定を開始し、インストーラーウィザードにアクセスしている。
- 「環境の基本設定の設定」 の手順に従って、Red Hat Process Automation Manager 環境設定の カスタムレジストリー の下にある イメージレジストリーフィールドにイメージレジストリー の URL を設定しました。
手順
Red Hat Process Automation Manager 環境の設定中に、カスタムレジストリーから特定のイメージを使用するには、以下のいずれかの手順を実行します。
インストーラウィザードを使用してイメージを指定する場合は、Console タブおよび KIE Server タブでイメージコンテキスト、イメージ名、イメージタグの各パラメーターを設定します。
表3.1 パラメーター 名前 説明 Image context
レジストリー内のイメージのコンテキスト。
Image
イメージの名前。
Image tag
イメージのタグ。このフィールドを設定しない場合、インストールは最新のタグを使用します。
KieApp CR の YAML ファイルを使用してイメージを指定する場合は、イメージレジストリーとイメージの詳細をファイルに追加してください。以下に例を示します。
例
Copy to Clipboard Copied! Toggle word wrap Toggle overflow apiVersion: app.kiegroup.org/v2 kind: KieApp spec: ... useImageTags: true imageRegistry: registry: registry.example.com:5000 ... objects: ... servers: - id: ... ... image: YOUR_IMAGE_NAME imageContext: YOUR_IMAGE_CONTEXT imageTag: YOUR_IMAGE_TAG ...
apiVersion: app.kiegroup.org/v2 kind: KieApp spec: ... useImageTags: true imageRegistry: registry: registry.example.com:5000 ... objects: ... servers: - id: ... ... image: YOUR_IMAGE_NAME imageContext: YOUR_IMAGE_CONTEXT imageTag: YOUR_IMAGE_TAG ...
設定された名前を持つ ImageStream が使用している名前空間または Red Hat OpenShift Container Platform の名前空間に存在する場合は、Operator はこの ImageStream を使用し、新しい ImageStream を作成しません。
ImageStream を自動更新するように設定するには、KieApp CR の YAML ファイルで、ImageStream プロパティー scheduledImportPolicy
を true
に設定する必要があります。以下に例を示します。
scheduledImportPolicy
の例
apiVersion: app.kiegroup.org/v2 kind: KieApp spec: ... useImageTags: true scheduledImportPolicy: true imageRegistry: registry: registry.example.com:5000 ... objects: ... servers: - id: ... ... image: YOUR_IMAGE_NAME imageContext: YOUR_IMAGE_CONTEXT imageTag: YOUR_IMAGE_TAG ...
apiVersion: app.kiegroup.org/v2
kind: KieApp
spec:
...
useImageTags: true
scheduledImportPolicy: true
imageRegistry:
registry: registry.example.com:5000
...
objects:
...
servers:
- id: ...
...
image: YOUR_IMAGE_NAME
imageContext: YOUR_IMAGE_CONTEXT
imageTag: YOUR_IMAGE_TAG
...
3.2.3. 環境のセキュリティー設定の設定
Business Automation Operator を使用して Red Hat Process Automation Manager 環境の基本的な設定を行ったら、必要に応じて環境の認証 (セキュリティー) を設定できます。
前提条件
- 「環境の基本設定の設定」 の説明に従って、インストーラーウィザードで Business Automation Operator を使用して Red Hat Process Automation Manager 環境の基本設定を行っている。
-
認証に RH-SSO または LDAP を使用する必要がある場合には、認証システムに適切なロールを持つユーザーを作成していること。
kie-server,rest-all,admin
ロールを持つ少なくとも 1 人の管理ユーザー (たとえば、adminUser
) を作成する必要があります。このユーザーには、Installation タブで設定したユーザー名とパスワードが必要です。 - RH-SSO 認証を使用する必要がある場合は、環境のすべてのコンポーネントの RH-SSO システムでクライアントを作成しており、正しい URL を指定している。この動作により、最大限の制御が確保されます。他の方法として、デプロイメントでクライアントを作成できます。
手順
- Installation タブが開いている場合は、Next をクリックして Security タブを表示します。
Authentication mode リストで、以下のモードのいずれかを選択します。
-
Internal
: 環境のデプロイ時に初期ユーザーを設定します。設定後スクリプトを作成して、Elytron security サブシステムにユーザーを追加できます。設定後スクリプトの作成方法は、「Elytron ユーザー設定やその他の設定の指定」 を参照してください。 -
RH-SSO
: Red Hat Process Automation Manager は認証に Red Hat Single Sign-On を使用します。 -
LDAP
: Red Hat Process Automation Manager は認証に LDAP を使用します。
-
選択した Authentication mode に基づいてセキュリティー設定を完了します。
RH-SSO
を選択してい場合は、RH-SSO 認証を設定します。- RH-SSO URL フィールドに、RH-SSO URL を入力します。
- Realm フィールドに、RH-SSO レルム名を入力します。
- 環境のコンポーネントに RH-SSO クライアントを作成していない場合は、SSO admin user フィールドおよび SSO admin password フィールドに、RH-SSO システムの管理者ユーザーの認証情報を入力します。
- RH-SSO システムに適切な署名済みの SSL 証明書がない場合は、Disable SSL cert validation ボックスを選択します。
- Principal attribute フィールドで、ユーザー名に使用される RH-SSO プリンシパル属性を変更する必要がある場合は、新規属性の名前を入力します。
LDAP
を選択した場合は、LDAP 認証を設定します。重要baseFilter
フィールドは、認証するユーザーのコンテキストを見つけるために使用される従来の LDAP 検索フィルターです。ログインモジュールコールバックから取得した入力username
またはuserDN
は、{0}
式が使用されるいずれの場所でもフィルターに置き換えられます。検索フィルターの一般的な例は(uid={0})
です。Elytron ベースのサブシステムの場合には、このプロパティーは、検索式を使用せずに検索フィルターパラメーターだけで設定する必要があります。たとえば、(uid={0})
の代わりにuid
を検索します。- LDAP URL フィールドに、LDAP URL を入力します。
LDAP パラメーターを設定します。これらのパラメーターは、Red Hat JBoss EAP の Elytron サブシステムを使用して LDAP 認証を設定します。Red Hat JBoss EAP の Elytron サブシステムを LDAP と共に使用する方法は、Configure Authentication with an LDAP-Based Identity Store を参照してください。
注記LDAP フェイルオーバーを有効にする場合は、
AUTH_LDAP_URL
パラメーターに、2 つ以上の LDAP サーバーアドレスをスペースで区切って設定できます。
RH-SSO
またはLDAP
を選択した場合、RH-SSO または LDAP システムがデプロイメントに必要なすべてのロールを定義していない場合、認証システムのロールを Red Hat Process Automation Manager のロールにマップできます。ロールマッピングを有効にするには、単一の設定文字列またはロールマッピング設定ファイルとしてロールマッピングを指定する必要があります。ロールマッピング設定にファイルを使用する場合は、ファイルをプロジェクト namespace の OpenShift 設定マップまたはシークレットオブジェクトに指定する必要があります。
文字列は
role=role1,role2;another-role=role2
パターンを使用する必要があります。例えば、admins=kie-server,rest-all,admin;developers=kie-server,rest-all
のようになります。ファイルには、次の形式のエントリーが含まれている必要があります。
Copy to Clipboard Copied! Toggle word wrap Toggle overflow ldap_role=product_role1, product_role2...
ldap_role=product_role1, product_role2...
以下に例を示します。
Copy to Clipboard Copied! Toggle word wrap Toggle overflow admins=kie-server,rest-all,admin
admins=kie-server,rest-all,admin
この文字列またはファイルを使用するには、以下の変更を加えます。
-
RoleMapper の下の Roles properties file フィールドに、ロール設定文字列、またはロールマッピング設定ファイルの完全修飾パス名 (例:
/opt/eap/standalone/configuration/rolemapping/rolemapping.properties
) を入力します。 - オプション: Roles keep mapped ボックスまたは Roles keep non mapped ボックスを選択します。ロールマッピングを定義する場合、デフォルトではマッピングで定義するロールのみが利用できます。認証システムで定義された元のロールを保持し、マッピングが他のロールにマップする場合は、Roles keep mapped ボックスを選択します。認証システムで定義されていて、マッピングに記載されていないオリジナルのロールを保持する場合は、Roles keep non mapped ボックスを選択します。
ロール設定ファイルを使用している場合は、RoleMapper Configuration object の下のフィールドを設定します。
-
Kind ラベルで、ファイルを提供するオブジェクトの kind (
ConfigMap
またはSecret
) を選択します。 - Name フィールドにオブジェクトの名前を入力します。このオブジェクトは、ロールマッピング設定ファイルに指定したパスで Business Central および KIE Server Pod に自動的にマウントされます。
-
Kind ラベルで、ファイルを提供するオブジェクトの kind (
-
RoleMapper の下の Roles properties file フィールドに、ロール設定文字列、またはロールマッピング設定ファイルの完全修飾パス名 (例:
他のパスワードを設定します (必要な場合)。
- AMQ password および AMQ cluster password は、JMS API を使用した ActiveMQ との対話に使用するパスワードです。
- Keystore password は、HTTPS 通信のシークレットで使用されるキーストアファイルのパスワードです。「KIE Server のシークレットの作成」 または 「Business Central へのシークレットの作成」 の説明にしたがってシークレットを作成した場合は、このパスワードを設定します。
- Database password は、環境の一部であるデータベースサーバー Pod のパスワードです。
次のステップ
すべてのコンポーネントのデフォルト設定で環境をデプロイする必要がある場合は、Finish をクリックしてから Deploy をクリックして環境をデプロイします。それ以外の場合は、引き続き Business Central、KIE Server、および Smart Router の設定パラメーターを設定します。
3.2.4. 環境の Business Central 設定の設定
Business Automation Operator を使用して Red Hat Process Automation Manager 環境の基本的なセキュリティー設定を行った後に、必要に応じて環境の Business Central または Business Central Monitoring コンポーネントを設定できます。
rhpam-production-immutable
以外のすべての環境タイプには、このコンポーネントが含まれます。
デフォルトでは、rhpam-production-immutable
環境には Business Central Monitoring が含まれていません。この環境に Business Central Monitoring を含めるには、Replicas フィールドに Business Central Monitoring の Pod のレプリカ数を設定するか、Business Central 設定フィールドにその他の変更を加える必要があります。
前提条件
- 「環境の基本設定の設定」 の説明に従って、インストーラーウィザードで Business Automation Operator を使用して Red Hat Process Automation Manager 環境の基本設定を行っている。
- 認証に RH-SSO または LDAP を使用する必要がある場合は、「環境のセキュリティー設定の設定」 の説明に従ってセキュリティー設定を完了している。
手順
- Installation または Security タブが開いている場合は、Console タブが表示されるまで Next をクリックします。
- 「Business Central へのシークレットの作成」 の説明に従って Business Central のシークレットを作成している場合は、Keystore secret フィールドにシークレットの名前を入力します。
オプション: Business Central のデプロイメントにカスタムイメージを使用する場合は、次の追加手順を実行します。
- Installation タブでカスタムレジストリーを設定します。カスタムレジストリーを設定しない場合、インストールはデフォルトの Red Hat レジストリーを使用します。カスタムレジストリー値の設定に関する詳細は、「環境の基本設定の設定」 を参照してください。
Console タブで、以下のフィールドを設定します。
- Image context: レジストリー内のイメージのコンテキスト。
- Image: イメージの名前。
Image tag: イメージのタグ。このフィールドを設定しない場合、インストールは
latest
タグを使用します。たとえば、イメージの完全なアドレスが
registry.example.com/mycontext/mycentral:1.0-SNAPSHOT
の場合、カスタムレジストリーをregistry.example.com
に、Image context フィールドをmycontext
に、Image フィールドをmycentral
に、そして Image tag フィールドを1.0-SNAPSHOT
に設定します。
オプション: 外部ルートにカスタムホスト名を設定するには、Custom hostname to be used on the Business Central external Route フィールドに、次の例のような書式でドメインを入力します。
Copy to Clipboard Copied! Toggle word wrap Toggle overflow `businesscentral.example.com`
`businesscentral.example.com`
注記カスタムホスト名は有効で解決可能である必要があります。
カスタムホスト名を変更するには、
routeHostname
プロパティーを変更します。オプション: Edge の終端ルートを有効にして設定するには、次の手順を実行します。
- Change route termination で Enable Edge termination を選択します。
- オプション: Key フィールドに、秘密鍵を入力します。
- オプション: Certificate フィールドに、証明書を入力します。
- オプション: CaCertificate フィールドに、CaCertificate を入力します。
必要に応じて、Git フックを設定します。
オーサリング環境では、Git フックを使用して、Business Central の内部 Git リポジトリーと外部 Git リポジトリー間の操作を容易化できます。Git フックを使用する場合は、プロジェクト namespace の OpenShift 設定マップ、シークレット、または永続ボリューム要求オブジェクトに Git フックディレクトリーを準備する必要があります。Git の SSH 認証用の SSH キーと既知のホストファイルでシークレットを作成することもできます。Git フックの作成に関する詳細は、「Git フックの準備」 を参照してください。
Git フックディレクトリーを使用するには、以下の変更を加えます。
-
Mount path フィールドの GitHooks の下に、ディレクトリーの完全修飾名を入力します (例:
/opt/kie/data/git/hooks
)。 -
GitHooks Configuration object の下のフィールドで、ファイルを提供するオブジェクトの Kind (
ConfigMap
、Secret
、またはPersistentVolumeClaim
) を選択し、オブジェクトの Name を入力します。このオブジェクトは、Git フックディレクトリーの指定したパスで Business Central Pod に自動的にマウントされます。
-
Mount path フィールドの GitHooks の下に、ディレクトリーの完全修飾名を入力します (例:
- 必要に応じて、SSH secret フィールドに、SSH キーと既知のホストファイルを含む、シークレットを入力します。
- オプション: jBPM およびケース管理機能が無効になるようにデシジョン管理のみの機能用に KIE サーバーを設定するには、Execute Kie Server only with Decisions capabilities を選択します。
-
必要に応じて、Business Central または Business Central monitoring のレプリカ数を Replicas フィールドに入力します。この数は
rhpam-authoring
環境では変更しません。 -
必要に応じて、Console コンポーネント ページで Business Central 永続ボリュームサイズ
pvSize
を設定するには、Persistent Volume Size フィールドに必要なサイズを入力します。デフォルトのサイズは、Business Central の場合は 1Gi、Business Central Monitoring の場合は 64Mb です。 - 必要に応じて、Resource quotas 下のフィールドに必要な CPU およびメモリーの上限値を入力します。
- Business Central Pod の Java 仮想マシンの設定をカスタマイズする必要がある場合は、Enable JVM configuration ボックスを選択してから、Enable JVM configuration の下のフィールドに情報を入力します。すべてのフィールドは任意です。設定可能な JVM パラメーターは、「JVM 設定パラメーター」 を参照してください。
RH-SSO 認証を選択している場合は、Business Central の RH-SSO を設定します。
- Client name フィールドにクライアント名を入力し、Client secret フィールドにクライアントシークレットを入力します。この名前を持つクライアントが存在しない場合は、デプロイメントでこの名前およびシークレットを持つ新規クライアントの作成を試行します。
- デプロイメントで新規クライアントを作成する場合は、Business Central へのアクセスに使用する HTTP および HTTPS URL を SSO HTTP URL フィールドおよび SSO HTTPS URL フィールドに入力します。この情報は、クライアントに記録されます。
-
オプション: 高可用性環境を設定している場合、DataGrid コンポーネントのユーザー名とパスワードをDataGrid usernameとDataGrid passwordフィールドに設定します。デフォルトでは、ユーザー名は
infinispan
で、パスワードは自動的に生成されます。 必要に応じて、環境変数を随時設定します。環境変数を設定するには、Add new Environment variable をクリックしてから、変数の名前および値を Name フィールドおよび Value フィールドに入力します。
rhpam-production
またはrhpam-production-immutable
環境で、ファイルシステムを使用しない簡易モードで Business Central Monitoring を実行する場合には、ORG_APPFORMER_SIMPLIFIED_MONITORING_ENABLED
をtrue
に設定します。簡易モードの場合には、Business Central Monitoring では永続ボリューム要求が必要ではありません。永続ストレージへの
ReadWriteMany
アクセスをサポートしない環境で、このモードを使用できます。カスタムダッシュボードの設計には、簡易モードで Business Central Monitoring を使用できません。オプション: プロキシー設定を行う場合は、以下の環境変数を使用します。
-
https_proxy
: https プロキシーの場所。これは、HTTPS_PROXY
、http_proxy
、およびHTTP_PROXY
よりも優先され、Maven ビルドと Java ランタイムの両方に使用されます。例:myuser:mypass@127.0.0.1:8080
-
HTTPS_PROXY
: https プロキシーの場所。これはhttp_proxy
およびHTTP_PROXY
に優先され、Maven ビルドと Java ランタイムの両方に使用されます。例:myuser@127.0.0.1:8080
-
http_proxy
: http プロキシーの場所。これはHTTP_PROXY
よりも優先され、Maven ビルドと Java ランタイムの両方に使用されます。例:http://127.0.0.1:8080
-
HTTP_PROXY
: http プロキシーの場所。これは、Maven ビルドと Java ランタイムの両方に使用されます。例:127.0.0.1:8080
-
no_proxy
: 直接アクセスできるホスト、IP アドレス、またはドメインのコンマ区切りリスト。これはNO_PROXY
よりも優先され、Maven ビルドと Java ランタイムの両方に使用されます。例:*.example.com
-
NO_PROXY
: 直接アクセスできるホスト、IP アドレス、またはドメインのコンマ区切りリスト。これは、Maven ビルドと Java ランタイムの両方に使用されます。例:foo.example.com,bar.example.com
-
外部 Maven リポジトリーを使用する必要がある場合は、以下の変数を設定します。
-
MAVEN_REPO_URL
: Maven リポジトリーの URL -
MAVEN_REPO_ID
: Maven リポジトリーの ID (例:repo-custom
) -
MAVEN_REPO_USERNAME
: Maven リポジトリーのユーザー名 MAVEN_REPO_PASSWORD
Maven リポジトリーのパスワード重要オーサリング環境で、Business Central を使用して外部の Maven リポジトリーにプロジェクトをプッシュする場合は、デプロイメント時にこのリポジトリーを設定して、全プロジェクトのリポジトリーへのエクスポートを設定する必要があります。外部の Maven リポジトリーへの Business Central プロジェクトのエクスポートに関する情報は、Red Hat Process Automation Manager プロジェクトのパッケージ化およびデプロイ を参照してください。
-
OpenShift 環境が公開インターネットに接続されていない場合は、「オフラインで使用する Maven ミラーリポジトリーの準備」 に従って設定した Maven ミラーにアクセスできるように設定します。以下の変数を設定してください。
-
MAVEN_MIRROR_URL
: 「オフラインで使用する Maven ミラーリポジトリーの準備」 でセットアップした Maven ミラーリポジトリーの URL。この URL は、OpenShift 環境の Pod からアクセスできるようにする必要があります。 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 リポジトリーを使用する場合は、ミラーからこのリポジトリーのアーティファクトを除外するように
MAVEN_MIRROR_OF
を変更します (例:external:*,!repo-rhpamcentr
)。
-
場合によっては、Business Central の Maven リポジトリーキャッシュの永続化が必要です。デフォルトでは、キャッシュは永続化されないため、Business Central Pod を再起動またはスケーリングすると、すべての Maven アーティファクトが再度ダウンロードされ、Business Central 内のすべてのプロジェクトが再度ビルドされる必要があります。キャッシュの永続性を有効にした場合は、ダウンロードは必要なく、状況によっては起動にかかる時間が改善される可能性があります。ただし、Business Central 永続ボリュームには、大きな追加領域が必要です。
Maven リポジトリーキャッシュの永続性を有効にするには、
KIE_PERSIST_MAVEN_REPO
環境変数をtrue
に設定します。KIE_PERSIST_MAVEN_REPO
をtrue
に設定した場合には、オプションでKIE_M2_REPO_DIR
変数を使用してキャッシュのカスタムパスを設定できます。デフォルトのパスは/opt/kie/data/m2
です。/opt/kie/data
ディレクトリーツリー内のファイルは永続化されます。
次のステップ
Smart Router やプロセスインスタンス移行を使用せずに、KIE Server のデフォルト設定で環境をデプロイする場合は、Finish をクリックしてから Deploy をクリックし、この環境をデプロイします。それ以外の場合は、引き続き KIE Server および Smart Router の設定パラメーターを設定します。
3.2.5. 環境のカスタム KIE Server 設定の設定
Business Automation Operator のすべての環境タイプには、デフォルトで 1 つまたは複数の KIE Server が含まれます。
必要に応じて、KIE Server のカスタム設定を設定できます。この場合、デフォルトの KIE Server は作成されず、設定する KIE Server のみがデプロイされます。
前提条件
- 「環境の基本設定の設定」 の説明に従って、インストーラーウィザードで Business Automation Operator を使用して Red Hat Process Automation Manager 環境の基本設定を行っている。
手順
- 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 フィールドにシークレットの名前を入力します。
- オプション: jBPM およびケース管理機能が無効になるようにデシジョン管理のみの機能用に KIE サーバーを設定するには、Execute Kie Server only with Decisions capabilities を選択します。
- オプション: KIE Server のレプリカ数を Replicas フィールドに入力します。
オプション: 外部ルートにカスタムホスト名を設定するには、Custom hostname to be used on the KIE Server external Route フィールドに、次の例のような書式でドメインを入力します。
Copy to Clipboard Copied! Toggle word wrap Toggle overflow `kieserver.example.com`
`kieserver.example.com`
注記カスタムホスト名は有効で解決可能である必要があります。
カスタムホスト名を変更するには、
routeHostname
プロパティーを変更します。オプション: Edge の終端ルートを有効にして設定するには、次の手順を実行します。
- Change route termination で Enable Edge termination を選択します。
- オプション: Key フィールドに、秘密鍵を入力します。
- オプション: Certificate フィールドに、証明書を入力します。
- オプション: CaCertificate フィールドに、CaCertificate を入力します。
オプション: カスタムの KIE Server イメージを使用する場合は、以下の追加手順を実行します。
- Set KIE Server image をクリックします。
-
OpenShift イメージストリームからイメージをプルする場合は Kind リストから
ImageStreamTag
を選択し、Docker レジストリーからイメージをプルする場合はDockerImage
を選択します。 次のいずれかの手順を実行して、イメージ名を設定します。
ImageStreamTag
の kind を選択した場合は、Name フィールドにイメージのイメージストリームタグ名を入力します (例:my-custom-is-tag:1.0
)。対応するイメージストリームがご使用の環境に存在しない場合、Operator はデフォルトの Red Hat レジストリーとタグを使用して、このイメージストリームを作成します。Installation タブでカスタムレジストリーを設定した場合、Operator はこのレジストリーを使用してイメージストリームを作成します。
DockerImage
の kind を選択した場合は、イメージの完全修飾イメージ名を Name フィールドに入力します (例:registry.io/test/testing:1.0
)。ご使用の環境がアクセスできる任意のレジストリーからイメージを設定できます。
openshift
名前空間にないイメージストリームを使用する場合は、Namespace フィールドに名前空間を入力します。カスタムイメージの作成手順は、「KIE Server および Smart Router 用のカスタムイメージの作成」 を参照してください。
オプション: Source to Image (S2I) ビルドを使用して、イミュータブル KIE Server を設定する必要がある場合は、以下の追加の手順を実行します。
重要Maven リポジトリーからサービスをプルするイミュータブル KIE Server を設定する必要がある場合は、Set Immutable server configuration をクリックせず、この手順も実行しないでください。代わりに、
KIE_SERVER_CONTAINER_DEPLOYMENT
環境変数を設定します。- 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 ソースを設定しない場合、イミュータブルな KIE Server は S2I ビルドを使用しません。その代わりに、設定済みの Maven リポジトリーから KIE Server コンテナーデプロイメント フィールドで定義したアーティファクトをプルします。
- S2I を使用し、Git Webhook を設定して Git リポジトリーの変更が KIE Server の自動リビルドをトリガーするように設定する必要がある場合は、Add new Webhook をクリックします。次に、Type フィールドで Webhook のタイプを選択し、Secret フィールドで Webhook のシークレット文字列を入力します。
- S2I ビルドのビルド環境変数を設定するには、Add new Build Config Environment variable をクリックしてから、変数の名前および値を Name フィールドおよび Value フィールドに入力します。
- 必要に応じて、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
以外のデータベースを選択している場合は、データベースを保存するために永続ボリューム要求が作成されます。必要に応じて、永続ボリュームの設定パラメーターを指定します。- また、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 の Hibernate SQL Dialects の表を参照してください。
-
- 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
テーブルを更新する必要があります。オプション: プロキシー設定を行う場合は、以下の環境変数を使用します。
-
https_proxy
: https プロキシーの場所。これは、HTTPS_PROXY
、http_proxy
、およびHTTP_PROXY
よりも優先され、Maven ビルドと Java ランタイムの両方に使用されます。例:myuser:mypass@127.0.0.1:8080
-
HTTPS_PROXY
: https プロキシーの場所。これはhttp_proxy
およびHTTP_PROXY
に優先され、Maven ビルドと Java ランタイムの両方に使用されます。例:myuser@127.0.0.1:8080
-
http_proxy
: http プロキシーの場所。これはHTTP_PROXY
よりも優先され、Maven ビルドと Java ランタイムの両方に使用されます。例:http://127.0.0.1:8080
-
HTTP_PROXY
: http プロキシーの場所。これは、Maven ビルドと Java ランタイムの両方に使用されます。例:127.0.0.1:8080
-
no_proxy
: 直接アクセスできるホスト、IP アドレス、またはドメインのコンマ区切りリスト。これはNO_PROXY
よりも優先され、Maven ビルドと Java ランタイムの両方に使用されます。例:*.example.com
-
NO_PROXY
: 直接アクセスできるホスト、IP アドレス、またはドメインのコンマ区切りリスト。これは、Maven ビルドと Java ランタイムの両方に使用されます。例:foo.example.com,bar.example.com
-
必要に応じて、環境変数を随時設定します。環境変数を設定するには、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 の管理および監視 を参照してください。 Red Hat Single Sign-On 認証を使用していて、アプリケーションと Red Hat Single Sign-On の相互作用に CORS (cross-origin resource sharing) のサポートが必要な場合は、CORS フィルター設定を設定します。
- デフォルトの設定で CORS を使用するには、CORS Filters configurationリストでDefault configurationが選択されていることを確認し、Enable CORS with Default valuesを選択します。
- カスタム設定で CORS を使用するには、CORS Filters configurationリストからCustom configurationを選択し、CORS フィルターに関連する値を入力します。
次のステップ
追加の KIE Server を設定するには、Add new KIE Server を再びクリックし、新規サーバー設定の手順を繰り返します。
Smart Router およびプロセスインスタンス移行を使用せずに環境をデプロイする場合は、Finish をクリックしてから、Deploy をクリックして環境をデプロイします。それ以外の場合は、引き続き Smart Router の設定パラメーターの設定を行います。
3.2.6. 環境の Smart Router 設定の設定
デフォルトでは、デプロイされた環境には Smart Router が含まれていません。Smart Router は環境に追加できます。Smart Router の設定オプションを設定することもできます。
前提条件
- 「環境の基本設定の設定」 の説明に従って、インストーラーウィザードで Business Automation Operator を使用して Red Hat Process Automation Manager 環境の基本設定を行っている。
手順
- Installation タブ、Security タブ、Console タブ、または KIE Servers タブが開いている場合は、Smart Router タブが表示されるまで Next をクリックします。
- Set Smart Router をクリックして Smart Router を環境に追加し、Smart Router を設定します。
「カスタムルーティングを実装する追加の JAR ファイルを使用したカスタム Smart Router イメージの作成」 の手順に従ってカスタムの Smart Router イメージを作成した場合は、以下の値を設定します。
-
イメージコンテキスト: プロジェクト名 (例:
rhpam-project
) イメージ: カスタムイメージ名 (例:
rhpam-smartrouter-rhel8-custom
)イメージのカスタムタグを使用した場合は、Image tag フィールドをこのタグに設定します。
-
イメージコンテキスト: プロジェクト名 (例:
- 「Smart Router のシークレットの作成」 の説明に従って Smart Router のシークレットを作成している場合は、Secret フィールドにシークレットの名前を入力します。
- オプション: jBPM およびケース管理機能が無効になるようにデシジョン管理のみの機能用に KIE サーバーを設定するには、Execute Kie Server only with Decisions capabilities を選択します。
- 必要に応じて、Smart Router のレプリカ数を Replicas フィールドに入力します。
オプション: 外部ルートにカスタムホスト名を設定するには、Custom hostname to be used on the Smart Router external Route フィールドに、次の例のような書式でドメインを入力します。
Copy to Clipboard Copied! Toggle word wrap Toggle overflow `smartrouter.example.com`
`smartrouter.example.com`
注記カスタムホスト名は有効で解決可能である必要があります。
カスタムホスト名を変更するには、
routeHostname
プロパティーを変更します。オプション: Edge の終端ルートを有効にして設定するには、次の手順を実行します。
- Change route termination で Enable Edge termination を選択します。
- オプション: Key フィールドに、秘密鍵を入力します。
- オプション: Certificate フィールドに、証明書を入力します。
- オプション: CaCertificate フィールドに、CaCertificate を入力します。
- 必要に応じて、Resource quotas 下のフィールドに必要な CPU およびメモリーの上限値を入力します。
必要に応じて、環境変数を使用してロギングレベルを設定します。
- Add new environment variable をクリックします。
-
Name フィールドに
LOG_LEVEL
と入力します。 - Value フィールドに Java ロギングレベルを入力します。利用可能なロギングレベルのリストは、クラスレベル を参照してください。
必要に応じて、パッケージ名で異なるコンポーネントのロギングレベルを設定します。
- Add new environment variable をクリックします。
-
Name フィールドに
LOG_LEVEL
と入力します。 Value フィールドにパッケージとロギングレベルを入力し、以下の例のようにフォーマットします。
Copy to Clipboard Copied! Toggle word wrap Toggle overflow com.example.abc=FINEST,com.example.def=SEVERE,com.example.xyz=FINE
com.example.abc=FINEST,com.example.def=SEVERE,com.example.xyz=FINE
次のステップ
プロセスインスタンス移行サービスをデプロイする場合は、引き続きサービスをデプロイします。それ以外の場合は、Finish をクリックしてから、Deploy をクリックして環境をデプロイします。
3.2.7. 環境のプロセスインスタンス移行 (PIM) 設定
Operator を使用してプロセスインスタンス移行 (PIM) サービスをデプロイできます。プロセスインスタンスの移行サービスを使用して、2 つの異なるプロセス定義間の移行を定義できます。これは移行プランと呼ばれます。特定の KIE Server で実行中のプロセスインスタンスに対して、この移行プランを適用できます。
PIM サービスでは、サービスの操作にデータベースサーバーを使用します。
前提条件
- 「環境の基本設定の設定」 の説明に従って、インストーラーウィザードで Business Automation Operator を使用して Red Hat Process Automation Manager 環境の基本設定を行っている。
手順
- Installation タブ、Security タブ、Console タブ、KIE Servers タブ、または Smart Router タブが開いている場合は、Process Instance Migration タブが表示されるまで Next をクリックします。
- Set Process Instance Migration をクリックして、PIM を環境に追加して PIM を設定します。
Database type フィールドで、PIM サービスが使用する必要のあるデータベースを選択します。以下の値を使用できます。
-
mysql
: 個別の Pod に作成される MySQL サーバー。 -
postgresql
: 個別の Pod に作成される PostgreSQL サーバー。他の設定を使用する特別な理由のない限り、この設定を使用します。 -
h2
: 個別の Pod を必要としないビルトインされたh2
データベースエンジン。
-
必要に応じて、データベースの永続ボリュームの設定パラメーターを指定します。
- また、Size フィールドに、永続ボリュームのサイズを入力します。
- StorageClass name フィールドで、永続ボリュームのストレージクラス名を入力します。
次のステップ
Finish をクリックしてから Deploy をクリックし、環境をデプロイします。
PIM サービスの使用に関する説明は、Business Central でのビジネスプロセスの管理と監視 の プロセスインスタンスの移行 を参照してください。
3.3. Operator を使用してデプロイした環境の変更
環境を Operator を使用してデプロイした場合は、通常の OpenShift の手法を使用して環境を変更することはできません。たとえば、デプロイメント設定またはサービスを削除しても、これは同じパラメーターで自動的に再作成されます。
環境を変更するには、環境の YAML の記述を変更する必要があります。パスワードなどの一般的な設定を変更し、KIE Server を追加してスケーリングできます。
手順
- OpenShift Web クラスターコンソールでプロジェクトに移動します。
- OpenShift Web コンソールナビゲーションパネルで Catalog → Installed operators または Operators → Installed operators を選択します。
-
表で
Business Automation
Operator 行を見つけ、その行でKieApp
をクリックします。この Operator を使用してデプロイした環境の情報が表示されます。 - デプロイした環境の名前をクリックします。
YAML タブを選択します。
YAML ソースが表示されます。YAML ソースの
spec:
でコンテンツを編集して、環境の設定を変更できます。Red Hat Process Automation Manager のデプロイバージョンを変更する場合は、
spec:
に以下の行を追加します。Copy to Clipboard Copied! Toggle word wrap Toggle overflow version: 7.13.5
version: 7.13.5
7.13.5
は、必要な別のバージョンに置き換えることができます。カスタムイメージを使用する場合など、自動更新が無効になっている場合は、この設定を使用して Red Hat Process Automation Manager を新規バージョンにアップグレードしてください。-
パスワードなどの共通の設定を変更するには、
commonConfig:
の値を編集します。 新しい KIE Server を追加する場合は、以下の例に示されているように、
servers:
のブロックの最後にそれらの記述を追加します。名前が
server-a
とserver-a-2
のサーバー 2 台を追加するには、以下の行を追加します。Copy to Clipboard Copied! Toggle word wrap Toggle overflow - deployments: 2 name: server-a
- deployments: 2 name: server-a
S2I プロセスのソースからビルドされるサービスを含む、イミュータブルな KIE Server を追加するには、以下の行を追加します。
Copy to Clipboard Copied! Toggle word wrap Toggle overflow - build: kieServerContainerDeployment: <deployment> gitSource: uri: <url> reference: <branch> contextDir: <directory>
- build: kieServerContainerDeployment: <deployment> gitSource: uri: <url> reference: <branch> contextDir: <directory>
以下の値を置き換えます。
-
<deployment>
: ソースからビルドしたデシジョンサービス (KJAR ファイル) の識別情報。形式は<containerId>=<groupId>:<artifactId>:<version>
になります。区切り記号|
を使用して 2 つ以上の KJAR ファイルを指定できます (例:containerId=groupId:artifactId:version|c2=g2:a2:v2
)。Maven ビルドプロセスは、Git リポジトリーのソースからこのようなファイルをすべて生成する必要があります。 -
<url>
: デシジョンサービスのソースを含む Git リポジトリーの URL。 -
<branch>
: Git リポジトリーのブランチ。 -
<directory>
: Git リポジトリーからダウンロードしたプロジェクトのソースへのパス。
-
-
KIE Server をスケーリングする場合は、
servers:
のブロックに含まれるサーバーの記述を検索して、その記述の下にreplicas:
設定を追加します。たとえば、replicas: 3
はサーバーを Pod 3 つにスケーリングします。 他に変更を加える場合は、利用可能な設定の CRD ソースを確認します。CRD ソースを表示するには、管理ユーザーで
oc
コマンドを使用して Red Hat OpenShift Container Platform 環境にログインし、以下のコマンドを入力します。Copy to Clipboard Copied! Toggle word wrap Toggle overflow oc get crd kieapps.app.kiegroup.org -o yaml
oc get crd kieapps.app.kiegroup.org -o yaml
-
Save をクリックしてから
has been updated
ポップアップメッセージを待機します。 - Reload をクリックして、環境の新しい YAML の記述を表示します。
3.4. Elytron ユーザー設定やその他の設定の指定
LDAP または RH-SSO 認証を使用しない場合は、Red Hat Process Automation は Red Hat JBoss EAP の Elytron サブシステムの内部ユーザーに依存します。デフォルトでは、管理ユーザーのみが作成されます。その他のユーザーを Red Hat JBoss EAP の Elytron security サブシステムに追加する必要がある場合があります。これには、Red Hat JBoss EAP 設定後スクリプトを実行する必要があります。
この設定後スクリプト、またはその他の Red Hat JBoss EAP 設定後スクリプトは、Red Hat OpenShift Container Platform への Red Hat Process Automation Manager のデプロイメントで設定できます。
手順
- GitHub リポジトリー からサンプルファイルをダウンロードします。
サンプルファイルに基づいて以下のファイルを準備します。
-
postconfigure.sh
: Red Hat JBoss EAP の実行に必要な設定後シェルスクリプト。この例では、このスクリプトはadd-users.cli
スクリプトを使用して Elytron ユーザーを追加します。CLI スクリプト以外の設定後タスクを実行する場合は、このスクリプトを変更します。 -
delayedpostconfigure.sh
: Red Hat Process Automation Manager バージョン 7.13.5 で必要な空のファイル。 add-users.cli
: Elytron ユーザーまたは他の CLI タスクを設定するための Red Hat JBoss EAP コマンドラインインターフェイススクリプト。以下の行の間にコマンドを追加します。Copy to Clipboard Copied! Toggle word wrap Toggle overflow embed-server --std-out=echo --server-config=standalone-openshift.xml batch <your jboss-cli commands> run-batch quit
embed-server --std-out=echo --server-config=standalone-openshift.xml batch <your jboss-cli commands> run-batch quit
-
-
oc
コマンドを使用して Red Hat OpenShift Container Platform クラスターにログインし、デプロイメントの namespace に移動します。 以下のコマンドを使用して、準備したファイルで ConfigMap を作成します。
Copy to Clipboard Copied! Toggle word wrap Toggle overflow oc create configmap postconfigure \ --from-file=add-users.cli=add-users.cli \ --from-file=delayedpostconfigure.sh=delayedpostconfigure.sh \ --from-file=postconfigure.sh=postconfigure.sh
oc create configmap postconfigure \ --from-file=add-users.cli=add-users.cli \ --from-file=delayedpostconfigure.sh=delayedpostconfigure.sh \ --from-file=postconfigure.sh=postconfigure.sh
以下のコマンドを入力して、
kieconfigs-7.13.5
Config Map を編集します。Copy to Clipboard Copied! Toggle word wrap Toggle overflow oc edit cm kieconfigs-7.13.5
oc edit cm kieconfigs-7.13.5
このファイルでは、
console:
セクションの配置設定を変更して Business Central に設定を追加し、servers:
セクションのすべての配置設定を変更して KIE Server インスタンスに設定を追加します。各デプロイメント設定で、以下の変更を加えます。
deploymentConfigs.metadata.spec.template.spec.containers.volumeMounts
の下に以下の行を追加します。Copy to Clipboard Copied! Toggle word wrap Toggle overflow - name: postconfigure-mount mountPath: /opt/eap/extensions
- name: postconfigure-mount mountPath: /opt/eap/extensions
deploymentConfigs.metadata.spec.template.spec.containers.volumeMounts
の下に以下の行を追加します。Copy to Clipboard Copied! Toggle word wrap Toggle overflow - name: "postconfigure-mount" configMap: name: "postconfigure" defaultMode: 0555
- name: "postconfigure-mount" configMap: name: "postconfigure" defaultMode: 0555
- ファイルを保存します。この時点以降、新規 Operator のデプロイメントには設定後の設定が含まれます。
既存のデプロイメントでは、設定後設定が自動的に追加されない場合には、Business Central および KIE Server Pod を削除できます。Operator は、設定後設定で更新バージョンを自動的に開始します。
3.5. JVM 設定パラメーター
Operator を使用して Red Hat Process Automation Manager をデプロイする場合は、必要に応じて Business Central および KIE Server の多数の JVM 設定パラメーターを設定できます。これらのパラメーターは、対応するコンテナーの環境変数を設定します。
以下の表では、Operator を使用して Red Hat Process Automation Manager をデプロイする際に設定できるすべての JVM 設定パラメーターのリストを表示しています。
デフォルト設定は、ほとんどのユースケースに最適です。必要な場合にのみ変更を行ってください。
設定フィールド | 環境変数 | 説明 | 例 |
---|---|---|---|
Java Opts の追加 | JAVA_OPTS_APPEND | JAVA_OPTS で生成されたオプションに追加されるユーザー指定の Java オプション。 |
|
Java 最大メモリー比 | JAVA_MAX_MEM_RATIO |
Java 仮想マシンに使用できるコンテナーメモリーの最大パーセンテージ。残りのメモリーはオペレーティングシステムに使用されます。デフォルト値は |
|
Java 初期メモリー比 | JAVA_INITIAL_MEM_RATIO |
Java 仮想マシンに最初に使用されるコンテナーメモリーの割合。デフォルト値は |
|
Java 最大初期メモリー | JAVA_MAX_INITIAL_MEM |
Java 仮想マシンで最初に使用できるメモリーの最大量 (メガバイト単位)。Java initial memory ratio パラメーターで設定されるように初期の割り当てメモリーがこの値よりも大きい場合、この値で設定されたメモリー量は |
|
Java 診断 | JAVA_DIAGNOSTICS | この設定を有効にすると、追加の JVM 診断情報の標準出力への出力が有効になります。デフォルトでは無効にされています。 |
|
Java デバッグ | JAVA_DEBUG |
この設定を有効にして、リモートデバッグをオンに切り替えます。デフォルトでは無効にされています。JVM オプション |
|
Java デバッグポート | JAVA_DEBUG_PORT |
リモートデバッグに使用されるポート。デフォルト値は |
|
GC の最小ヒープ解放比率 | GC_MIN_HEAP_FREE_RATIO |
拡張を回避するためのガベージコレクション (GC) 後のヒープ解放の最小パーセンテージ。JVM オプション |
|
GC の最大ヒープ解放比率 | GC_MAX_HEAP_FREE_RATIO |
縮小を回避するための GC 後のヒープ解放の最大パーセンテージ。JVM オプション |
|
GC 時間比率 | GC_TIME_RATIO |
ガベージコレクションに費やした時間に対する、ガベージコレクション外で費やした時間 (アプリケーションの実行に費やした時間など) の比率を指定します。JVM オプション |
|
GC 適応サイズポリシーの重み | GC_ADAPTIVE_SIZE_POLICY_WEIGHT |
以前の GC 時間に対する現在の GC 時間の重み付け。JVM オプション |
|
GC の最大メタスペースサイズ | GC_MAX_METASPACE_SIZE |
メタスペースの最大サイズ。JVM オプション |
|
3.6. KIE 設定と ConfigMaps
Red Hat Process Automation Manager をインストールすると、Operator は、現在の名前空間に対して kieconfig-$VERSION
という接頭辞が付いた YAML ファイルである ConfigMaps を作成します。ConfigMap は、その名前空間の Red Hat Process Automation Manager コンポーネントの DeploymentConfigs
、シークレット、ルート、およびサービスなどの機能の設定を含む YAML ファイルです。
ConfigMap の例
Please edit the object below. Lines beginning with a '#' will be ignored, and an empty file will abort the edit. If an error occurs while saving this file will be reopened with the relevant failures.
# Please edit the object below. Lines beginning with a '#' will be ignored,
# and an empty file will abort the edit. If an error occurs while saving this file will be
# reopened with the relevant failures.
#
apiVersion: v1
data:
mysql.yaml: |
## KIE Databases BEGIN
databases:
## RANGE BEGINS
#[[ range $index, $Map := .Databases ]]
…
Operator は、ConfigMaps を使用してコンポーネントを設定およびデプロイします。これには、KIE Server、Smart Router、Business Central などのサポートされているすべての Red Hat Process Automation Manager コンポーネントと、永続ボリューム、ビルド設定、ルートなどのサービス関連の設定が含まれます。ConfigMap を手動で編集する場合、Operator は、環境が調整されるときに新しい値を使用してデプロイメントを作成します。
Red Hat Process Automation Manager Operator は、現在のバージョンと以前のバージョンの Red Hat Process Automation Manager コンポーネントを同時に使用でき、バージョンごとに ConfigMaps (7.13.0 と 7.12.1 など) を使用できます。
- kieconfigs-7.13.5
これには、
common.yaml
設定ファイルが含まれています。詳細は、GitHub のcommon.yaml
を参照してください。この設定ファイルを使用して、次のコンポーネントを設定できます。-
サーバーオブジェクトである KIE Server は、
## KIE Servers BEGIN
プレースホルダーで識別されます。 -
コンソールオブジェクトである Business Central と Business Central Monitoring は、
common.yaml
の最初の行で定義されています。 -
smartrouter オブジェクトである Smartrouter は、
## KIE smartrouter BEGIN
プレースホルダーによって識別されます。
-
サーバーオブジェクトである KIE Server は、
kieconfigs-7.13.5
は、これら 3 つのコンポーネントに関連するルートとサービスも保持します。
- kieconfigs-7.13.5-dashbuilder
これには、Dashbuilder コンポーネントの設定 YAML ファイルが含まれています。
詳細は、GitHub の
rhpam-standalone-dashbuilder.yaml
を参照してください。- kieconfigs-7.13.5-dbs
これには、MySQL および PostgreSQL データベースの基本的な
DeploymentConfig
が含まれています。MySQL 設定の詳細は、GitHub の
mysql.yaml
を参照してください。PostgreSQL 設定の詳細は、GitHub の
postgresql.yaml
を参照してください。- kieconfigs-7.13.5-dbs-pim
これには、プロセスインスタンス移行 (PIM) がサポートするデータベース (external、MySQL、PostgreSQL) 用のスニペット設定が含まれています。
PIM 外部設定の詳細は、GitHub の
external.yaml
を参照してください。PIM MySQL 設定の詳細は、GitHub の
mysql.yaml
を参照してください。PIM PostgreSQL 設定の詳細は、GitHub の
postgresql.yaml
を参照してください。注記これらの YAML ファイルは、この configMap の
application.properties
を使用して設定された PIM データベースの特定の設定のみを保持します。- kieconfigs-7.13.5-dbs-servers
これには、サポートされているデータベース設定 (external、h2、MySQL、PostgreSQL) のスニペット設定が含まれています。
外部設定の詳細は、GitHub の
external.yaml
を参照してください。h2 設定の詳細は、GitHub の
h2.yaml
を参照してください。h2 設定は、実稼働環境ではサポートされていないことに注意してください。MySQL 設定の詳細は、GitHub の
mysql.yaml
を参照してください。PostgreSQL 設定の詳細は、GitHub の
postgresql.yaml
を参照してください。- kieconfigs-7.13.5-envs
これには、オーサリング環境やトライアル環境などの各 Red Hat Process Automation Manager 環境の特定の設定が含まれています。この ConfigMap には、次の YAML ファイルが含まれています。
- rhdm-authoring-ha.yaml
- rhdm-authoring.yaml
- rhdm-production-immutable.yaml
- rhdm-trial.yaml
- rhpam-authoring-ha.yaml
- rhpam-authoring.yaml
- rhpam-production-immutable.yaml
- rhpam-production.yaml
- rhpam-standalone-dashbuilder.yaml
rhpam-trial.yaml
各 Red Hat Process Automation Manager 環境の特定の設定に関する詳細は、GitHub の Red Hat Process Automation Manager 環境の ConfigMaps を参照してください。
- kieconfigs-7.13.5-jms
-
これには、JMS Executor が有効な場合の KIE Server の ActiveMQ 設定が含まれています。JMS Executor 設定の詳細は、GitHub の
activemq-jms-config
を参照してください。 - kieconfigs-7.13.5-pim
-
これには、プロセスインスタンス移行 (PIM) DeploymentConfig と関連する PIM 設定が含まれています。MySQL またはその他のデータベースを PIM で使用している場合は、
kieconfigs-7.13.5-dbs-pim
configMap を使用し、mysql.yaml
ファイルを編集する必要があります。
3.6.1. ConfigMaps の使用
ConfigMap を使用して Red Hat Process Automation Manager Operator をカスタマイズし、関連する設定を適用できます。ConfigMaps に変更を加えるには、oc
コマンドツールまたは Red Hat OpenShift Container Platform コンソールを使用します。
前提条件
- 現在の名前空間に Operator がインストールされている。
- KieApp が利用できる。
kieconfig-$VERSION-*
が利用可能です。kieconfig-$VERSION-*
が利用可能かどうかを確認するには、次のコマンドを実行します。Copy to Clipboard Copied! Toggle word wrap Toggle overflow oc get cm | grep kieconfigs
$ oc get cm | grep kieconfigs
oc get cm | grep kieconfigs
の出力例。Copy to Clipboard Copied! Toggle word wrap Toggle overflow kieconfigs-7.13.0 1 64m kieconfigs-7.13.0-dashbuilder 1 64m kieconfigs-7.13.0-dbs 2 64m kieconfigs-7.13.0-dbs-pim 3 64m kieconfigs-7.13.0-dbs-servers 4 64m kieconfigs-7.13.0-envs 10 64m kieconfigs-7.13.0-jms 1 64m kieconfigs-7.13.0-pim 1 64m kieconfigs-7.12.1 1 64m kieconfigs-7.12.1-dashbuilder 1 64m kieconfigs-7.12.1-dbs 2 64m kieconfigs-7.12.1-dbs-pim 3 64m kieconfigs-7.12.1-dbs-servers 4 64m kieconfigs-7.12.1-envs 10 64m kieconfigs-7.12.1-jms 1 64m kieconfigs-7.12.1-pim 1 64m
kieconfigs-7.13.0 1 64m kieconfigs-7.13.0-dashbuilder 1 64m kieconfigs-7.13.0-dbs 2 64m kieconfigs-7.13.0-dbs-pim 3 64m kieconfigs-7.13.0-dbs-servers 4 64m kieconfigs-7.13.0-envs 10 64m kieconfigs-7.13.0-jms 1 64m kieconfigs-7.13.0-pim 1 64m kieconfigs-7.12.1 1 64m kieconfigs-7.12.1-dashbuilder 1 64m kieconfigs-7.12.1-dbs 2 64m kieconfigs-7.12.1-dbs-pim 3 64m kieconfigs-7.12.1-dbs-servers 4 64m kieconfigs-7.12.1-envs 10 64m kieconfigs-7.12.1-jms 1 64m kieconfigs-7.12.1-pim 1 64m
手順
Business Central と KIE Server 用にレプリカが 1 つある
rhpam-authoring environment
を作成します。rhpam-authoring
の例:Copy to Clipboard Copied! Toggle word wrap Toggle overflow apiVersion: app.kiegroup.org/v2 kind: KieApp metadata: name: rhpam-authoring annotations: consoleName: rhpam-authoring consoleTitle: PAM Authoring consoleDesc: Deploys a PAM Authoring environment spec: environment: rhpam-authoring objects: servers: - replicas: 1 console: replicas: 1
apiVersion: app.kiegroup.org/v2 kind: KieApp metadata: name: rhpam-authoring annotations: consoleName: rhpam-authoring consoleTitle: PAM Authoring consoleDesc: Deploys a PAM Authoring environment spec: environment: rhpam-authoring objects: servers: - replicas: 1 console: replicas: 1
次のいずれかの手順を実行します。
oc
ツールで特定の ConfigMap を開くには、以下のコマンドを実行します。Copy to Clipboard Copied! Toggle word wrap Toggle overflow oc edit cm/<CONFIGMAP_NAME>
$ oc edit cm/<CONFIGMAP_NAME>
注記oc
ツールは、テキスト編集ツールのvim
に似ています。-
Red Hat OpenShift Container Platform コンソールを使用して特定の ConfigMap を開くには、ConfigMaps ページで
kieconfigs-7.13.5
に移動し、その YAML バージョンを開いて編集します。
YAML ファイルを変更するには、変更内容を含む
annotations
フィールドを追加します。以下に例を示します。Console.deploymentConfigs.metadata
に以下を追加します。Copy to Clipboard Copied! Toggle word wrap Toggle overflow annotations: my.custom.annotation/v1: v1-rhpam-app-console
annotations: my.custom.annotation/v1: v1-rhpam-app-console
KIE Server を更新するには、
## KIE Servers Start
プレースホルダー識別子に以下を追加します。Copy to Clipboard Copied! Toggle word wrap Toggle overflow annotations: my.custom.annotation/v1: v1-rhpam-app-kieserver
annotations: my.custom.annotation/v1: v1-rhpam-app-kieserver
注記また、この ConfigMap を使用して、Smart Router の設定を編集することもできます。
変更を保存するには、次のいずれかの手順を実行します。
-
oc
ツールエディターで、変更を保存して終了するには、:wq!
と入力します。 - Red Hat OpenShift Container Platform コンソールで、Red Hat OpenShift Container Platform コンソールを使用して変更を保存する場合は、Save をクリックします。
-
環境が実行されていて、Operator が変更されたコンポーネントの再デプロイメントを自動的に開始しなかった場合は、以下のステップを実行して、
oc
コマンドツールを使用してターゲットコンポーネントの DeploymentConfig を手動で削除する必要があります。DeploymentConfig を返すには、以下のコマンドを実行する。
Copy to Clipboard Copied! Toggle word wrap Toggle overflow oc get dc
$ oc get dc
oc get dc
の出力が返されます。oc get dc
の出力例です。Copy to Clipboard Copied! Toggle word wrap Toggle overflow oc get dc
$ oc get dc NAME REVISION DESIRED CURRENT TRIGGERED BY rhpam-authoring-kieserver 1 1 1 config rhpam-authoring-rhpamcentr 1 1 1 config
対象コンポーネントの DeploymentConfig を削除する場合は、以下のコマンドを実行すします。
Copy to Clipboard Copied! Toggle word wrap Toggle overflow oc delete dc/rhpam-authoring-kieserver
$ oc delete dc/rhpam-authoring-kieserver
Copy to Clipboard Copied! Toggle word wrap Toggle overflow oc delete dc/rhpam-authoring-rhpamcentr
$ oc delete dc/rhpam-authoring-rhpamcentr
デプロイメントは、ConfigMap で適用された変更内容で再デプロイされます。
KIE Server DeploymentConfig のアノテーションを確認することで、変更が適用されたことを確認するには、次のコマンドを実行します。
Copy to Clipboard Copied! Toggle word wrap Toggle overflow oc describe dc/rhpam-authoring-kieserver
$ oc describe dc/rhpam-authoring-kieserver
oc describe dc/rhpam-authoring-kieserver
の出力例です。Copy to Clipboard Copied! Toggle word wrap Toggle overflow Name: rhpam-authoring-kieserver Namespace: examplenamespace Created: 15 minutes ago Labels: app=rhpam-authoring application=rhpam-authoring service=rhpam-authoring-kieserver services.server.kie.org/kie-server-id=rhpam-authoring-kieserver Annotations: my.custom.annotation/v1=v1-rhpam-app-kieserver
Name: rhpam-authoring-kieserver Namespace: examplenamespace Created: 15 minutes ago Labels: app=rhpam-authoring application=rhpam-authoring service=rhpam-authoring-kieserver services.server.kie.org/kie-server-id=rhpam-authoring-kieserver Annotations: my.custom.annotation/v1=v1-rhpam-app-kieserver
3.7. KIE Server および Smart Router 用のカスタムイメージの作成
カスタムイメージを作成して、ファイルを KIE Server および Smart Router デプロイメントに追加できます。次に、イメージを独自のコンテナーレジストリーにプッシュする必要があります。Red Hat Process Automation Manager をデプロイする場合は、カスタムイメージを使用するように Operator を設定できます。
カスタムイメージを使用する場合は、自動のバージョンアップグレードを無効にする必要があります。新規バージョンをインストールする場合は、以前と同じ名前と、新規バージョンタグを指定してイメージをビルドし、レジストリーにそのイメージをプッシュします。その後にバージョンを変更すると、Operator が自動的に新規イメージをプルします。Operator での製品バージョンの変更に関する説明は、「Operator を使用してデプロイした環境の変更」 を参照してください。
特に、次のタイプのカスタムイメージを作成できます。
- 追加の RPM パッケージを含めた KIE Server のカスタムイメージ
- 追加の JAR クラスライブラリーを含めた KIE Server のカスタムイメージ
- カスタムルーティングを実装する追加の JAR クラスライブラリーが含まれる Smart Router のカスタムイメージ
3.7.1. 追加の RPM パッケージを含めたカスタムの KIE Server イメージの作成
追加の RPM パッケージのインストール先のカスタム KIE Server イメージを作成できます。このイメージをカスタムレジストリーにプッシュして、KIE Server のデプロイに使用できます。
Red Hat Enterprise Linux 8 リポジトリーから任意のパッケージをインストールできます。以下の例では、ps
ユーティリティーが含まれる procps-ng
パッケージをインストールしていますが、変更して他のパッケージをインストールすることができます。
手順
-
podman login
コマンドを使用してregistry.redhat.io
レジストリーの認証を行います。レジストリーの認証に関する詳細は、Red Hat コンテナーレジストリーの認証 を参照してください。 サポートされている KIE Server のベースイメージをダウンロードするには、次のコマンドを入力します。
Copy to Clipboard Copied! Toggle word wrap Toggle overflow podman pull registry.redhat.io/rhpam-7/rhpam-kieserver-rhel8:7.13.5
podman pull registry.redhat.io/rhpam-7/rhpam-kieserver-rhel8:7.13.5
ベースイメージをもとにカスタムイメージを定義する
Dockerfile
を作成します。このファイルで、現在のユーザーをroot
に変更して、yum
コマンドで RPM パッケージをインストールしてからUSER 185
(Red Hat JBoss EAP ユーザー) に戻します。以下の例では、Dockerfile
ファイルの内容を示します。Copy to Clipboard Copied! Toggle word wrap Toggle overflow FROM registry.redhat.io/rhpam-7/rhpam-kieserver-rhel8:7.13.5 USER root RUN yum -y install procps-ng USER 185
FROM registry.redhat.io/rhpam-7/rhpam-kieserver-rhel8:7.13.5 USER root RUN yum -y install procps-ng USER 185
必要に応じて RPM ファイルの名前を置き換えます。
yum
コマンドは自動的に Red Hat Enterprise Linux 8 リポジトリーからの全依存関係を自動的にインストールします。複数の RPM ファイルをインストールする必要がある場合があります。今回は、RUN
コマンドを複数回使用します。Dockerfile
を使用してカスタムイメージをビルドします。レジストリー名など、イメージの完全修飾名を指定します。ベースイメージと同じバージョンタグを使用する必要があります。イメージをビルドするには、以下のコマンドを入力します。Copy to Clipboard Copied! Toggle word wrap Toggle overflow podman build . --tag registry_address/image_name:7.13.5
podman build . --tag registry_address/image_name:7.13.5
以下に例を示します。
Copy to Clipboard Copied! Toggle word wrap Toggle overflow podman build . --tag registry.example.com/custom/rhpam-kieserver-rhel8:7.13.5
podman build . --tag registry.example.com/custom/rhpam-kieserver-rhel8:7.13.5
ビルドが完了したら、イメージを実行してログインし、カスタマイズが成功したことを確認します。以下のコマンドを入力します。
Copy to Clipboard Copied! Toggle word wrap Toggle overflow podman run -it --rm registry_address/image_name:7.13.5 /bin/bash
podman run -it --rm registry_address/image_name:7.13.5 /bin/bash
以下に例を示します。
Copy to Clipboard Copied! Toggle word wrap Toggle overflow podman run -it --rm registry.example.com/custom/rhpam-kieserver-rhel8:7.13.5 /bin/bash
podman run -it --rm registry.example.com/custom/rhpam-kieserver-rhel8:7.13.5 /bin/bash
イメージのシェルプロンプトで、コマンドを入力して RPM がインストールされていることをテストし、
exit
と入力します。たとえば、procps-ng
の場合はps
コマンドを実行します。Copy to Clipboard Copied! Toggle word wrap Toggle overflow ps exit
[jboss@c2fab36b778e ~]$ ps PID TTY TIME CMD 1 pts/0 00:00:00 bash 13 pts/0 00:00:00 ps [jboss@c2fab36b778e ~]$ exit
カスタムイメージをレジストリーにプッシュするには、次のコマンドを入力します。
Copy to Clipboard Copied! Toggle word wrap Toggle overflow podman push registry_address/image_name:7.13.5 docker://registry_address/image_name:7.13.5
podman push registry_address/image_name:7.13.5 docker://registry_address/image_name:7.13.5
以下に例を示します。
Copy to Clipboard Copied! Toggle word wrap Toggle overflow podman push registry.example.com/custom/rhpam-kieserver-rhel8:7.13.5 docker://registry.example.com/custom/rhpam-kieserver-rhel8:7.13.5
podman push registry.example.com/custom/rhpam-kieserver-rhel8:7.13.5 docker://registry.example.com/custom/rhpam-kieserver-rhel8:7.13.5
次のステップ
KIE Server をデプロイする場合は、イメージ名と namespace を設定してレジストリーにカスタムイメージを指定します。Set KIE Server image をクリックして、Kind の値を DockerImage に変更してから、バージョンタグがないレジストリー名など、イメージ名を指定します。以下に例を示します。
registry.example.com/custom/rhpam-kieserver-rhel8
registry.example.com/custom/rhpam-kieserver-rhel8
Operator を使用した KIE Server のデプロイに関する詳細は、「環境のカスタム KIE Server 設定の設定」 を参照してください。
3.7.2. 追加の JAR ファイルを使用したカスタム KIE Server イメージの作成
追加の JAR ファイル (単数、複数問わず) のインストール先のカスタムの KIE Server イメージを作成してサーバーの機能を拡張できます。このイメージをカスタムレジストリーにプッシュして、KIE Server のデプロイに使用できます。
たとえば、カスタムクラス JAR を作成して、カスタムの Prometheus メトリックを KIE Server に提供できます。カスタムクラスの作成手順は、KIE Server の管理とモニタリング の カスタムのメトリクスを使用した KIE Server の Prometheus メトリクスモニタリングの拡張 を参照してください。
手順
KIE Server で動作するカスタムライブラリーを開発します。以下のドキュメントと例を使用して、ライブラリーを開発できます。
-
JAR ファイルが
target
ディレクトリーに配置されるように Maven を使用してライブラリーをビルドします。この例では、custom-kieserver-ext-1.0.0.Final.jar
のファイル名を使用します。 -
podman login
コマンドを使用してregistry.redhat.io
レジストリーの認証を行います。レジストリーの認証に関する詳細は、Red Hat コンテナーレジストリーの認証 を参照してください。 サポートされている KIE Server のベースイメージをダウンロードするには、次のコマンドを入力します。
Copy to Clipboard Copied! Toggle word wrap Toggle overflow podman pull registry.redhat.io/rhpam-7/rhpam-kieserver-rhel8:7.13.5
podman pull registry.redhat.io/rhpam-7/rhpam-kieserver-rhel8:7.13.5
ベースイメージをもとにカスタムイメージを定義する
Dockerfile
を作成します。このファイルは JAR ファイル (単数、複数を問わず) を/opt/eap/standalone/deployments/ROOT.war/WEB-INF/lib/
ディレクトリーにコピーする必要があります。以下の例では、Dockerfile
ファイルの内容を示します。Copy to Clipboard Copied! Toggle word wrap Toggle overflow FROM registry.redhat.io/rhpam-7/rhpam-kieserver-rhel8:7.13.5 COPY target/custom-kieserver-ext-1.0.0.Final.jar /opt/eap/standalone/deployments/ROOT.war/WEB-INF/lib/
FROM registry.redhat.io/rhpam-7/rhpam-kieserver-rhel8:7.13.5 COPY target/custom-kieserver-ext-1.0.0.Final.jar /opt/eap/standalone/deployments/ROOT.war/WEB-INF/lib/
Dockerfile
を使用してカスタムイメージをビルドします。レジストリー名など、イメージの完全修飾名を指定します。ベースイメージと同じバージョンタグを使用する必要があります。イメージをビルドするには、以下のコマンドを入力します。Copy to Clipboard Copied! Toggle word wrap Toggle overflow podman build . --tag registry_address/image_name:7.13.5
podman build . --tag registry_address/image_name:7.13.5
以下に例を示します。
Copy to Clipboard Copied! Toggle word wrap Toggle overflow podman build . --tag registry.example.com/custom/rhpam-kieserver-rhel8:7.13.5
podman build . --tag registry.example.com/custom/rhpam-kieserver-rhel8:7.13.5
カスタムイメージをレジストリーにプッシュするには、次のコマンドを入力します。
Copy to Clipboard Copied! Toggle word wrap Toggle overflow podman push registry_address/image_name:7.13.5 docker://registry_address/image_name:7.13.5
podman push registry_address/image_name:7.13.5 docker://registry_address/image_name:7.13.5
以下に例を示します。
Copy to Clipboard Copied! Toggle word wrap Toggle overflow podman push registry.example.com/custom/rhpam-kieserver-rhel8:7.13.5 docker://registry.example.com/custom/rhpam-kieserver-rhel8:7.13.5
podman push registry.example.com/custom/rhpam-kieserver-rhel8:7.13.5 docker://registry.example.com/custom/rhpam-kieserver-rhel8:7.13.5
次のステップ
KIE Server をデプロイする場合は、イメージ名と namespace を設定してレジストリーにカスタムイメージを指定します。Set KIE Server image をクリックして、Kind の値を DockerImage に変更してから、バージョンタグがないレジストリー名など、イメージ名を指定します。以下に例を示します。
registry.example.com/custom/rhpam-kieserver-rhel8
registry.example.com/custom/rhpam-kieserver-rhel8
Operator を使用した KIE Server のデプロイに関する詳細は、「環境のカスタム KIE Server 設定の設定」 を参照してください。
3.7.3. カスタムルーティングを実装する追加の JAR ファイルを使用したカスタム Smart Router イメージの作成
デフォルトでは、Smart Router はコンテナーエイリアスに基づいて要求をルーティングします。複数の KIE Server が同じコンテナーエイリアスを持つサービスを提供している場合、Smart Router はそのエイリアス間の負荷を分散します。
場合によっては、カスタムのルーティング機能が必要になる場合があります。カスタムクラスを作成してカスタムルーティングを実装してから、クラスでカスタムの Smart Router イメージを作成できます。このイメージをカスタムレジストリーにプッシュして、Smart Router のデプロイに使用できます。
前提条件
- JDK および Apache Maven がインストールされている。
- Red Hat Process Automation Manager をデプロイするプロジェクトが Red Hat OpenShift Container Platform 環境に作成されている。
- Red Hat OpenShift Container Platform イメージレジストリーのルートを把握しており、イメージをレジストリーにプッシュするパーミッションがある。レジストリーの設定手順は、Red Hat OpenShift Container Platform の製品ドキュメントの Registry を参照してください。
手順
- GitHub リポジトリー から、ルーターエクステンションのサンプルソースをダウンロードします。
- 必要に応じて、ルーター拡張のサンプルソースを変更します。既存のコードは、コンテナーのバージョンに基づいて単純なルーティングを実装します。
Maven を使用してソースコードをビルドします。
Copy to Clipboard Copied! Toggle word wrap Toggle overflow mvn clean package
mvn clean package
ビルドプロセスにより JAR ファイル
target/router-ext-0.0.1-SNAPSHOT.jar
が生成されます。カスタムイメージを作成する作業ディレクトリーを作成し、生成された JAR ファイルをディレクトリーにコピーしてから、以下のようにディレクトリーに移動します。
Copy to Clipboard Copied! Toggle word wrap Toggle overflow mkdir /tmp/smartrouter cp target/router-ext-0.0.1-SNAPSHOT.jar /tmp/smartrouter cd /tmp/smartrouter
mkdir /tmp/smartrouter cp target/router-ext-0.0.1-SNAPSHOT.jar /tmp/smartrouter cd /tmp/smartrouter
-
podman login
コマンドを使用してregistry.redhat.io
レジストリーの認証を行います。レジストリーの認証に関する詳細は、Red Hat コンテナーレジストリーの認証 を参照してください。 サポートされている Smart Router のベースイメージをダウンロードするには、次のコマンドを入力します。
Copy to Clipboard Copied! Toggle word wrap Toggle overflow podman pull registry.redhat.io/rhpam-7/rhpam-smartrouter-rhel8:7.13.5
podman pull registry.redhat.io/rhpam-7/rhpam-smartrouter-rhel8:7.13.5
公式の Smart Router イメージから
openshift-launch.sh
ファイルをデプロイメントします。Copy to Clipboard Copied! Toggle word wrap Toggle overflow podman run --rm registry.redhat.io/rhpam-7/rhpam-smartrouter-rhel8:7.13.5 \ cat /opt/rhpam-smartrouter/openshift-launch.sh > openshift-launch.sh
podman run --rm registry.redhat.io/rhpam-7/rhpam-smartrouter-rhel8:7.13.5 \ cat /opt/rhpam-smartrouter/openshift-launch.sh > openshift-launch.sh
openshift-launch.sh
ファイルを編集します。ファイルの最後の行で、以下のようなexec
命令を探します。Copy to Clipboard Copied! Toggle word wrap Toggle overflow exec ${JAVA_HOME}/bin/java ${SHOW_JVM_SETTINGS} ${JAVA_OPTS} ${JAVA_OPTS_APPEND} ${JAVA_PROXY_OPTIONS} "${D_ARR[@]}" -jar /opt/${JBOSS_PRODUCT}/${KIE_ROUTER_DISTRIBUTION_JAR}
exec ${JAVA_HOME}/bin/java ${SHOW_JVM_SETTINGS} ${JAVA_OPTS} ${JAVA_OPTS_APPEND} ${JAVA_PROXY_OPTIONS} "${D_ARR[@]}" -jar /opt/${JBOSS_PRODUCT}/${KIE_ROUTER_DISTRIBUTION_JAR}
命令を以下のテキストに変更します。
Copy to Clipboard Copied! Toggle word wrap Toggle overflow exec ${JAVA_HOME}/bin/java ${SHOW_JVM_SETTINGS} "${D_ARR[@]}" \ -cp /opt/${JBOSS_PRODUCT}/router-ext-0.0.1-SNAPSHOT.jar:/opt/${JBOSS_PRODUCT}/${KIE_ROUTER_DISTRIBUTION_JAR} \ org.kie.server.router.KieServerRouter
exec ${JAVA_HOME}/bin/java ${SHOW_JVM_SETTINGS} "${D_ARR[@]}" \ -cp /opt/${JBOSS_PRODUCT}/router-ext-0.0.1-SNAPSHOT.jar:/opt/${JBOSS_PRODUCT}/${KIE_ROUTER_DISTRIBUTION_JAR} \ org.kie.server.router.KieServerRouter
この変更により、エクステンション JAR ファイルが Java クラスパスに追加されます。
ベースイメージをもとにカスタムイメージを定義する
Dockerfile
ファイルを作成します。以下の例では、Dockerfile
ファイルの内容を示します。Copy to Clipboard Copied! Toggle word wrap Toggle overflow FROM registry.redhat.io/rhpam-7/rhpam-smartrouter-rhel8:7.13.5 RUN rm -rfv /opt/rhpam-smartrouter/openshift-launch.sh COPY openshift-launch.sh /opt/rhpam-smartrouter/openshift-launch.sh COPY router-ext-0.0.1-SNAPSHOT.jar /opt/rhpam-smartrouter/router-ext-0.0.1-SNAPSHOT.jar USER root RUN chown jboss. /opt/rhpam-smartrouter/router-ext-0.0.1-SNAPSHOT.jar /opt/rhpam-smartrouter/openshift-launch.sh RUN chmod +x /opt/rhpam-smartrouter/openshift-launch.sh USER 185
FROM registry.redhat.io/rhpam-7/rhpam-smartrouter-rhel8:7.13.5 RUN rm -rfv /opt/rhpam-smartrouter/openshift-launch.sh COPY openshift-launch.sh /opt/rhpam-smartrouter/openshift-launch.sh COPY router-ext-0.0.1-SNAPSHOT.jar /opt/rhpam-smartrouter/router-ext-0.0.1-SNAPSHOT.jar USER root RUN chown jboss. /opt/rhpam-smartrouter/router-ext-0.0.1-SNAPSHOT.jar /opt/rhpam-smartrouter/openshift-launch.sh RUN chmod +x /opt/rhpam-smartrouter/openshift-launch.sh USER 185
このファイルには、以下のアクションが含まれます。
-
JAR ファイルおよび新規の
openshift-launch.sh
ファイルを追加します。 -
現在のユーザーを
root
に変更します。 -
openshift-launch.sh
ファイルに必要なパーミッションを設定します。 -
Red Hat JBoss EAP ユーザーである
USER 185
に戻ります。
-
JAR ファイルおよび新規の
-
oc
コマンドを使用して、Red Hat OpenShift Container Platform クラスターにログインします。 -
podman login
コマンドを使用して、Red Hat OpenShift Container Platform クラスターレジストリーにログインします。 Dockerfile
を使用してカスタムイメージをビルドします。Red Hat OpenShift Container Platform クラスターレジストリーおよびプロジェクト名前空間のイメージにタグを付けます。イメージのカスタム名と、ベースイメージのバージョンと同じバージョンタグを使用します。イメージをビルドするには、以下のコマンドを入力します。Copy to Clipboard Copied! Toggle word wrap Toggle overflow podman build . --tag registry-route/project-name_/image-name:7.13.5
podman build . --tag registry-route/project-name_/image-name:7.13.5
以下に例を示します。
Copy to Clipboard Copied! Toggle word wrap Toggle overflow podman build . --tag route-openshift-image-registry.openshift.example.com/rhpam-project/rhpam-smartrouter-rhel8-custom:7.13.5
podman build . --tag route-openshift-image-registry.openshift.example.com/rhpam-project/rhpam-smartrouter-rhel8-custom:7.13.5
ビルドが完了したら、イメージを実行して、カスタマイズが成功したことを確認します。以下のコマンドを入力します。
Copy to Clipboard Copied! Toggle word wrap Toggle overflow podman run registry-route/project-name/image-name:7.13.5
podman run registry-route/project-name/image-name:7.13.5
以下に例を示します。
Copy to Clipboard Copied! Toggle word wrap Toggle overflow podman run route-openshift-image-registry.openshift.example.com/rhpam-project/rhpam-smartrouter-rhel8-custom:7.13.5
podman run route-openshift-image-registry.openshift.example.com/rhpam-project/rhpam-smartrouter-rhel8-custom:7.13.5
以下の例のように、出力にカスタムサービスが記載されていることを確認します。
Copy to Clipboard Copied! Toggle word wrap Toggle overflow INFO: Using 'LatestVersionContainerResolver' container resolver and restriction policy 'ByPassUserNotAllowedRestrictionPolicy'
INFO: Using 'LatestVersionContainerResolver' container resolver and restriction policy 'ByPassUserNotAllowedRestrictionPolicy'
カスタムイメージをレジストリーにプッシュします。
Copy to Clipboard Copied! Toggle word wrap Toggle overflow podman push registry-route/project-name/image-name:7.13.5
podman push registry-route/project-name/image-name:7.13.5
以下に例を示します。
Copy to Clipboard Copied! Toggle word wrap Toggle overflow podman push route-openshift-image-registry.openshift.example.com/rhpam-project/rhpam-smartrouter-rhel8-custom:7.13.5
podman push route-openshift-image-registry.openshift.example.com/rhpam-project/rhpam-smartrouter-rhel8-custom:7.13.5
次のステップ
Red Hat Process Automation Manager をデプロイする場合は、Smart Router タブに以下の値を設定します。
-
イメージコンテキスト: プロジェクト名 (例:
rhpam-project
) -
イメージ: カスタムイメージ名 (例:
rhpam-smartrouter-rhel8-custom
)
Operator を使用した Smart Router のデプロイメント方法は、「環境の Smart Router 設定の設定」 を参照してください。
現在のバージョンタグの代わりにカスタムタグを使用することもできます。ただし、現行バージョンタグを使用する場合は、バージョンタグを使用して、新しいバージョンのイメージを作成できます。Red Hat Process Automation Manager のバージョンをアップグレードすると、新しいイメージが自動的に含まれます。Red Hat Process Automation Manager のバージョンをアップグレードする手順は、「Operator を使用してデプロイした環境の変更」 を参照してください。
カスタムタグを使用する場合は、Red Hat Process Automation Manager のデプロイ時に Smart Router タブで Image Tag の値をカスタムタグに設定します。
第4章 Red Hat OpenShift Container Platform での Dashbuilder Standalone のデプロイ
Dashbuilder Standalone を使用して、Business Central で作成してエクスポートした OpenShift のダッシュボードを表示できます。これは、Business Central がない環境でビジネスメトリックを確認する場合に役に立ちます。Dashbuilder Standalone Operator を使用して、他のサービスとは別に Red Hat OpenShift Container Platform に Dashbuilder Standalone をデプロイします。
前提条件
- Dashbuilder Standalone が OpenShift レジストリーで利用できる。
- 3章OpenShift Operator を使用した Red Hat Process Automation Manager 環境のデプロイと管理 の説明に従って、OpenShift 環境を準備している。
- Business Central にダッシュボードを作成し、エクスポートしている。
手順
- Installation ページの Application name フィールドにアプリケーションの名前を入力します。
-
Environment フィールドに、環境の名前を入力します (例:
rhpam-standalone-dashbuilder
)。 - Next をクリックします。
- 必要に応じて、Security ページで、LDAP または Red Hat Single Sign-On を設定します。
- Components ページで、Components リストから Dashbuilder を選択します。
KIE Server データセットを追加するには、以下のタスクを実行します。
注記この手順を繰り返して、KIE Server のデータセットを追加できます。
- Add new KIE Server DataSets をクリックします。
-
DataSet name フィールドに
kieserver-1
を入力します。 -
Kie Server Location フィールドに、KIE Server の場所を入力します (例:
https://my-kie-server:80/services/rest/server
)。 認証情報を設定するには、以下のタスクのいずれかを実行します。
- トークンが設定されていない場合は、Username フィールドおよび Password フィールドにユーザー名およびパスワードを入力します。Token フィールドを空白のままにします。
トークンがある場合は、Token フィールドにトークンを入力します。Username フィールドおよび Password フィールドは空白のままにします。
カスタムリソースの例:
Copy to Clipboard Copied! Toggle word wrap Toggle overflow apiVersion: app.kiegroup.org/v2 kind: KieApp metadata: name: standalone-dashbuilder spec: environment: rhpam-standalone-dashbuilder objects: dashbuilder: config: kieServerDataSets: - name: kieserver-1 location: 'https://my-kie-server:80/services/rest/server' user: kieserverAdmin password: kieserverAdminPwd replaceQuery: true
apiVersion: app.kiegroup.org/v2 kind: KieApp metadata: name: standalone-dashbuilder spec: environment: rhpam-standalone-dashbuilder objects: dashbuilder: config: kieServerDataSets: - name: kieserver-1 location: 'https://my-kie-server:80/services/rest/server' user: kieserverAdmin password: kieserverAdminPwd replaceQuery: true
KIE Server テンプレートを追加するには、以下のタスクを実行します。
注記この手順を繰り返して、追加の KIE Server テンプレートを追加できます。
- Add new KIE Server Templates をクリックします。
-
Template name フィールドに、テンプレートの名前を入力します (例:
kieserver-template
)。 -
KIE Server Location フィールドに、KIE Server の場所を入力します (例:
https://my-other-kie-server:80/services/rest/server
)。 認証情報を設定するには、以下のタスクのいずれかを実行します。
- トークンが設定されていない場合は、Username フィールドおよび Password フィールドにユーザー名およびパスワードを入力します。Token フィールドを空白のままにします。
トークンがある場合は、Token フィールドにトークンを入力します。Username フィールドおよび Password フィールドは空白のままにします。
Copy to Clipboard Copied! Toggle word wrap Toggle overflow apiVersion: app.kiegroup.org/v2 kind: KieApp metadata: name: standalone-dashbuilder spec: environment: rhpam-standalone-dashbuilder objects: dashbuilder: config: kieServerDataSets: - name: kieserver-1 location: 'https://my-kie-server:80/services/rest/server' user: kieserverAdmin password: kieserverAdminPwd replaceQuery: true kieServerTemplates: - name: kieserver-template location: 'https://my-another-kie-server:80/services/rest/server' user: user password: pwd replaceQuery: true
apiVersion: app.kiegroup.org/v2 kind: KieApp metadata: name: standalone-dashbuilder spec: environment: rhpam-standalone-dashbuilder objects: dashbuilder: config: kieServerDataSets: - name: kieserver-1 location: 'https://my-kie-server:80/services/rest/server' user: kieserverAdmin password: kieserverAdminPwd replaceQuery: true kieServerTemplates: - name: kieserver-template location: 'https://my-another-kie-server:80/services/rest/server' user: user password: pwd replaceQuery: true
オプション: 外部ルートにカスタムホスト名を設定するには、Dashbuilder 外部ルートで使用するカスタムホスト名 フィールドに、次の例のような書式でドメインを入力します。
Copy to Clipboard Copied! Toggle word wrap Toggle overflow `dashbuilder.example.com`
`dashbuilder.example.com`
注記カスタムホスト名は有効で解決可能である必要があります。
カスタムホスト名を変更するには、
routeHostname
プロパティーを変更します。オプション: Edge の終端ルートを有効にして設定するには、次の手順を実行します。
- Change route termination で Enable Edge termination を選択します。
- オプション: Key フィールドに、秘密鍵を入力します。
- オプション: Certificate フィールドに、証明書を入力します。
- オプション: CaCertificate フィールドに、CaCertificate を入力します。
4.1. Dashbuilder のスタンドアロン環境変数
Operator 内で Dashbuilder Container イメージを使用する場合は、環境変数を使用するか、Custom Resource を使用して Dashbuilder を設定できます。
パラメーター | 同等の環境変数 | 説明 | 値の例 |
---|---|---|---|
|
| 外部 (リモート) ファイルのダウンロードを許可します。デフォルト値は false です。 | False |
|
| 外部コンポーネントを有効にします。 | True |
|
| ランタイムモデル ID でコンポーネントのパーティション設定を有効にします。デフォルト値は true です。 | True |
|
| Dashbuilder 設定でプロパティーファイルを使用できるようにします。一意のプロパティーが追加され、プロパティーが複数設定されている場合は、プロパティーファイルのプロパティーが使用されます。 | True |
|
| ランタイムモデル ID でデータセット ID のパーティション設定を有効にします。デフォルト値は true です。 | True |
| — | Business Central と Dashbuilder の自動設定を行い、Business Central との統合を有効にします。Operator でのみ利用可能です。 | True |
| — | KIE Server と Dashbuilder の自動設定による KIE Server との統合を有効にします。Operator でのみ利用可能です。 | True |
|
|
ダッシュボードの ZIP ファイルが保存されるベースディレクトリーを設定します。 | — |
|
| 自動的に実行する静的ダッシュボードを設定します。このプロパティーが設定されていると、インポートは許可されません。 | — |
|
|
ダッシュボードの ZIP ファイルが保存されるベースディレクトリーを設定します。 | — |
|
| KIE Server データセットへのアクセス設定を定義します。 | — |
|
| KIE Server テンプレートへのアクセス設定を定義します。 | — |
|
| ファイルシステムからモデルファイルの自動削除を有効にします。デフォルト値は false です。 | False |
|
| Runtime がファイルシステムの最後の更新を確認してコンテンツを更新できます。デフォルト値は true です。 | True |
| `` |
Dashbuilder を一時的ではないものとして設定します。 | True |
|
| Runtime によるインポートの許可 (マルチテナンシー)。デフォルト値は false です。 | False |
|
| ダッシュボードのアップロードのサイズ制限を設定します (kb 単位)。デフォルト値は 10485760 kb です。 | 10485760 |
| — | コンテナーに存在する環境変数を表します。 | — |
Operator を使用して、env
プロパティーを使用して環境変数を設定できます。以下の例では、DASHBUILDER_UPLOAD_SIZE
プロパティーの値を 1000
に設定します。
apiVersion: app.kiegroup.org/v2 kind: KieApp metadata: name: standalone-dashbuilder spec: environment: rhpam-standalone-dashbuilder objects: dashbuilder: env: - name: DASHBUILDER_UPLOAD_SIZE value: '1000'
apiVersion: app.kiegroup.org/v2
kind: KieApp
metadata:
name: standalone-dashbuilder
spec:
environment: rhpam-standalone-dashbuilder
objects:
dashbuilder:
env:
- name: DASHBUILDER_UPLOAD_SIZE
value: '1000'
第5章 Red Hat OpenShift Container Platform 3 のデプロイメントからの情報の移行
以前に Red Hat OpenShift Container Platform 3 で Red Hat Process Automation Manager デプロイメントを使用していた場合は、バジョン 3 のデプロイメントから Red Hat OpenShift Container Platform 4 の新しいデプロイメントに情報を移行できます。
情報を移行する前に、Operator を使用して、新しい Red Hat Process Automation Manager インフラストラクチャーを Red Hat OpenShift Container Platform 4 にデプロイする必要があります。以前のインフラストラクチャーのデプロイメントに存在する要素を、新しいデプロイメントにも追加します。以下に例を示します。
- 既存のオーサリングデプロイメントの場合は、Business Central と最低でも KIE Server 1 台を含めて新しいオーサリングインフラストラクチャーを作成します。
- 既存のイミュータブル KIE Server の場合は、同じアーティファクトで新しいイミュータブル KIE Server をデプロイします。
- MySQL または PostgreSQL データベース Pod を使用する既存の KIE Server の場合は、データベース Pod のタイプが同じ KIE Server を新たにデプロイします。
- 外部データベースサーバーを使用する既存の KIE Server の場合には、同じ認証情報、同じ外部データベースサーバーを使用する KIE Server を新たにデプロイします。このサーバーは、同じデータベースに接続するため、プロセスコンテンツの状態を読み込むことができます。
KIE Server が H2 ビルトインのデータベースを使用する場合、プロセスコンテキストの状態の移行はサポートされません。
Smart Router では、移行は必要ありません。Smart Router の新規デプロイメントは、自動的に新しい KIE Server 上のサービスと連携します。
5.1. Business Central での情報の移行
Red Hat OpenShift Container Platform 3 に、既存のオーサリング環境がある場合は、この環境の Business Central から .niogit
リポジトリーと Maven リポジトリーを Red Hat OpenShift Container Platform 4 の新規デプロイメントにある Business Central にコピーします。このアクションで、新しいデプロイメントにすべて同じプロジェクトとアーティファクトが作成されます。
前提条件
- Red Hat OpenShift Container Platform 3 および Red Hat OpenShift Container Platform 4 のインフラストラクチャーの両方に、ネットワークでアクセスできるマシンが必要です。
-
対象のマシンに Red Hat OpenShift Container Platform 4 からの
oc
コマンドラインクライアントをインストールしておく必要があります。コマンドラインクライアントのインストール方法は、Red Hat OpenShift Container Platform ドキュメントの CLI tools を参照してください。
手順
- Business Central や KIE Server など、以前のデプロイメントや新しいデプロイメントの要素に接続されている Web クライアントやクライアントアプリケーションがないことを確認します。
- 空の一時ディレクトリーを作成して、そのディレクトリーに移動します。
-
oc
コマンドを使用して、Red Hat OpenShift Container Platform 3 インフラストラクチャーにログインし、以前のデプロイメントが含まれるプロジェクトに切り替えます。 以前のデプロイメントにある Pod 名を表示するには、以下のコマンドを実行します。
Copy to Clipboard Copied! Toggle word wrap Toggle overflow oc get pods
oc get pods
Business Central の Pod を検索します。この Pod の名前には
rhpamcentr
が含まれます。高可用性のデプロイメントでは、Business Central Pod はどれでも使用できます。以下の例のように、
oc
コマンドを使用して、.niogit
リポジトリーと Maven リポジトリーを Pod からローカルマシンにコピーします。Copy to Clipboard Copied! Toggle word wrap Toggle overflow oc cp myapp-rhpamcentr-5-689mw:/opt/kie/data/.niogit .niogit oc cp myapp-rhpamcentr-5-689mw:/opt/kie/data/maven-repository maven-repository
oc cp myapp-rhpamcentr-5-689mw:/opt/kie/data/.niogit .niogit oc cp myapp-rhpamcentr-5-689mw:/opt/kie/data/maven-repository maven-repository
-
oc
コマンドを使用して、Red Hat OpenShift Container Platform 4 インフラストラクチャーにログインし、新しいデプロイメントが含まれるプロジェクトに切り替えます。 新しいデプロイメントにある Pod 名を表示するには、以下のコマンドを実行します。
Copy to Clipboard Copied! Toggle word wrap Toggle overflow oc get pods
oc get pods
Business Central の Pod を検索します。この Pod の名前には
rhpamcentr
が含まれます。高可用性のデプロイメントでは、Business Central Pod はどれでも使用できます。以下の例のように、
oc
コマンドを使用して、.niogit
リポジトリーと Maven リポジトリーをローカルマシンから Pod にコピーします。Copy to Clipboard Copied! Toggle word wrap Toggle overflow oc cp .niogit myappnew-rhpamcentr-abd24:/opt/kie/data/.niogit oc cp maven-repository myappnew-rhpamcentr-abd24:/opt/kie/data/maven-repository
oc cp .niogit myappnew-rhpamcentr-abd24:/opt/kie/data/.niogit oc cp maven-repository myappnew-rhpamcentr-abd24:/opt/kie/data/maven-repository
5.2. KIE Server の MySQL データベースの移行
Red Hat OpenShift Container Platform 3 の環境に、MySQL データベース Pod を使用する KIE Server が含まれる場合は、MySQL データベースコンテンツを、以前のデプロイメントから新しいデプロイメントにコピーします。このアクションにより、既存のプロセスの状態が新しいデプロイメントにコピーされます。
前提条件
- Red Hat OpenShift Container Platform 3 および Red Hat OpenShift Container Platform 4 のインフラストラクチャーの両方に、ネットワークでアクセスできるマシンが必要です。
-
対象のマシンに Red Hat OpenShift Container Platform 4 からの
oc
コマンドラインクライアントをインストールしておく必要があります。コマンドラインクライアントのインストール方法は、Red Hat OpenShift Container Platform ドキュメントの CLI tools を参照してください。 -
MySQL バージョン 8 以降または MariaDB バージョン 10 以降で提供されるクライアントアプリケーション
mysql
およびmysqldump
がインストールされている。
手順
- Business Central や KIE Server など、以前のデプロイメントや新しいデプロイメントの要素に接続されている Web クライアントやクライアントアプリケーションがないことを確認します。
- 空の一時ディレクトリーを作成して、そのディレクトリーに移動します。
-
oc
コマンドを使用して、Red Hat OpenShift Container Platform 3 インフラストラクチャーにログインし、以前のデプロイメントが含まれるプロジェクトに切り替えます。 以前のデプロイメントにあるデプロイメント設定名を表示するには、以下のコマンドを実行します。
Copy to Clipboard Copied! Toggle word wrap Toggle overflow oc get dc
oc get dc
必要な KIE Server イン寸タンスに対応する
mysql
デプロイメント設定を検索します。以下のようにデプロイメント設定の YAML を表示します。
Copy to Clipboard Copied! Toggle word wrap Toggle overflow oc edit dc/myapp-mysql
oc edit dc/myapp-mysql
以下のように、このファイルでデータベースサーバーのユーザー名 (通常
rhpam
) およびパスワードを検索します。Copy to Clipboard Copied! Toggle word wrap Toggle overflow - name: MYSQL_USER value: rhpam - name: MYSQL_PASSWORD value: NDaJIV7!
- name: MYSQL_USER value: rhpam - name: MYSQL_PASSWORD value: NDaJIV7!
ユーザー名とパスワードを記録します。ファイルに変更を加えないでください。
注記次のコマンドを使用して、ユーザー名とパスワードを取得することもできます。
Copy to Clipboard Copied! Toggle word wrap Toggle overflow oc get dc/myapp-mysql -ojsonpath='{.spec.template.spec.containers[0].env[?(@.name=="MYSQL_USER")]}'.value oc get dc/myapp-mysql -ojsonpath='{.spec.template.spec.containers[0].env[?(@.name=="MYSQL_PASSWORD")]}'.value
oc get dc/myapp-mysql -ojsonpath='{.spec.template.spec.containers[0].env[?(@.name=="MYSQL_USER")]}'.value oc get dc/myapp-mysql -ojsonpath='{.spec.template.spec.containers[0].env[?(@.name=="MYSQL_PASSWORD")]}'.value
以前のデプロイメントにあるサービス名を表示するには、以下のコマンドを実行します。
Copy to Clipboard Copied! Toggle word wrap Toggle overflow oc get svc
oc get svc
必要な KIE Server インスタンスに対応する
mysql
サービスを検索します。以下の例のように、別のターミナルウィンドウで、サービスの名前およびポート番号を使用してローカルホストから
mysql
サービスへのポート転送を開始します。Copy to Clipboard Copied! Toggle word wrap Toggle overflow oc port-forward service/myapp-mysql 3306:3306
oc port-forward service/myapp-mysql 3306:3306
以下の例のように、記録したユーザー名を使用して、フルデータベースダンプを作成します。
Copy to Clipboard Copied! Toggle word wrap Toggle overflow mysqldump --all-databases -u rhpam -p -h 127.0.0.1 > mysqldump.sql
mysqldump --all-databases -u rhpam -p -h 127.0.0.1 > mysqldump.sql
プロンプトが表示されたら、記録したパスワードを入力します。ダンプの作成にはかなり時間がかかる場合があります。
- Ctrl+C のキーボードの組み合わせを使用して、別のウィンドウのポート転送を停止します。
-
oc
コマンドを使用して、Red Hat OpenShift Container Platform 4 インフラストラクチャーにログインし、新しいデプロイメントが含まれるプロジェクトに切り替えます。 新しいデプロイメントにあるデプロイメント設定名を表示するには、以下のコマンドを実行します。
Copy to Clipboard Copied! Toggle word wrap Toggle overflow oc get dc
oc get dc
必要な KIE Server イン寸タンスに対応する
mysql
デプロイメント設定を検索します。以下のようにデプロイメント設定の YAML を表示します。
Copy to Clipboard Copied! Toggle word wrap Toggle overflow oc edit dc/myappnew-mysql
oc edit dc/myappnew-mysql
このファイルでデータベースサーバーのユーザー名 (通常
rhpam
) およびパスワードを検索します。ユーザー名とパスワードを記録します。ファイルに変更を加えないでください。注記次のコマンドを使用して、ユーザー名とパスワードを取得することもできます。
Copy to Clipboard Copied! Toggle word wrap Toggle overflow oc get dc/myapp-mysql -ojsonpath='{.spec.template.spec.containers[0].env[?(@.name=="MYSQL_USER")]}'.value oc get dc/myapp-mysql -ojsonpath='{.spec.template.spec.containers[0].env[?(@.name=="MYSQL_PASSWORD")]}'.value
oc get dc/myapp-mysql -ojsonpath='{.spec.template.spec.containers[0].env[?(@.name=="MYSQL_USER")]}'.value oc get dc/myapp-mysql -ojsonpath='{.spec.template.spec.containers[0].env[?(@.name=="MYSQL_PASSWORD")]}'.value
新しいデプロイメントにあるサービス名を表示するには、次のコマンドを実行します。
Copy to Clipboard Copied! Toggle word wrap Toggle overflow oc get svc
oc get svc
必要な KIE Server インスタンスに対応する
mysql
サービスを検索します。以下の例のように、別のターミナルウィンドウで、サービスの名前およびポート番号を使用してローカルホストから
mysql
サービスへのポート転送を開始します。Copy to Clipboard Copied! Toggle word wrap Toggle overflow oc port-forward service/myappnew-mysql 3306:3306
oc port-forward service/myappnew-mysql 3306:3306
以下のように、記録したユーザー名を使用してデータベースのダンプを復元します。
Copy to Clipboard Copied! Toggle word wrap Toggle overflow mysql -u rhpam -p -h 127.0.0.1 < mysqldump.sql
mysql -u rhpam -p -h 127.0.0.1 < mysqldump.sql
プロンプトが表示されたら、記録したパスワードを入力します。復元にはかなり時間がかかる場合があります。
- Ctrl+C のキーボードの組み合わせを使用して、別のウィンドウのポート転送を停止します。
5.3. KIE Server の PostgreSQL データベースの移行
Red Hat OpenShift Container Platform 3 の環境に、PostgreSQL データベース Pod を使用する KIE Server が含まれる場合は、PostgreSQL データベースコンテンツを、以前のデプロイメントから新しいデプロイメントにコピーします。このアクションにより、既存のプロセスの状態が新しいデプロイメントにコピーされます。
前提条件
- Red Hat OpenShift Container Platform 3 および Red Hat OpenShift Container Platform 4 のインフラストラクチャーの両方に、ネットワークでアクセスできるマシンが必要です。
-
対象のマシンに Red Hat OpenShift Container Platform 4 からの
oc
コマンドラインクライアントをインストールしておく必要があります。コマンドラインクライアントのインストール方法は、Red Hat OpenShift Container Platform ドキュメントの CLI tools を参照してください。 -
PostgreSQL バージョン 10 以降で提供される
psql
およびpg_dump
クライアントアプリケーションがインストールされている。
手順
- Business Central や KIE Server など、以前のデプロイメントや新しいデプロイメントの要素に接続されている Web クライアントやクライアントアプリケーションがないことを確認します。
- 空の一時ディレクトリーを作成して、そのディレクトリーに移動します。
-
oc
コマンドを使用して、Red Hat OpenShift Container Platform 3 インフラストラクチャーにログインし、以前のデプロイメントが含まれるプロジェクトに切り替えます。 以前のデプロイメントにあるデプロイメント設定名を表示するには、以下のコマンドを実行します。
Copy to Clipboard Copied! Toggle word wrap Toggle overflow oc get dc
oc get dc
必要な KIE Server インスタンスに対応する
postgresql
デプロイメント設定を検索します。以下のようにデプロイメント設定の YAML を表示します。
Copy to Clipboard Copied! Toggle word wrap Toggle overflow oc edit dc/myapp-postgresql
oc edit dc/myapp-postgresql
以下のように、このファイルで、データベースサーバーのユーザー名 (通常
rhpam
)、パスワード、およびデータベース名 (通常rhpam7
) を検索します。Copy to Clipboard Copied! Toggle word wrap Toggle overflow - name: POSTGRESQL_USER value: rhpam - name: POSTGRESQL_PASSWORD value: NDaJIV7! - name: POSTGRESQL_DATABASE value: rhpam7
- name: POSTGRESQL_USER value: rhpam - name: POSTGRESQL_PASSWORD value: NDaJIV7! - name: POSTGRESQL_DATABASE value: rhpam7
ユーザー名、パスワード、およびデータベース名を記録します。ファイルに変更を加えないでください。
注記次のコマンドを使用して、ユーザー名とパスワード、データベース名を取得することもできます。
Copy to Clipboard Copied! Toggle word wrap Toggle overflow oc get dc/myapp-postgresql -ojsonpath='{.spec.template.spec.containers[0].env[?(@.name=="POSTGRESQL_USER")]}'.value oc get dc/myapp-postgresql -ojsonpath='{.spec.template.spec.containers[0].env[?(@.name=="POSTGRESQL_PASSWORD")]}'.value oc get dc/myapp-postgresql -ojsonpath='{.spec.template.spec.containers[0].env[?(@.name=="POSTGRESQL_DATABASE")]}'.value
oc get dc/myapp-postgresql -ojsonpath='{.spec.template.spec.containers[0].env[?(@.name=="POSTGRESQL_USER")]}'.value oc get dc/myapp-postgresql -ojsonpath='{.spec.template.spec.containers[0].env[?(@.name=="POSTGRESQL_PASSWORD")]}'.value oc get dc/myapp-postgresql -ojsonpath='{.spec.template.spec.containers[0].env[?(@.name=="POSTGRESQL_DATABASE")]}'.value
以前のデプロイメントにあるサービス名を表示するには、以下のコマンドを実行します。
Copy to Clipboard Copied! Toggle word wrap Toggle overflow oc get svc
oc get svc
必要な KIE Server インスタンスに対応する
postgresql
サービスを検索します。以下の例のように、別のターミナルウィンドウで、サービスの名前およびポート番号を使用してローカルホストから
postgresql
サービスへのポート転送を開始します。Copy to Clipboard Copied! Toggle word wrap Toggle overflow oc port-forward service/myapp-postgresql 5432:5432
oc port-forward service/myapp-postgresql 5432:5432
以下のように、記録したユーザー名とデータベース名を使用して、データベースのダンプを作成します。
Copy to Clipboard Copied! Toggle word wrap Toggle overflow pg_dump rhpam7 -h 127.0.0.1 -U rhpam -W > pgdump.sql
pg_dump rhpam7 -h 127.0.0.1 -U rhpam -W > pgdump.sql
プロンプトが表示されたら、記録したパスワードを入力します。ダンプの作成にはかなり時間がかかる場合があります。
- Ctrl+C のキーボードの組み合わせを使用して、別のウィンドウのポート転送を停止します。
-
oc
コマンドを使用して、Red Hat OpenShift Container Platform 4 インフラストラクチャーにログインし、新しいデプロイメントが含まれるプロジェクトに切り替えます。 新しいデプロイメントにあるデプロイメント設定名を表示するには、以下のコマンドを実行します。
Copy to Clipboard Copied! Toggle word wrap Toggle overflow oc get dc
oc get dc
必要な KIE Server インスタンスに対応する
postgresql
デプロイメント設定を検索します。以下のようにデプロイメント設定の YAML を表示します。
Copy to Clipboard Copied! Toggle word wrap Toggle overflow oc edit dc/myappnew-postgresql
oc edit dc/myappnew-postgresql
このファイルで、データベースサーバーのユーザー名 (通常
rhpam
)、パスワード、およびデータベース名 (通常rhpam7
) を検索します。ユーザー名、パスワード、およびデータベース名を記録します。ファイルに変更を加えないでください。注記次のコマンドを使用して、ユーザー名とパスワード、データベース名を取得することもできます。
Copy to Clipboard Copied! Toggle word wrap Toggle overflow oc get dc/myapp-postgresql -ojsonpath='{.spec.template.spec.containers[0].env[?(@.name=="POSTGRESQL_USER")]}'.value oc get dc/myapp-postgresql -ojsonpath='{.spec.template.spec.containers[0].env[?(@.name=="POSTGRESQL_PASSWORD")]}'.value oc get dc/myapp-postgresql -ojsonpath='{.spec.template.spec.containers[0].env[?(@.name=="POSTGRESQL_DATABASE")]}'.value
oc get dc/myapp-postgresql -ojsonpath='{.spec.template.spec.containers[0].env[?(@.name=="POSTGRESQL_USER")]}'.value oc get dc/myapp-postgresql -ojsonpath='{.spec.template.spec.containers[0].env[?(@.name=="POSTGRESQL_PASSWORD")]}'.value oc get dc/myapp-postgresql -ojsonpath='{.spec.template.spec.containers[0].env[?(@.name=="POSTGRESQL_DATABASE")]}'.value
新しいデプロイメントにあるサービス名を表示するには、次のコマンドを実行します。
Copy to Clipboard Copied! Toggle word wrap Toggle overflow oc get svc
oc get svc
必要な KIE Server インスタンスに対応する
postgresql
サービスを検索します。以下の例のように、別のターミナルウィンドウで、サービスの名前およびポート番号を使用してローカルホストから
postgresql
サービスへのポート転送を開始します。Copy to Clipboard Copied! Toggle word wrap Toggle overflow oc port-forward service/myappnew-postgresql 5432:5432
oc port-forward service/myappnew-postgresql 5432:5432
以下のように、記録したユーザー名、データベース名を使用してデータベースのダンプを復元します。
Copy to Clipboard Copied! Toggle word wrap Toggle overflow psql -h 127.0.0.1 -d rhpam7 -U rhpam -W < pgdump.sql
psql -h 127.0.0.1 -d rhpam7 -U rhpam -W < pgdump.sql
プロンプトが表示されたら、記録したパスワードを入力します。復元にはかなり時間がかかる場合があります。
表示されたデータベースエラーメッセージを確認します。現存するオブジェクトに関するメッセージは正常です。
- Ctrl+C のキーボードの組み合わせを使用して、別のウィンドウのポート転送を停止します。
付録A バージョン情報
このドキュメントの最終更新日: 2024 年 3 月 14 日 (木)
付録B お問い合わせ先
Red Hat Process Automation Manager のドキュメントチーム: brms-docs@redhat.com