16.2. Red Hat OpenShift Container Platform の KIE Server の Prometheus メトリクスモニタリングの設定

Prometheus を使用して Red Hat Process Automation Manger でのビジネスアセットアクティビティーに関連するメトリクスを収集して保存するように、Red Hat OpenShift Container Platform で KIE Server デプロイメントを設定できます。KIE Server が Prometheus を使用して公開するメトリクスで、利用可能なものの一覧については、Red Hat カスタマーポータル から Red Hat Process Automation Manager 7.10.0 Source Distribution をダウンロードし、~/rhpam-7.10.0-sources/src/droolsjbpm-integration-$VERSION/kie-server-parent/kie-server-services/kie-server-services-prometheus/src/main/java/org/kie/server/services/prometheus に移動してください。

前提条件

  • KIE Server が、Red Hat OpenShift Container Platform にインストールおよびデプロイメントされている。OpenShift 上の KIE Server の詳細は、Red Hat Process Automation Manager 7.10 の製品ドキュメント で関連する OpenShift デプロイメントオプションを参照してください。
  • kie-server ユーザーロールで KIE Server にアクセスできる。
  • Prometheus Operator がインストールされている。Prometheus Operator のダウンロードと使用についての詳細は、GitHub の Prometheus Operator プロジェクトを参照してください。

手順

  1. OpenShift 上の KIE Server デプロイメントの DeploymentConfig オブジェクトで、PROMETHEUS_SERVER_EXT_DISABLED 環境変数を false に設定して、Prometheus 拡張機能を有効にします。この変数は、OpenShift Web コンソールを使用するか、コマンド端末で oc コマンドを使用してこの変数を設定してください。

    oc set env dc/<dc_name> PROMETHEUS_SERVER_EXT_DISABLED=false -n <namespace>

    OpenShift に KIE Server をデプロイしていない場合は、OpenShift デプロイメントに使用予定の OpenShift テンプレート (例: rhpam710-prod-immutable-kieserver.yaml) で、PROMETHEUS_SERVER_EXT_DISABLED テンプレートパラメーターを false に設定して、Prometheus 拡張機能を有効にします。

    OpenShift Operator を使用して KIE Server を OpenShift にデプロイする場合は、KIE Server の設定で、PROMETHEUS_SERVER_EXT_DISABLED 環境変数を false に設定して、Prometheus 拡張機能を有効にします。

    apiVersion: app.kiegroup.org/v1
    kind: KieApp
    metadata:
      name: enable-prometheus
    spec:
      environment: rhpam-trial
      objects:
        servers:
        - env:
          - name: PROMETHEUS_SERVER_EXT_DISABLED
            value: "false"
  2. service-metrics.yaml ファイルを作成して、KIE Server から Prometheus にメトリクスを公開するサービスを追加します。

    apiVersion: v1
    kind: Service
    metadata:
      annotations:
        description: RHPAM Prometheus metrics exposed
      labels:
        app: myapp-kieserver
        application: myapp-kieserver
        template: myapp-kieserver
        metrics: rhpam
      name: rhpam-app-metrics
    spec:
      ports:
        - name: web
          port: 8080
          protocol: TCP
          targetPort: 8080
      selector:
        deploymentConfig: myapp-kieserver
      sessionAffinity: None
      type: ClusterIP
  3. コマンドターミナルで、oc コマンドを使用して、service-metrics.yaml ファイルを OpenShift デプロイメントに適用します。

    oc apply -f service-metrics.yaml
  4. metrics-secret など、OpenShift シークレットを作成して、KIE Server の Prometheus メトリクスにアクセスします。シークレットには「username」要素および「password」要素と、KIE Server ユーザー資格情報が含まれている必要があります。OpenShift シークレットの詳細については、『OpenShift 開発者ガイド』の「シークレット」の章を参照してください。
  5. ServiceMonitor オブジェクトを定義する service-monitor.yaml ファイルを作成します。サービスモニターにより Prometheus を KIE Server メトリクスサービスに接続できます。

    apiVersion: monitoring.coreos.com/v1
    kind: ServiceMonitor
    metadata:
      name: rhpam-service-monitor
      labels:
        team: frontend
    spec:
      selector:
        matchLabels:
          metrics: rhpam
      endpoints:
        - port: web
          path: /services/rest/metrics
          basicAuth:
            password:
              name: metrics-secret
              key: password
            username:
              name: metrics-secret
              key: username
  6. コマンドターミナルで、oc コマンドを使用して、service-monitor.yaml ファイルを OpenShift デプロイメントに適用します。

    oc apply -f service-monitor.yaml

    上記の設定を完了すると、Prometheus はメトリクスの収集を開始し、KIE Server は REST API エンドポイント http://HOST:PORT/kie-server/services/rest/metrics にメトリクスを公開します。

    http://HOST:PORT/graph の Prometheus expression browser で収集したメトリクスと対話したり、Prometheus データソースを Grafana などのデータグラフ作成ツールと統合したりすることができます。

    Prometheus expression browser の場所のホストとポートである http://HOST:PORT/graph は、Prometheus Operator をインストールしたときに Prometheus Web コンソールを公開したルートで定義されています。OpenShift ルートの詳細については、『OpenShift アーキテクチャー』ドキュメントの「ルート」の章を参照してください。

    図16.6 Prometheus expression browser と KIE Server メトリクス

    prometheus expression browser data

    図16.7 Prometheus expression browser と KIE Server ターゲット

    prometheus expression browser targets ocp

    図16.8 Grafana ダッシュボードと DMN モデルの KIE Server メトリクス

    prometheus grafana data dmn

    図16.9 Grafana ダッシュボードとソルバーの KIE Server メトリクス

    prometheus grafana data optimizer

    図16.10 Grafana ダッシュボードとプロセス、ケースおよびタスクの KIE Server メトリクス

    prometheus grafana data jbpm