搜索

2.2. 对监控的维护和支持

download PDF

并非所有监控堆栈配置选项都公开。配置 OpenShift Container Platform 监控的唯一支持的方法是,使用 Cluster Monitoring Operator 的 Cluster Monitoring Operator 的 Config map 参考中所述的选项来配置。请勿使用其他配置,因为不受支持。

各个 Prometheus 发行版本的配置范例可能会有所变化,只有掌握了所有可能的配置,才能稳妥应对这样的配置变化。如果您使用 Cluster Monitoring Operator 的 Config map 引用中描述的配置,您的更改可能会丢失,因为 Cluster Monitoring Operator 会自动协调任何区别,并将任何不支持的更改重置为最初定义的状态。

重要

Red Hat Site Reliability Engineer (SRE) 不支持安装另一个 Prometheus 实例。

2.2.1. 对监控的支持注意事项

注意

指标、记录规则或警报规则的向后兼容性无法被保证。

明确不支持以下修改:

  • openshift-*kube-* 项目中创建额外的 ServiceMonitorPodMonitorPrometheusRule 对象。
  • 修改 openshift-monitoringopenshift-user-workload-monitoring 项目中部署的任何资源或对象。OpenShift Container Platform 监控堆栈所创建的资源并不是为了供任何其他资源使用,因为不能保证向后兼容性。

    注意

    Alertmanager 配置作为 openshift-monitoring 命名空间中的 alertmanager-main secret 资源部署。如果您为用户定义的警报路由启用了单独的 Alertmanager 实例,则 Alertmanager 配置也会部署为 openshift-user-workload-monitoring 命名空间中的 alertmanager-user-workload secret 资源。要为 Alertmanager 实例配置额外的路由,您需要对该 secret 进行解码、修改,然后再进行编码。该程序是对前述声明的一个受支持例外。

  • 修改堆栈的资源。OpenShift Container Platform 监控堆栈确保其资源始终处于期望的状态。如果修改了资源,堆栈会重置它们。
  • 将用户定义的工作负载部署到 openshift-*kube-* 项目。这些项目是为红帽提供的组件保留的,不应该用于用户定义的工作负载。
  • 手动将监控资源部署到具有 openshift.io/cluster-monitoring: "true" 标签的命名空间中。
  • openshift.io/cluster-monitoring: "true" 标签添加到命名空间。该标签只适用于带有 OpenShift Container Platform 核心组件和红帽认证的组件的命名空间。
  • 在 OpenShift Container Platform 上安装自定义 Prometheus 实例。自定义资源 (CR) 是由 Prometheus Operator 管理的 Prometheus 自定义资源 (CR)。
  • 使用 Prometheus Operator 中的 Probe 自定义资源定义(CRD)启用基于症状的监控。
  • 在 OpenShift Container Platform 上安装自定义 Prometheus 实例。自定义资源 (CR) 是由 Prometheus Operator 管理的 Prometheus 自定义资源 (CR)。
  • 修改默认平台监控组件。您不应该修改 cluster-monitoring-config 配置映射中定义的任何组件。Red Hat SRE 使用这些组件来监控核心集群组件和 Kubernetes 服务。

2.2.2. 监控 Operator 的支持策略

监控 Operator 确保 OpenShift Container Platform 监控资源按设计和测试的方式正常工作。如果某个 Operator 的 Cluster Version Operator (CVO) 控制被覆盖,该 Operator 不会响应配置更改,协调集群对象的预期状态或接收更新。

虽然在调试过程中覆盖 Operator 的 CVO 可能有所帮助,但该操作不受支持,集群管理员需要完全掌控各个组件的配置和升级。

覆盖 Cluster Version Operator

可将 spec.overrides 参数添加到 CVO 的配置中,以便管理员提供对组件的 CVO 行为覆盖的列表。将一个组件的 spec.overrides[].unmanaged 参数设置为 true 会阻止集群升级并在设置 CVO 覆盖后提醒管理员:

Disabling ownership via cluster version overrides prevents upgrades. Please remove overrides before continuing.
警告

设置 CVO 覆盖会使整个集群处于不受支持的状态,并导致监控堆栈无法被协调到其预期状态。这会影响 Operator 内置的可靠性功能,并妨碍接收更新。在删除所有覆盖后,必须可以重现报告的问题方可获得支持。

2.2.3. 监控组件的支持版本列表

以下列表包含有关 OpenShift Container Platform 4.10 及更新的版本的监控组件版本的信息:

表 2.1. OpenShift Container Platform 和组件版本
OpenShift Container PlatformPrometheus OperatorPrometheusPrometheus AdapterAlertmanagerkube-state-metrics 代理node-exporter 代理Thanos

4.12

0.60.1

2.39.1

0.10.0

0.24.0

2.6.0

1.4.0

0.28.1

4.11

0.57.0

2.36.2

0.9.1

0.24.0

2.5.0

1.3.1

0.26.0

4.10

0.53.1

2.32.1

0.9.1

0.23.0

2.3.0

1.3.1

0.23.2

注意

openshift-state-metrics 代理和 Telemeter Client 是特定于 OpenShift 的组件。因此,它们的版本与 OpenShift Container Platform 的版本对应。

Red Hat logoGithubRedditYoutubeTwitter

学习

尝试、购买和销售

社区

关于红帽文档

通过我们的产品和服务,以及可以信赖的内容,帮助红帽用户创新并实现他们的目标。

让开源更具包容性

红帽致力于替换我们的代码、文档和 Web 属性中存在问题的语言。欲了解更多详情,请参阅红帽博客.

關於紅帽

我们提供强化的解决方案,使企业能够更轻松地跨平台和环境(从核心数据中心到网络边缘)工作。

© 2024 Red Hat, Inc.