第 6 章 PodMonitor [monitoring.coreos.com/v1]


描述

PodMonitor 自定义资源定义(CRD)定义 PrometheusPrometheusAgent 如何从一组 pod 中提取指标。另外,它允许指定:* pod 通过标签选择器提取。* 要提取的容器端口。* 要使用的身份验证凭据。* 目标和指标重新标记。

PrometheusPrometheusAgent 对象使用标签和命名空间选择器选择 PodMonitor 对象。

类型
object
必填
  • spec

6.1. 规格

Expand
属性类型描述

apiVersion

string

APIVersion 定义对象的这个表示法的版本化的 schema。服务器应该将识别的模式转换为最新的内部值,并可拒绝未识别的值。更多信息: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources

kind

string

kind 是一个字符串值,代表此对象所代表的 REST 资源。服务器可以从客户端向其提交请求的端点推断。无法更新。采用驼峰拼写法 (CamelCase)。更多信息: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds

metadata

ObjectMeta

标准对象元数据。更多信息: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#metadata

spec

对象

Prometheus 的目标发现所需的 Pod 选择规格。

6.1.1. .spec

描述
Prometheus 的目标发现所需的 Pod 选择规格。
类型
object
必填
  • selector
Expand
属性类型描述

attachMetadata

object

attachMetadata 定义添加到发现的目标中的其他元数据。

它需要 Prometheus >= v2.35.0。

bodySizeLimit

string

定义后,bodySizeLimit 指定 Prometheus 接受的未压缩响应正文大小的作业级别限制。

它需要 Prometheus >= v2.28.0。

fallbackScrapeProtocol

string

如果提取返回空白、无法解析或无效 Content-Type,则使用协议。

它需要 Prometheus >= v3.0.0。

jobLabel

字符串

用于从中检索作业名称的标签。jobLabel 从关联的 Kubernetes Pod 对象中选择标签,它将用作所有指标 的作业 标签。

例如,如果 jobLabel 设置为 foo,并且 Kubernetes Pod 对象标记为 foo: bar,则 Prometheus 会将 job="bar" 标签添加到所有 ingested 指标中。

如果此字段的值为空,则指标 的作业 标签默认为 PodMonitor 对象的命名空间和名称(如 <namespace>/&lt ;name>)。

keepDroppedTargets

整数

通过重新标记将在内存中保留的目标数量来按scrape 限制。0 表示没有限制。

它需要 Prometheus >= v2.47.0。

labelLimit

整数

对示例接受的标签数的 per-scrape 限制。

它需要 Prometheus >= v2.27.0。

labelNameLengthLimit

整数

对示例接受的标签名称长度的 per-scrape 限制。

它需要 Prometheus >= v2.27.0。

labelValueLengthLimit

整数

对示例接受的标签值长度的 per-scrape 限制。

它需要 Prometheus >= v2.27.0。

namespaceSelector

object

namespaceSelector 定义 Prometheus 应该发现 pod 的命名空间。默认情况下,pod 在与 PodMonitor 对象相同的命名空间中发现,但可以在不同的/所有命名空间中选择 pod。

nativeHistogramBucketLimit

整数

如果原生直方中有多个存储桶,则存储桶将合并以保持在限值内。它需要 Prometheus >= v2.45.0。

nativeHistogramMinBucketFactor

integer-or-string

如果一个存储桶的增长因素小于这个存储桶,则存储桶将足够合并,以足够增加因素。它需要 Prometheus >= v2.50.0。

podMetricsEndpoints

数组

定义如何从所选 pod 中提取指标。

podMetricsEndpoints[]

object

PodMetricsEndpoint 定义了一个端点,供 Prometheus 提取 Prometheus 指标。

podTargetLabels

数组(字符串)

podTargetLabels 定义从关联的 Kubernetes Pod 对象传输到最接近的指标的标签。

sampleLimit

整数

SampleLimit 对接受的提取示例数量定义了一个 per-scrape 限制。

scrapeClass

string

要应用的提取类。

scrapeClassicHistograms

布尔值

是否提取作为原生直方公开的经典直方图。它需要 Prometheus >= v2.45.0。

scrapeProtocols

数组(字符串)

