×

集群监控 Operator 配置参考

OpenShift 专属集群监控的部分内容是可配置的。可以通过设置各种 ConfigMap 中定义的参数来访问 API。

  • 要配置监控组件,请编辑openshift-monitoring命名空间中名为cluster-monitoring-configConfigMap对象。这些配置由ClusterMonitoringConfiguration定义。

  • 要配置监控用户定义项目的监控组件,请编辑openshift-user-workload-monitoring命名空间中名为user-workload-monitoring-configConfigMap对象。这些配置由UserWorkloadConfiguration定义。

配置文件始终在 ConfigMap 数据的config.yaml键下定义。

  • 并非所有监控堆栈的配置参数都已公开。仅支持此参考中列出的参数和字段进行配置。有关受支持配置的更多信息,请参阅监控的维护和支持

  • 配置集群监控是可选的。

  • 如果配置不存在或为空,则使用默认值。

  • 如果配置是无效的 YAML 数据,则集群监控 Operator 将停止协调资源并在 Operator 的状态条件中报告Degraded=True

AdditionalAlertmanagerConfig

描述

AdditionalAlertmanagerConfig资源定义了组件如何与其他 Alertmanager 实例通信的设置。

必需

  • apiVersion

属性 类型 描述

apiVersion

字符串

定义 Alertmanager 的 API 版本。可能的值为v1v2。默认为v2

bearerToken

*v1.SecretKeySelector

定义包含用于向 Alertmanager 进行身份验证的 bearer 令牌的密钥引用。

pathPrefix

字符串

定义要添加到推送端点路径前面的路径前缀。

scheme

字符串

定义与 Alertmanager 实例通信时使用的 URL 方案。可能的值为httphttps。默认值为http

staticConfigs

[]string

<hosts>:<port>形式列出静态配置的 Alertmanager 端点。

timeout

*字符串

定义发送警报时使用的超时值。

tlsConfig

TLSConfig

定义用于 Alertmanager 连接的 TLS 设置。

AlertmanagerMainConfig

描述

AlertmanagerMainConfig资源定义了openshift-monitoring命名空间中 Alertmanager 组件的设置。

属性 类型 描述

enabled

*布尔值

一个布尔标志,用于启用或禁用openshift-monitoring命名空间中的主 Alertmanager 实例。默认值为true

enableUserAlertmanagerConfig

布尔值

一个布尔标志,用于启用或禁用为AlertmanagerConfig查找选择用户定义的命名空间。此设置仅在 Alertmanager 的用户工作负载监控实例未启用时适用。默认值为false

logLevel

字符串

定义 Alertmanager 的日志级别设置。可能的值为:errorwarninfodebug。默认值为info

nodeSelector

map[string]string

定义 Pod 调度的节点。

resources

*v1.ResourceRequirements

定义 Alertmanager 容器的资源请求和限制。

secrets

[]string

定义要挂载到 Alertmanager 的密钥列表。这些密钥必须位于与 Alertmanager 对象相同的命名空间中。它们作为名为secret-<secret-name> 的卷添加,并挂载到 Alertmanager Pod 的 alertmanager 容器中的 /etc/alertmanager/secrets/<secret-name>

tolerations

[]v1.Toleration

定义 Pod 的容忍度。

topologySpreadConstraints

[]v1.TopologySpreadConstraint

定义 Pod 的拓扑传播约束。

volumeClaimTemplate

*monv1.EmbeddedPersistentVolumeClaim

定义 Alertmanager 的持久化存储。使用此设置配置持久卷声明,包括存储类、卷大小和名称。

AlertmanagerUserWorkloadConfig

描述

AlertmanagerUserWorkloadConfig 资源定义用于用户定义项目的 Alertmanager 实例的设置。

属性 类型 描述

enabled

布尔值

一个布尔型标志,用于启用或禁用为openshift-user-workload-monitoring 命名空间中用户定义的告警启用专用的 Alertmanager 实例。默认值为false

enableAlertmanagerConfig

布尔值

一个布尔型标志,用于启用或禁用选择用户定义的命名空间来查找AlertmanagerConfig。默认值为false

