第13章 Red Hat Process Automation Manager Kogito Operator と Prometheus および Grafana との対話
Red Hat Process Automation Manager の Red Hat ビルドの Kogito は、Red Hat ビルドの Kogito マイクロサービスの Prometheus メトリクス監視を有効にする monitoring-prometheus-addon
アドオンを提供し、アドオンによってエクスポートされたデフォルトのメトリクスを使用する Grafana ダッシュボードを生成します。RHPAM Kogito Operator は Prometheus Operator を使用して、Prometheus からスクレープするプロジェクトからメトリクスを公開します。この依存関係により、Prometheus Operator はプロジェクトと同じ namespace にインストールする必要があります。
Red Hat ビルドの Kogito マイクロサービスの Prometheus メトリクス監視を有効にする場合は、使用するフレームワークに応じて、プロジェクトの pom.xml
ファイルに以下の依存関係を追加します。
Prometheus Red Hat ビルドの Quarkus アドオンの依存関係
<dependency> <groupId>org.kie.kogito</groupId> <artifactId>monitoring-prometheus-quarkus-addon</artifactId> </dependency>
Prometheus Spring Boot アドオンの依存関係
<dependency> <groupId>org.kie.kogito</groupId> <artifactId>monitoring-prometheus-springboot-addon</artifactId> </dependency>
monitoring-prometheus-addon
アドオンを使用し、Prometheus Operator がインストールされている Red Hat ビルドの Kogito マイクロサービスをデプロイする場合、Red Hat Process Automation Manager Kogito Operator は ServiceMonitor
カスタムリソースを作成し、以下の例のように Prometheus のメトリクスを公開します。
Prometheus の ServiceMonitor
リソースの例
apiVersion: monitoring.coreos.com/v1 kind: ServiceMonitor metadata: labels: app: onboarding-service name: onboarding-service namespace: kogito spec: endpoints: - path: /metrics targetPort: 8080 scheme: http namespaceSelector: matchNames: - kogito selector: matchLabels: app: onboarding-service
Prometheus Operator によって管理される Prometheus
カスタムリソースを手作業で設定し、ServiceMonitor
リソースを選択する必要があります。
Prometheus
リソースの例
apiVersion: monitoring.coreos.com/v1 kind: Prometheus metadata: name: prometheus spec: serviceAccountName: prometheus serviceMonitorSelector: matchLabels: app: dmn-drools-quarkus-metrics-service
ServiceMonitor
リソースで Prometheus リソースを設定した後に、Prometheus Web コンソールの Targets ページで Prometheus によってスクレープされたエンドポイントを表示できます。Red Hat Process Automation Manager サービスが公開するメトリクスが Graph ビューに表示されます。
RHPAM Kogito Operator は、アドオンによって生成された Grafana ダッシュボードごとに、Grafana Operator によって定義される GrafanaDashboard
カスタムリソースも作成します。ダッシュボードの app
ラベルは、デプロイされた Red Hat ビルドの Kogito マイクロサービスの名前です。Kogito マイクロサービスの関連する Red Hat ビルドに従い、Grafana
カスタムリソースの dashboardLabelSelector
プロパティーを設定する必要があります。
Grafana
リソースの例
apiVersion: integreatly.org/v1alpha1 kind: Grafana metadata: name: example-grafana spec: ingress: enabled: true config: auth: disable_signout_menu: true auth.anonymous: enabled: true log: level: warn mode: console security: admin_password: secret admin_user: root dashboardLabelSelector: - matchExpressions: - key: app operator: In values: - my-kogito-application