scrapeProtocols 定义提取期间要协商的协议。它根据首选顺序告知客户端 Prometheus 支持的协议(从最先到最首选)。

如果未设置,Prometheus 将使用其默认值。

它需要 Prometheus >= v2.49.0。

selector

object

选择要提取指标的 Kubernetes Pod 对象的标签选择器。

selectorMechanism

string

用于选择要提取的端点的机制。默认情况下,选择过程依赖于重新标记配置来过滤发现的目标。另外,您可以选择在大型集群中提供更好的效率的节点选择器。需要对您的用例进行仔细评估,哪个策略最适合您的用例。

它需要 Prometheus >= v2.17.0。

targetLimit

整数

TargetLimit 定义了接受的提取目标数量的限制。

6.1.2. .spec.attachMetadata

描述

attachMetadata 定义添加到发现的目标中的其他元数据。

它需要 Prometheus >= v2.35.0。

类型
object
Expand
属性类型描述

node

布尔值

当设置为 true 时,Prometheus 会将节点元数据附加到发现的目标。

Prometheus 服务帐户必须具有 节点对象的列表 和监视 权限。

6.1.3. .spec.namespaceSelector

描述
namespaceSelector 定义 Prometheus 应该发现 pod 的命名空间。默认情况下,pod 在与 PodMonitor 对象相同的命名空间中发现,但可以在不同的/所有命名空间中选择 pod。
类型
object
Expand
属性类型描述

any

布尔值

布尔值描述是否都选择了所有命名空间,而不是列表限制它们。

matchNames

数组(字符串)

要从中选择的命名空间名称列表。

6.1.4. .spec.podMetricsEndpoints

描述
定义如何从所选 pod 中提取指标。
类型
array

6.1.5. .spec.podMetricsEndpoints[]

描述
PodMetricsEndpoint 定义了一个端点,供 Prometheus 提取 Prometheus 指标。
类型
object
Expand
属性类型描述

授权

object

授权 将 Authorization 标头凭据配置为在提取目标时使用。

不可与 basicAuthoauth2 同时设置。

basicAuth

object

basicAuth 将基本身份验证凭据配置为在提取目标时使用。

不可 与授权 (或 oauth2) 同时设置。

bearerTokenSecret

object

bearerTokenSecret 指定包含用于提取目标的 bearer 令牌的 Secret 的密钥。secret 需要与 PodMonitor 对象位于同一个命名空间中,并可由 Prometheus Operator 读取。

deprecated: 使用 authorization 替代。

enableHttp2

布尔值

enableHttp2 可用于在提取目标时禁用 HTTP2。

filterRunning

布尔值

为 true 时,在目标发现过程中丢弃没有运行(如 Failed 或 Succeeded 状态)的 pod。

如果未设置,则启用过滤。

更多信息: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle/#pod-phase

followRedirects

布尔值

followRedirects 定义提取请求是否应跟随 HTTP 3xx 重定向。

honorLabels

布尔值

为 true 时,当指标标签与目标标签冲突时,honorLabels 会保留指标的标签。

honorTimestamps

布尔值

honorTimestamps 控制 Prometheus 在由目标公开时是否保留时间戳。

interval

string

Prometheus 从目标中提取指标的间隔。

如果为空,Prometheus 将使用全局提取间隔。

metricRelabelings

数组

metricRelabelings 配置重新标记规则,以便在 ingestion 前应用到示例。

metricRelabelings[]

object

RelabelConfig 允许为目标、警报、提取示例和远程写入示例动态重写标签。

更多信息: https://prometheus.io/docs/prometheus/latest/configuration/configuration/#relabel_config

oauth2

object

oauth2 将 OAuth2 设置配置为在提取目标时使用。

它需要 Prometheus >= 2.27.0。

不可与授权同时设置,或者 basicAuth

params

object

参数定义 可选的 HTTP URL 参数。

params{}

数组(字符串)

 

path

string

从中提取指标的 HTTP 路径。

如果为空,Prometheus 将使用默认值(如 /metrics)。

port

string

公开端点的 Pod 端口名称。

它优先于 portNumbertargetPort 字段。

portNumber

整数

公开端点的 Pod 端口号。

proxyUrl

string