logLevel

字符串

定义用户工作负载监控的 Alertmanager 的日志级别设置。可能的值为errorwarninfodebug。默认值为info

resources

*v1.ResourceRequirements

定义 Alertmanager 容器的资源请求和限制。

secrets

[]string

定义要挂载到 Alertmanager 的密钥列表。这些密钥必须位于与 Alertmanager 对象相同的命名空间中。它们作为名为secret-<secret-name> 的卷添加,并挂载到 Alertmanager Pod 的 alertmanager 容器中的 /etc/alertmanager/secrets/<secret-name>

nodeSelector

map[string]string

定义 Pod 调度的节点。

tolerations

[]v1.Toleration

定义 Pod 的容忍度。

topologySpreadConstraints

[]v1.TopologySpreadConstraint

定义 Pod 的拓扑传播约束。

volumeClaimTemplate

*monv1.EmbeddedPersistentVolumeClaim

定义 Alertmanager 的持久化存储。使用此设置配置持久卷声明,包括存储类、卷大小和名称。

ClusterMonitoringConfiguration

描述

ClusterMonitoringConfiguration 资源定义通过openshift-monitoring 命名空间中的cluster-monitoring-config 配置映射自定义默认平台监控堆栈的设置。

属性 类型 描述

alertmanagerMain

*AlertmanagerMainConfig

AlertmanagerMainConfig 定义openshift-monitoring 命名空间中 Alertmanager 组件的设置。

enableUserWorkload

*布尔值

UserWorkloadEnabled 是一个布尔型标志,用于启用对用户定义项目的监控。

kubeStateMetrics

*KubeStateMetricsConfig

KubeStateMetricsConfig 定义kube-state-metrics 代理的设置。

metricsServer

*MetricsServerConfig

MetricsServer 定义 Metrics Server 组件的设置。

prometheusK8s

*PrometheusK8sConfig

PrometheusK8sConfig 定义 Prometheus 组件的设置。

prometheusOperator

*PrometheusOperatorConfig

PrometheusOperatorConfig 定义 Prometheus Operator 组件的设置。

prometheusOperatorAdmissionWebhook

*PrometheusOperatorAdmissionWebhookConfig

PrometheusOperatorAdmissionWebhookConfig 定义 Prometheus Operator 的准入 Webhook 组件的设置。

openshiftStateMetrics

*OpenShiftStateMetricsConfig

OpenShiftMetricsConfig 定义openshift-state-metrics 代理的设置。

telemeterClient

*TelemeterClientConfig

TelemeterClientConfig 定义 Telemeter Client 组件的设置。

thanosQuerier

*ThanosQuerierConfig

ThanosQuerierConfig 定义 Thanos Querier 组件的设置。

nodeExporter

NodeExporterConfig

NodeExporterConfig 定义node-exporter 代理的设置。

monitoringPlugin

*MonitoringPluginConfig

MonitoringPluginConfig 定义监控console-plugin组件的设置。

KubeStateMetricsConfig

描述

KubeStateMetricsConfig 资源定义kube-state-metrics 代理的设置。

属性 类型 描述

nodeSelector

map[string]string

定义 Pod 调度的节点。

resources

*v1.ResourceRequirements

定义KubeStateMetrics容器的资源请求和限制。

tolerations

[]v1.Toleration

定义 Pod 的容忍度。

topologySpreadConstraints

[]v1.TopologySpreadConstraint

定义 Pod 的拓扑传播约束。

MetricsServerConfig

描述

MetricsServerConfig 资源定义 Metrics Server 组件的设置。

属性 类型 描述

audit

*Audit

定义 Metrics Server 实例使用的审计配置。可能的值为MetadataRequestRequestResponseNone。默认值为Metadata

nodeSelector

map[string]string

定义 Pod 调度的节点。

tolerations

[]v1.Toleration

定义 Pod 的容忍度。

resources

*v1.ResourceRequirements

定义 Metrics Server 容器的资源请求和限制。

topologySpreadConstraints

[]v1.TopologySpreadConstraint

定义 Pod 的拓扑传播约束。

MonitoringPluginConfig

描述

