第 3 章 监控 Camel Spring Boot 集成
本章介绍了如何在运行时监控红帽构建的 Camel Spring Boot 的集成。您可以使用已部署为 OpenShift Monitoring 一部分的 Prometheus Operator 来监控您自己的应用程序。
3.1. 在 OpenShift 中启用用户工作负载监控
您可以通过在集群监控 ConfigMap 中设置 enableUserWorkload: true
字段来为用户定义的项目启用监控。
在 OpenShift Container Platform 4.13 中,要为用户定义的项目启用监控,您必须先删除任何自定义 Prometheus 实例。
先决条件
您必须可以使用具有 cluster-admin 集群角色访问权限的用户访问集群,才能在 OpenShift Container Platform 中为用户定义的项目启用监控。然后,集群管理员可以选择性地授予用户权限来配置负责监控用户定义的项目的组件。
- 有集群管理员对 OpenShift 集群的访问权限。
- 已安装 OpenShift CLI(oc)。
-
您已创建
cluster-monitoring-config
ConfigMap 对象。 -
可选: 您已在
openshift-user-workload-monitoring
项目中创建并配置user-workload-monitoring-config
ConfigMap 对象。您可以在此 ConfigMap 中为监控用户定义的项目的组件添加配置选项。
每次您将配置更改保存到 user-workload-monitoring-config ConfigMap 对象时,都会重新部署 openshift-user-workload-monitoring 项目中的 Pod。有时重新部署这些组件需要花费一段时间。在首次为用户定义的项目启用监控前,您可以创建和配置 ConfigMap 对象,以防止经常重新部署 Pod。
步骤
使用管理员权限登录到 OpenShift。
oc login --user system:admin --token=my-token --server=https://my-cluster.example.com:6443
编辑
cluster-monitoring-config
ConfigMap 对象。$ oc -n openshift-monitoring edit configmap cluster-monitoring-config
在 data/config.yaml 部分添加
enableUserWorkload: true
。apiVersion: v1 kind: ConfigMap metadata: name: cluster-monitoring-config namespace: openshift-monitoring data: config.yaml: | enableUserWorkload: true
当设置为 true 时,
enableUserWorkload
参数为集群中用户定义的项目启用监控。保存文件以使改变生效。然后会自动启用对用户定义的项目的监控。
注意将更改保存到
cluster-monitoring-config
ConfigMap 对象时,可能会重新部署openshift-monitoring
项目中的 Pod 和其他资源。该项目中正在运行的监控进程也可能被重启。验证
prometheus-operator
、prometheus-user-workload
和thanos-ruler-user-workload
Pod 是否在openshift-user-workload-monitoring
项目中运行。$ oc -n openshift-user-workload-monitoring get pod Example output NAME READY STATUS RESTARTS AGE prometheus-operator-6f7b748d5b-t7nbg 2/2 Running 0 3h prometheus-user-workload-0 4/4 Running 1 3h prometheus-user-workload-1 4/4 Running 1 3h thanos-ruler-user-workload-0 3/3 Running 0 3h thanos-ruler-user-workload-1 3/3 Running 0 3h