proxy Url 配置 HTTP 代理 URL (如 "http://proxyserver:2195")以便在提取目标时进行。

重新标记

数组

重新标记 配置重新标记规则以应用目标的元数据标签。

Operator 会自动为几个标准 Kubernetes 字段添加重新标记。

原始提取作业的名称可以通过 \__tmp_prometheus_job_name 标签获得。

更多信息: https://prometheus.io/docs/prometheus/latest/configuration/configuration/#relabel_config

relabelings[]

object

RelabelConfig 允许为目标、警报、提取示例和远程写入示例动态重写标签。

更多信息: https://prometheus.io/docs/prometheus/latest/configuration/configuration/#relabel_config

scheme

字符串

用于提取的 HTTP 方案。

HTTPhttps 是预期的值,除非您通过重新标记重写 scheme 标签。

如果为空,Prometheus 将使用默认值 http

scrapeTimeout

string

Prometheus 将提取视为失败超时。

如果为空,Prometheus 将使用全局提取超时,除非它小于使用后者的目标提取间隔值。该值不能超过提取间隔,否则 operator 将拒绝该资源。

targetPort

integer-or-string

在 Service 后面的 Pod 对象的目标端口的名称或号,必须使用容器端口属性指定端口。

deprecated: 使用 'port' 或 'portNumber'。

tlsConfig

object

提取目标时使用的 TLS 配置。

trackTimestampsStaleness

布尔值

trackTimestampsStaleness 定义 Prometheus 是否跟踪提取数据中存在显式时间戳的指标的过时。如果 honorTimestamps 为 false,则无效。

它需要 Prometheus >= v2.48.0。

6.1.6. .spec.podMetricsEndpoints[].authorization

描述

授权 将 Authorization 标头凭据配置为在提取目标时使用。

不可与 basicAuthoauth2 同时设置。

类型
object
Expand
属性类型描述

credentials

object

选择命名空间中包含用于身份验证的凭证的 Secret 的键。

type

string

定义身份验证类型。该值不区分大小写。

"basic"不是受支持的值。

默认:"Bearer"

描述
选择命名空间中包含用于身份验证的凭证的 Secret 的键。
类型
object
必填
  • key
Expand
属性类型描述

key

字符串

要从中选择的 secret 的密钥。必须是一个有效的 secret 密钥。

name

字符串

引用的名称。有效地需要此字段,但因为允许向后兼容为空。这里具有空值的此类实例几乎是错误的。更多信息: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names

optional

布尔值

指定是否需要定义 Secret 还是其密钥

6.1.8. .spec.podMetricsEndpoints[].basicAuth

描述

basicAuth 将基本身份验证凭据配置为在提取目标时使用。

不可 与授权 (或 oauth2) 同时设置。

类型
object
Expand
属性类型描述

password

object

password 指定包含用于身份验证的密码的 Secret 的键。

username

object

username 指定包含用于身份验证的用户名的 Secret 的键。

6.1.9. .spec.podMetricsEndpoints[].basicAuth.password

描述
password 指定包含用于身份验证的密码的 Secret 的键。
类型
object
必填
  • key
Expand
属性类型描述

key

字符串

要从中选择的 secret 的密钥。必须是一个有效的 secret 密钥。

name

字符串

引用的名称。有效地需要此字段,但因为允许向后兼容为空。这里具有空值的此类实例几乎是错误的。更多信息: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names

optional

布尔值

指定是否需要定义 Secret 还是其密钥

6.1.10. .spec.podMetricsEndpoints[].basicAuth.username

描述
username 指定包含用于身份验证的用户名的 Secret 的键。
类型
object
必填
  • key
Expand
属性类型描述

key

字符串

要从中选择的 secret 的密钥。必须是一个有效的 secret 密钥。

name

字符串

引用的名称。有效地需要此字段,但因为允许向后兼容为空。这里具有空值的此类实例几乎是错误的。更多信息: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names

optional

布尔值

指定是否需要定义 Secret 还是其密钥

6.1.11. .spec.podMetricsEndpoints[].bearerTokenSecret

描述

bearerTokenSecret 指定包含用于提取目标的 bearer 令牌的 Secret 的密钥。secret 需要与 PodMonitor 对象位于同一个命名空间中,并可由 Prometheus Operator 读取。