MonitoringPluginConfig 资源定义openshift-monitoring命名空间中 Web 控制台插件组件的设置。

属性 类型 描述

nodeSelector

map[string]string

定义 Pod 调度的节点。

resources

*v1.ResourceRequirements

定义console-plugin容器的资源请求和限制。

tolerations

[]v1.Toleration

定义 Pod 的容忍度。

topologySpreadConstraints

[]v1.TopologySpreadConstraint

定义 Pod 的拓扑传播约束。

NodeExporterCollectorBuddyInfoConfig

描述

NodeExporterCollectorBuddyInfoConfig 资源充当node-exporter代理的buddyinfo收集器的开关。默认情况下,buddyinfo收集器被禁用。

属性 类型 描述

enabled

布尔值

一个布尔型标志,用于启用或禁用buddyinfo收集器。

NodeExporterCollectorConfig

描述

NodeExporterCollectorConfig 资源定义node-exporter代理的各个收集器的设置。

出现于:NodeExporterConfig

属性 类型 描述

cpufreq

NodeExporterCollectorCpufreqConfig

定义cpufreq收集器的配置,该收集器收集 CPU 频率统计信息。默认情况下禁用。

tcpstat

NodeExporterCollectorTcpStatConfig

定义tcpstat收集器的配置,该收集器收集 TCP 连接统计信息。默认情况下禁用。

netdev

NodeExporterCollectorNetDevConfig

定义netdev收集器的配置,该收集器收集网络设备统计信息。默认情况下启用。

netclass

NodeExporterCollectorNetClassConfig

定义netclass收集器的配置,该收集器收集有关网络设备的信息。默认情况下启用。

buddyinfo

NodeExporterCollectorBuddyInfoConfig

定义buddyinfo收集器的配置,该收集器从node_buddyinfo_blocks指标收集有关内存碎片的统计信息。此指标从/proc/buddyinfo收集数据。默认情况下禁用。

mountstats

NodeExporterCollectorMountStatsConfig

定义mountstats收集器的配置,该收集器收集有关 NFS 卷 I/O 活动的统计信息。默认情况下禁用。

ksmd

NodeExporterCollectorKSMDConfig

定义ksmd收集器的配置,该收集器收集内核同页合并守护进程的统计信息。默认情况下禁用。

进程

NodeExporterCollectorProcessesConfig

定义processes收集器的配置,该收集器收集系统中运行的进程和线程的统计信息。默认情况下禁用。

systemd

NodeExporterCollectorSystemdConfig

定义systemd收集器的配置,该收集器收集systemd守护进程及其管理的服务的统计信息。默认情况下禁用。

NodeExporterCollectorCpufreqConfig

描述

使用NodeExporterCollectorCpufreqConfig资源启用或禁用node-exporter代理的cpufreq收集器。默认情况下,cpufreq收集器被禁用。在某些情况下,启用cpufreq收集器会增加多核机器上的CPU使用率。如果启用此收集器并且拥有多核机器,请密切监视系统是否有过高的CPU使用率。

属性 类型 描述

enabled

布尔值

一个布尔型标志,用于启用或禁用cpufreq收集器。

NodeExporterCollectorKSMDConfig

描述

使用NodeExporterCollectorKSMDConfig资源启用或禁用node-exporter代理的ksmd收集器。默认情况下,ksmd收集器被禁用。

属性 类型 描述

enabled

布尔值

一个布尔型标志,用于启用或禁用ksmd收集器。

NodeExporterCollectorMountStatsConfig

描述

使用NodeExporterCollectorMountStatsConfig资源启用或禁用node-exporter代理的mountstats收集器。默认情况下,mountstats收集器被禁用。如果启用此收集器,则以下指标可用:node_mountstats_nfs_read_bytes_totalnode_mountstats_nfs_write_bytes_totalnode_mountstats_nfs_operations_requests_total。请注意,这些指标可能具有较高的基数。如果启用此收集器,请密切监视prometheus-k8s Pod的内存使用量是否增加。

属性 类型 描述

enabled

布尔值

一个布尔型标志,用于启用或禁用mountstats收集器。

