16.2. 在 Red Hat OpenShift Container Platform 上为 KIE 服务器配置 Prometheus 指标监控
您可以在 Red Hat OpenShift Container Platform 上配置 KIE 服务器部署,以使用 Prometheus 收集和存储与 Red Hat Process Automation Manager 中业务资产活动相关的指标。有关 KIE 服务器与 Prometheus 公开的可用指标列表,请从红帽客户门户网站下载 Red Hat Process Automation Manager 7.11.0 Source Distribution /kie -server-services-prometheus/src/main/7.11.0-sources/src/droolsjbpm-integration-$VERSION/kie-server-parent/kie-server-services/kie-server-services-prometheus/src/main/java/org/kie/server/services/prometheus
。https://access.redhat.com/jbossnetwork/restricted/listSoftware.html
先决条件
- KIE 服务器已安装并部署在 Red Hat OpenShift Container Platform 上。如需有关 OpenShift 上的 KIE Server 的更多信息,请参阅 Red Hat Process Automation Manager 7.11 产品文档中的相关 OpenShift 部署选项。
-
您有对 KIE 服务器的
kie-server
用户角色访问权限。 - 已安装 Prometheus Operator。有关下载和使用 Prometheus Operator 的详情,请参考 GitHub 中的 Prometheus Operator 项目。
流程
在 OpenShift 上的 KIE 服务器部署的
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 服务器,然后在计划用于 OpenShift 部署的 OpenShift 模板中(如
rhpam711-prod-immutable-kieserver.yaml
),您可以将PROMETHEUS_SERVER_EXT_DISABLED
模板参数设置为false
来启用 Prometheus 扩展。如果您使用 OpenShift Operator 在 OpenShift 上部署 KIE Server,然后在 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"
创建
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
在命令终端中,使用
oc
命令将service-metrics.yaml
文件应用到 OpenShift 部署:oc apply -f service-metrics.yaml
-
创建一个 OpenShift secret,如
metrics-secret
,以访问 KIE 服务器上的 Prometheus 指标。secret 必须包含带有 KIE 服务器用户凭证的 "username" 和 "password" 元素。如需有关 OpenShift 机密的信息,请参阅 OpenShift 开发人员指南 中的 机密 章节。 创建定义
ServiceMonitor
对象的service-monitor.yaml
文件。服务监控器可让 Prometheus 连接到 KIE 服务器指标服务。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
在命令终端中,使用
oc
命令将service-monitor.yaml
文件应用到 OpenShift 部署:oc apply -f service-monitor.yaml
完成这些配置后,Prometheus 开始收集指标和 KIE 服务器将指标发布到 REST API 端点
http://HOST:PORT/kie-server/services/rest/metrics
。您可以在
http://HOST:PORT/graph
的 Prometheus 表达式浏览器中与收集的指标交互,或使用 data-graphing 工具(如 Grafana)集成 Prometheus 数据源。Prometheus 表达式浏览器位置
http://HOST:PORT/graph
的主机和端口是在安装 Prometheus Operator 时公开 Prometheus Web 控制台的路由中定义。如需有关 OpenShift 路由的信息,请参阅 OpenShift 架构 文档中的 路由 章节。图 16.6. 带有 KIE 服务器指标的 Prometheus 表达式浏览器
图 16.7. 带有 KIE 服务器目标的 Prometheus 表达式浏览器
图 16.8. 带有 DMN 模型的 KIE 服务器指标的 Grafana 仪表板
图 16.9. 带有用于解析器的 KIE 服务器指标的 Grafana 仪表板
图 16.10. 带有 KIE 服务器指标的 Grafana 仪表板,用于进程、情况和任务