deprecated: 使用 authorization 替代。

类型
object
必填
  • key
Expand
属性类型描述

key

字符串

要从中选择的 secret 的密钥。必须是一个有效的 secret 密钥。

name

字符串

引用的名称。有效地需要此字段,但因为允许向后兼容为空。这里具有空值的此类实例几乎是错误的。更多信息: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names

optional

布尔值

指定是否需要定义 Secret 还是其密钥

6.1.12. .spec.podMetricsEndpoints[].metricRelabelings

描述
metricRelabelings 配置重新标记规则,以便在 ingestion 前应用到示例。
类型
array

6.1.13. .spec.podMetricsEndpoints[].metricRelabelings[]

描述

RelabelConfig 允许为目标、警报、提取示例和远程写入示例动态重写标签。

更多信息: https://prometheus.io/docs/prometheus/latest/configuration/configuration/#relabel_config

类型
object
Expand
属性类型描述

action

string

根据正则表达式匹配要执行的操作。

大写 和低 大小 操作需要 Prometheus >= v2.36.0。DropEqualKeepEqual 操作需要 Prometheus >= v2.41.0。

默认:"Replace"

modulus

整数

modulus 采用 source 标签值的哈希。

仅在操作为 HashMod 时适用。

regex

字符串

匹配提取值的正则表达式。

替换

string

如果正则表达式匹配,则执行 replace 操作的替换值。

正则表达式捕获组可用。

分隔符

string

分隔符是串联的 SourceLabels 之间的字符串。

sourceLabels

数组(字符串)

source 标签从现有标签中选择值。其内容使用配置的 Separator 连接,并与配置的正则表达式匹配。

targetLabel

string

生成的字符串写入替换标签。

对于 替换,HashMod,Lowercase,Uppercase,KeepEqualDropEqual 操作是必须的。

正则表达式捕获组可用。

6.1.14. .spec.podMetricsEndpoints[].oauth2

描述

oauth2 将 OAuth2 设置配置为在提取目标时使用。

它需要 Prometheus >= 2.27.0。

不可与授权同时设置,或者 basicAuth

类型
object
必填
  • clientId
  • clientSecret
  • tokenUrl
Expand
属性类型描述

clientId

object

clientId 指定包含 OAuth2 客户端 ID 的 Secret 或 ConfigMap 的键。

clientSecret

object

clientSecret 指定包含 OAuth2 客户端 secret 的 Secret 的密钥。

endpointParams

对象(字符串)

endpointParams 配置 HTTP 参数以附加到令牌 URL。

noProxy

string

noProxy 是一个以逗号分隔的字符串,可以包含 IP、CIDR 表示法、应在代理中排除的域名。IP 和域名可以包含端口号。

它需要 Prometheus >= v2.43.0 或 Alertmanager >= 0.25.0。

proxyConnectHeader

object

ProxyConnectHeader (可选)指定在 CONNECT 请求期间发送到代理的标头。

它需要 Prometheus >= v2.43.0 或 Alertmanager >= 0.25.0。

proxyConnectHeader{}

数组

 

proxyConnectHeader{}[]

object

SecretKeySelector 选择 Secret 的密钥。

proxyFromEnvironment

布尔值

是否使用由环境变量(HTTP_PROXY、HTTPS_PROXY 和 NO_PROXY)定义的代理配置。

它需要 Prometheus >= v2.43.0 或 Alertmanager >= 0.25.0。

proxyUrl

string

proxy Url 定义要使用的 HTTP 代理服务器。

scopes

数组(字符串)

范围 定义用于令牌请求的 OAuth2 范围。

tlsConfig

object

连接到 OAuth2 服务器时要使用的 TLS 配置。它需要 Prometheus >= v2.43.0。

tokenUrl

string

token Url 配置用于从中获取令牌的 URL。

6.1.15. .spec.podMetricsEndpoints[].oauth2.clientId

描述
clientId 指定包含 OAuth2 客户端 ID 的 Secret 或 ConfigMap 的键。
类型
object
Expand
属性类型描述

configMap

对象

包含用于目标的数据的 ConfigMap。

secret

对象

包含用于目标的数据的 secret。

描述
包含用于目标的数据的 ConfigMap。
类型
object
必填
  • key