NodeExporterCollectorNetClassConfig

描述

使用NodeExporterCollectorNetClassConfig资源启用或禁用node-exporter代理的netclass收集器。默认情况下,netclass收集器已启用。如果禁用此收集器,则以下指标将不可用:node_network_infonode_network_address_assign_typenode_network_carriernode_network_carrier_changes_totalnode_network_carrier_up_changes_totalnode_network_carrier_down_changes_totalnode_network_device_idnode_network_dormantnode_network_flagsnode_network_iface_idnode_network_iface_linknode_network_iface_link_modenode_network_mtu_bytesnode_network_name_assign_typenode_network_net_dev_groupnode_network_speed_bytesnode_network_transmit_queue_lengthnode_network_protocol_type

属性 类型 描述

enabled

布尔值

一个布尔型标志,用于启用或禁用netclass收集器。

useNetlink

布尔值

一个布尔型标志,用于激活netclass收集器的netlink实现。默认值为true,激活netlink模式。此实现提高了netclass收集器的性能。

NodeExporterCollectorNetDevConfig

描述

使用NodeExporterCollectorNetDevConfig资源启用或禁用node-exporter代理的netdev收集器。默认情况下,netdev收集器已启用。如果禁用,则以下指标将不可用:node_network_receive_bytes_totalnode_network_receive_compressed_totalnode_network_receive_drop_totalnode_network_receive_errs_totalnode_network_receive_fifo_totalnode_network_receive_frame_totalnode_network_receive_multicast_totalnode_network_receive_nohandler_totalnode_network_receive_packets_totalnode_network_transmit_bytes_totalnode_network_transmit_carrier_totalnode_network_transmit_colls_totalnode_network_transmit_compressed_totalnode_network_transmit_drop_totalnode_network_transmit_errs_totalnode_network_transmit_fifo_totalnode_network_transmit_packets_total

属性 类型 描述

enabled

布尔值

一个布尔型标志,用于启用或禁用netdev收集器。

NodeExporterCollectorProcessesConfig

描述

使用NodeExporterCollectorProcessesConfig资源启用或禁用node-exporter代理的processes收集器。如果启用此收集器,则以下指标可用:node_processes_max_processesnode_processes_pidsnode_processes_statenode_processes_threadsnode_processes_threads_state。指标node_processes_statenode_processes_threads_state最多可以分别包含五个序列,具体取决于进程和线程的状态。进程或线程的可能状态为:D(UNINTERRUPTABLE_SLEEP)、R(RUNNING & RUNNABLE)、S(INTERRUPTABLE_SLEEP)、T(STOPPED)或Z(ZOMBIE)。默认情况下,processes收集器被禁用。

属性 类型 描述

enabled

布尔值

一个布尔型标志,用于启用或禁用processes收集器。

NodeExporterCollectorSystemdConfig

描述

使用NodeExporterCollectorSystemdConfig资源启用或禁用node-exporter代理的systemd收集器。默认情况下,systemd收集器被禁用。如果启用,则以下指标可用:node_systemd_system_runningnode_systemd_unitsnode_systemd_version。如果单元使用套接字,它还会生成以下指标:node_systemd_socket_accepted_connections_totalnode_systemd_socket_current_connectionsnode_systemd_socket_refused_connections_total。可以使用units参数选择要由systemd收集器包含的systemd单元。选定的单元用于生成node_systemd_unit_state指标,该指标显示每个systemd单元的状态。但是,此指标的基数可能很高(每个节点每个单元至少五个序列)。如果启用此收集器并选择长列表的单元,请密切监视prometheus-k8s部署是否有过高的内存使用率。请注意,只有在将units参数的值配置为logrotate.timer时,才会显示node_systemd_timer_last_trigger_seconds指标。

属性 类型 描述

enabled

布尔值

一个布尔型标志,用于启用或禁用systemd收集器。

units

[]string

匹配要由systemd收集器包含的systemd单元的正则表达式 (regex) 模式列表。默认情况下,列表为空,因此收集器不公开systemd单元的任何指标。

NodeExporterCollectorTcpStatConfig

描述

