第3章 HA CEP クライアントの作成

CEP クライアントコードを HA CEP サーバーイメージと通信できるように、適応する必要があります。お使いのクライアントコード向けの参照実装に含まれるサンプルプロジェクトを使用できます。また、OpenShift 環境内外を問わず、クライアントコードを実行できます。

手順

  1. Red Hat カスタマーポータルの Software Downloads ページから製品配信可能ファイル rhdm-7.5.1-reference-implementation.zip をダウンロードします。
  2. ファイルの内容を展開して、さらに rhdm-7.5.1-openshift-drools-hacep-distribution.zip ファイルを展開します。
  3. openshift-drools-hacep-distribution/sources ディレクトリーに移動します。
  4. sample-hacep-project/sample-hacep-project-client ディレクトリーのサンプルプロジェクトをもとにクライアントコードをレビューし、変更します。このコードが 4章HA CEP クライアントコードの要件 に記載の追加要件を満たしていることを確認します。
  5. sample-hacep-project/sample-hacep-project-client ディレクトリーで、パスワードに password と指定してキーストアを生成します。以下のコマンドを入力します。

    keytool -genkeypair -keyalg RSA -keystore src/main/resources/keystore.jks
  6. OpenShift 環境から HTTPS 証明書を展開して、キーストアーに追加します。以下のコマンドを実行します。

    oc extract secret/my-cluster-cluster-ca-cert --keys=ca.crt --to=- > src/main/resources/ca.crt
    keytool -import -trustcacerts -alias root -file src/main/resources/ca.crt -keystore src/main/resources/keystore.jks -storepass password -noprompt
  7. プロジェクトの src/main/resources サブディレクトリーに、以下のコンテンツを含めた configuration.properties ファイルを作成します。

    ssl.keystore.location=keystore.jks
    ssl.truststore.location=keystore.jks
    ssl.keystore.password=password
    ssl.truststore.password=password
    bootstrap.servers=http://<serveraddress>

    <serveraddress> は、Kafka サーバーのルートが使用するアドレスに置き換えます。

  8. 標準の Maven コマンドを使用してプロジェクトをビルドします。

    mvn clean install
  9. sample-hacep-project-client プロジェクトのディレクトリーに移動して、以下のコマンドを入力し、クライアントを実行します。

    mvn exec:java -Dexec.mainClass="org.kie.hacep.sample.client.ClientProducerDemo

    このコマンドは、ClientProducerDemo クラスの main メソッドを実行します。