Expand
属性类型描述

key

字符串

要选择的密钥。

name

字符串

引用的名称。有效地需要此字段,但因为允许向后兼容为空。这里具有空值的此类实例几乎是错误的。更多信息: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names

optional

布尔值

指定是否必须定义 ConfigMap 还是其键

6.1.17. .spec.podMetricsEndpoints[].oauth2.clientId.secret

描述
包含用于目标的数据的 secret。
类型
object
必填
  • key
Expand
属性类型描述

key

字符串

要从中选择的 secret 的密钥。必须是一个有效的 secret 密钥。

name

字符串

引用的名称。有效地需要此字段,但因为允许向后兼容为空。这里具有空值的此类实例几乎是错误的。更多信息: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names

optional

布尔值

指定是否需要定义 Secret 还是其密钥

6.1.18. .spec.podMetricsEndpoints[].oauth2.clientSecret

描述
clientSecret 指定包含 OAuth2 客户端 secret 的 Secret 的密钥。
类型
object
必填
  • key
Expand
属性类型描述

key

字符串

要从中选择的 secret 的密钥。必须是一个有效的 secret 密钥。

name

字符串

引用的名称。有效地需要此字段,但因为允许向后兼容为空。这里具有空值的此类实例几乎是错误的。更多信息: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names

optional

布尔值

指定是否需要定义 Secret 还是其密钥

描述

ProxyConnectHeader (可选)指定在 CONNECT 请求期间发送到代理的标头。

它需要 Prometheus >= v2.43.0 或 Alertmanager >= 0.25.0。

类型
object
描述
类型
数组
描述
SecretKeySelector 选择 Secret 的密钥。
类型
object
必填
  • key
Expand
属性类型描述

key

字符串

要从中选择的 secret 的密钥。必须是一个有效的 secret 密钥。

name

字符串

引用的名称。有效地需要此字段,但因为允许向后兼容为空。这里具有空值的此类实例几乎是错误的。更多信息: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names

optional

布尔值

指定是否需要定义 Secret 还是其密钥

6.1.22. .spec.podMetricsEndpoints[].oauth2.tlsConfig

描述
连接到 OAuth2 服务器时要使用的 TLS 配置。它需要 Prometheus >= v2.43.0。
类型
object
Expand
属性类型描述

ca

object

验证服务器证书时使用的证书颁发机构。

cert

object

执行 client-authentication 时要出现的客户端证书。

insecureSkipVerify

布尔值

禁用目标证书验证。

keySecret

对象

包含目标客户端密钥文件的 secret。

maxVersion

string

最大可接受的 TLS 版本。

它需要 Prometheus >= v2.41.0。

minVersion

string

最低可接受的 TLS 版本。

它需要 Prometheus >= v2.35.0。

serverName

字符串

用于验证目标的主机名。

6.1.23. .spec.podMetricsEndpoints[].oauth2.tlsConfig.ca

描述
验证服务器证书时使用的证书颁发机构。
类型
object
Expand
属性类型描述

configMap

对象

包含用于目标的数据的 ConfigMap。

secret

对象

包含用于目标的数据的 secret。

描述
包含用于目标的数据的 ConfigMap。
类型
object
必填
  • key
Expand
属性类型描述

key

字符串

要选择的密钥。

name

字符串

引用的名称。有效地需要此字段,但因为允许向后兼容为空。这里具有空值的此类实例几乎是错误的。更多信息: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names

optional

布尔值

指定是否必须定义 ConfigMap 还是其键

描述
包含用于目标的数据的 secret。
类型
object
必填
  • key
Expand
属性类型描述

key

字符串

要从中选择的 secret 的密钥。必须是一个有效的 secret 密钥。

name

字符串

引用的名称。有效地需要此字段,但因为允许向后兼容为空。这里具有空值的此类实例几乎是错误的。更多信息: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names

optional

布尔值

指定是否需要定义 Secret 还是其密钥

6.1.26. .spec.podMetricsEndpoints[].oauth2.tlsConfig.cert

描述
执行 client-authentication 时要出现的客户端证书。
类型
object
Expand
属性类型描述

configMap

对象

包含用于目标的数据的 ConfigMap。