NodeExporterCollectorTcpStatConfig资源充当node-exporter代理的tcpstat收集器的开关。默认情况下,tcpstat收集器被禁用。

属性 类型 描述

enabled

布尔值

一个布尔型标志,用于启用或禁用tcpstat收集器。

NodeExporterConfig

描述

NodeExporterConfig 资源定义了 node-exporter 代理的设置。

属性 类型 描述

收集器 (collectors)

NodeExporterCollectorConfig

定义启用哪些收集器及其附加配置参数。

最大进程数 (maxProcs)

无符号32位整数 (uint32)

node-exporter 进程运行的目标 CPU 数量。默认值为 0,表示 node-exporter 在所有 CPU 上运行。如果发生内核死锁或从 sysfs 并发读取时性能下降,可以将此值更改为 1,这会将 node-exporter 限制为在一个 CPU 上运行。对于 CPU 数量较多的节点,可以将限制设置为较低的数字,这可以通过防止 Go 协程调度到所有 CPU 上来节省资源。但是,如果 maxProcs 值设置得太低并且要收集的指标很多,则 I/O 性能会下降。

忽略的网络设备 (ignoredNetworkDevices)

字符串切片 ([]string)

要从相关收集器配置(例如 netdevnetclass)中排除的网络设备列表,定义为正则表达式。如果没有指定列表,则集群监控操作员将使用预定义的要排除的设备列表,以最大限度地减少对内存用量的影响。如果列表为空,则不排除任何设备。如果修改此设置,请密切监控 prometheus-k8s 部署的内存使用情况。

resources

*v1.ResourceRequirements

定义 NodeExporter 容器的资源请求和限制。

OpenShiftStateMetricsConfig

描述

OpenShiftStateMetricsConfig 资源定义了 openshift-state-metrics 代理的设置。

属性 类型 描述

nodeSelector

map[string]string

定义 Pod 调度的节点。

resources

*v1.ResourceRequirements

定义 OpenShiftStateMetrics 容器的资源请求和限制。

tolerations

[]v1.Toleration

定义 Pod 的容忍度。

topologySpreadConstraints

[]v1.TopologySpreadConstraint

定义 Pod 的拓扑传播约束。

PrometheusK8sConfig

描述

PrometheusK8sConfig 资源定义了 Prometheus 组件的设置。

属性 类型 描述

附加 Alertmanager 配置 (additionalAlertmanagerConfigs)

[]AdditionalAlertmanagerConfig

配置接收来自 Prometheus 组件的警报的附加 Alertmanager 实例。默认情况下,不配置任何附加的 Alertmanager 实例。

强制实施的正文大小限制 (enforcedBodySizeLimit)

字符串

强制实施 Prometheus 采集指标的正文大小限制。如果采集目标的正文响应大于此限制,则采集将失败。有效值为:空值表示无限制,Prometheus 大小格式的数值(例如 64MB),或字符串 automatic,表示限制将根据集群容量自动计算。默认值为 空,表示无限制。

外部标签 (externalLabels)

map[string]string

定义在与外部系统(例如联合、远程存储和 Alertmanager)通信时要添加到任何时间序列或警报的标签。默认情况下,不添加任何标签。

logLevel

字符串

定义 Prometheus 的日志级别设置。可能的值为:errorwarninfodebug。默认值为 info

nodeSelector

map[string]string

定义 Pod 调度的节点。

查询日志文件 (queryLogFile)

字符串

指定记录 PromQL 查询的文件。此设置可以是文件名,在这种情况下,查询将保存到 /var/log/prometheus 位置的 emptyDir 卷中,也可以是将挂载 emptyDir 卷并保存查询的位置的完整路径。支持写入 /dev/stderr/dev/stdout/dev/null,但不支持写入任何其他 /dev/ 路径。也不支持相对路径。默认情况下,不记录 PromQL 查询。

远程写入 (remoteWrite)

[]RemoteWriteSpec

定义远程写入配置,包括 URL、身份验证和重新标记设置。

resources

*v1.ResourceRequirements

定义 Prometheus 容器的资源请求和限制。

保留时间 (retention)

字符串

