第4章 外部の Maven リポジトリーを使用したデシジョンサービスのデプロイメント
外部の Maven リポジトリー (Nexus など) を使用して、統合プロセスを設定できます。ビルドインリポジトリーではなく、外部リポジトリーにデシジョンサービスをプッシュするように、Decision Central を設定できます。
Decision Central を使用して、テスト環境の Decision Server にデシジョンサービスをデプロイできますが、このプロセスでは、(ステージングやプロダクションなどの) その他の Decision Server が Decision Central に接続されません。代わりに、デシジョンサービスの KJAR ファイルと、必要な依存関係を Maven リポジトリーから取得します。必要に応じて、実装する統合プロセスと一致するリポジトリーから KJAR バージョンを処理できます。
Decision Server を OpenShift にデプロイする場合は、デシジョンサービスを Maven リポジトリーから自動的にロードして起動するように設定できます。
オンプレミスに Decision Server をデプロイする場合は、サーバーに設定するときに Maven リポジトリーへのアクセスを設定できます。次に、このサーバーの REST API を使用して、リポジトリーからデシジョンサービスをロードして起動できます。API コールの自動化には、Maven プロジェクトおよび Java クライアントライブラリーが利用できます。
4.1. 外部 Maven リポジトリーを使用するように Decision Central の設定 リンクのコピーリンクがクリップボードにコピーされました!
ビルドインリポジトリーの代わりに外部の Maven リポジトリーを使用するように Decision Central を設定できます。この場合、Decision Central は、このリポジトリーにビルドの KJAR ファイルをすべてプッシュします。このファイルは、統合プロセスを実装する場合に必要に応じてリポジトリーから処理できます。
OpenShift にデプロイした Decision Central で、外部 Maven リポジトリーを使用することはサポートされていません。
手順
- Decision Central をインストールします。インストール方法は『Red Hat Decision Manager のオンプレミスインストール』を参照してください。
-
外部リポジトリーへの接続およびアクセスの詳細を含む Maven
settings.xmlファイルを作成します。settings.xmlファイルの詳細は、Maven ドキュメンテーション https://maven.apache.org/settings.html を参照してください。 <eap_home>/standalone/configuration/standalone.xmlファイルの<system-properties>タグで、以下のようにkie.maven.settings.customプロパティーにsettings.xmlファイルのフルパス名を設定します。<property name="kie.maven.settings.custom" value="/opt/custom-config/settings.xml"/>- Decision Central を起動または再起動します。
4.2. デシジョンサービスを実行するように Decision Server の設定 リンクのコピーリンクがクリップボードにコピーされました!
Decision Central を使用せずに、デシジョンサービスを自動的にロードして実行するように Decision Server を設定できます。このサービスは Maven リポジトリーに存在する必要があります。リポジトリーへのアクセス情報と、サービスの GAV 値が必要です。また、後でこのサーバーからサービスを停止して削除することもできます。Decision Server に、同時に複数のサービスを起動することもできます。
この手順は、OpenShift にデプロイした Decision Server では行わないでください。Maven リポジトリーからデシジョンサービスをロードして実行するように Decision Server を設定する方法は『Red Hat OpenShift Container Platform への Red Hat Decision Manager のデプロイメント』を参照してください。
4.2.1. Maven リポジトリーを使用するように Decision Server の設定 リンクのコピーリンクがクリップボードにコピーされました!
Decision Server のデシジョンサービスをロードして起動する前に、Maven リポジトリーを使用するようにサーバーを設定する必要があります。
手順
- Decision Server をインストールします。インストール方法は『Red Hat Decision Manager のオンプレミスインストール』を参照してください。
-
外部リポジトリーへの接続およびアクセスの詳細を含む Maven
settings.xmlファイルを作成します。settings.xmlファイルの詳細は、Maven ドキュメンテーション https://maven.apache.org/settings.html を参照してください。 <eap_home>/standalone/configuration/standalone.xmlファイルの<system-properties>タグで、以下のようにkie.maven.settings.customプロパティーにsettings.xmlファイルのフルパス名を設定します。<property name="kie.maven.settings.custom" value="/opt/custom-config/settings.xml"/>- Decision Server を起動または再起動します。
4.2.2. Decision Server へのサービスのロードおよび起動 リンクのコピーリンクがクリップボードにコピーされました!
Maven リポジトリーを使用するように Decision Server を設定すると、API コールを使用してサービスをロードできます。このサービスは自動的に起動します。
手順
Decision Server のコンテナーにサービスをロードして起動するには、以下のコマンドを実行して、API リクエストを送信します。
$ curl --user "<username>:<password>" -H "Content-Type: application/json" -X PUT -d '{"container-id" : "<containerID>","release-id" : {"group-id" : "<groupID>","artifact-id" : "<artifactID>","version" : "<version>"}}' http://<serverhost>:<serverport>/kie-server/services/rest/server/containers/<containerID>ここでは、
- <username> は、Decision Server にログオンして管理を行うアカウントのユーザー名です。
- <password> は、アカウントのパスワードです。
- <containerID> は、コンテナーの識別子です。ランダムの識別子を使用することもできますが、コマンドの URL およびデータの両方で同じものを使用する必要があります。
- <groupID>、<artifactID>、version は GAV 値です。
-
<serverhost> は、KIE サーバーのホスト名です。KIE サーバーと同じホストでコマンドを実行する場合は
localhostになります。 <serverport> は、KIE サーバーのポート番号です。
例:
curl --user "rhdmAdmin:password@1" -H "Content-Type: application/json" -X PUT -d '{"container-id" : "kie1","release-id" : {"group-id" : "org.kie.server.testing","artifact-id" : "container-crud-tests1","version" : "2.1.0.GA"}}' http://localhost:39043/kie-server/services/rest/server/containers/kie1
4.2.3. サービスの停止および Decision Server から削除 リンクのコピーリンクがクリップボードにコピーされました!
API コールを使用して、Decision Server サービスを停止および削除できます。サービスをロードする際に設定したコンテナー識別子が必要です。
手順
Decision Server のサービスを使用してコンテナーを停止および削除するには、以下のコマンドを実行して API リクエストを送信します。
$ curl --user "<username>:<password>" -X DELETE http://<serverhost>:<serverport>/kie-server/services/rest/server/containers/<containerID>ここでは、
- <username> は、Decision Server にログオンして管理を行うアカウントのユーザー名です。
- <password> は、アカウントのパスワードです。
- <containerID> は、コンテナーの識別子です。
-
<serverhost> は、KIE サーバーのホスト名です。KIE サーバーと同じホストでコマンドを実行する場合は
localhostになります。 <serverport> は、KIE サーバーのポート番号です。
例:
curl --user "rhdmAdmin:password@1" -X DELETE http://localhost:39043/kie-server/services/rest/server/containers/kie1