PodMonitor 定义了一组 Pod 的监控。
PodMonitor 定义了一组 Pod 的监控。
对象
spec
属性 | 类型 | 描述 |
---|---|---|
|
|
APIVersion 定义了此对象表示的版本化模式。服务器应将识别的模式转换为最新的内部值,并可能拒绝无法识别的值。更多信息:https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources |
|
|
Kind 是一个字符串值,表示此对象表示的 REST 资源。服务器可以从客户端提交请求的端点推断出这一点。不能更新。采用驼峰式命名法。更多信息:https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds |
|
标准对象的元数据。更多信息:https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#metadata |
|
|
|
Prometheus 用于目标发现的所需 Pod 选择的规范。 |
Prometheus 用于目标发现的所需 Pod 选择的规范。
对象
selector
属性 | 类型 | 描述 |
---|---|---|
|
|
这需要 Prometheus >= v2.37.0。 |
|
|
如果定义, 这需要 Prometheus >= v2.28.0。 |
|
|
用于检索作业名称的标签。 例如,如果 如果此字段的值为空,则指标的 |
|
|
每次抓取时,由重新标记删除的目标数量的限制将保留在内存中。0 表示没有限制。 这需要 Prometheus >= v2.47.0。 |
|
|
每次抓取时,将为样本接受的标签数量的限制。 这需要 Prometheus >= v2.27.0。 |
|
|
每个抓取操作对样本中接受的标签名称长度的限制。 这需要 Prometheus >= v2.27.0。 |
|
|
每个抓取操作对样本中接受的标签值长度的限制。 这需要 Prometheus >= v2.27.0。 |
|
|
选择器,用于选择从中发现 Kubernetes |
|
|
此 PodMonitor 的端点列表。 |
|
|
PodMetricsEndpoint 定义了一个端点,用于提供 Prometheus 将要抓取的指标。 |
|
|
|
|
|
|
|
|
要应用的抓取类。 |
|
|
如果未设置,Prometheus 将使用其默认值。 需要 Prometheus >= v2.49.0。 |
|
|
标签选择器,用于选择 Kubernetes |
|
|
|
attachMetadata
定义了添加到已发现目标的附加元数据。
这需要 Prometheus >= v2.37.0。
对象
属性 | 类型 | 描述 |
---|---|---|
|
|
设置为 true 时,Prometheus 必须对 |
选择器,用于选择从中发现 Kubernetes Pods
对象的命名空间。
对象
属性 | 类型 | 描述 |
---|---|---|
|
|
布尔值,描述是否选择了所有命名空间,而不是限制它们的列表。 |
|
|
要从中选择的命名空间名称列表。 |
PodMetricsEndpoint 定义了一个端点,用于提供 Prometheus 将要抓取的指标。
对象
属性 | 类型 | 描述 |
---|---|---|
|
|
不能同时与 |
|
|
不能同时与 |
|
|
已弃用:请改用 |
|
|
|
|
|
设置为 true 时,在目标发现过程中将丢弃未运行的 Pod(例如,处于“失败”或“成功”状态的 Pod)。 如果未设置,则启用过滤。 更多信息:https://kubernetes.ac.cn/docs/concepts/workloads/pods/pod-lifecycle/#pod-phase |
|
|
|
|
|
设置为 true 时, |
|
|
|
|
|
Prometheus 从目标抓取指标的间隔。 如果为空,Prometheus 将使用全局抓取间隔。 |
|
|
|
|
|
RelabelConfig 允许动态重写目标、警报、已抓取样本和远程写入样本的标签集。 更多信息:https://prometheus.ac.cn/docs/prometheus/latest/configuration/configuration/#relabel_config |
|
|
需要 Prometheus >= 2.27.0。 不能同时与 |
|
|
|
|
|
|
|
|
从中抓取指标的 HTTP 路径。 如果为空,Prometheus 将使用默认值(例如 |
|
|
此端点引用的 Pod 端口的名称。 它优先于 |
|
|
|
|
|
操作员会自动为一些标准 Kubernetes 字段添加重新标记。 原始抓取作业的名称可通过 更多信息:https://prometheus.ac.cn/docs/prometheus/latest/configuration/configuration/#relabel_config |
|
|
RelabelConfig 允许动态重写目标、警报、已抓取样本和远程写入样本的标签集。 更多信息:https://prometheus.ac.cn/docs/prometheus/latest/configuration/configuration/#relabel_config |
|
|
用于抓取的 HTTP 方案。 除非通过重新标记重写 如果为空,Prometheus 将使用默认值 |
|
|
Prometheus 将抓取视为失败的超时时间。 如果为空,Prometheus 将使用全局抓取超时,除非它小于目标的抓取间隔值,在这种情况下将使用后者。 |
|
|
Service 后面 已弃用:请改用“port”。 |
|
|
在抓取目标时要使用的 TLS 配置。 |
|
|
需要 Prometheus >= v2.48.0。 |
authorization
配置在抓取目标时要使用的授权头凭据。
不能同时与 basicAuth
或 oauth2
一起设置。
对象
属性 | 类型 | 描述 |
---|---|---|
|
|
选择命名空间中包含身份验证凭据的 Secret 的密钥。 |
|
|
定义身份验证类型。该值不区分大小写。 “Basic”不是受支持的值。 默认值:“Bearer” |
选择命名空间中包含身份验证凭据的 Secret 的密钥。
对象
密钥
属性 | 类型 | 描述 |
---|---|---|
|
|
要从中选择的密钥的密钥。必须是有效的密钥。 |
|
|
引用的名称。此字段实际上是必需的,但由于向后兼容性,允许为空。此类型的实例在此处为空值几乎肯定是错误的。待办事项:添加其他有用的字段。 apiVersion、kind、uid?更多信息:https://kubernetes.ac.cn/docs/concepts/overview/working-with-objects/names/#names 待办事项:当 controller-gen 不需要时删除 |
|
|
指定是否必须定义 Secret 或其密钥 |
basicAuth
配置在抓取目标时要使用的基本身份验证凭据。
不能同时与 authorization
或 oauth2
一起设置。
对象
属性 | 类型 | 描述 |
---|---|---|
|
|
|
|
|
|
password
指定包含身份验证密码的 Secret 的密钥。
对象
密钥
属性 | 类型 | 描述 |
---|---|---|
|
|
要从中选择的密钥的密钥。必须是有效的密钥。 |
|
|
引用的名称。此字段实际上是必需的,但由于向后兼容性,允许为空。此类型的实例在此处为空值几乎肯定是错误的。待办事项:添加其他有用的字段。 apiVersion、kind、uid?更多信息:https://kubernetes.ac.cn/docs/concepts/overview/working-with-objects/names/#names 待办事项:当 controller-gen 不需要时删除 |
|
|
指定是否必须定义 Secret 或其密钥 |
username
指定包含身份验证用户名 Secret 的密钥。
对象
密钥
属性 | 类型 | 描述 |
---|---|---|
|
|
要从中选择的密钥的密钥。必须是有效的密钥。 |
|
|
引用的名称。此字段实际上是必需的,但由于向后兼容性,允许为空。此类型的实例在此处为空值几乎肯定是错误的。待办事项:添加其他有用的字段。 apiVersion、kind、uid?更多信息:https://kubernetes.ac.cn/docs/concepts/overview/working-with-objects/names/#names 待办事项:当 controller-gen 不需要时删除 |
|
|
指定是否必须定义 Secret 或其密钥 |
bearerTokenSecret
指定一个密钥,该密钥指向包含用于抓取目标的 bearer 令牌的 Secret。该 Secret 需要与 PodMonitor 对象位于同一个命名空间中,并且可被 Prometheus Operator 读取。
已弃用:请改用 authorization
。
对象
密钥
属性 | 类型 | 描述 |
---|---|---|
|
|
要从中选择的密钥的密钥。必须是有效的密钥。 |
|
|
引用的名称。此字段实际上是必需的,但由于向后兼容性,允许为空。此类型的实例在此处为空值几乎肯定是错误的。待办事项:添加其他有用的字段。 apiVersion、kind、uid?更多信息:https://kubernetes.ac.cn/docs/concepts/overview/working-with-objects/names/#names 待办事项:当 controller-gen 不需要时删除 |
|
|
指定是否必须定义 Secret 或其密钥 |
RelabelConfig 允许动态重写目标、警报、已抓取样本和远程写入样本的标签集。
对象
属性 | 类型 | 描述 |
---|---|---|
|
|
基于正则表达式匹配执行的操作。
默认值:“Replace” |
|
|
源标签值的哈希取模。 仅当操作为 |
|
|
与提取的值匹配的正则表达式。 |
|
|
如果正则表达式匹配,则执行替换操作的替换值。 支持正则表达式捕获组。 |
|
|
分隔符是连接的SourceLabels之间的字符串。 |
|
|
源标签从现有标签中选择值。它们的内容使用配置的分隔符连接,并与配置的正则表达式匹配。 |
|
|
将结果字符串写入替换操作的目标标签。 对于 支持正则表达式捕获组。 |
oauth2
配置在抓取目标时要使用的 OAuth2 设置。
需要 Prometheus >= 2.27.0。
不能同时与 authorization
或 basicAuth
一起设置。
对象
客户端ID
客户端密钥
令牌URL
属性 | 类型 | 描述 |
---|---|---|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
clientId
指定包含OAuth2客户端ID的Secret或ConfigMap的键。
对象
属性 | 类型 | 描述 |
---|---|---|
|
|
包含目标数据使用的ConfigMap。 |
|
|
包含目标数据使用的Secret。 |
包含目标数据使用的ConfigMap。
对象
密钥
属性 | 类型 | 描述 |
---|---|---|
|
|
要选择的键。 |
|
|
引用的名称。此字段实际上是必需的,但由于向后兼容性,允许为空。此类型的实例在此处为空值几乎肯定是错误的。待办事项:添加其他有用的字段。 apiVersion、kind、uid?更多信息:https://kubernetes.ac.cn/docs/concepts/overview/working-with-objects/names/#names 待办事项:当 controller-gen 不需要时删除 |
|
|
指定是否必须定义ConfigMap或其键。 |
包含目标数据使用的Secret。
对象
密钥
属性 | 类型 | 描述 |
---|---|---|
|
|
要从中选择的密钥的密钥。必须是有效的密钥。 |
|
|
引用的名称。此字段实际上是必需的,但由于向后兼容性,允许为空。此类型的实例在此处为空值几乎肯定是错误的。待办事项:添加其他有用的字段。 apiVersion、kind、uid?更多信息:https://kubernetes.ac.cn/docs/concepts/overview/working-with-objects/names/#names 待办事项:当 controller-gen 不需要时删除 |
|
|
指定是否必须定义 Secret 或其密钥 |
clientSecret
指定包含OAuth2客户端密钥的Secret的键。
对象
密钥
属性 | 类型 | 描述 |
---|---|---|
|
|
要从中选择的密钥的密钥。必须是有效的密钥。 |
|
|
引用的名称。此字段实际上是必需的,但由于向后兼容性,允许为空。此类型的实例在此处为空值几乎肯定是错误的。待办事项:添加其他有用的字段。 apiVersion、kind、uid?更多信息:https://kubernetes.ac.cn/docs/concepts/overview/working-with-objects/names/#names 待办事项:当 controller-gen 不需要时删除 |
|
|
指定是否必须定义 Secret 或其密钥 |
relabelings
配置应用于目标元数据标签的重新标记规则。
操作员会自动为一些标准 Kubernetes 字段添加重新标记。
原始抓取作业的名称可通过 __tmp_prometheus_job_name
标签获得。
数组
RelabelConfig 允许动态重写目标、警报、已抓取样本和远程写入样本的标签集。
对象
属性 | 类型 | 描述 |
---|---|---|
|
|
基于正则表达式匹配执行的操作。
默认值:“Replace” |
|
|
源标签值的哈希取模。 仅当操作为 |
|
|
与提取的值匹配的正则表达式。 |
|
|
如果正则表达式匹配,则执行替换操作的替换值。 支持正则表达式捕获组。 |
|
|
分隔符是连接的SourceLabels之间的字符串。 |
|
|
源标签从现有标签中选择值。它们的内容使用配置的分隔符连接,并与配置的正则表达式匹配。 |
|
|
将结果字符串写入替换操作的目标标签。 对于 支持正则表达式捕获组。 |
在抓取目标时要使用的 TLS 配置。
对象
属性 | 类型 | 描述 |
---|---|---|
|
|
验证服务器证书时使用的证书颁发机构。 |
|
|
进行客户端身份验证时要提供的客户端证书。 |
|
|
禁用目标证书验证。 |
|
|
包含目标客户端密钥文件的Secret。 |
|
|
用于验证目标的主机名。 |
验证服务器证书时使用的证书颁发机构。
对象
属性 | 类型 | 描述 |
---|---|---|
|
|
包含目标数据使用的ConfigMap。 |
|
|
包含目标数据使用的Secret。 |
包含目标数据使用的ConfigMap。
对象
密钥
属性 | 类型 | 描述 |
---|---|---|
|
|
要选择的键。 |
|
|
引用的名称。此字段实际上是必需的,但由于向后兼容性,允许为空。此类型的实例在此处为空值几乎肯定是错误的。待办事项:添加其他有用的字段。 apiVersion、kind、uid?更多信息:https://kubernetes.ac.cn/docs/concepts/overview/working-with-objects/names/#names 待办事项:当 controller-gen 不需要时删除 |
|
|
指定是否必须定义ConfigMap或其键。 |
包含目标数据使用的Secret。
对象
密钥
属性 | 类型 | 描述 |
---|---|---|
|
|
要从中选择的密钥的密钥。必须是有效的密钥。 |
|
|
引用的名称。此字段实际上是必需的,但由于向后兼容性,允许为空。此类型的实例在此处为空值几乎肯定是错误的。待办事项:添加其他有用的字段。 apiVersion、kind、uid?更多信息:https://kubernetes.ac.cn/docs/concepts/overview/working-with-objects/names/#names 待办事项:当 controller-gen 不需要时删除 |
|
|
指定是否必须定义 Secret 或其密钥 |
进行客户端身份验证时要提供的客户端证书。
对象
属性 | 类型 | 描述 |
---|---|---|
|
|
包含目标数据使用的ConfigMap。 |
|
|
包含目标数据使用的Secret。 |
包含目标数据使用的ConfigMap。
对象
密钥
属性 | 类型 | 描述 |
---|---|---|
|
|
要选择的键。 |
|
|
引用的名称。此字段实际上是必需的,但由于向后兼容性,允许为空。此类型的实例在此处为空值几乎肯定是错误的。待办事项:添加其他有用的字段。 apiVersion、kind、uid?更多信息:https://kubernetes.ac.cn/docs/concepts/overview/working-with-objects/names/#names 待办事项:当 controller-gen 不需要时删除 |
|
|
指定是否必须定义ConfigMap或其键。 |
包含目标数据使用的Secret。
对象
密钥
属性 | 类型 | 描述 |
---|---|---|
|
|
要从中选择的密钥的密钥。必须是有效的密钥。 |
|
|
引用的名称。此字段实际上是必需的,但由于向后兼容性,允许为空。此类型的实例在此处为空值几乎肯定是错误的。待办事项:添加其他有用的字段。 apiVersion、kind、uid?更多信息:https://kubernetes.ac.cn/docs/concepts/overview/working-with-objects/names/#names 待办事项:当 controller-gen 不需要时删除 |
|
|
指定是否必须定义 Secret 或其密钥 |
包含目标客户端密钥文件的Secret。
对象
密钥
属性 | 类型 | 描述 |
---|---|---|
|
|
要从中选择的密钥的密钥。必须是有效的密钥。 |
|
|
引用的名称。此字段实际上是必需的,但由于向后兼容性,允许为空。此类型的实例在此处为空值几乎肯定是错误的。待办事项:添加其他有用的字段。 apiVersion、kind、uid?更多信息:https://kubernetes.ac.cn/docs/concepts/overview/working-with-objects/names/#names 待办事项:当 controller-gen 不需要时删除 |
|
|
指定是否必须定义 Secret 或其密钥 |
标签选择器,用于选择 Kubernetes Pod
对象。
对象
属性 | 类型 | 描述 |
---|---|---|
|
|
matchExpressions是标签选择器需求列表。这些需求是与关系。 |
|
|
标签选择器需求是一个包含值、键和关联键和值的运算符的选择器。 |
|
|
matchLabels是{key,value}对的映射。matchLabels映射中的单个{key,value}等效于matchExpressions的一个元素,其key字段为“key”,运算符为“In”,而values数组仅包含“value”。这些需求是与关系。 |
提供以下API端点
/apis/monitoring.coreos.com/v1/podmonitors
GET
:列出PodMonitor类型的对象
/apis/monitoring.coreos.com/v1/namespaces/{namespace}/podmonitors
DELETE
:删除PodMonitor集合
GET
:列出PodMonitor类型的对象
POST
:创建PodMonitor
/apis/monitoring.coreos.com/v1/namespaces/{namespace}/podmonitors/{name}
DELETE
:删除PodMonitor
GET
:读取指定的PodMonitor
PATCH
:部分更新指定的PodMonitor
PUT
:替换指定的PodMonitor
GET
列出PodMonitor类型的对象
HTTP代码 | 响应体 |
---|---|
200 - OK |
|
401 - 未授权 |
空 |
DELETE
删除PodMonitor集合
HTTP代码 | 响应体 |
---|---|
200 - OK |
|
401 - 未授权 |
空 |
GET
列出PodMonitor类型的对象
HTTP代码 | 响应体 |
---|---|
200 - OK |
|
401 - 未授权 |
空 |
POST
创建一个PodMonitor
参数 | 类型 | 描述 |
---|---|---|
|
|
如果存在,则表示不应持久化修改。无效或无法识别的dryRun指令将导致错误响应,并且不会进一步处理请求。有效值为:- All:将处理所有dry run阶段 |
|
|
fieldValidation指示服务器如何处理请求(POST/PUT/PATCH)中包含未知或重复字段的对象。有效值为:- Ignore:这将忽略任何被对象静默丢弃的未知字段,并将忽略解码器遇到的最后一个重复字段以外的所有重复字段。这是v1.23之前的默认行为。- Warn:这将通过标准警告响应报头为每个从对象中删除的未知字段以及遇到的每个重复字段发送警告。如果没有任何其他错误,请求仍将成功,并且仅会持久化任何重复字段中的最后一个。这是v1.23+中的默认值- Strict:如果任何未知字段将从对象中删除,或者存在任何重复字段,这将导致请求失败并返回BadRequest错误。服务器返回的错误将包含遇到的所有未知和重复字段。 |
参数 | 类型 | 描述 |
---|---|---|
|
HTTP代码 | 响应体 |
---|---|
200 - OK |
|
201 - 已创建 |
|
202 - 已接受 |
|
401 - 未授权 |
空 |
参数 | 类型 | 描述 |
---|---|---|
|
|
PodMonitor的名称 |
DELETE
删除PodMonitor
参数 | 类型 | 描述 |
---|---|---|
|
|
如果存在,则表示不应持久化修改。无效或无法识别的dryRun指令将导致错误响应,并且不会进一步处理请求。有效值为:- All:将处理所有dry run阶段 |
HTTP代码 | 响应体 |
---|---|
200 - OK |
|
202 - 已接受 |
|
401 - 未授权 |
空 |
GET
读取指定的PodMonitor
HTTP代码 | 响应体 |
---|---|
200 - OK |
|
401 - 未授权 |
空 |
PATCH
部分更新指定的PodMonitor
参数 | 类型 | 描述 |
---|---|---|
|
|
如果存在,则表示不应持久化修改。无效或无法识别的dryRun指令将导致错误响应,并且不会进一步处理请求。有效值为:- All:将处理所有dry run阶段 |
|
|
fieldValidation指示服务器如何处理请求(POST/PUT/PATCH)中包含未知或重复字段的对象。有效值为:- Ignore:这将忽略任何被对象静默丢弃的未知字段,并将忽略解码器遇到的最后一个重复字段以外的所有重复字段。这是v1.23之前的默认行为。- Warn:这将通过标准警告响应报头为每个从对象中删除的未知字段以及遇到的每个重复字段发送警告。如果没有任何其他错误,请求仍将成功,并且仅会持久化任何重复字段中的最后一个。这是v1.23+中的默认值- Strict:如果任何未知字段将从对象中删除,或者存在任何重复字段,这将导致请求失败并返回BadRequest错误。服务器返回的错误将包含遇到的所有未知和重复字段。 |
HTTP代码 | 响应体 |
---|---|
200 - OK |
|
401 - 未授权 |
空 |
PUT
替换指定的PodMonitor
参数 | 类型 | 描述 |
---|---|---|
|
|
如果存在,则表示不应持久化修改。无效或无法识别的dryRun指令将导致错误响应,并且不会进一步处理请求。有效值为:- All:将处理所有dry run阶段 |
|
|
fieldValidation指示服务器如何处理请求(POST/PUT/PATCH)中包含未知或重复字段的对象。有效值为:- Ignore:这将忽略任何被对象静默丢弃的未知字段,并将忽略解码器遇到的最后一个重复字段以外的所有重复字段。这是v1.23之前的默认行为。- Warn:这将通过标准警告响应报头为每个从对象中删除的未知字段以及遇到的每个重复字段发送警告。如果没有任何其他错误,请求仍将成功,并且仅会持久化任何重复字段中的最后一个。这是v1.23+中的默认值- Strict:如果任何未知字段将从对象中删除,或者存在任何重复字段,这将导致请求失败并返回BadRequest错误。服务器返回的错误将包含遇到的所有未知和重复字段。 |
参数 | 类型 | 描述 |
---|---|---|
|
HTTP代码 | 响应体 |
---|---|
200 - OK |
|
201 - 已创建 |
|
401 - 未授权 |
空 |