定义 Prometheus 保留数据的时间段。此定义必须使用以下正则表达式模式指定:[0-9]+(ms|s|m|h|d|w|y)(ms = 毫秒,s = 秒,m = 分钟,h = 小时,d = 天,w = 周,y = 年)。默认值为 15d

保留大小 (retentionSize)

字符串

定义数据块加上预写日志 (WAL) 使用的最大磁盘空间量。支持的值为 BKBKiBMBMiBGBGiBTBTiBPBPiBEBEiB。默认情况下,未定义任何限制。

tolerations

[]v1.Toleration

定义 Pod 的容忍度。

topologySpreadConstraints

[]v1.TopologySpreadConstraint

定义 Pod 的拓扑传播约束。

收集配置文件 (collectionProfile)

收集配置文件 (CollectionProfile)

定义 Prometheus 用于从平台组件收集指标的指标收集配置文件。支持的值为 fullminimal。在 full 配置文件(默认)中,Prometheus 收集平台组件公开的所有指标。在 minimal 配置文件中,Prometheus 只收集默认平台警报、记录规则、遥测和控制台仪表板所需的指标。

volumeClaimTemplate

*monv1.EmbeddedPersistentVolumeClaim

定义 Prometheus 的持久性存储。使用此设置配置持久卷声明,包括存储类、卷大小和名称。

PrometheusOperatorConfig

描述

PrometheusOperatorConfig 资源定义了 Prometheus Operator 组件的设置。

属性 类型 描述

logLevel

字符串

定义 Prometheus Operator 的日志级别设置。可能的值为 errorwarninfodebug。默认值为 info

nodeSelector

map[string]string

定义 Pod 调度的节点。

resources

*v1.ResourceRequirements

定义 PrometheusOperator 容器的资源请求和限制。

tolerations

[]v1.Toleration

定义 Pod 的容忍度。

topologySpreadConstraints

[]v1.TopologySpreadConstraint

定义 Pod 的拓扑传播约束。

PrometheusOperatorAdmissionWebhookConfig

描述

PrometheusOperatorAdmissionWebhookConfig 资源定义了 Prometheus Operator 的准入 Webhook 工作负载的设置。

属性 类型 描述

resources

*v1.ResourceRequirements

定义 prometheus-operator-admission-webhook 容器的资源请求和限制。

topologySpreadConstraints

[]v1.TopologySpreadConstraint

定义 Pod 的拓扑传播约束。

PrometheusRestrictedConfig

描述

PrometheusRestrictedConfig 资源定义了监控用户定义项目的 Prometheus 组件的设置。

属性 类型 描述

附加 Alertmanager 配置 (additionalAlertmanagerConfigs)

[]AdditionalAlertmanagerConfig

配置接收来自 Prometheus 组件的警报的附加 Alertmanager 实例。默认情况下,不配置任何附加的 Alertmanager 实例。

强制实施的标签限制 (enforcedLabelLimit)

无符号64位整数 (uint64)

指定对样本接受的标签数量的每次抓取限制。如果度量重新标记后标签数量超过此限制,则整个抓取将被视为失败。默认值为 0,这意味着不设置任何限制。

强制实施的标签名称长度限制 (enforcedLabelNameLengthLimit)

无符号64位整数 (uint64)

指定对样本的标签名称长度的每次抓取限制。如果度量重新标记后标签名称的长度超过此限制,则整个抓取将被视为失败。默认值为 0,这意味着不设置任何限制。

强制实施的标签值长度限制 (enforcedLabelValueLengthLimit)

无符号64位整数 (uint64)

指定每个抓取的样本标签值的长度限制。如果指标重命名后标签值的长度超过此限制,则整个抓取将被视为失败。默认值为0,表示不设置限制。

enforcedSampleLimit

无符号64位整数 (uint64)

指定将接受的已抓取样本的全局数量限制。如果此值大于enforcedTargetLimit,则此设置将覆盖任何用户定义的ServiceMonitorPodMonitor对象中设置的SampleLimit值。管理员可以使用此设置来控制样本的总数。默认值为0,表示不设置限制。

enforcedTargetLimit

无符号64位整数 (uint64)

