11.2. 在 Red Hat OpenShift Container Platform 上为 KIE 服务器配置 Prometheus 指标监控
您可以配置 Red Hat OpenShift Container Platform 上的 KIE 服务器部署,以使用 Prometheus 来收集并存储与 Red Hat Decision Manager 中的业务资产活动相关的指标。有关 KIE 服务器与 Prometheus 公开的可用指标列表,请从红帽客户门户网站下载 Red Hat Process Automation Manager 7.13.2 Source Distribution /kie-server-services-prometheus/src/main/7.13.2 -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 Decision Manager 7.13 产品文档中的相关 OpenShift 部署选项。
-
您有
kie-server
用户角色访问权限到 KIE 服务器。 - 已安装 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 模板中(如
rhpam713-prod-immutable-kieserver.yaml
),您可以将PROMETHEUS_SERVER_EXT_DISABLED
模板参数设置为false
来启用 Prometheus 扩展。如果您使用 OpenShift Operator 在 OpenShift 上部署 KIE 服务器,然后在 KIE 服务器配置中,将
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 服务器的指标公开给 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 开发人员指南 》中的 机密 章节。 创建一个
service-monitor.yaml
文件来定义ServiceMonitor
对象。服务监控器可让 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 表达式浏览器中收集的指标交互,或者将 Prometheus 数据源与 Grafana 等数据图形工具集成。Prometheus 表达式浏览器位置
http://HOST:PORT/graph
的主机和端口在安装 Prometheus Operator 时公开 Prometheus Web 控制台的路由中定义。如需有关 OpenShift 路由的信息,请参阅 OpenShift 架构 文档中的 路由 章节。图 11.5. 带有 KIE 服务器指标的 Prometheus 表达式浏览器
图 11.6. 带有 KIE 服务器目标的 Prometheus 表达式浏览器
图 11.7. DMN 型号的 KIE 服务器指标的 Grafana 仪表板
图 11.8. 带有临时解决方案的 KIE 服务器指标的 Grafana 仪表板