secret

对象

包含用于目标的数据的 secret。

描述
包含用于目标的数据的 ConfigMap。
类型
object
必填
  • key
Expand
属性类型描述

key

字符串

要选择的密钥。

name

字符串

引用的名称。有效地需要此字段,但因为允许向后兼容为空。这里具有空值的此类实例几乎是错误的。更多信息: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names

optional

布尔值

指定是否必须定义 ConfigMap 还是其键

描述
包含用于目标的数据的 secret。
类型
object
必填
  • key
Expand
属性类型描述

key

字符串

要从中选择的 secret 的密钥。必须是一个有效的 secret 密钥。

name

字符串

引用的名称。有效地需要此字段,但因为允许向后兼容为空。这里具有空值的此类实例几乎是错误的。更多信息: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names

optional

布尔值

指定是否需要定义 Secret 还是其密钥

描述
包含目标客户端密钥文件的 secret。
类型
object
必填
  • key
Expand
属性类型描述

key

字符串

要从中选择的 secret 的密钥。必须是一个有效的 secret 密钥。

name

字符串

引用的名称。有效地需要此字段,但因为允许向后兼容为空。这里具有空值的此类实例几乎是错误的。更多信息: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names

optional

布尔值

指定是否需要定义 Secret 还是其密钥

6.1.30. .spec.podMetricsEndpoints[].params

描述
参数定义 可选的 HTTP URL 参数。
类型
对象

6.1.31. .spec.podMetricsEndpoints[].relabelings

描述

重新标记 配置重新标记规则以应用目标的元数据标签。

Operator 会自动为几个标准 Kubernetes 字段添加重新标记。

原始提取作业的名称可以通过 \__tmp_prometheus_job_name 标签获得。

更多信息: https://prometheus.io/docs/prometheus/latest/configuration/configuration/#relabel_config

类型
array

6.1.32. .spec.podMetricsEndpoints[].relabelings[]

描述

RelabelConfig 允许为目标、警报、提取示例和远程写入示例动态重写标签。

更多信息: https://prometheus.io/docs/prometheus/latest/configuration/configuration/#relabel_config

类型
object
Expand
属性类型描述

action

string

根据正则表达式匹配要执行的操作。

大写 和低 大小 操作需要 Prometheus >= v2.36.0。DropEqualKeepEqual 操作需要 Prometheus >= v2.41.0。

默认:"Replace"

modulus

整数

modulus 采用 source 标签值的哈希。

仅在操作为 HashMod 时适用。

regex

字符串

匹配提取值的正则表达式。

替换

string

如果正则表达式匹配,则执行 replace 操作的替换值。

正则表达式捕获组可用。

分隔符

string

分隔符是串联的 SourceLabels 之间的字符串。

sourceLabels

数组(字符串)

source 标签从现有标签中选择值。其内容使用配置的 Separator 连接,并与配置的正则表达式匹配。

targetLabel

string

生成的字符串写入替换标签。

对于 替换,HashMod,Lowercase,Uppercase,KeepEqualDropEqual 操作是必须的。

正则表达式捕获组可用。

6.1.33. .spec.podMetricsEndpoints[].tlsConfig

描述
提取目标时使用的 TLS 配置。
类型
object
Expand
属性类型描述

ca

object

验证服务器证书时使用的证书颁发机构。

cert

object

执行 client-authentication 时要出现的客户端证书。

insecureSkipVerify

布尔值

禁用目标证书验证。

keySecret

对象

包含目标客户端密钥文件的 secret。

maxVersion

string

最大可接受的 TLS 版本。

它需要 Prometheus >= v2.41.0。

minVersion

string

最低可接受的 TLS 版本。

它需要 Prometheus >= v2.35.0。

serverName

字符串

用于验证目标的主机名。

6.1.34. .spec.podMetricsEndpoints[].tlsConfig.ca

描述
验证服务器证书时使用的证书颁发机构。
类型
object
Expand
属性类型描述

configMap

对象

包含用于目标的数据的 ConfigMap。

secret

对象

包含用于目标的数据的 secret。

6.1.35. .spec.podMetricsEndpoints[].tlsConfig.ca.configMap

描述
包含用于目标的数据的 ConfigMap。
类型
object
必填
  • key