指定已抓取目标的全局数量限制。如果此值大于enforcedSampleLimit,则此设置将覆盖任何用户定义的ServiceMonitorPodMonitor对象中设置的TargetLimit值。管理员可以使用此设置来控制目标的总数。默认值为0

外部标签 (externalLabels)

map[string]string

定义在与外部系统(例如联合、远程存储和 Alertmanager)通信时要添加到任何时间序列或警报的标签。默认情况下,不添加任何标签。

logLevel

字符串

定义Prometheus的日志级别设置。可能的值为errorwarninfodebug。默认设置为info

nodeSelector

map[string]string

定义 Pod 调度的节点。

查询日志文件 (queryLogFile)

字符串

指定记录 PromQL 查询的文件。此设置可以是文件名,在这种情况下,查询将保存到 /var/log/prometheus 位置的 emptyDir 卷中,也可以是将挂载 emptyDir 卷并保存查询的位置的完整路径。支持写入 /dev/stderr/dev/stdout/dev/null,但不支持写入任何其他 /dev/ 路径。也不支持相对路径。默认情况下,不记录 PromQL 查询。

远程写入 (remoteWrite)

[]RemoteWriteSpec

定义远程写入配置,包括 URL、身份验证和重新标记设置。

resources

*v1.ResourceRequirements

定义Prometheus容器的资源请求和限制。

保留时间 (retention)

字符串

定义Prometheus保留数据的持续时间。此定义必须使用以下正则表达式模式指定:[0-9]+(ms|s|m|h|d|w|y)(ms = 毫秒,s = 秒,m = 分钟,h = 小时,d = 天,w = 周,y = 年)。默认值为24h

保留大小 (retentionSize)

字符串

定义数据块和预写日志 (WAL) 使用的磁盘空间最大量。支持的值为BKBKiBMBMiBGBGiBTBTiBPBPiBEBEiB。默认值为nil

tolerations

[]v1.Toleration

定义 Pod 的容忍度。

topologySpreadConstraints

[]v1.TopologySpreadConstraint

定义 Pod 的拓扑传播约束。

volumeClaimTemplate

*monv1.EmbeddedPersistentVolumeClaim

定义Prometheus的持久化存储。使用此设置配置卷的存储类和大小。

RemoteWriteSpec

描述

RemoteWriteSpec资源定义远程写入存储的设置。

必需

  • url

属性 类型 描述

authorization

*monv1.SafeAuthorization

定义远程写入存储的授权设置。

basicAuth

*monv1.BasicAuth

定义远程写入端点URL的基本身份验证设置。

bearerTokenFile

字符串

定义包含远程写入端点载体令牌的文件。但是,由于无法在 Pod 中挂载密钥,因此实际上只能引用服务帐户的令牌。

headers

map[string]string

指定要与每个远程写入请求一起发送的自定义HTTP标头。Prometheus设置的标头无法被覆盖。

metadataConfig

*monv1.MetadataConfig

定义将系列元数据发送到远程写入存储的设置。

name

字符串

定义远程写入队列的名称。此名称用于指标和日志记录中以区分队列。如果指定,则此名称必须唯一。

oauth2

*monv1.OAuth2

定义远程写入端点的OAuth2身份验证设置。

proxyUrl

字符串

定义可选的代理URL。如果启用,则会被集群范围的代理取代。

queueConfig

*monv1.QueueConfig

允许调整远程写入队列参数的配置。

remoteTimeout

字符串

定义对远程写入端点请求的超时值。

sendExemplars

*布尔值

启用通过远程写入发送示例。启用后,此设置将配置Prometheus在内存中存储最多100,000个示例。此设置仅适用于用户定义的监控,不适用于核心平台监控。

sigv4

*monv1.Sigv4

定义AWS签名版本4身份验证设置。

tlsConfig

*monv1.SafeTLSConfig

定义远程写入端点的TLS身份验证设置。

url

字符串

定义将发送样本的远程写入端点的URL。

writeRelabelConfigs

[]monv1.RelabelConfig

定义远程写入重命名配置列表。

TLSConfig

描述

TLSConfig资源配置TLS连接的设置。

必需

  • insecureSkipVerify

属性 类型 描述

ca

*v1.SecretKeySelector

定义包含用于远程主机的证书颁发机构 (CA) 的密钥引用。

cert

*v1.SecretKeySelector

定义包含用于远程主机的公钥证书的密钥引用。

key

*v1.SecretKeySelector

定义包含用于远程主机的私钥的密钥引用。

serverName

字符串

用于验证返回证书上的主机名。

insecureSkipVerify

布尔值

设置为true时,禁用对远程主机的证书和名称的验证。

TelemeterClientConfig

描述

TelemeterClientConfig 定义 Telemeter Client 组件的设置。

必需

  • nodeSelector

  • tolerations

属性 类型 描述

nodeSelector

map[string]string

定义 Pod 调度的节点。

resources

*v1.ResourceRequirements

定义TelemeterClient容器的资源请求和限制。

tolerations

[]v1.Toleration

定义 Pod 的容忍度。

topologySpreadConstraints

[]v1.TopologySpreadConstraint

定义 Pod 的拓扑传播约束。

ThanosQuerierConfig

描述

ThanosQuerierConfig资源定义Thanos Querier组件的设置。

属性 类型 描述

enableRequestLogging

布尔值

启用或禁用请求日志记录的布尔标志。默认值为false

logLevel

字符串

定义Thanos Querier的日志级别设置。可能的值为errorwarninfodebug。默认值为info

enableCORS

布尔值

启用设置CORS标头的布尔标志。这些标头允许来自任何来源的访问。默认值为false

nodeSelector

map[string]string

定义 Pod 调度的节点。

resources

*v1.ResourceRequirements

定义Thanos Querier容器的资源请求和限制。

tolerations

[]v1.Toleration

定义 Pod 的容忍度。

topologySpreadConstraints

[]v1.TopologySpreadConstraint

定义 Pod 的拓扑传播约束。

ThanosRulerConfig

描述

ThanosRulerConfig资源定义用于用户定义项目的Thanos Ruler实例的配置。

属性 类型 描述

附加 Alertmanager 配置 (additionalAlertmanagerConfigs)

[]AdditionalAlertmanagerConfig

配置Thanos Ruler组件如何与其他Alertmanager实例通信。默认值为nil

logLevel

字符串

定义Thanos Ruler的日志级别设置。可能的值为errorwarninfodebug。默认值为info

nodeSelector

map[string]string

定义 Pod 调度的节点。

resources

*v1.ResourceRequirements

定义 Alertmanager 容器的资源请求和限制。

保留时间 (retention)

字符串

定义 Prometheus 保留数据的时间段。此定义必须使用以下正则表达式模式指定:[0-9]+(ms|s|m|h|d|w|y)(ms = 毫秒,s = 秒,m = 分钟,h = 小时,d = 天,w = 周,y = 年)。默认值为 15d

tolerations

[]v1.Toleration

定义 Pod 的容忍度。

topologySpreadConstraints

[]v1.TopologySpreadConstraint

定义 Pod 的拓扑传播约束。

volumeClaimTemplate

*monv1.EmbeddedPersistentVolumeClaim

定义Thanos Ruler的持久化存储。使用此设置配置卷的存储类和大小。

UserWorkloadConfiguration

描述

UserWorkloadConfiguration资源定义负责openshift-user-workload-monitoring命名空间中的user-workload-monitoring-config配置映射中用户定义项目的设置。只有在将openshift-monitoring命名空间下的cluster-monitoring-config配置映射中的enableUserWorkload设置为true之后,才能启用UserWorkloadConfiguration

属性 类型 描述

alertmanager

*AlertmanagerUserWorkloadConfig

定义用户工作负载监控中Alertmanager组件的设置。

prometheus

*PrometheusRestrictedConfig

定义用户工作负载监控中 Prometheus 组件的设置。

prometheusOperator

*PrometheusOperatorConfig

定义用户工作负载监控中 Prometheus Operator 组件的设置。

Thanos Ruler

*ThanosRulerConfig

定义用户工作负载监控中 Thanos Ruler 组件的设置。