Expand
属性类型描述

key

字符串

要选择的密钥。

name

字符串

引用的名称。有效地需要此字段,但因为允许向后兼容为空。这里具有空值的此类实例几乎是错误的。更多信息: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names

optional

布尔值

指定是否必须定义 ConfigMap 还是其键

6.1.36. .spec.podMetricsEndpoints[].tlsConfig.ca.secret

描述
包含用于目标的数据的 secret。
类型
object
必填
  • key
Expand
属性类型描述

key

字符串

要从中选择的 secret 的密钥。必须是一个有效的 secret 密钥。

name

字符串

引用的名称。有效地需要此字段,但因为允许向后兼容为空。这里具有空值的此类实例几乎是错误的。更多信息: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names

optional

布尔值

指定是否需要定义 Secret 还是其密钥

6.1.37. .spec.podMetricsEndpoints[].tlsConfig.cert

描述
执行 client-authentication 时要出现的客户端证书。
类型
object
Expand
属性类型描述

configMap

对象

包含用于目标的数据的 ConfigMap。

secret

对象

包含用于目标的数据的 secret。

描述
包含用于目标的数据的 ConfigMap。
类型
object
必填
  • key
Expand
属性类型描述

key

字符串

要选择的密钥。

name

字符串

引用的名称。有效地需要此字段,但因为允许向后兼容为空。这里具有空值的此类实例几乎是错误的。更多信息: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names

optional

布尔值

指定是否必须定义 ConfigMap 还是其键

6.1.39. .spec.podMetricsEndpoints[].tlsConfig.cert.secret

描述
包含用于目标的数据的 secret。
类型
object
必填
  • key
Expand
属性类型描述

key

字符串

要从中选择的 secret 的密钥。必须是一个有效的 secret 密钥。

name

字符串

引用的名称。有效地需要此字段,但因为允许向后兼容为空。这里具有空值的此类实例几乎是错误的。更多信息: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names

optional

布尔值

指定是否需要定义 Secret 还是其密钥

6.1.40. .spec.podMetricsEndpoints[].tlsConfig.keySecret

描述
包含目标客户端密钥文件的 secret。
类型
object
必填
  • key
Expand
属性类型描述

key

字符串

要从中选择的 secret 的密钥。必须是一个有效的 secret 密钥。

name

字符串

引用的名称。有效地需要此字段,但因为允许向后兼容为空。这里具有空值的此类实例几乎是错误的。更多信息: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names

optional

布尔值

指定是否需要定义 Secret 还是其密钥

6.1.41. .spec.selector

描述
选择要提取指标的 Kubernetes Pod 对象的标签选择器。
类型
object
Expand
属性类型描述

matchExpressions

array

matchExpressions 是标签选择器要求列表。要求的逻辑关系是 AND。

matchExpressions[]

对象

标签选择器要求是一个选择器,其中包含与键和值相关的值、键和值。

matchLabels

对象(字符串)

matchLabels 是 {key,value} 对的映射。MatchLabels 映射中的单个 {key,value} 等同于 matchExpressions 的一个元素,其 key 字段是 "key",运算符是 "In",值数组仅包含 "value"。要求的逻辑关系是 AND。

6.1.42. .spec.selector.matchExpressions

描述
matchExpressions 是标签选择器要求列表。要求的逻辑关系是 AND。
类型
array

6.1.43. .spec.selector.matchExpressions[]

描述
标签选择器要求是一个选择器,其中包含与键和值相关的值、键和值。
类型
object
必填
  • key
  • operator
Expand
属性类型描述

key

字符串

key 是选择器应用到的标签键。

operator

字符串

运算符代表一个键与一组值的关系。有效的运算符是 In、NotIn、Exists 和 DoesNotExist。

数组(字符串)

值是字符串值的数组。如果运算符是 In 或 NotIn,则值数组必须是非空的。如果运算符是 Exists 或 DoesNotExist,则值数组必须为空。这个数组会在策略性合并补丁中被替换。

Red Hat logoGithubredditYoutubeTwitter

学习

尝试、购买和销售

社区

关于红帽文档

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

让开源更具包容性

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

關於紅帽

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

Theme

© 2026 Red Hat
返回顶部