Prometheus defines a Prometheus deployment.
定义 Prometheus 部署Prometheus defines a Prometheus deployment.
定义 Prometheus 部署object
spec
Property 属性 | Type 类型 | Description 描述 |
---|---|---|
|
|
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 集群所需行为的规范。更多信息:https://github.com/kubernetes/community/blob/master/contributors/devel/sig-architecture/api-conventions.md#spec-and-status |
|
|
Prometheus 集群最近观察到的状态。只读。更多信息:https://github.com/kubernetes/community/blob/master/contributors/devel/sig-architecture/api-conventions.md#spec-and-status |
object
Property 属性 | Type 类型 | Description 描述 |
---|---|---|
|
|
AdditionalAlertManagerConfigs 指定包含额外 Prometheus Alertmanager 配置的 Secret 的键。Alertmanager 配置将附加到由 Prometheus Operator 生成的配置中。它们必须根据官方 Prometheus 文档进行格式化 https://prometheus.ac.cn/docs/prometheus/latest/configuration/configuration/#alertmanager_config 用户有责任确保配置有效。 请注意,使用此功能可能会导致 Prometheus 升级中断。建议查看 Prometheus 发行说明,以确保没有不兼容的 AlertManager 配置会在升级后中断 Prometheus。 |
|
|
AdditionalAlertRelabelConfigs 指定包含额外 Prometheus 警报重标记配置的 Secret 的键。警报重标记配置将附加到由 Prometheus Operator 生成的配置中。它们必须根据官方 Prometheus 文档进行格式化 https://prometheus.ac.cn/docs/prometheus/latest/configuration/configuration/#alert_relabel_configs 用户有责任确保配置有效。 请注意,使用此功能可能会导致 Prometheus 升级中断。建议查看 Prometheus 发行说明,以确保没有不兼容的警报重标记配置会在升级后中断 Prometheus。 |
|
|
AdditionalArgs 允许为“prometheus”容器设置附加参数。 它用于例如激活尚未由专用配置选项支持的隐藏标志。这些参数将按原样传递给 Prometheus 容器,如果它们无效或不受给定 Prometheus 版本支持,可能会导致问题。 如果发生参数冲突(例如,操作员本身已设置的参数)或提供无效参数,则协调将失败并记录错误。 |
|
|
作为 AdditionalArgs 列表一部分的参数。 |
|
|
AdditionalScrapeConfigs 允许指定包含额外 Prometheus 抓取配置的 Secret 的键。指定的抓取配置将附加到由 Prometheus Operator 生成的配置中。指定的作业配置必须具有官方 Prometheus 文档中指定的格式:https://prometheus.ac.cn/docs/prometheus/latest/configuration/configuration/#scrape_config。由于抓取配置是附加的,因此用户有责任确保其有效性。请注意,使用此功能可能会导致 Prometheus 升级中断。建议查看 Prometheus 发行说明,以确保没有不兼容的抓取配置会在升级后中断 Prometheus。 |
|
|
如果指定,则定义 Pod 的亲和力调度规则。 |
|
|
定义与 Alertmanager 相关的设置。 |
|
|
AllowOverlappingBlocks 在 Prometheus 中启用垂直压缩和垂直查询合并。 已弃用:对于 Prometheus >= 2.39.0,此标志无效,因为默认情况下已启用重叠块。 |
|
|
APIServerConfig 允许指定主机和身份验证方法以访问 Kubernetes API 服务器。如果为 null,则假定 Prometheus 在集群内运行:它将自动发现 API 服务器并使用 Pod 的 CA 证书和位于 /var/run/secrets/kubernetes.io/serviceaccount/ 的 bearer 令牌文件。 |
|
|
如果为 true,则禁止 ServiceMonitor、PodMonitor 和 Probe 对象引用“prometheus”容器文件系统上的任意文件。如果 ServiceMonitor 的端点指定了 `bearerTokenFile` 值(例如,`/var/run/secrets/kubernetes.io/serviceaccount/token`),则恶意目标可以在 Prometheus 的抓取请求中访问 Prometheus 服务帐户的令牌。将 `spec.arbitraryFSAccessThroughSM` 设置为“true”将阻止此攻击。用户应改为使用 `spec.bearerTokenSecret` 字段提供凭据。 |
|
|
AutomountServiceAccountToken 指示是否应在 Pod 中自动挂载服务帐户令牌。如果未设置此字段,则操作员默认情况下会挂载服务帐户令牌。 警告:请注意,默认情况下,Prometheus 需要服务帐户令牌才能进行 Kubernetes 服务发现。可以使用策略性合并补丁将服务帐户令牌投影到“prometheus”容器中。 |
|
|
已弃用:请改用“spec.image”。 |
|
|
BodySizeLimit 定义每个抓取的响应正文大小。仅在 Prometheus 版本 2.45.0 及更高版本中有效。 请注意,全局限制仅适用于未指定显式限制值的抓取对象。如果要对所有抓取对象强制执行最大限制,请参阅 enforcedBodySizeLimit。 |
|
|
ConfigMaps 是与 Prometheus 对象位于同一命名空间中的 ConfigMap 列表,这些 ConfigMap 将被挂载到 Prometheus Pod 中。每个 ConfigMap 都会作为名为 `configmap- |
|
|
Containers 允许注入额外的容器或修改操作员生成的容器。这可用于允许向 Pod 添加身份验证代理或更改操作员生成的容器的行为。如果此处描述的容器具有相同的名称,并且修改是通过策略性合并补丁完成的,则它们会修改操作员生成的容器。 操作员管理的容器名称为:* `prometheus` * `config-reloader` * `thanos-sidecar` 覆盖容器完全超出维护人员将支持的范围,这样做意味着您接受此行为可能随时中断且无需通知。 |
|
|
您想要在 Pod 中运行的单个应用程序容器。 |
|
|
设置为 true 时,将禁用 Prometheus 数据压缩。 |
|
|
启用对 Prometheus Web 管理 API 的访问。 警告:启用管理 API 会启用修改端点,例如删除数据、关闭 Prometheus 等。启用此功能应谨慎操作,建议用户通过代理添加额外的身份验证和授权,以确保只有被授权执行这些操作的客户端才能执行。 更多信息:https://prometheus.ac.cn/docs/prometheus/latest/querying/api/#tsdb-admin-apis |
|
|
启用对 Prometheus 功能标志的访问。默认情况下,不启用任何功能。 启用默认情况下禁用的功能完全超出维护人员的支持范围,这样做意味着您接受此行为可能随时中断且无需通知。 更多信息请参见 https://prometheus.ac.cn/docs/prometheus/latest/feature_flags/ |
|
|
启用 Prometheus 作为 Prometheus 远程写入协议的接收器。 警告:这并非一种高效的样本摄取方式。谨慎用于特定的低容量用例。它不适合替代通过抓取进行的摄取,并将 Prometheus 变成基于推送的指标收集系统。更多信息请参见 https://prometheus.ac.cn/docs/prometheus/latest/querying/api/#remote-write-receiver 需要 Prometheus >= v2.33.0。 |
|
|
如果定义了 `enforcedBodySizeLimit`,则它指定 Prometheus 将接受的未压缩响应正文大小的全局限制。响应正文大小超过此字节数的目标将导致抓取失败。 需要 Prometheus >= v2.28.0。 如果同时定义了 `enforcedBodySizeLimit` 和 `bodySizeLimit` 且都大于零,则适用以下规则:* 没有定义 `bodySizeLimit` 值的抓取对象将继承全局 `bodySizeLimit` 值 (Prometheus >= 2.45.0) 或 `enforcedBodySizeLimit` 值 (Prometheus < v2.45.0)。如果 Prometheus 版本 >= 2.45.0 且 `enforcedBodySizeLimit` 大于 `bodySizeLimit`,则 `bodySizeLimit` 将设置为 `enforcedBodySizeLimit`。* `bodySizeLimit` 值小于或等于 `enforcedBodySizeLimit` 的抓取对象将保留其特定值。* `bodySizeLimit` 值大于 `enforcedBodySizeLimit` 的抓取对象将设置为 `enforcedBodySizeLimit`。 |
|
|
如果定义了 `enforcedKeepDroppedTargets`,则它指定由重新标记丢弃的目标数量的全局限制,这些目标将保留在内存中。除非 `spec.keepDroppedTargets` 大于零且小于 `spec.enforcedKeepDroppedTargets`,否则该值将覆盖由 ServiceMonitor、PodMonitor、Probe 对象设置的任何 `spec.keepDroppedTargets`。 需要 Prometheus >= v2.47.0。 如果同时定义了 `enforcedKeepDroppedTargets` 和 `keepDroppedTargets` 且都大于零,则适用以下规则:* 没有定义 `keepDroppedTargets` 值的抓取对象将继承全局 `keepDroppedTargets` 值 (Prometheus >= 2.45.0) 或 `enforcedKeepDroppedTargets` 值 (Prometheus < v2.45.0)。如果 Prometheus 版本 >= 2.45.0 且 `enforcedKeepDroppedTargets` 大于 `keepDroppedTargets`,则 `keepDroppedTargets` 将设置为 `enforcedKeepDroppedTargets`。* `keepDroppedTargets` 值小于或等于 `enforcedKeepDroppedTargets` 的抓取对象将保留其特定值。* `keepDroppedTargets` 值大于 `enforcedKeepDroppedTargets` 的抓取对象将设置为 `enforcedKeepDroppedTargets`。 |
|
|
如果定义了 `enforcedLabelLimit`,则它指定每个样本标签数量的全局限制。除非 `spec.labelLimit` 大于零且小于 `spec.enforcedLabelLimit`,否则该值将覆盖由 ServiceMonitor、PodMonitor、Probe 对象设置的任何 `spec.labelLimit`。 需要 Prometheus >= v2.27.0。 如果同时定义了 `enforcedLabelLimit` 和 `labelLimit` 且都大于零,则适用以下规则:* 没有定义 `labelLimit` 值的抓取对象将继承全局 `labelLimit` 值 (Prometheus >= 2.45.0) 或 `enforcedLabelLimit` 值 (Prometheus < v2.45.0)。如果 Prometheus 版本 >= 2.45.0 且 `enforcedLabelLimit` 大于 `labelLimit`,则 `labelLimit` 将设置为 `enforcedLabelLimit`。* `labelLimit` 值小于或等于 `enforcedLabelLimit` 的抓取对象将保留其特定值。* `labelLimit` 值大于 `enforcedLabelLimit` 的抓取对象将设置为 `enforcedLabelLimit`。 |
|
|
如果定义了 `enforcedLabelNameLengthLimit`,则它指定每个样本标签名称长度的全局限制。除非 `spec.labelNameLengthLimit` 大于零且小于 `spec.enforcedLabelNameLengthLimit`,否则该值将覆盖由 ServiceMonitor、PodMonitor、Probe 对象设置的任何 `spec.labelNameLengthLimit`。 需要 Prometheus >= v2.27.0。 如果同时定义了 `enforcedLabelNameLengthLimit` 和 `labelNameLengthLimit` 且都大于零,则适用以下规则:* 没有定义 `labelNameLengthLimit` 值的抓取对象将继承全局 `labelNameLengthLimit` 值 (Prometheus >= 2.45.0) 或 `enforcedLabelNameLengthLimit` 值 (Prometheus < v2.45.0)。如果 Prometheus 版本 >= 2.45.0 且 `enforcedLabelNameLengthLimit` 大于 `labelNameLengthLimit`,则 `labelNameLengthLimit` 将设置为 `enforcedLabelNameLengthLimit`。* `labelNameLengthLimit` 值小于或等于 `enforcedLabelNameLengthLimit` 的抓取对象将保留其特定值。* `labelNameLengthLimit` 值大于 `enforcedLabelNameLengthLimit` 的抓取对象将设置为 `enforcedLabelNameLengthLimit`。 |
|
|
如果非空,`enforcedLabelValueLengthLimit` 定义每个样本标签值长度的全局限制。除非 `spec.labelValueLengthLimit` 大于零且小于 `spec.enforcedLabelValueLengthLimit`,否则该值将覆盖由 ServiceMonitor、PodMonitor、Probe 对象设置的任何 `spec.labelValueLengthLimit`。 需要 Prometheus >= v2.27.0。 如果同时定义了 `enforcedLabelValueLengthLimit` 和 `labelValueLengthLimit` 且都大于零,则适用以下规则:* 没有定义 `labelValueLengthLimit` 值的抓取对象将继承全局 `labelValueLengthLimit` 值 (Prometheus >= 2.45.0) 或 `enforcedLabelValueLengthLimit` 值 (Prometheus < v2.45.0)。如果 Prometheus 版本 >= 2.45.0 且 `enforcedLabelValueLengthLimit` 大于 `labelValueLengthLimit`,则 `labelValueLengthLimit` 将设置为 `enforcedLabelValueLengthLimit`。* `labelValueLengthLimit` 值小于或等于 `enforcedLabelValueLengthLimit` 的抓取对象将保留其特定值。* `labelValueLengthLimit` 值大于 `enforcedLabelValueLengthLimit` 的抓取对象将设置为 `enforcedLabelValueLengthLimit`。 |
|
|
如果非空,则将添加一个标签到: 1. 从 `ServiceMonitor`、`PodMonitor`、`Probe` 和 `ScrapeConfig` 对象抓取的所有指标。2. 从 `PrometheusRule` 对象中定义的记录规则生成的所有指标。3. 从 `PrometheusRule` 对象中定义的警报规则生成的所有警报。4. `PrometheusRule` 对象中定义的 PromQL 表达式的所有向量选择器。 对于 `spec.excludedFromEnforcement` 中引用的对象,不会添加该标签。 此字段的值为标签的名称。标签的值是 |
|
|
如果定义了enforcedSampleLimit,则它指定了将被接受的已抓取样本的全局限制数量。除非 管理员可以使用它来将样本/序列的总数保持在所需的限制以下。 如果同时定义了 |
|
|
如果定义了enforcedTargetLimit,则它指定了已抓取目标的全局限制数量。除非 管理员可以使用它来将目标的总数保持在所需的限制以下。 如果同时定义了 |
|
|
规则评估间隔。默认值:“30s” |
|
|
要从强制执行源命名空间标签中排除的PodMonitor、ServiceMonitor、Probe和PrometheusRule对象的引用列表。 仅当 |
|
|
ObjectReference引用PodMonitor、ServiceMonitor、Probe或PrometheusRule对象。 |
|
|
与示例相关的设置,可在运行时重新加载。它需要启用 |
|
|
与外部系统(联合、远程存储、Alertmanager)通信时,要添加到任何时间序列或警报中的标签。由 |
|
|
Prometheus服务可在外部访问的外部URL。这对于生成正确的URL是必要的(例如,如果Prometheus可以通过Ingress资源访问)。 |
|
|
如果指定,则将注入到Pod的主机文件中的一组可选主机和IP。 |
|
|
HostAlias保存IP和主机名之间的映射,这些映射将作为条目注入到Pod的主机文件中。 |
|
|
如果为true,则使用主机的网络命名空间。 如果您想启用它,请确保了解安全隐患(https://kubernetes.ac.cn/docs/concepts/configuration/overview/)。 启用hostNetwork后,这将自动将DNS策略设置为 |
|
|
如果为true,则将忽略所有PodMonitor、ServiceMonitor和Probe对象的 |
|
|
Prometheus的容器镜像名称。如果指定,则它优先于 仍然需要指定 如果既未定义 |
|
|
“prometheus”、“init-config-reloader”和“config-reloader”容器的镜像拉取策略。更多详情请参见 https://kubernetes.ac.cn/docs/concepts/containers/images/#image-pull-policy。 |
|
|
从注册表拉取镜像时,用于同一命名空间中Secrets的可选引用列表。请参见 https://kubernetes.ac.cn/docs/user-guide/images#specifying-imagepullsecrets-on-a-pod |
|
|
LocalObjectReference包含足够的信息,让您可以在同一命名空间内找到引用的对象。 |
|
|
InitContainers允许将initContainers注入到Pod定义中。这些可以用于例如从外部来源获取用于注入到Prometheus配置中的密钥。initContainer执行期间的任何错误都将导致Pod重启。更多信息:https://kubernetes.ac.cn/docs/concepts/workloads/pods/init-containers/ 此处描述的InitContainers如果具有相同的名称并且修改是通过策略性合并补丁完成的,则会修改操作员生成的init容器。 操作员管理的init容器名称为:* 覆盖init容器完全不在维护者将支持的范围内,这样做意味着您接受此行为可能会随时中断而无需通知。 |
|
|
您想要在 Pod 中运行的单个应用程序容器。 |
|
|
每个抓取的被重新标记丢弃的目标数量限制,这些目标将保留在内存中。0表示无限制。 需要 Prometheus >= v2.47.0。 请注意,全局限制仅适用于未指定显式限制值的抓取对象。如果您想对所有抓取对象强制执行最大限制,请参考enforcedKeepDroppedTargets。 |
|
|
每个抓取的将被接受的样本标签数量限制。仅在Prometheus 2.45.0及更高版本中有效。 请注意,全局限制仅适用于未指定显式限制值的抓取对象。如果您想对所有抓取对象强制执行最大限制,请参考enforcedLabelLimit。 |
|
|
每个抓取操作对样本中接受的标签名称长度的限制。仅在 Prometheus 2.45.0 及更高版本中有效。 请注意,全局限制仅适用于未指定显式限制值的抓取对象。如果要对所有抓取对象强制执行最大限制,请参考 enforcedLabelNameLengthLimit。 |
|
|
每个抓取操作对样本中接受的标签值长度的限制。仅在 Prometheus 2.45.0 及更高版本中有效。 请注意,全局限制仅适用于未指定显式限制值的抓取对象。如果要对所有抓取对象强制执行最大限制,请参考 enforcedLabelValueLengthLimit。 |
|
|
设置为 true 时,Prometheus 服务器监听环回地址而不是 Pod IP 地址。 |
|
|
Prometheus 和 config-reloader sidecar 的日志格式。 |
|
|
Prometheus 和 config-reloader sidecar 的日志级别。 |
|
|
定义 |
|
|
新创建的 Pod 在其任何容器崩溃之前必须保持就绪状态的最短秒数,才能将其视为可用。默认为 0(pod 一旦就绪即可视为可用)。 这是 Kubernetes 1.22 到 1.24 的 alpha 字段,需要启用 StatefulSetMinReadySeconds 功能开关。 |
|
|
定义 Pod 在哪些节点上调度。 |
|
|
设置为 true 时,Prometheus 通过将抓取数据中的标签重命名为所有从 ServiceMonitor、PodMonitor 和 ScrapeConfig 对象创建的目标的“exported_”来解决标签冲突。否则,将应用服务或 pod 监控器的 HonorLabels 字段。实际上, |
|
|
设置为 true 时,Prometheus 将忽略从服务和 pod 监控器创建的所有目标的时间戳。否则,将应用服务或 pod 监控器的 HonorTimestamps 字段。 |
|
|
当 Prometheus 部署暂停时,除了删除操作外,不会对底层对象执行任何操作。 |
|
|
该字段控制在 StatefulSet 的生命周期中是否以及如何删除 PVC。默认行为是保留所有 PVC。这是 Kubernetes 1.23 到 1.26 的 alpha 字段,以及 1.26 的 beta 字段。它需要启用 StatefulSetAutoDeletePVC 功能开关。 |
|
|
PodMetadata 配置传播到 Prometheus pod 的标签和注释。 以下项目是保留的,不能被覆盖:* “prometheus”标签,设置为 Prometheus 对象的名称。* “app.kubernetes.io/instance”标签,设置为 Prometheus 对象的名称。* “app.kubernetes.io/managed-by”标签,设置为“prometheus-operator”。* “app.kubernetes.io/name”标签,设置为“prometheus”。* “app.kubernetes.io/version”标签,设置为 Prometheus 版本。* “operator.prometheus.io/name”标签,设置为 Prometheus 对象的名称。* “operator.prometheus.io/shard”标签,设置为 Prometheus 对象的分片号。* “kubectl.kubernetes.io/default-container”注释,设置为“prometheus”。 |
|
|
要匹配 PodMonitors 发现的命名空间。空标签选择器匹配所有命名空间。空标签选择器(默认值)仅匹配当前命名空间。 |
|
|
要选择用于目标发现的 PodMonitors。空标签选择器匹配所有对象。空标签选择器不匹配任何对象。 如果 |
|
|
PodTargetLabels 将附加到所有 PodMonitor 和 ServiceMonitor 对象的 |
|
|
用于 pod 和管理服务的端口名称。默认值:“web” |
|
|
分配给 Pod 的优先级类。 |
|
|
要匹配 Probe 发现的命名空间。空标签选择器匹配所有命名空间。空标签选择器仅匹配当前命名空间。 |
|
|
要选择用于目标发现的探针。空标签选择器匹配所有对象。空标签选择器不匹配任何对象。 如果 |
|
|
用于表示 Prometheus 实例名称的 Prometheus 外部标签的名称。当该字段设置为空字符串 ( 默认值:“prometheus” |
|
|
定义不应用命名空间标签强制执行的 PrometheusRule 对象列表。这仅在 |
|
|
PrometheusRuleExcludeConfig 使用户能够配置被排除的 PrometheusRule 名称及其命名空间,以便在对警报和指标强制执行命名空间标签时忽略它们。 |
|
|
QuerySpec 定义 Promethus 查询服务的配置。 |
|
|
queryLogFile 指定记录 PromQL 查询的文件位置。 如果文件名没有路径,例如 'query.log',Prometheus Pod 将文件安装到 |
|
|
定义用于重新加载 Prometheus 配置的策略。如果未指定,则使用 /-/reload HTTP 端点重新加载配置。 |
|
|
定义远程读取配置的列表。 |
|
|
RemoteReadSpec 定义 Prometheus 从远程端点读取回样本的配置。 |
|
|
定义远程写入配置的列表。 |
|
|
RemoteWriteSpec 定义将样本从 Prometheus 写入远程端点的配置。 |
|
|
用于表示副本名称的 Prometheus 外部标签名称。如果该字段设置为空字符串 ( 默认值:“prometheus_replica” |
|
|
为 Prometheus 部署部署每个分片的副本数量。 默认值:1 |
|
|
定义“prometheus”容器的资源请求和限制。 |
|
|
保留 Prometheus 数据的时间长度。 如果 |
|
|
Prometheus 数据使用的最大字节数。 |
|
|
Prometheus 注册 HTTP 处理程序的路由前缀。 当使用 |
|
|
匹配 PrometheusRule 发现的命名空间。空标签选择器匹配所有命名空间。空标签选择器仅匹配当前命名空间。 |
|
|
要选择用于规则评估的 PrometheusRule 对象。空标签选择器匹配所有对象。空标签选择器不匹配任何对象。 |
|
|
定义 Prometheus 规则引擎的配置。 |
|
|
SampleLimit 定义每个抓取对将被接受的抓取样本数量的限制。仅在 Prometheus 2.45.0 及更高版本中有效。 请注意,全局限制仅适用于未指定显式限制值的抓取对象。如果要对所有抓取对象强制执行最大限制,请参考 enforcedSampleLimit。 |
|
|
要公开给抓取对象(例如 PodMonitors、ServiceMonitors、Probes 和 ScrapeConfigs)的抓取类列表。 这是一个实验性功能,它可能会在任何即将发布的版本中以破坏性方式发生更改。 |
|
|
|
|
|
匹配 ScrapeConfig 发现的命名空间。空标签选择器匹配所有命名空间。空标签选择器仅匹配当前命名空间。 请注意,ScrapeConfig 自定义资源定义目前处于 Alpha 级别。 |
|
|
要选择用于目标发现的 ScrapeConfigs。空标签选择器匹配所有对象。空标签选择器不匹配任何对象。 如果 请注意,ScrapeConfig 自定义资源定义目前处于 Alpha 级别。 |
|
|
连续抓取之间的时间间隔。 默认值:“30s” |
|
|
在抓取过程中协商的协议。它按优先级顺序(从最高到最低)告诉客户端 Prometheus 支持的协议。 如果未设置,Prometheus 将使用其默认值。 它需要 Prometheus >= v2.49.0。 |
|
|
等待抓取请求超时的时间(秒)。 |
|
|
Secrets 是与 Prometheus 对象位于同一命名空间中的 Secrets 列表,这些 Secrets 将被挂载到 Prometheus Pod 中。每个 Secret 都会作为名为 |
|
|
SecurityContext 包含 Pod 级别的安全属性和常见的容器设置。这默认为默认 PodSecurityContext。 |
|
|
ServiceAccountName 是用于运行 Prometheus Pod 的 ServiceAccount 的名称。 |
|
|
匹配 ServicedMonitors 发现的命名空间。空标签选择器匹配所有命名空间。空标签选择器(默认值)仅匹配当前命名空间。 |
|
|
要选择用于目标发现的 ServiceMonitors。空标签选择器匹配所有对象。空标签选择器不匹配任何对象。 如果 |
|
|
已弃用:请改用“spec.image”。映像的摘要可以作为映像名称的一部分指定。 |
|
|
将目标分发到的分片数。 请注意,缩减分片不会将数据重新分片到剩余的实例上,必须手动移动。增加分片也不会重新分片数据,但它将继续从相同的实例中获取。 分片是在 PodMonitors 和 ServiceMonitors 的 默认值:1 |
|
|
Storage 定义 Prometheus 使用的存储。 |
|
|
已弃用:请改用“spec.image”。映像的标签可以作为映像名称的一部分指定。 |
|
|
TargetLimit 定义对将被接受的已抓取目标数量的限制。仅在 Prometheus 2.45.0 及更高版本中有效。 请注意,全局限制仅适用于未指定显式限制值的抓取对象。如果要对所有抓取对象强制执行最大限制,请参考 enforcedTargetLimit。 |
|
|
定义可选 Thanos sidecar 的配置。 |
|
|
如果指定,则定义 Pod 的容忍度。 |
|
|
此容忍度附加到的 Pod 容忍任何与三元组 <key,value,effect> 匹配的污点,使用匹配运算符 <operator>。 |
|
|
如果指定,则定义 Pod 的拓扑传播约束。 |
|
|
|
|
|
TracingConfig 配置 Prometheus 中的跟踪。 这是一个实验性功能,它可能会在任何即将发布的版本中以破坏性方式发生更改。 |
|
|
定义时间序列数据库 (TSDB) 的运行时可重新加载配置。 |
|
|
正在部署的 Prometheus 版本。操作员使用此信息来生成 Prometheus StatefulSet + 配置文件。 如果未指定,操作员将假设在发布操作员版本时可用的最新上游 Prometheus 版本。 |
|
|
VolumeMounts 允许配置额外的 VolumeMounts。 VolumeMounts 将附加到“prometheus”容器中的其他 VolumeMounts,这些 VolumeMounts 是 StorageSpec 对象生成的。 |
|
|
VolumeMount 描述在容器内挂载卷。 |
|
|
Volumes 允许在输出 StatefulSet 定义中配置附加卷。指定的卷将附加到由 StorageSpec 对象生成的其它卷。 |
|
|
Volume 代表 Pod 中的命名卷,Pod 中的任何容器都可以访问该卷。 |
|
|
使用 Snappy 配置预写日志 (WAL) 的压缩。 对于 Prometheus >= 2.20.0,默认情况下启用 WAL 压缩。 需要 Prometheus v2.11.0 及更高版本。 |
|
|
定义 Prometheus web 服务器的配置。 |
AdditionalAlertManagerConfigs 指定包含额外 Prometheus Alertmanager 配置的 Secret 的键。Alertmanager 配置将附加到由 Prometheus Operator 生成的配置中。它们必须根据官方 Prometheus 文档进行格式化
用户有责任确保配置有效。
请注意,使用此功能可能会导致 Prometheus 升级中断。建议查看 Prometheus 发行说明,以确保没有不兼容的 AlertManager 配置会在升级后中断 Prometheus。
object
key
Property 属性 | Type 类型 | Description 描述 |
---|---|---|
|
|
要从中选择的密钥的密钥。必须是有效的密钥。 |
|
|
引用的名称。此字段实际上是必需的,但由于向后兼容性,允许为空。此类型的实例在此处为空值几乎肯定是错误的。TODO:添加其他有用的字段。apiVersion、kind、uid?更多信息:https://kubernetes.ac.cn/docs/concepts/overview/working-with-objects/names/#names TODO:当 controller-gen 不需要时删除 |
|
|
指定是否必须定义 Secret 或其密钥。 |
AdditionalAlertRelabelConfigs 指定包含额外 Prometheus 警报重标记配置的 Secret 的键。警报重标记配置将附加到由 Prometheus Operator 生成的配置中。它们必须根据官方 Prometheus 文档进行格式化
用户有责任确保配置有效。
请注意,使用此功能可能会导致 Prometheus 升级中断。建议查看 Prometheus 发行说明,以确保没有不兼容的警报重标记配置会在升级后中断 Prometheus。
object
key
Property 属性 | Type 类型 | Description 描述 |
---|---|---|
|
|
要从中选择的密钥的密钥。必须是有效的密钥。 |
|
|
引用的名称。此字段实际上是必需的,但由于向后兼容性,允许为空。此类型的实例在此处为空值几乎肯定是错误的。TODO:添加其他有用的字段。apiVersion、kind、uid?更多信息:https://kubernetes.ac.cn/docs/concepts/overview/working-with-objects/names/#names TODO:当 controller-gen 不需要时删除 |
|
|
指定是否必须定义 Secret 或其密钥。 |
AdditionalArgs 允许为“prometheus”容器设置附加参数。
它用于例如激活尚未由专用配置选项支持的隐藏标志。这些参数将按原样传递给 Prometheus 容器,如果它们无效或不受给定 Prometheus 版本支持,可能会导致问题。
如果发生参数冲突(例如,操作员本身已设置的参数)或提供无效参数,则协调将失败并记录错误。
数组
作为 AdditionalArgs 列表一部分的参数。
object
name
Property 属性 | Type 类型 | Description 描述 |
---|---|---|
|
|
参数名称,例如“scrape.discovery-reload-interval”。 |
|
|
参数值,例如 30s。对于仅名称的参数可以为空(例如 --storage.tsdb.no-lockfile) |
AdditionalScrapeConfigs 允许指定包含额外 Prometheus 抓取配置的 Secret 的键。指定的抓取配置将附加到由 Prometheus Operator 生成的配置中。指定的作业配置必须具有官方 Prometheus 文档中指定的格式:https://prometheus.ac.cn/docs/prometheus/latest/configuration/configuration/#scrape_config。由于抓取配置是附加的,因此用户有责任确保其有效性。请注意,使用此功能可能会导致 Prometheus 升级中断。建议查看 Prometheus 发行说明,以确保没有不兼容的抓取配置会在升级后中断 Prometheus。
object
key
Property 属性 | Type 类型 | Description 描述 |
---|---|---|
|
|
要从中选择的密钥的密钥。必须是有效的密钥。 |
|
|
引用的名称。此字段实际上是必需的,但由于向后兼容性,允许为空。此类型的实例在此处为空值几乎肯定是错误的。TODO:添加其他有用的字段。apiVersion、kind、uid?更多信息:https://kubernetes.ac.cn/docs/concepts/overview/working-with-objects/names/#names TODO:当 controller-gen 不需要时删除 |
|
|
指定是否必须定义 Secret 或其密钥。 |
如果指定,则定义 Pod 的亲和力调度规则。
object
Property 属性 | Type 类型 | Description 描述 |
---|---|---|
|
|
描述 Pod 的节点亲和性调度规则。 |
|
|
描述 Pod 亲和性调度规则(例如,将此 Pod 与其他一些 Pod 放在相同的节点、区域等)。 |
|
|
描述 Pod 反亲和性调度规则(例如,避免将此 Pod 与其他一些 Pod 放在相同的节点、区域等)。 |
描述 Pod 的节点亲和性调度规则。
object
Property 属性 | Type 类型 | Description 描述 |
---|---|---|
|
|
调度程序将优先将 Pod 调度到满足此字段指定的亲和性表达式的节点,但它可以选择违反一个或多个表达式的节点。最优选的节点是权重总和最大的节点,即对于满足所有调度要求(资源请求、requiredDuringScheduling 亲和性表达式等)的每个节点,通过迭代此字段的元素并根据节点是否匹配相应的 matchExpressions 将“weight”添加到总和中来计算总和;总和最高的节点(s)是最优选的。 |
|
|
空的优先调度项匹配所有具有隐式权重 0 的对象(即它是无操作的)。空优先调度项不匹配任何对象(即也是无操作的)。 |
|
|
如果此字段指定的亲和性要求在调度时未满足,则 Pod 将不会被调度到该节点上。如果此字段指定的亲和性要求在 Pod 执行期间的某个时间点不再满足(例如,由于更新),系统可能会也可能不会尝试最终将其从节点中逐出。 |
调度程序将优先将 Pod 调度到满足此字段指定的亲和性表达式的节点,但它可以选择违反一个或多个表达式的节点。最优选的节点是权重总和最大的节点,即对于满足所有调度要求(资源请求、requiredDuringScheduling 亲和性表达式等)的每个节点,通过迭代此字段的元素并根据节点是否匹配相应的 matchExpressions 将“weight”添加到总和中来计算总和;总和最高的节点(s)是最优选的。
数组
空的优先调度项匹配所有具有隐式权重 0 的对象(即它是无操作的)。空优先调度项不匹配任何对象(即也是无操作的)。
object
偏好
权重
Property 属性 | Type 类型 | Description 描述 |
---|---|---|
|
|
与相应的权重关联的节点选择器项。 |
|
|
与匹配相应的 nodeSelectorTerm 相关的权重,范围为 1-100。 |
与相应的权重关联的节点选择器项。
object
Property 属性 | Type 类型 | Description 描述 |
---|---|---|
|
|
根据节点的标签列出节点选择器要求。 |
|
|
节点选择器要求是一个选择器,它包含值、键和一个关联键和值的运算符。 |
|
|
根据节点的字段列出节点选择器要求。 |
|
|
节点选择器要求是一个选择器,它包含值、键和一个关联键和值的运算符。 |
根据节点的标签列出节点选择器要求。
数组
节点选择器要求是一个选择器,它包含值、键和一个关联键和值的运算符。
object
key
运算符
Property 属性 | Type 类型 | Description 描述 |
---|---|---|
|
|
选择器应用到的标签键。 |
|
|
表示键与一组值的关系。有效的运算符包括 In、NotIn、Exists、DoesNotExist、Gt 和 Lt。 |
|
|
字符串值数组。如果运算符是 In 或 NotIn,则 values 数组必须是非空的。如果运算符是 Exists 或 DoesNotExist,则 values 数组必须为空。如果运算符是 Gt 或 Lt,则 values 数组必须只有一个元素,该元素将被解释为整数。此数组在策略性合并补丁期间会被替换。 |
根据节点的字段列出节点选择器要求。
数组
节点选择器要求是一个选择器,它包含值、键和一个关联键和值的运算符。
object
key
运算符
Property 属性 | Type 类型 | Description 描述 |
---|---|---|
|
|
选择器应用到的标签键。 |
|
|
表示键与一组值的关系。有效的运算符包括 In、NotIn、Exists、DoesNotExist、Gt 和 Lt。 |
|
|
字符串值数组。如果运算符是 In 或 NotIn,则 values 数组必须是非空的。如果运算符是 Exists 或 DoesNotExist,则 values 数组必须为空。如果运算符是 Gt 或 Lt,则 values 数组必须只有一个元素,该元素将被解释为整数。此数组在策略性合并补丁期间会被替换。 |
如果此字段指定的亲和性要求在调度时未满足,则 Pod 将不会被调度到该节点上。如果此字段指定的亲和性要求在 Pod 执行期间的某个时间点不再满足(例如,由于更新),系统可能会也可能不会尝试最终将其从节点中逐出。
object
nodeSelectorTerms
Property 属性 | Type 类型 | Description 描述 |
---|---|---|
|
|
必需。节点选择器项列表。这些项使用 OR 运算连接。 |
|
|
空或空的节点选择器项不匹配任何对象。它们的条件使用 AND 运算连接。TopologySelectorTerm 类型实现了 NodeSelectorTerm 的一个子集。 |
必需。节点选择器项列表。这些项使用 OR 运算连接。
数组
空或空的节点选择器项不匹配任何对象。它们的条件使用 AND 运算连接。TopologySelectorTerm 类型实现了 NodeSelectorTerm 的一个子集。
object
Property 属性 | Type 类型 | Description 描述 |
---|---|---|
|
|
根据节点的标签列出节点选择器要求。 |
|
|
节点选择器要求是一个选择器,它包含值、键和一个关联键和值的运算符。 |
|
|
根据节点的字段列出节点选择器要求。 |
|
|
节点选择器要求是一个选择器,它包含值、键和一个关联键和值的运算符。 |
根据节点的标签列出节点选择器要求。
数组
节点选择器要求是一个选择器,它包含值、键和一个关联键和值的运算符。
object
key
运算符
Property 属性 | Type 类型 | Description 描述 |
---|---|---|
|
|
选择器应用到的标签键。 |
|
|
表示键与一组值的关系。有效的运算符包括 In、NotIn、Exists、DoesNotExist、Gt 和 Lt。 |
|
|
字符串值数组。如果运算符是 In 或 NotIn,则 values 数组必须是非空的。如果运算符是 Exists 或 DoesNotExist,则 values 数组必须为空。如果运算符是 Gt 或 Lt,则 values 数组必须只有一个元素,该元素将被解释为整数。此数组在策略性合并补丁期间会被替换。 |
根据节点的字段列出节点选择器要求。
数组
节点选择器要求是一个选择器,它包含值、键和一个关联键和值的运算符。
object
key
运算符
Property 属性 | Type 类型 | Description 描述 |
---|---|---|
|
|
选择器应用到的标签键。 |
|
|
表示键与一组值的关系。有效的运算符包括 In、NotIn、Exists、DoesNotExist、Gt 和 Lt。 |
|
|
字符串值数组。如果运算符是 In 或 NotIn,则 values 数组必须是非空的。如果运算符是 Exists 或 DoesNotExist,则 values 数组必须为空。如果运算符是 Gt 或 Lt,则 values 数组必须只有一个元素,该元素将被解释为整数。此数组在策略性合并补丁期间会被替换。 |
描述 Pod 亲和性调度规则(例如,将此 Pod 与其他一些 Pod 放在相同的节点、区域等)。
object
Property 属性 | Type 类型 | Description 描述 |
---|---|---|
|
|
调度程序将优先将 Pod 调度到满足此字段指定的亲和性表达式的节点,但它可以选择违反一个或多个表达式的节点。最优选的节点是权重总和最大的节点,即对于满足所有调度要求(资源请求、requiredDuringScheduling 亲和性表达式等)的每个节点,通过迭代此字段的元素并根据节点是否具有匹配相应 podAffinityTerm 的 Pod 将“weight”添加到总和中来计算总和;总和最高的节点(s)是最优选的。 |
|
|
所有匹配的 WeightedPodAffinityTerm 字段的权重都会按节点相加,以找到最优选的节点(s)。 |
|
|
如果此字段指定的亲和性要求在调度时未满足,则 Pod 将不会被调度到该节点上。如果此字段指定的亲和性要求在 Pod 执行期间的某个时间点不再满足(例如,由于 Pod 标签更新),系统可能会也可能不会尝试最终将其从节点中逐出。当有多个元素时,对应于每个 podAffinityTerm 的节点列表会被相交,即所有项都必须满足。 |
|
|
定义一组 Pod(即相对于给定命名空间(s)匹配 labelSelector 的那些 Pod),此 Pod 应与之一起定位(亲和性)或不一起定位(反亲和性),其中一起定位定义为运行在标签键 |
调度程序将优先将 Pod 调度到满足此字段指定的亲和性表达式的节点,但它可以选择违反一个或多个表达式的节点。最优选的节点是权重总和最大的节点,即对于满足所有调度要求(资源请求、requiredDuringScheduling 亲和性表达式等)的每个节点,通过迭代此字段的元素并根据节点是否具有匹配相应 podAffinityTerm 的 Pod 将“weight”添加到总和中来计算总和;总和最高的节点(s)是最优选的。
数组
所有匹配的 WeightedPodAffinityTerm 字段的权重都会按节点相加,以找到最优选的节点(s)。
object
podAffinityTerm
权重
Property 属性 | Type 类型 | Description 描述 |
---|---|---|
|
|
必需。与相应的权重关联的 Pod 亲和性项。 |
|
|
与匹配相应的 podAffinityTerm 相关的权重,范围为 1-100。 |
必需。与相应的权重关联的 Pod 亲和性项。
object
topologyKey
Property 属性 | Type 类型 | Description 描述 |
---|---|---|
|
|
对一组资源(本例中为 Pod)执行标签查询。如果为 null,则此 PodAffinityTerm 不匹配任何 Pod。 |
|
|
MatchLabelKeys 是一组 Pod 标签键,用于选择要考虑哪些 Pod。这些键用于从传入的 Pod 标签中查找值,这些键值对将与 |
|
|
MismatchLabelKeys 是一组 Pod 标签键,用于选择要考虑哪些 Pod。这些键用于从传入的 Pod 标签中查找值,这些键值对将与 |
|
|
对术语适用的命名空间集执行标签查询。该术语应用于此字段选择的命名空间和 namespaces 字段中列出的命名空间的并集。null 选择器和 null 或空的命名空间列表表示“此 Pod 的命名空间”。空选择器({})匹配所有命名空间。 |
|
|
namespaces 指定术语适用的命名空间名称的静态列表。该术语应用于此字段中列出的命名空间和 namespaceSelector 选择的命名空间的并集。null 或空的命名空间列表和 null namespaceSelector 表示“此 Pod 的命名空间”。 |
|
|
此 Pod 应与指定命名空间中与 labelSelector 匹配的 Pod 位于同一位置(亲和性)或不位于同一位置(反亲和性),其中同一位置定义为运行在节点上,该节点的标签键 topologyKey 的值与任何选定 Pod 所在的任何节点的标签键 topologyKey 的值匹配。不允许使用空的 topologyKey。 |
对一组资源(本例中为 Pod)执行标签查询。如果为 null,则此 PodAffinityTerm 不匹配任何 Pod。
object
Property 属性 | Type 类型 | Description 描述 |
---|---|---|
|
|
matchExpressions 是标签选择器要求的列表。这些要求是 ANDed 的。 |
|
|
标签选择器要求是一个包含值、键和运算符的选择器,这些值、键和运算符将键和值关联起来。 |
|
|
matchLabels 是 {key,value} 对的映射。matchLabels 映射中的单个 {key,value} 等效于 matchExpressions 的一个元素,其 key 字段为“key”,运算符为“In”,而 values 数组仅包含“value”。这些要求是 ANDed 的。 |
matchExpressions 是标签选择器要求的列表。这些要求是 ANDed 的。
数组
标签选择器要求是一个包含值、键和运算符的选择器,这些值、键和运算符将键和值关联起来。
object
key
运算符
Property 属性 | Type 类型 | Description 描述 |
---|---|---|
|
|
key 是选择器应用到的标签键。 |
|
|
operator 表示键与一组值的关系。有效的运算符为 In、NotIn、Exists 和 DoesNotExist。 |
|
|
values 是字符串值的数组。如果运算符为 In 或 NotIn,则 values 数组必须是非空的。如果运算符为 Exists 或 DoesNotExist,则 values 数组必须为空。此数组在策略性合并补丁期间会被替换。 |
对术语适用的命名空间集执行标签查询。该术语应用于此字段选择的命名空间和 namespaces 字段中列出的命名空间的并集。null 选择器和 null 或空的命名空间列表表示“此 Pod 的命名空间”。空选择器({})匹配所有命名空间。
object
Property 属性 | Type 类型 | Description 描述 |
---|---|---|
|
|
matchExpressions 是标签选择器要求的列表。这些要求是 ANDed 的。 |
|
|
标签选择器要求是一个包含值、键和运算符的选择器,这些值、键和运算符将键和值关联起来。 |
|
|
matchLabels 是 {key,value} 对的映射。matchLabels 映射中的单个 {key,value} 等效于 matchExpressions 的一个元素,其 key 字段为“key”,运算符为“In”,而 values 数组仅包含“value”。这些要求是 ANDed 的。 |
matchExpressions 是标签选择器要求的列表。这些要求是 ANDed 的。
数组
标签选择器要求是一个包含值、键和运算符的选择器,这些值、键和运算符将键和值关联起来。
object
key
运算符
Property 属性 | Type 类型 | Description 描述 |
---|---|---|
|
|
key 是选择器应用到的标签键。 |
|
|
operator 表示键与一组值的关系。有效的运算符为 In、NotIn、Exists 和 DoesNotExist。 |
|
|
values 是字符串值的数组。如果运算符为 In 或 NotIn,则 values 数组必须是非空的。如果运算符为 Exists 或 DoesNotExist,则 values 数组必须为空。此数组在策略性合并补丁期间会被替换。 |
如果此字段指定的亲和性要求在调度时未满足,则 Pod 将不会被调度到该节点上。如果此字段指定的亲和性要求在 Pod 执行期间的某个时间点不再满足(例如,由于 Pod 标签更新),系统可能会也可能不会尝试最终将其从节点中逐出。当有多个元素时,对应于每个 podAffinityTerm 的节点列表会被相交,即所有项都必须满足。
数组
定义一组 Pod(即相对于给定命名空间(s)匹配 labelSelector 的那些 Pod),此 Pod 应与之一起定位(亲和性)或不一起定位(反亲和性),其中一起定位定义为运行在标签键
object
topologyKey
Property 属性 | Type 类型 | Description 描述 |
---|---|---|
|
|
对一组资源(本例中为 Pod)执行标签查询。如果为 null,则此 PodAffinityTerm 不匹配任何 Pod。 |
|
|
MatchLabelKeys 是一组 Pod 标签键,用于选择要考虑哪些 Pod。这些键用于从传入的 Pod 标签中查找值,这些键值对将与 |
|
|
MismatchLabelKeys 是一组 Pod 标签键,用于选择要考虑哪些 Pod。这些键用于从传入的 Pod 标签中查找值,这些键值对将与 |
|
|
对术语适用的命名空间集执行标签查询。该术语应用于此字段选择的命名空间和 namespaces 字段中列出的命名空间的并集。null 选择器和 null 或空的命名空间列表表示“此 Pod 的命名空间”。空选择器({})匹配所有命名空间。 |
|
|
namespaces 指定术语适用的命名空间名称的静态列表。该术语应用于此字段中列出的命名空间和 namespaceSelector 选择的命名空间的并集。null 或空的命名空间列表和 null namespaceSelector 表示“此 Pod 的命名空间”。 |
|
|
此 Pod 应与指定命名空间中与 labelSelector 匹配的 Pod 位于同一位置(亲和性)或不位于同一位置(反亲和性),其中同一位置定义为运行在节点上,该节点的标签键 topologyKey 的值与任何选定 Pod 所在的任何节点的标签键 topologyKey 的值匹配。不允许使用空的 topologyKey。 |
对一组资源(本例中为 Pod)执行标签查询。如果为 null,则此 PodAffinityTerm 不匹配任何 Pod。
object
Property 属性 | Type 类型 | Description 描述 |
---|---|---|
|
|
matchExpressions 是标签选择器要求的列表。这些要求是 ANDed 的。 |
|
|
标签选择器要求是一个包含值、键和运算符的选择器,这些值、键和运算符将键和值关联起来。 |
|
|
matchLabels 是 {key,value} 对的映射。matchLabels 映射中的单个 {key,value} 等效于 matchExpressions 的一个元素,其 key 字段为“key”,运算符为“In”,而 values 数组仅包含“value”。这些要求是 ANDed 的。 |
matchExpressions 是标签选择器要求的列表。这些要求是 ANDed 的。
数组
标签选择器要求是一个包含值、键和运算符的选择器,这些值、键和运算符将键和值关联起来。
object
key
运算符
Property 属性 | Type 类型 | Description 描述 |
---|---|---|
|
|
key 是选择器应用到的标签键。 |
|
|
operator 表示键与一组值的关系。有效的运算符为 In、NotIn、Exists 和 DoesNotExist。 |
|
|
values 是字符串值的数组。如果运算符为 In 或 NotIn,则 values 数组必须是非空的。如果运算符为 Exists 或 DoesNotExist,则 values 数组必须为空。此数组在策略性合并补丁期间会被替换。 |
对术语适用的命名空间集执行标签查询。该术语应用于此字段选择的命名空间和 namespaces 字段中列出的命名空间的并集。null 选择器和 null 或空的命名空间列表表示“此 Pod 的命名空间”。空选择器({})匹配所有命名空间。
object
Property 属性 | Type 类型 | Description 描述 |
---|---|---|
|
|
matchExpressions 是标签选择器要求的列表。这些要求是 ANDed 的。 |
|
|
标签选择器要求是一个包含值、键和运算符的选择器,这些值、键和运算符将键和值关联起来。 |
|
|
matchLabels 是 {key,value} 对的映射。matchLabels 映射中的单个 {key,value} 等效于 matchExpressions 的一个元素,其 key 字段为“key”,运算符为“In”,而 values 数组仅包含“value”。这些要求是 ANDed 的。 |
matchExpressions 是标签选择器要求的列表。这些要求是 ANDed 的。
数组
标签选择器要求是一个包含值、键和运算符的选择器,这些值、键和运算符将键和值关联起来。
object
key
运算符
Property 属性 | Type 类型 | Description 描述 |
---|---|---|
|
|
key 是选择器应用到的标签键。 |
|
|
operator 表示键与一组值的关系。有效的运算符为 In、NotIn、Exists 和 DoesNotExist。 |
|
|
values 是字符串值的数组。如果运算符为 In 或 NotIn,则 values 数组必须是非空的。如果运算符为 Exists 或 DoesNotExist,则 values 数组必须为空。此数组在策略性合并补丁期间会被替换。 |
描述 Pod 反亲和性调度规则(例如,避免将此 Pod 与其他一些 Pod 放在相同的节点、区域等)。
object
Property 属性 | Type 类型 | Description 描述 |
---|---|---|
|
|
调度器将倾向于将 Pod 调度到满足此字段指定的反亲和性表达式的节点,但它可以选择违反一个或多个表达式的节点。最优选的节点是权重总和最大的节点,即,对于满足所有调度要求(资源请求、requiredDuringScheduling 反亲和性表达式等)的每个节点,通过迭代此字段的元素并根据节点是否具有与相应的 podAffinityTerm 匹配的 Pod 向总和添加“weight”来计算总和;总和最高的节点(s)是最优选的。 |
|
|
所有匹配的 WeightedPodAffinityTerm 字段的权重都会按节点相加,以找到最优选的节点(s)。 |
|
|
如果在调度时未满足此字段指定的反亲和性要求,则 Pod 将不会被调度到该节点。如果在 Pod 执行期间的某个时刻(例如,由于 Pod 标签更新)此字段指定的反亲和性要求不再满足,则系统可能会也可能不会尝试最终将其从其节点中逐出。当存在多个元素时,对应于每个 podAffinityTerm 的节点列表将相交,即所有术语都必须满足。 |
|
|
定义一组 Pod(即相对于给定命名空间(s)匹配 labelSelector 的那些 Pod),此 Pod 应与之一起定位(亲和性)或不一起定位(反亲和性),其中一起定位定义为运行在标签键 |
调度器将倾向于将 Pod 调度到满足此字段指定的反亲和性表达式的节点,但它可以选择违反一个或多个表达式的节点。最优选的节点是权重总和最大的节点,即,对于满足所有调度要求(资源请求、requiredDuringScheduling 反亲和性表达式等)的每个节点,通过迭代此字段的元素并根据节点是否具有与相应的 podAffinityTerm 匹配的 Pod 向总和添加“weight”来计算总和;总和最高的节点(s)是最优选的。
数组
所有匹配的 WeightedPodAffinityTerm 字段的权重都会按节点相加,以找到最优选的节点(s)。
object
podAffinityTerm
权重
Property 属性 | Type 类型 | Description 描述 |
---|---|---|
|
|
必需。与相应的权重关联的 Pod 亲和性项。 |
|
|
与匹配相应的 podAffinityTerm 相关的权重,范围为 1-100。 |
必需。与相应的权重关联的 Pod 亲和性项。
object
topologyKey
Property 属性 | Type 类型 | Description 描述 |
---|---|---|
|
|
对一组资源(本例中为 Pod)执行标签查询。如果为 null,则此 PodAffinityTerm 不匹配任何 Pod。 |
|
|
MatchLabelKeys 是一组 Pod 标签键,用于选择要考虑哪些 Pod。这些键用于从传入的 Pod 标签中查找值,这些键值对将与 |
|
|
MismatchLabelKeys 是一组 Pod 标签键,用于选择要考虑哪些 Pod。这些键用于从传入的 Pod 标签中查找值,这些键值对将与 |
|
|
对术语适用的命名空间集执行标签查询。该术语应用于此字段选择的命名空间和 namespaces 字段中列出的命名空间的并集。null 选择器和 null 或空的命名空间列表表示“此 Pod 的命名空间”。空选择器({})匹配所有命名空间。 |
|
|
namespaces 指定术语适用的命名空间名称的静态列表。该术语应用于此字段中列出的命名空间和 namespaceSelector 选择的命名空间的并集。null 或空的命名空间列表和 null namespaceSelector 表示“此 Pod 的命名空间”。 |
|
|
此 Pod 应与指定命名空间中与 labelSelector 匹配的 Pod 位于同一位置(亲和性)或不位于同一位置(反亲和性),其中同一位置定义为运行在节点上,该节点的标签键 topologyKey 的值与任何选定 Pod 所在的任何节点的标签键 topologyKey 的值匹配。不允许使用空的 topologyKey。 |
对一组资源(本例中为 Pod)执行标签查询。如果为 null,则此 PodAffinityTerm 不匹配任何 Pod。
object
Property 属性 | Type 类型 | Description 描述 |
---|---|---|
|
|
matchExpressions 是标签选择器要求的列表。这些要求是 ANDed 的。 |
|
|
标签选择器要求是一个包含值、键和运算符的选择器,这些值、键和运算符将键和值关联起来。 |
|
|
matchLabels 是 {key,value} 对的映射。matchLabels 映射中的单个 {key,value} 等效于 matchExpressions 的一个元素,其 key 字段为“key”,运算符为“In”,而 values 数组仅包含“value”。这些要求是 ANDed 的。 |
matchExpressions 是标签选择器要求的列表。这些要求是 ANDed 的。
数组
标签选择器要求是一个包含值、键和运算符的选择器,这些值、键和运算符将键和值关联起来。
object
key
运算符
Property 属性 | Type 类型 | Description 描述 |
---|---|---|
|
|
key 是选择器应用到的标签键。 |
|
|
operator 表示键与一组值的关系。有效的运算符为 In、NotIn、Exists 和 DoesNotExist。 |
|
|
values 是字符串值的数组。如果运算符为 In 或 NotIn,则 values 数组必须是非空的。如果运算符为 Exists 或 DoesNotExist,则 values 数组必须为空。此数组在策略性合并补丁期间会被替换。 |
对术语适用的命名空间集执行标签查询。该术语应用于此字段选择的命名空间和 namespaces 字段中列出的命名空间的并集。null 选择器和 null 或空的命名空间列表表示“此 Pod 的命名空间”。空选择器({})匹配所有命名空间。
object
Property 属性 | Type 类型 | Description 描述 |
---|---|---|
|
|
matchExpressions 是标签选择器要求的列表。这些要求是 ANDed 的。 |
|
|
标签选择器要求是一个包含值、键和运算符的选择器,这些值、键和运算符将键和值关联起来。 |
|
|
matchLabels 是 {key,value} 对的映射。matchLabels 映射中的单个 {key,value} 等效于 matchExpressions 的一个元素,其 key 字段为“key”,运算符为“In”,而 values 数组仅包含“value”。这些要求是 ANDed 的。 |
matchExpressions 是标签选择器要求的列表。这些要求是 ANDed 的。
数组
标签选择器要求是一个包含值、键和运算符的选择器,这些值、键和运算符将键和值关联起来。
object
key
运算符
Property 属性 | Type 类型 | Description 描述 |
---|---|---|
|
|
key 是选择器应用到的标签键。 |
|
|
operator 表示键与一组值的关系。有效的运算符为 In、NotIn、Exists 和 DoesNotExist。 |
|
|
values 是字符串值的数组。如果运算符为 In 或 NotIn,则 values 数组必须是非空的。如果运算符为 Exists 或 DoesNotExist,则 values 数组必须为空。此数组在策略性合并补丁期间会被替换。 |
如果在调度时未满足此字段指定的反亲和性要求,则 Pod 将不会被调度到该节点。如果在 Pod 执行期间的某个时刻(例如,由于 Pod 标签更新)此字段指定的反亲和性要求不再满足,则系统可能会也可能不会尝试最终将其从其节点中逐出。当存在多个元素时,对应于每个 podAffinityTerm 的节点列表将相交,即所有术语都必须满足。
数组
定义一组 Pod(即相对于给定命名空间(s)匹配 labelSelector 的那些 Pod),此 Pod 应与之一起定位(亲和性)或不一起定位(反亲和性),其中一起定位定义为运行在标签键
object
topologyKey
Property 属性 | Type 类型 | Description 描述 |
---|---|---|
|
|
对一组资源(本例中为 Pod)执行标签查询。如果为 null,则此 PodAffinityTerm 不匹配任何 Pod。 |
|
|
MatchLabelKeys 是一组 Pod 标签键,用于选择要考虑哪些 Pod。这些键用于从传入的 Pod 标签中查找值,这些键值对将与 |
|
|
MismatchLabelKeys 是一组 Pod 标签键,用于选择要考虑哪些 Pod。这些键用于从传入的 Pod 标签中查找值,这些键值对将与 |
|
|
对术语适用的命名空间集执行标签查询。该术语应用于此字段选择的命名空间和 namespaces 字段中列出的命名空间的并集。null 选择器和 null 或空的命名空间列表表示“此 Pod 的命名空间”。空选择器({})匹配所有命名空间。 |
|
|
namespaces 指定术语适用的命名空间名称的静态列表。该术语应用于此字段中列出的命名空间和 namespaceSelector 选择的命名空间的并集。null 或空的命名空间列表和 null namespaceSelector 表示“此 Pod 的命名空间”。 |
|
|
此 Pod 应与指定命名空间中与 labelSelector 匹配的 Pod 位于同一位置(亲和性)或不位于同一位置(反亲和性),其中同一位置定义为运行在节点上,该节点的标签键 topologyKey 的值与任何选定 Pod 所在的任何节点的标签键 topologyKey 的值匹配。不允许使用空的 topologyKey。 |
对一组资源(本例中为 Pod)执行标签查询。如果为 null,则此 PodAffinityTerm 不匹配任何 Pod。
object
Property 属性 | Type 类型 | Description 描述 |
---|---|---|
|
|
matchExpressions 是标签选择器要求的列表。这些要求是 ANDed 的。 |
|
|
标签选择器要求是一个包含值、键和运算符的选择器,这些值、键和运算符将键和值关联起来。 |
|
|
matchLabels 是 {key,value} 对的映射。matchLabels 映射中的单个 {key,value} 等效于 matchExpressions 的一个元素,其 key 字段为“key”,运算符为“In”,而 values 数组仅包含“value”。这些要求是 ANDed 的。 |
matchExpressions 是标签选择器要求的列表。这些要求是 ANDed 的。
数组
标签选择器要求是一个包含值、键和运算符的选择器,这些值、键和运算符将键和值关联起来。
object
key
运算符
Property 属性 | Type 类型 | Description 描述 |
---|---|---|
|
|
key 是选择器应用到的标签键。 |
|
|
operator 表示键与一组值的关系。有效的运算符为 In、NotIn、Exists 和 DoesNotExist。 |
|
|
values 是字符串值的数组。如果运算符为 In 或 NotIn,则 values 数组必须是非空的。如果运算符为 Exists 或 DoesNotExist,则 values 数组必须为空。此数组在策略性合并补丁期间会被替换。 |
对术语适用的命名空间集执行标签查询。该术语应用于此字段选择的命名空间和 namespaces 字段中列出的命名空间的并集。null 选择器和 null 或空的命名空间列表表示“此 Pod 的命名空间”。空选择器({})匹配所有命名空间。
object
Property 属性 | Type 类型 | Description 描述 |
---|---|---|
|
|
matchExpressions 是标签选择器要求的列表。这些要求是 ANDed 的。 |
|
|
标签选择器要求是一个包含值、键和运算符的选择器,这些值、键和运算符将键和值关联起来。 |
|
|
matchLabels 是 {key,value} 对的映射。matchLabels 映射中的单个 {key,value} 等效于 matchExpressions 的一个元素,其 key 字段为“key”,运算符为“In”,而 values 数组仅包含“value”。这些要求是 ANDed 的。 |
matchExpressions 是标签选择器要求的列表。这些要求是 ANDed 的。
数组
标签选择器要求是一个包含值、键和运算符的选择器,这些值、键和运算符将键和值关联起来。
object
key
运算符
Property 属性 | Type 类型 | Description 描述 |
---|---|---|
|
|
key 是选择器应用到的标签键。 |
|
|
operator 表示键与一组值的关系。有效的运算符为 In、NotIn、Exists 和 DoesNotExist。 |
|
|
values 是字符串值的数组。如果运算符为 In 或 NotIn,则 values 数组必须是非空的。如果运算符为 Exists 或 DoesNotExist,则 values 数组必须为空。此数组在策略性合并补丁期间会被替换。 |
定义与 Alertmanager 相关的设置。
object
alertmanagers
Property 属性 | Type 类型 | Description 描述 |
---|---|---|
|
|
Prometheus应将告警发送到的Alertmanager端点。 |
|
|
AlertmanagerEndpoints定义了一个包含Alertmanager IP地址的单个Endpoints对象的选取,用于发送告警。 |
AlertmanagerEndpoints定义了一个包含Alertmanager IP地址的单个Endpoints对象的选取,用于发送告警。
object
name
命名空间
端口
Property 属性 | Type 类型 | Description 描述 |
---|---|---|
|
|
在将警报发送到特定 Alertmanager 之前应用的重标记配置。这需要 Prometheus >= v2.51.0。 |
|
|
RelabelConfig 允许对目标、警报、抓取样本和远程写入样本的标签集进行动态重写。 更多信息:https://prometheus.ac.cn/docs/prometheus/latest/configuration/configuration/#relabel_config |
|
|
Prometheus 用于发送警报的 Alertmanager API 版本。可以是“v1”或“v2”。 |
|
|
Alertmanager 的授权部分。 不能与 |
|
|
Alertmanager 的 BasicAuth 配置。 不能与 |
|
|
用于读取 Alertmanager 的 bearer 令牌的文件。 不能与 已弃用:这将在未来的版本中删除。建议使用 |
|
|
是否启用 HTTP2。 |
|
|
命名空间中 Endpoints 对象的名称。 |
|
|
Endpoints 对象的命名空间。 |
|
|
推送警报的 HTTP 路径前缀。 |
|
|
Alertmanager API 公开的端口。 |
|
|
应用于已发现的 Alertmanagers 的重标记配置。 |
|
|
RelabelConfig 允许对目标、警报、抓取样本和远程写入样本的标签集进行动态重写。 更多信息:https://prometheus.ac.cn/docs/prometheus/latest/configuration/configuration/#relabel_config |
|
|
发送警报时使用的方案。 |
|
|
Sigv4 允许为 URL 配置 AWS 的签名验证 4。 这需要 Prometheus >= v2.48.0。 不能与 |
|
|
Timeout 是推送警报时每个目标 Alertmanager 的超时时间。 |
|
|
用于 Alertmanager 的 TLS 配置。 |
在将警报发送到特定 Alertmanager 之前应用的重标记配置。这需要 Prometheus >= v2.51.0。
数组
RelabelConfig 允许对目标、警报、抓取样本和远程写入样本的标签集进行动态重写。
object
Property 属性 | Type 类型 | Description 描述 |
---|---|---|
|
|
根据正则表达式匹配执行的操作。
默认值:“Replace” |
|
|
对源标签值的哈希进行取模。 仅当操作为 |
|
|
与提取的值匹配的正则表达式。 |
|
|
如果正则表达式匹配,则执行 Replace 操作的替换值。 正则表达式捕获组可用。 |
|
|
Separator 是连接的 SourceLabels 之间的字符串。 |
|
|
源标签从现有标签中选择值。它们的内容使用配置的 Separator 连接,并与配置的正则表达式匹配。 |
|
|
将结果字符串写入替换中的标签。 对于 正则表达式捕获组可用。 |
Alertmanager 的授权部分。
不能与basicAuth
、bearerTokenFile
或sigv4
同时设置。
object
Property 属性 | Type 类型 | Description 描述 |
---|---|---|
|
|
选择命名空间中 Secret 的密钥,该密钥包含用于身份验证的凭据。 |
|
|
定义身份验证类型。该值不区分大小写。 “Basic”不是受支持的值。 默认值:“Bearer” |
选择命名空间中 Secret 的密钥,该密钥包含用于身份验证的凭据。
object
key
Property 属性 | Type 类型 | Description 描述 |
---|---|---|
|
|
要从中选择的密钥的密钥。必须是有效的密钥。 |
|
|
引用的名称。此字段实际上是必需的,但由于向后兼容性,允许为空。此类型的实例在此处为空值几乎肯定是错误的。TODO:添加其他有用的字段。apiVersion、kind、uid?更多信息:https://kubernetes.ac.cn/docs/concepts/overview/working-with-objects/names/#names TODO:当 controller-gen 不需要时删除 |
|
|
指定是否必须定义 Secret 或其密钥。 |
Alertmanager 的 BasicAuth 配置。
不能与bearerTokenFile
、authorization
或sigv4
同时设置。
object
Property 属性 | Type 类型 | Description 描述 |
---|---|---|
|
|
|
|
|
|
password
指定包含用于身份验证的密码的 Secret 的密钥。
object
key
Property 属性 | Type 类型 | Description 描述 |
---|---|---|
|
|
要从中选择的密钥的密钥。必须是有效的密钥。 |
|
|
引用的名称。此字段实际上是必需的,但由于向后兼容性,允许为空。此类型的实例在此处为空值几乎肯定是错误的。TODO:添加其他有用的字段。apiVersion、kind、uid?更多信息:https://kubernetes.ac.cn/docs/concepts/overview/working-with-objects/names/#names TODO:当 controller-gen 不需要时删除 |
|
|
指定是否必须定义 Secret 或其密钥。 |
username
指定包含用于身份验证的用户名 Secret 的密钥。
object
key
Property 属性 | Type 类型 | Description 描述 |
---|---|---|
|
|
要从中选择的密钥的密钥。必须是有效的密钥。 |
|
|
引用的名称。此字段实际上是必需的,但由于向后兼容性,允许为空。此类型的实例在此处为空值几乎肯定是错误的。TODO:添加其他有用的字段。apiVersion、kind、uid?更多信息:https://kubernetes.ac.cn/docs/concepts/overview/working-with-objects/names/#names TODO:当 controller-gen 不需要时删除 |
|
|
指定是否必须定义 Secret 或其密钥。 |
RelabelConfig 允许对目标、警报、抓取样本和远程写入样本的标签集进行动态重写。
object
Property 属性 | Type 类型 | Description 描述 |
---|---|---|
|
|
根据正则表达式匹配执行的操作。
默认值:“Replace” |
|
|
对源标签值的哈希进行取模。 仅当操作为 |
|
|
与提取的值匹配的正则表达式。 |
|
|
如果正则表达式匹配,则执行 Replace 操作的替换值。 正则表达式捕获组可用。 |
|
|
Separator 是连接的 SourceLabels 之间的字符串。 |
|
|
源标签从现有标签中选择值。它们的内容使用配置的 Separator 连接,并与配置的正则表达式匹配。 |
|
|
将结果字符串写入替换中的标签。 对于 正则表达式捕获组可用。 |
Sigv4 允许为 URL 配置 AWS 的签名验证 4。
这需要 Prometheus >= v2.48.0。
不能与basicAuth
、bearerTokenFile
或authorization
同时设置。
object
Property 属性 | Type 类型 | Description 描述 |
---|---|---|
|
|
AccessKey 是 AWS API 密钥。如果未指定,则使用环境变量 |
|
|
Profile 是用于身份验证的命名 AWS 配置文件。 |
|
|
Region 是 AWS 区域。如果为空,则使用默认凭据链中的区域。 |
|
|
RoleArn 是用于身份验证的命名 AWS 配置文件。 |
|
|
SecretKey 是 AWS API 密钥。如果未指定,则使用环境变量 |
AccessKey 是 AWS API 密钥。如果未指定,则使用环境变量AWS_ACCESS_KEY_ID
。
object
key
Property 属性 | Type 类型 | Description 描述 |
---|---|---|
|
|
要从中选择的密钥的密钥。必须是有效的密钥。 |
|
|
引用的名称。此字段实际上是必需的,但由于向后兼容性,允许为空。此类型的实例在此处为空值几乎肯定是错误的。TODO:添加其他有用的字段。apiVersion、kind、uid?更多信息:https://kubernetes.ac.cn/docs/concepts/overview/working-with-objects/names/#names TODO:当 controller-gen 不需要时删除 |
|
|
指定是否必须定义 Secret 或其密钥。 |
SecretKey 是 AWS API 密钥。如果未指定,则使用环境变量AWS_SECRET_ACCESS_KEY
。
object
key
Property 属性 | Type 类型 | Description 描述 |
---|---|---|
|
|
要从中选择的密钥的密钥。必须是有效的密钥。 |
|
|
引用的名称。此字段实际上是必需的,但由于向后兼容性,允许为空。此类型的实例在此处为空值几乎肯定是错误的。TODO:添加其他有用的字段。apiVersion、kind、uid?更多信息:https://kubernetes.ac.cn/docs/concepts/overview/working-with-objects/names/#names TODO:当 controller-gen 不需要时删除 |
|
|
指定是否必须定义 Secret 或其密钥。 |
用于 Alertmanager 的 TLS 配置。
object
Property 属性 | Type 类型 | Description 描述 |
---|---|---|
|
|
验证服务器证书时使用的证书颁发机构。 |
|
|
Prometheus 容器中用于目标的 CA 证书的路径。 |
|
|
进行客户端身份验证时要提供的客户端证书。 |
|
|
Prometheus 容器中用于目标的客户端证书文件的路径。 |
|
|
禁用目标证书验证。 |
|
|
Prometheus 容器中用于目标的客户端密钥文件的路径。 |
|
|
包含用于目标的客户端密钥文件的 Secret。 |
|
|
用于验证目标的主机名。 |
验证服务器证书时使用的证书颁发机构。
object
Property 属性 | Type 类型 | Description 描述 |
---|---|---|
|
|
包含用于目标的数据的 ConfigMap。 |
|
|
包含用于目标的数据的 Secret。 |
包含用于目标的数据的 ConfigMap。
object
key
Property 属性 | Type 类型 | Description 描述 |
---|---|---|
|
|
要选择的键。 |
|
|
引用的名称。此字段实际上是必需的,但由于向后兼容性,允许为空。此类型的实例在此处为空值几乎肯定是错误的。TODO:添加其他有用的字段。apiVersion、kind、uid?更多信息:https://kubernetes.ac.cn/docs/concepts/overview/working-with-objects/names/#names TODO:当 controller-gen 不需要时删除 |
|
|
指定是否必须定义 ConfigMap 或其键 |
包含用于目标的数据的 Secret。
object
key
Property 属性 | Type 类型 | Description 描述 |
---|---|---|
|
|
要从中选择的密钥的密钥。必须是有效的密钥。 |
|
|
引用的名称。此字段实际上是必需的,但由于向后兼容性,允许为空。此类型的实例在此处为空值几乎肯定是错误的。TODO:添加其他有用的字段。apiVersion、kind、uid?更多信息:https://kubernetes.ac.cn/docs/concepts/overview/working-with-objects/names/#names TODO:当 controller-gen 不需要时删除 |
|
|
指定是否必须定义 Secret 或其密钥。 |
进行客户端身份验证时要提供的客户端证书。
object
Property 属性 | Type 类型 | Description 描述 |
---|---|---|
|
|
包含用于目标的数据的 ConfigMap。 |
|
|
包含用于目标的数据的 Secret。 |
包含用于目标的数据的 ConfigMap。
object
key
Property 属性 | Type 类型 | Description 描述 |
---|---|---|
|
|
要选择的键。 |
|
|
引用的名称。此字段实际上是必需的,但由于向后兼容性,允许为空。此类型的实例在此处为空值几乎肯定是错误的。TODO:添加其他有用的字段。apiVersion、kind、uid?更多信息:https://kubernetes.ac.cn/docs/concepts/overview/working-with-objects/names/#names TODO:当 controller-gen 不需要时删除 |
|
|
指定是否必须定义 ConfigMap 或其键 |
包含用于目标的数据的 Secret。
object
key
Property 属性 | Type 类型 | Description 描述 |
---|---|---|
|
|
要从中选择的密钥的密钥。必须是有效的密钥。 |
|
|
引用的名称。此字段实际上是必需的,但由于向后兼容性,允许为空。此类型的实例在此处为空值几乎肯定是错误的。TODO:添加其他有用的字段。apiVersion、kind、uid?更多信息:https://kubernetes.ac.cn/docs/concepts/overview/working-with-objects/names/#names TODO:当 controller-gen 不需要时删除 |
|
|
指定是否必须定义 Secret 或其密钥。 |
包含用于目标的客户端密钥文件的 Secret。
object
key
Property 属性 | Type 类型 | Description 描述 |
---|---|---|
|
|
要从中选择的密钥的密钥。必须是有效的密钥。 |
|
|
引用的名称。此字段实际上是必需的,但由于向后兼容性,允许为空。此类型的实例在此处为空值几乎肯定是错误的。TODO:添加其他有用的字段。apiVersion、kind、uid?更多信息:https://kubernetes.ac.cn/docs/concepts/overview/working-with-objects/names/#names TODO:当 controller-gen 不需要时删除 |
|
|
指定是否必须定义 Secret 或其密钥。 |
APIServerConfig 允许指定主机和身份验证方法以访问 Kubernetes API 服务器。如果为 null,则假定 Prometheus 在集群内运行:它将自动发现 API 服务器并使用 Pod 的 CA 证书和位于 /var/run/secrets/kubernetes.io/serviceaccount/ 的 bearer 令牌文件。
object
host
Property 属性 | Type 类型 | Description 描述 |
---|---|---|
|
|
API服务器的授权部分。 不能与 |
|
|
API服务器的BasicAuth配置。 不能与 |
|
|
警告:不应使用此字段,因为令牌值以明文形式出现。建议使用 已弃用:这将在未来的版本中移除。 |
|
|
读取用于访问 apiserver 的 bearer 令牌的文件。 不能与 已弃用:这将在未来的版本中删除。建议使用 |
|
|
Kubernetes API 地址,由主机名或 IP 地址以及可选的端口号组成。 |
|
|
用于 API 服务器的 TLS 配置。 |
API服务器的授权部分。
不能与basicAuth
、bearerToken
或bearerTokenFile
同时设置。
object
Property 属性 | Type 类型 | Description 描述 |
---|---|---|
|
|
选择命名空间中 Secret 的密钥,该密钥包含用于身份验证的凭据。 |
|
|
读取密钥的文件,与 |
|
|
定义身份验证类型。该值不区分大小写。 “Basic”不是受支持的值。 默认值:“Bearer” |
选择命名空间中 Secret 的密钥,该密钥包含用于身份验证的凭据。
object
key
Property 属性 | Type 类型 | Description 描述 |
---|---|---|
|
|
要从中选择的密钥的密钥。必须是有效的密钥。 |
|
|
引用的名称。此字段实际上是必需的,但由于向后兼容性,允许为空。此类型的实例在此处为空值几乎肯定是错误的。TODO:添加其他有用的字段。apiVersion、kind、uid?更多信息:https://kubernetes.ac.cn/docs/concepts/overview/working-with-objects/names/#names TODO:当 controller-gen 不需要时删除 |
|
|
指定是否必须定义 Secret 或其密钥。 |
API服务器的BasicAuth配置。
不能与authorization
、bearerToken
或bearerTokenFile
同时设置。
object
Property 属性 | Type 类型 | Description 描述 |
---|---|---|
|
|
|
|
|
|
password
指定包含用于身份验证的密码的 Secret 的密钥。
object
key
Property 属性 | Type 类型 | Description 描述 |
---|---|---|
|
|
要从中选择的密钥的密钥。必须是有效的密钥。 |
|
|
引用的名称。此字段实际上是必需的,但由于向后兼容性,允许为空。此类型的实例在此处为空值几乎肯定是错误的。TODO:添加其他有用的字段。apiVersion、kind、uid?更多信息:https://kubernetes.ac.cn/docs/concepts/overview/working-with-objects/names/#names TODO:当 controller-gen 不需要时删除 |
|
|
指定是否必须定义 Secret 或其密钥。 |
username
指定包含用于身份验证的用户名 Secret 的密钥。
object
key
Property 属性 | Type 类型 | Description 描述 |
---|---|---|
|
|
要从中选择的密钥的密钥。必须是有效的密钥。 |
|
|
引用的名称。此字段实际上是必需的,但由于向后兼容性,允许为空。此类型的实例在此处为空值几乎肯定是错误的。TODO:添加其他有用的字段。apiVersion、kind、uid?更多信息:https://kubernetes.ac.cn/docs/concepts/overview/working-with-objects/names/#names TODO:当 controller-gen 不需要时删除 |
|
|
指定是否必须定义 Secret 或其密钥。 |
用于 API 服务器的 TLS 配置。
object
Property 属性 | Type 类型 | Description 描述 |
---|---|---|
|
|
验证服务器证书时使用的证书颁发机构。 |
|
|
Prometheus 容器中用于目标的 CA 证书的路径。 |
|
|
进行客户端身份验证时要提供的客户端证书。 |
|
|
Prometheus 容器中用于目标的客户端证书文件的路径。 |
|
|
禁用目标证书验证。 |
|
|
Prometheus 容器中用于目标的客户端密钥文件的路径。 |
|
|
包含用于目标的客户端密钥文件的 Secret。 |
|
|
用于验证目标的主机名。 |
验证服务器证书时使用的证书颁发机构。
object
Property 属性 | Type 类型 | Description 描述 |
---|---|---|
|
|
包含用于目标的数据的 ConfigMap。 |
|
|
包含用于目标的数据的 Secret。 |
包含用于目标的数据的 ConfigMap。
object
key
Property 属性 | Type 类型 | Description 描述 |
---|---|---|
|
|
要选择的键。 |
|
|
引用的名称。此字段实际上是必需的,但由于向后兼容性,允许为空。此类型的实例在此处为空值几乎肯定是错误的。TODO:添加其他有用的字段。apiVersion、kind、uid?更多信息:https://kubernetes.ac.cn/docs/concepts/overview/working-with-objects/names/#names TODO:当 controller-gen 不需要时删除 |
|
|
指定是否必须定义 ConfigMap 或其键 |
包含用于目标的数据的 Secret。
object
key
Property 属性 | Type 类型 | Description 描述 |
---|---|---|
|
|
要从中选择的密钥的密钥。必须是有效的密钥。 |
|
|
引用的名称。此字段实际上是必需的,但由于向后兼容性,允许为空。此类型的实例在此处为空值几乎肯定是错误的。TODO:添加其他有用的字段。apiVersion、kind、uid?更多信息:https://kubernetes.ac.cn/docs/concepts/overview/working-with-objects/names/#names TODO:当 controller-gen 不需要时删除 |
|
|
指定是否必须定义 Secret 或其密钥。 |
进行客户端身份验证时要提供的客户端证书。
object
Property 属性 | Type 类型 | Description 描述 |
---|---|---|
|
|
包含用于目标的数据的 ConfigMap。 |
|
|
包含用于目标的数据的 Secret。 |
包含用于目标的数据的 ConfigMap。
object
key
Property 属性 | Type 类型 | Description 描述 |
---|---|---|
|
|
要选择的键。 |
|
|
引用的名称。此字段实际上是必需的,但由于向后兼容性,允许为空。此类型的实例在此处为空值几乎肯定是错误的。TODO:添加其他有用的字段。apiVersion、kind、uid?更多信息:https://kubernetes.ac.cn/docs/concepts/overview/working-with-objects/names/#names TODO:当 controller-gen 不需要时删除 |
|
|
指定是否必须定义 ConfigMap 或其键 |
包含用于目标的数据的 Secret。
object
key
Property 属性 | Type 类型 | Description 描述 |
---|---|---|
|
|
要从中选择的密钥的密钥。必须是有效的密钥。 |
|
|
引用的名称。此字段实际上是必需的,但由于向后兼容性,允许为空。此类型的实例在此处为空值几乎肯定是错误的。TODO:添加其他有用的字段。apiVersion、kind、uid?更多信息:https://kubernetes.ac.cn/docs/concepts/overview/working-with-objects/names/#names TODO:当 controller-gen 不需要时删除 |
|
|
指定是否必须定义 Secret 或其密钥。 |
包含用于目标的客户端密钥文件的 Secret。
object
key
Property 属性 | Type 类型 | Description 描述 |
---|---|---|
|
|
要从中选择的密钥的密钥。必须是有效的密钥。 |
|
|
引用的名称。此字段实际上是必需的,但由于向后兼容性,允许为空。此类型的实例在此处为空值几乎肯定是错误的。TODO:添加其他有用的字段。apiVersion、kind、uid?更多信息:https://kubernetes.ac.cn/docs/concepts/overview/working-with-objects/names/#names TODO:当 controller-gen 不需要时删除 |
|
|
指定是否必须定义 Secret 或其密钥。 |
如果为 true,则禁止 ServiceMonitor、PodMonitor 和 Probe 对象引用“prometheus”容器文件系统上的任意文件。如果 ServiceMonitor 的端点指定了 `bearerTokenFile` 值(例如,`/var/run/secrets/kubernetes.io/serviceaccount/token`),则恶意目标可以在 Prometheus 的抓取请求中访问 Prometheus 服务帐户的令牌。将 `spec.arbitraryFSAccessThroughSM` 设置为“true”将阻止此攻击。用户应改为使用 `spec.bearerTokenSecret` 字段提供凭据。
object
Property 属性 | Type 类型 | Description 描述 |
---|---|---|
|
|
Containers 允许注入额外的容器或修改操作员生成的容器。这可用于允许向 Pod 添加身份验证代理或更改操作员生成的容器的行为。如果此处描述的容器具有相同的名称,并且修改是通过策略性合并补丁完成的,则它们会修改操作员生成的容器。
操作员管理的容器名称为:* `prometheus` * `config-reloader` * `thanos-sidecar`
覆盖容器完全超出维护人员将支持的范围,这样做意味着您接受此行为可能随时中断且无需通知。
数组
您想要在 Pod 中运行的单个应用程序容器。
object
name
Property 属性 | Type 类型 | Description 描述 |
---|---|---|
|
|
传递给入口点的参数。如果未提供此参数,则使用容器镜像的 CMD。变量引用 $(VAR_NAME) 使用容器的环境进行扩展。如果无法解析变量,则输入字符串中的引用将保持不变。双美元符将简化为单个美元符,这允许转义 $(VAR_NAME) 语法:例如,“(VAR_NAME)”将生成字符串字面量“$(VAR_NAME)”。转义的引用将永远不会被扩展,无论变量是否存在。 |
|
|
入口点数组。不在 shell 中执行。如果未提供此参数,则使用容器镜像的 ENTRYPOINT。变量引用 $(VAR_NAME) 使用容器的环境进行扩展。如果无法解析变量,则输入字符串中的引用将保持不变。双美元符将简化为单个美元符,这允许转义 $(VAR_NAME) 语法:例如,“(VAR_NAME)”将生成字符串字面量“$(VAR_NAME)”。转义的引用将永远不会被扩展,无论变量是否存在。 |
|
|
要在容器中设置的环境变量列表。 |
|
|
EnvVar 表示容器中存在的环境变量。 |
|
|
用于填充容器中环境变量的来源列表。来源中定义的键必须是 C_IDENTIFIER。所有无效的键都将在容器启动时作为事件报告。当一个键存在于多个来源时,最后一个来源关联的值将优先。Env 中定义的具有重复键的值将优先。 |
|
|
EnvFromSource 表示一组 ConfigMaps 的来源。 |
|
|
容器镜像名称。此字段是可选的,允许更高级别的配置管理默认或覆盖工作负载控制器(如 Deployment 和 StatefulSet)中的容器镜像。 |
|
|
镜像拉取策略。Always、Never、IfNotPresent 之一。如果指定了 :latest 标签,则默认为 Always,否则默认为 IfNotPresent。 |
|
|
管理系统应针对容器生命周期事件采取的操作。 |
|
|
容器存活状态的定期探测。如果探测失败,容器将被重启。 |
|
|
指定为 DNS_LABEL 的容器名称。pod 中的每个容器必须具有唯一的名称 (DNS_LABEL)。 |
|
|
要从容器中暴露的端口列表。此处不指定端口并不会阻止该端口被暴露。容器内监听默认“0.0.0.0”地址的任何端口都可从网络访问。使用战略性合并补丁修改此数组可能会损坏数据。 |
|
|
ContainerPort 表示单个容器中的网络端口。 |
|
|
容器服务就绪状态的定期探测。如果探测失败,容器将从服务端点中移除。 |
|
|
容器的资源调整策略。 |
|
|
ContainerResizePolicy 表示容器的资源调整策略。 |
|
|
此容器所需的计算资源。 |
|
|
RestartPolicy 定义了 Pod 中单个容器的重启行为。此字段只能为 init 容器设置,且唯一允许的值为“Always”。对于非 init 容器或未指定此字段的情况,重启行为由 Pod 的重启策略和容器类型定义。为 init 容器设置 RestartPolicy 为“Always”将产生以下效果:此 init 容器将在退出时持续重启,直到所有常规容器都终止。一旦所有常规容器都完成,所有具有 restartPolicy 为“Always”的 init 容器都将关闭。此生命周期与普通 init 容器不同,通常被称为“sidecar”容器。尽管此 init 容器仍在 init 容器序列中启动,但在继续下一个 init 容器之前,它不会等待容器完成。相反,下一个 init 容器会在启动此 init 容器之后或任何 startupProbe 成功完成之后立即启动。 |
|
|
SecurityContext 定义了容器应运行的安全选项。如果设置,SecurityContext 的字段将覆盖 PodSecurityContext 的等效字段。更多信息:https://kubernetes.ac.cn/docs/tasks/configure-pod-container/security-context/ |
|
|
StartupProbe 指示 Pod 已成功初始化。如果指定,则在该探针成功完成之前不会执行其他探针。如果此探针失败,Pod 将被重启,就像 livenessProbe 失败一样。这可用于在 Pod 生命周期开始时提供不同的探针参数,此时加载数据或预热缓存可能需要很长时间,而稳态运行期间则不需要。这无法更新。更多信息:https://kubernetes.ac.cn/docs/concepts/workloads/pods/pod-lifecycle#container-probes |
|
|
此容器是否应在容器运行时分配 stdin 的缓冲区。如果未设置,则容器中来自 stdin 的读取将始终导致 EOF。默认为 false。 |
|
|
容器运行时是否应在单个附加操作打开 stdin 通道后关闭它。当 stdin 为 true 时,stdin 流将在多个附加会话中保持打开状态。如果将 stdinOnce 设置为 true,则在容器启动时打开 stdin,在第一个客户端附加到 stdin 之前为空,然后保持打开状态并接受数据,直到客户端断开连接,此时 stdin 关闭并保持关闭状态,直到容器重新启动。如果此标志为 false,则从 stdin 读取的容器进程将永远不会收到 EOF。默认为 false |
|
|
可选:将容器终止消息写入的文件安装到容器文件系统的路径。写入的消息旨在简短地显示最终状态,例如断言失败消息。如果大于 4096 字节,则节点将对其进行截断。所有容器的总消息长度将限制为 12kb。默认为 /dev/termination-log。无法更新。 |
|
|
指示应如何填充终止消息。File 将使用 terminationMessagePath 的内容在成功和失败时填充容器状态消息。FallbackToLogsOnError 如果终止消息文件为空且容器以错误退出,则将使用容器日志输出的最后一段。日志输出限制为 2048 字节或 80 行,取较小值。默认为 File。无法更新。 |
|
|
此容器是否应为自己分配一个 TTY,也需要 'stdin' 为 true。默认为 false。 |
|
|
volumeDevices 是容器要使用的块设备列表。 |
|
|
volumeDevice 描述了容器内原始块设备的映射。 |
|
|
要安装到容器文件系统的 Pod 卷。无法更新。 |
|
|
VolumeMount 描述在容器内挂载卷。 |
|
|
容器的工作目录。如果未指定,则将使用容器运行时的默认值,这可能在容器镜像中配置。无法更新。 |
EnvVar 表示容器中存在的环境变量。
object
name
Property 属性 | Type 类型 | Description 描述 |
---|---|---|
|
|
环境变量的名称。必须是 C_IDENTIFIER。 |
|
|
变量引用 $(VAR_NAME) 使用容器中先前定义的环境变量和任何服务环境变量进行扩展。如果无法解析变量,则输入字符串中的引用将保持不变。双美元符号将减少为单个美元符号,这允许转义 $(VAR_NAME) 语法:即“(VAR_NAME)”将产生字符串字面量“$(VAR_NAME)” 。转义的引用将永远不会扩展,无论变量是否存在。 |
|
|
环境变量值的来源。如果 value 不为空,则不能使用。 |
环境变量值的来源。如果 value 不为空,则不能使用。
object
Property 属性 | Type 类型 | Description 描述 |
---|---|---|
|
|
选择 ConfigMap 的键。 |
|
|
选择 Pod 的字段:支持 metadata.name、metadata.namespace、 |
|
|
选择容器的资源:当前仅支持资源限制和请求(limits.cpu、limits.memory、limits.ephemeral-storage、requests.cpu、requests.memory 和 requests.ephemeral-storage)。 |
|
|
选择 Pod 命名空间中的密钥。 |
选择 ConfigMap 的键。
object
key
Property 属性 | Type 类型 | Description 描述 |
---|---|---|
|
|
要选择的键。 |
|
|
引用的名称。此字段实际上是必需的,但由于向后兼容性,允许为空。此类型的实例在此处为空值几乎肯定是错误的。TODO:添加其他有用的字段。apiVersion、kind、uid?更多信息:https://kubernetes.ac.cn/docs/concepts/overview/working-with-objects/names/#names TODO:当 controller-gen 不需要时删除 |
|
|
指定是否必须定义 ConfigMap 或其键 |
选择 Pod 的字段:支持 metadata.name、metadata.namespace、metadata.labels['<KEY>']
、metadata.annotations['<KEY>']
、spec.nodeName、spec.serviceAccountName、status.hostIP、status.podIP、status.podIPs。
object
fieldPath
Property 属性 | Type 类型 | Description 描述 |
---|---|---|
|
|
FieldPath 的模式版本,默认为“v1”。 |
|
|
在指定的 API 版本中选择的字段的路径。 |
选择容器的资源:当前仅支持资源限制和请求(limits.cpu、limits.memory、limits.ephemeral-storage、requests.cpu、requests.memory 和 requests.ephemeral-storage)。
object
resource
Property 属性 | Type 类型 | Description 描述 |
---|---|---|
|
|
容器名称:卷需要,环境变量可选 |
|
|
指定公开资源的输出格式,默认为“1” |
|
|
必需:要选择的资源 |
选择 Pod 命名空间中的密钥。
object
key
Property 属性 | Type 类型 | Description 描述 |
---|---|---|
|
|
要从中选择的密钥的密钥。必须是有效的密钥。 |
|
|
引用的名称。此字段实际上是必需的,但由于向后兼容性,允许为空。此类型的实例在此处为空值几乎肯定是错误的。TODO:添加其他有用的字段。apiVersion、kind、uid?更多信息:https://kubernetes.ac.cn/docs/concepts/overview/working-with-objects/names/#names TODO:当 controller-gen 不需要时删除 |
|
|
指定是否必须定义 Secret 或其密钥。 |
用于填充容器中环境变量的来源列表。来源中定义的键必须是 C_IDENTIFIER。所有无效的键都将在容器启动时作为事件报告。当一个键存在于多个来源时,最后一个来源关联的值将优先。Env 中定义的具有重复键的值将优先。
数组
EnvFromSource 表示一组 ConfigMaps 的来源。
object
Property 属性 | Type 类型 | Description 描述 |
---|---|---|
|
|
要从中选择的 ConfigMap |
|
|
一个可选的标识符,用于在 ConfigMap 中每个键的前面添加。必须是 C_IDENTIFIER。 |
|
|
要从中选择的 Secret |
要从中选择的 ConfigMap
object
Property 属性 | Type 类型 | Description 描述 |
---|---|---|
|
|
引用的名称。此字段实际上是必需的,但由于向后兼容性,允许为空。此类型的实例在此处为空值几乎肯定是错误的。TODO:添加其他有用的字段。apiVersion、kind、uid?更多信息:https://kubernetes.ac.cn/docs/concepts/overview/working-with-objects/names/#names TODO:当 controller-gen 不需要时删除 |
|
|
指定是否必须定义 ConfigMap |
要从中选择的 Secret
object
Property 属性 | Type 类型 | Description 描述 |
---|---|---|
|
|
引用的名称。此字段实际上是必需的,但由于向后兼容性,允许为空。此类型的实例在此处为空值几乎肯定是错误的。TODO:添加其他有用的字段。apiVersion、kind、uid?更多信息:https://kubernetes.ac.cn/docs/concepts/overview/working-with-objects/names/#names TODO:当 controller-gen 不需要时删除 |
|
|
指定是否必须定义 Secret |
管理系统应针对容器生命周期事件采取的操作。
object
Property 属性 | Type 类型 | Description 描述 |
---|---|---|
|
|
PostStart 在容器创建后立即调用。如果处理程序失败,则容器将根据其重启策略终止并重启。容器的其他管理将阻塞,直到挂钩完成。更多信息:https://kubernetes.ac.cn/docs/concepts/containers/container-lifecycle-hooks/#container-hooks |
|
|
PreStop 钩子在容器由于 API 请求或管理事件(例如存活性/启动探针失败、抢占、资源争用等)终止之前立即调用。如果容器崩溃或退出,则不会调用此处理程序。Pod 的终止宽限期倒计时在执行 PreStop 钩子之前开始。无论处理程序的结果如何,容器最终都会在 Pod 的终止宽限期内终止(除非被最终器延迟)。其他容器管理操作将阻塞,直到钩子完成或终止宽限期结束。更多信息:https://kubernetes.ac.cn/docs/concepts/containers/container-lifecycle-hooks/#container-hooks |
PostStart 在容器创建后立即调用。如果处理程序失败,则容器将根据其重启策略终止并重启。容器的其他管理将阻塞,直到挂钩完成。更多信息:https://kubernetes.ac.cn/docs/concepts/containers/container-lifecycle-hooks/#container-hooks
object
Property 属性 | Type 类型 | Description 描述 |
---|---|---|
|
|
Exec 指定要执行的操作。 |
|
|
HTTPGet 指定要执行的 HTTP 请求。 |
|
|
Sleep 表示容器在终止前应休眠的持续时间。 |
|
|
已弃用。TCPSocket 不支持作为 LifecycleHandler,保留是为了向后兼容。此字段没有验证,当指定 tcp 处理程序时,生命周期钩子将在运行时失败。 |
Exec 指定要执行的操作。
object
Property 属性 | Type 类型 | Description 描述 |
---|---|---|
|
|
Command 是在容器内执行的命令行,命令的工作目录是容器文件系统中的根目录 ('/')。该命令只是简单地执行,不会在 shell 中运行,因此传统的 shell 指令 ('|' 等) 将不起作用。要使用 shell,需要显式调用该 shell。退出状态 0 被视为存活/健康,非零状态为不健康。 |
HTTPGet 指定要执行的 HTTP 请求。
object
端口
Property 属性 | Type 类型 | Description 描述 |
---|---|---|
|
|
要连接到的主机名,默认为 Pod IP。您可能需要在 httpHeaders 中设置“Host”。 |
|
|
要设置在请求中的自定义标头。HTTP 允许重复标头。 |
|
|
HTTPHeader 描述要在 HTTP 探针中使用的自定义标头。 |
|
|
在 HTTP 服务器上访问的路径。 |
|
|
要访问容器上端口的名称或编号。编号必须在 1 到 65535 的范围内。名称必须是 IANA_SVC_NAME。 |
|
|
用于连接到主机的方案。默认为 HTTP。 |
要设置在请求中的自定义标头。HTTP 允许重复标头。
数组
HTTPHeader 描述要在 HTTP 探针中使用的自定义标头。
object
name
值
Property 属性 | Type 类型 | Description 描述 |
---|---|---|
|
|
标头字段名称。这将在输出时规范化,因此大小写不同的名称将被理解为相同的标头。 |
|
|
标头字段值。 |
Sleep 表示容器在终止前应休眠的持续时间。
object
seconds
Property 属性 | Type 类型 | Description 描述 |
---|---|---|
|
|
Seconds 是要休眠的秒数。 |
已弃用。TCPSocket 不支持作为 LifecycleHandler,保留是为了向后兼容。此字段没有验证,当指定 tcp 处理程序时,生命周期钩子将在运行时失败。
object
端口
Property 属性 | Type 类型 | Description 描述 |
---|---|---|
|
|
可选:要连接到的主机名,默认为 Pod IP。 |
|
|
要访问容器上端口的编号或名称。编号必须在 1 到 65535 的范围内。名称必须是 IANA_SVC_NAME。 |
PreStop 钩子在容器由于 API 请求或管理事件(例如存活性/启动探针失败、抢占、资源争用等)终止之前立即调用。如果容器崩溃或退出,则不会调用此处理程序。Pod 的终止宽限期倒计时在执行 PreStop 钩子之前开始。无论处理程序的结果如何,容器最终都会在 Pod 的终止宽限期内终止(除非被最终器延迟)。其他容器管理操作将阻塞,直到钩子完成或终止宽限期结束。更多信息:https://kubernetes.ac.cn/docs/concepts/containers/container-lifecycle-hooks/#container-hooks
object
Property 属性 | Type 类型 | Description 描述 |
---|---|---|
|
|
Exec 指定要执行的操作。 |
|
|
HTTPGet 指定要执行的 HTTP 请求。 |
|
|
Sleep 表示容器在终止前应休眠的持续时间。 |
|
|
已弃用。TCPSocket 不支持作为 LifecycleHandler,保留是为了向后兼容。此字段没有验证,当指定 tcp 处理程序时,生命周期钩子将在运行时失败。 |
Exec 指定要执行的操作。
object
Property 属性 | Type 类型 | Description 描述 |
---|---|---|
|
|
Command 是在容器内执行的命令行,命令的工作目录是容器文件系统中的根目录 ('/')。该命令只是简单地执行,不会在 shell 中运行,因此传统的 shell 指令 ('|' 等) 将不起作用。要使用 shell,需要显式调用该 shell。退出状态 0 被视为存活/健康,非零状态为不健康。 |
HTTPGet 指定要执行的 HTTP 请求。
object
端口
Property 属性 | Type 类型 | Description 描述 |
---|---|---|
|
|
要连接到的主机名,默认为 Pod IP。您可能需要在 httpHeaders 中设置“Host”。 |
|
|
要设置在请求中的自定义标头。HTTP 允许重复标头。 |
|
|
HTTPHeader 描述要在 HTTP 探针中使用的自定义标头。 |
|
|
在 HTTP 服务器上访问的路径。 |
|
|
要访问容器上端口的名称或编号。编号必须在 1 到 65535 的范围内。名称必须是 IANA_SVC_NAME。 |
|
|
用于连接到主机的方案。默认为 HTTP。 |
要设置在请求中的自定义标头。HTTP 允许重复标头。
数组
HTTPHeader 描述要在 HTTP 探针中使用的自定义标头。
object
name
值
Property 属性 | Type 类型 | Description 描述 |
---|---|---|
|
|
标头字段名称。这将在输出时规范化,因此大小写不同的名称将被理解为相同的标头。 |
|
|
标头字段值。 |
Sleep 表示容器在终止前应休眠的持续时间。
object
seconds
Property 属性 | Type 类型 | Description 描述 |
---|---|---|
|
|
Seconds 是要休眠的秒数。 |
已弃用。TCPSocket 不支持作为 LifecycleHandler,保留是为了向后兼容。此字段没有验证,当指定 tcp 处理程序时,生命周期钩子将在运行时失败。
object
端口
Property 属性 | Type 类型 | Description 描述 |
---|---|---|
|
|
可选:要连接到的主机名,默认为 Pod IP。 |
|
|
要访问容器上端口的编号或名称。编号必须在 1 到 65535 的范围内。名称必须是 IANA_SVC_NAME。 |
容器存活状态的定期探测。如果探测失败,容器将被重启。
object
Property 属性 | Type 类型 | Description 描述 |
---|---|---|
|
|
Exec 指定要执行的操作。 |
|
|
探针在成功后被认为失败的最小连续失败次数。默认为 3。最小值为 1。 |
|
|
GRPC 指定一个涉及 GRPC 端口的操作。 |
|
|
HTTPGet 指定要执行的 HTTP 请求。 |
|
|
容器启动后开始进行存活性探测之前的秒数。更多信息:https://kubernetes.ac.cn/docs/concepts/workloads/pods/pod-lifecycle#container-probes |
|
|
执行探测的频率(以秒为单位)。默认为 10 秒。最小值为 1。 |
|
|
探针在失败后被认为成功的最小连续成功次数。默认为 1。对于存活性探针和启动探针必须为 1。最小值为 1。 |
|
|
TCPSocket 指定一个涉及 TCP 端口的操作。 |
|
|
探针失败后,Pod 需要优雅终止的可选持续时间(以秒为单位)。宽限期是在向 Pod 中运行的进程发送终止信号和使用 kill 信号强制停止进程之间的时间(以秒为单位)。将此值设置为超过进程的预期清理时间。如果此值为 nil,则将使用 Pod 的 terminationGracePeriodSeconds。否则,此值将覆盖 Pod 规范中提供的值。值必须是非负整数。值为零表示立即通过 kill 信号停止(没有关闭的机会)。这是一个 Beta 字段,需要启用 ProbeTerminationGracePeriod 功能开关。最小值为 1。如果未设置,则使用 spec.terminationGracePeriodSeconds。 |
|
|
探针超时之前的秒数。默认为 1 秒。最小值为 1。更多信息:https://kubernetes.ac.cn/docs/concepts/workloads/pods/pod-lifecycle#container-probes |
Exec 指定要执行的操作。
object
Property 属性 | Type 类型 | Description 描述 |
---|---|---|
|
|
Command 是在容器内执行的命令行,命令的工作目录是容器文件系统中的根目录 ('/')。该命令只是简单地执行,不会在 shell 中运行,因此传统的 shell 指令 ('|' 等) 将不起作用。要使用 shell,需要显式调用该 shell。退出状态 0 被视为存活/健康,非零状态为不健康。 |
GRPC 指定一个涉及 GRPC 端口的操作。
object
端口
Property 属性 | Type 类型 | Description 描述 |
---|---|---|
|
|
gRPC 服务的端口号。编号必须在 1 到 65535 的范围内。 |
|
|
要在 gRPC HealthCheckRequest 中放置的服务名称(参见 https://github.com/grpc/grpc/blob/master/doc/health-checking.md)。 如果未指定,则默认行为由 gRPC 定义。 |
HTTPGet 指定要执行的 HTTP 请求。
object
端口
Property 属性 | Type 类型 | Description 描述 |
---|---|---|
|
|
要连接到的主机名,默认为 Pod IP。您可能需要在 httpHeaders 中设置“Host”。 |
|
|
要设置在请求中的自定义标头。HTTP 允许重复标头。 |
|
|
HTTPHeader 描述要在 HTTP 探针中使用的自定义标头。 |
|
|
在 HTTP 服务器上访问的路径。 |
|
|
要访问容器上端口的名称或编号。编号必须在 1 到 65535 的范围内。名称必须是 IANA_SVC_NAME。 |
|
|
用于连接到主机的方案。默认为 HTTP。 |
要设置在请求中的自定义标头。HTTP 允许重复标头。
数组
HTTPHeader 描述要在 HTTP 探针中使用的自定义标头。
object
name
值
Property 属性 | Type 类型 | Description 描述 |
---|---|---|
|
|
标头字段名称。这将在输出时规范化,因此大小写不同的名称将被理解为相同的标头。 |
|
|
标头字段值。 |
TCPSocket 指定一个涉及 TCP 端口的操作。
object
端口
Property 属性 | Type 类型 | Description 描述 |
---|---|---|
|
|
可选:要连接到的主机名,默认为 Pod IP。 |
|
|
要访问容器上端口的编号或名称。编号必须在 1 到 65535 的范围内。名称必须是 IANA_SVC_NAME。 |
要从容器中暴露的端口列表。此处不指定端口并不会阻止该端口被暴露。容器内监听默认“0.0.0.0”地址的任何端口都可从网络访问。使用战略性合并补丁修改此数组可能会损坏数据。
数组
ContainerPort 表示单个容器中的网络端口。
object
containerPort
Property 属性 | Type 类型 | Description 描述 |
---|---|---|
|
|
要在 Pod 的 IP 地址上公开的端口号。这必须是一个有效的端口号,0 < x < 65536。 |
|
|
将外部端口绑定到的主机 IP。 |
|
|
要在主机上公开的端口号。如果指定,这必须是一个有效的端口号,0 < x < 65536。如果指定了 HostNetwork,则这必须与 ContainerPort 匹配。大多数容器不需要这个。 |
|
|
如果指定,这必须是 IANA_SVC_NAME 并且在 Pod 内唯一。Pod 中的每个命名端口都必须具有唯一的名称。可以由服务引用的端口名称。 |
|
|
端口协议。必须是 UDP、TCP 或 SCTP。默认为“TCP”。 |
容器服务就绪状态的定期探测。如果探测失败,容器将从服务端点中移除。
object
Property 属性 | Type 类型 | Description 描述 |
---|---|---|
|
|
Exec 指定要执行的操作。 |
|
|
探针在成功后被认为失败的最小连续失败次数。默认为 3。最小值为 1。 |
|
|
GRPC 指定一个涉及 GRPC 端口的操作。 |
|
|
HTTPGet 指定要执行的 HTTP 请求。 |
|
|
容器启动后开始进行存活性探测之前的秒数。更多信息:https://kubernetes.ac.cn/docs/concepts/workloads/pods/pod-lifecycle#container-probes |
|
|
执行探测的频率(以秒为单位)。默认为 10 秒。最小值为 1。 |
|
|
探针在失败后被认为成功的最小连续成功次数。默认为 1。对于存活性探针和启动探针必须为 1。最小值为 1。 |
|
|
TCPSocket 指定一个涉及 TCP 端口的操作。 |
|
|
探针失败后,Pod 需要优雅终止的可选持续时间(以秒为单位)。宽限期是在向 Pod 中运行的进程发送终止信号和使用 kill 信号强制停止进程之间的时间(以秒为单位)。将此值设置为超过进程的预期清理时间。如果此值为 nil,则将使用 Pod 的 terminationGracePeriodSeconds。否则,此值将覆盖 Pod 规范中提供的值。值必须是非负整数。值为零表示立即通过 kill 信号停止(没有关闭的机会)。这是一个 Beta 字段,需要启用 ProbeTerminationGracePeriod 功能开关。最小值为 1。如果未设置,则使用 spec.terminationGracePeriodSeconds。 |
|
|
探针超时之前的秒数。默认为 1 秒。最小值为 1。更多信息:https://kubernetes.ac.cn/docs/concepts/workloads/pods/pod-lifecycle#container-probes |
Exec 指定要执行的操作。
object
Property 属性 | Type 类型 | Description 描述 |
---|---|---|
|
|
Command 是在容器内执行的命令行,命令的工作目录是容器文件系统中的根目录 ('/')。该命令只是简单地执行,不会在 shell 中运行,因此传统的 shell 指令 ('|' 等) 将不起作用。要使用 shell,需要显式调用该 shell。退出状态 0 被视为存活/健康,非零状态为不健康。 |
GRPC 指定一个涉及 GRPC 端口的操作。
object
端口
Property 属性 | Type 类型 | Description 描述 |
---|---|---|
|
|
gRPC 服务的端口号。编号必须在 1 到 65535 的范围内。 |
|
|
要在 gRPC HealthCheckRequest 中放置的服务名称(参见 https://github.com/grpc/grpc/blob/master/doc/health-checking.md)。 如果未指定,则默认行为由 gRPC 定义。 |
HTTPGet 指定要执行的 HTTP 请求。
object
端口
Property 属性 | Type 类型 | Description 描述 |
---|---|---|
|
|
要连接到的主机名,默认为 Pod IP。您可能需要在 httpHeaders 中设置“Host”。 |
|
|
要设置在请求中的自定义标头。HTTP 允许重复标头。 |
|
|
HTTPHeader 描述要在 HTTP 探针中使用的自定义标头。 |
|
|
在 HTTP 服务器上访问的路径。 |
|
|
要访问容器上端口的名称或编号。编号必须在 1 到 65535 的范围内。名称必须是 IANA_SVC_NAME。 |
|
|
用于连接到主机的方案。默认为 HTTP。 |
要设置在请求中的自定义标头。HTTP 允许重复标头。
数组
HTTPHeader 描述要在 HTTP 探针中使用的自定义标头。
object
name
值
Property 属性 | Type 类型 | Description 描述 |
---|---|---|
|
|
标头字段名称。这将在输出时规范化,因此大小写不同的名称将被理解为相同的标头。 |
|
|
标头字段值。 |
TCPSocket 指定一个涉及 TCP 端口的操作。
object
端口
Property 属性 | Type 类型 | Description 描述 |
---|---|---|
|
|
可选:要连接到的主机名,默认为 Pod IP。 |
|
|
要访问容器上端口的编号或名称。编号必须在 1 到 65535 的范围内。名称必须是 IANA_SVC_NAME。 |
ContainerResizePolicy 表示容器的资源调整策略。
object
resourceName
restartPolicy
Property 属性 | Type 类型 | Description 描述 |
---|---|---|
|
|
应用此资源调整策略的资源名称。支持的值:cpu、memory。 |
|
|
调整指定资源时要应用的重启策略。如果未指定,则默认为 NotRequired。 |
此容器所需的计算资源。
object
Property 属性 | Type 类型 | Description 描述 |
---|---|---|
|
|
Claims 列出了此容器使用的资源名称,这些资源在 spec.resourceClaims 中定义。 这是一个 alpha 字段,需要启用 DynamicResourceAllocation 功能网关。 此字段是不可变的。它只能为容器设置。 |
|
|
ResourceClaim 引用 PodSpec.ResourceClaims 中的一个条目。 |
|
|
Limits 描述了允许的最大计算资源量。更多信息:https://kubernetes.ac.cn/docs/concepts/configuration/manage-resources-containers/ |
|
|
Requests 描述了所需的最小计算资源量。如果容器省略了 Requests,则默认为 Limits(如果明确指定),否则默认为实现定义的值。Requests 不能超过 Limits。更多信息:https://kubernetes.ac.cn/docs/concepts/configuration/manage-resources-containers/ |
Claims 列出了此容器使用的资源名称,这些资源在 spec.resourceClaims 中定义。
这是一个 alpha 字段,需要启用 DynamicResourceAllocation 功能网关。
此字段是不可变的。它只能为容器设置。
数组
ResourceClaim 引用 PodSpec.ResourceClaims 中的一个条目。
object
name
Property 属性 | Type 类型 | Description 描述 |
---|---|---|
|
|
名称必须与使用此字段的 Pod 的 pod.spec.resourceClaims 中的一个条目的名称匹配。它使该资源在容器内可用。 |
SecurityContext 定义了容器应运行的安全选项。如果设置,SecurityContext 的字段将覆盖 PodSecurityContext 的等效字段。更多信息:https://kubernetes.ac.cn/docs/tasks/configure-pod-container/security-context/
object
Property 属性 | Type 类型 | Description 描述 |
---|---|---|
|
|
AllowPrivilegeEscalation 控制进程是否可以获得比其父进程更多的权限。此布尔值直接控制容器进程上是否设置 no_new_privs 标志。当容器:1) 作为特权运行 2) 具有 CAP_SYS_ADMIN 时,AllowPrivilegeEscalation 始终为 true。请注意,当 spec.os.name 为 windows 时,无法设置此字段。 |
|
|
appArmorProfile 是此容器要使用的 AppArmor 选项。如果设置,此配置文件将覆盖 pod 的 appArmorProfile。请注意,当 spec.os.name 为 windows 时,无法设置此字段。 |
|
|
运行容器时要添加/删除的功能。默认为容器运行时授予的功能的默认集。请注意,当 spec.os.name 为 windows 时,无法设置此字段。 |
|
|
以特权模式运行容器。特权容器中的进程基本上等同于主机上的 root。默认为 false。请注意,当 spec.os.name 为 windows 时,无法设置此字段。 |
|
|
procMount 表示要为容器使用的 proc 挂载类型。默认为 DefaultProcMount,它使用容器运行时针对只读路径和屏蔽路径的默认值。这需要启用 ProcMountType 功能标志。请注意,当 spec.os.name 为 windows 时,无法设置此字段。 |
|
|
此容器是否具有只读根文件系统。默认为 false。请注意,当 spec.os.name 为 windows 时,无法设置此字段。 |
|
|
运行容器进程入口点的 GID。如果未设置,则使用运行时默认值。也可以在 PodSecurityContext 中设置。如果在 SecurityContext 和 PodSecurityContext 中都设置,则 SecurityContext 中指定的值优先。请注意,当 spec.os.name 为 windows 时,无法设置此字段。 |
|
|
指示容器必须以非 root 用户身份运行。如果为 true,则 Kubelet 将在运行时验证映像以确保它不以 UID 0(root)身份运行,如果确实如此,则启动容器失败。如果未设置或为 false,则不会执行此类验证。也可以在 PodSecurityContext 中设置。如果在 SecurityContext 和 PodSecurityContext 中都设置,则 SecurityContext 中指定的值优先。 |
|
|
运行容器进程入口点的 UID。如果未指定,则默认为映像元数据中指定的用户。也可以在 PodSecurityContext 中设置。如果在 SecurityContext 和 PodSecurityContext 中都设置,则 SecurityContext 中指定的值优先。请注意,当 spec.os.name 为 windows 时,无法设置此字段。 |
|
|
要应用于容器的 SELinux 上下文。如果未指定,容器运行时将为每个容器分配一个随机 SELinux 上下文。也可以在 PodSecurityContext 中设置。如果在 SecurityContext 和 PodSecurityContext 中都设置,则 SecurityContext 中指定的值优先。请注意,当 spec.os.name 为 windows 时,无法设置此字段。 |
|
|
此容器要使用的 seccomp 选项。如果在 pod 和容器级别都提供了 seccomp 选项,则容器选项将覆盖 pod 选项。请注意,当 spec.os.name 为 windows 时,无法设置此字段。 |
|
|
应用于所有容器的 Windows 特定设置。如果未指定,将使用 PodSecurityContext 中的选项。如果在 SecurityContext 和 PodSecurityContext 中都设置,则 SecurityContext 中指定的值优先。请注意,当 spec.os.name 为 linux 时,无法设置此字段。 |
appArmorProfile 是此容器要使用的 AppArmor 选项。如果设置,此配置文件将覆盖 pod 的 appArmorProfile。请注意,当 spec.os.name 为 windows 时,无法设置此字段。
object
type
Property 属性 | Type 类型 | Description 描述 |
---|---|---|
|
|
localhostProfile 指示应使用在节点上加载的配置文件。配置文件必须预先配置在节点上才能工作。必须与配置文件的加载名称匹配。当且仅当类型为“Localhost”时才必须设置。 |
|
|
type 指示将应用哪种 AppArmor 配置文件。有效选项为:Localhost - 节点上预加载的配置文件。RuntimeDefault - 容器运行时的默认配置文件。Unconfined - 没有 AppArmor 强制执行。 |
运行容器时要添加/删除的功能。默认为容器运行时授予的功能的默认集。请注意,当 spec.os.name 为 windows 时,无法设置此字段。
object
Property 属性 | Type 类型 | Description 描述 |
---|---|---|
|
|
添加的功能 |
|
|
删除的功能 |
要应用于容器的 SELinux 上下文。如果未指定,容器运行时将为每个容器分配一个随机 SELinux 上下文。也可以在 PodSecurityContext 中设置。如果在 SecurityContext 和 PodSecurityContext 中都设置,则 SecurityContext 中指定的值优先。请注意,当 spec.os.name 为 windows 时,无法设置此字段。
object
Property 属性 | Type 类型 | Description 描述 |
---|---|---|
|
|
Level 是应用于容器的 SELinux 等级标签。 |
|
|
Role 是应用于容器的 SELinux 角色标签。 |
|
|
Type 是应用于容器的 SELinux 类型标签。 |
|
|
User 是应用于容器的 SELinux 用户标签。 |
此容器要使用的 seccomp 选项。如果在 pod 和容器级别都提供了 seccomp 选项,则容器选项将覆盖 pod 选项。请注意,当 spec.os.name 为 windows 时,无法设置此字段。
object
type
Property 属性 | Type 类型 | Description 描述 |
---|---|---|
|
|
localhostProfile 指示应使用节点上文件定义的配置文件。配置文件必须预先配置在节点上才能工作。必须是相对于 kubelet 配置的 seccomp 配置文件位置的递减路径。如果类型为“Localhost”,则必须设置。对于任何其他类型,则不能设置。 |
|
|
type 指示将应用哪种 seccomp 配置文件。有效选项为 Localhost - 应使用节点上文件中定义的配置文件。RuntimeDefault - 应使用容器运行时的默认配置文件。Unconfined - 不应应用任何配置文件。 |
应用于所有容器的 Windows 特定设置。如果未指定,将使用 PodSecurityContext 中的选项。如果在 SecurityContext 和 PodSecurityContext 中都设置,则 SecurityContext 中指定的值优先。请注意,当 spec.os.name 为 linux 时,无法设置此字段。
object
Property 属性 | Type 类型 | Description 描述 |
---|---|---|
|
|
GMSACredentialSpec 定义了 GMSA 准入 Webhook (https://github.com/kubernetes-sigs/windows-gmsa) 内联 GMSACredentialSpecName 字段指定的 GMSA 凭据规范的内容。 |
|
|
GMSACredentialSpecName 是要使用的 GMSA 凭据规范的名称。 |
|
|
HostProcess 决定容器是否应作为“主机进程”容器运行。Pod 的所有容器必须具有相同的有效 HostProcess 值(不允许混合使用 HostProcess 容器和非 HostProcess 容器)。此外,如果 HostProcess 为 true,则 HostNetwork 也必须设置为 true。 |
|
|
在 Windows 中运行容器进程入口点的用户名。如果未指定,则默认为映像元数据中指定的用户名。也可以在 PodSecurityContext 中设置。如果在 SecurityContext 和 PodSecurityContext 中都设置了此值,则 SecurityContext 中指定的值优先。 |
StartupProbe 指示 Pod 已成功初始化。如果指定,则在该探针成功完成之前不会执行其他探针。如果此探针失败,Pod 将被重启,就像 livenessProbe 失败一样。这可用于在 Pod 生命周期开始时提供不同的探针参数,此时加载数据或预热缓存可能需要很长时间,而稳态运行期间则不需要。这无法更新。更多信息:https://kubernetes.ac.cn/docs/concepts/workloads/pods/pod-lifecycle#container-probes
object
Property 属性 | Type 类型 | Description 描述 |
---|---|---|
|
|
Exec 指定要执行的操作。 |
|
|
探针在成功后被认为失败的最小连续失败次数。默认为 3。最小值为 1。 |
|
|
GRPC 指定一个涉及 GRPC 端口的操作。 |
|
|
HTTPGet 指定要执行的 HTTP 请求。 |
|
|
容器启动后开始进行存活性探测之前的秒数。更多信息:https://kubernetes.ac.cn/docs/concepts/workloads/pods/pod-lifecycle#container-probes |
|
|
执行探测的频率(以秒为单位)。默认为 10 秒。最小值为 1。 |
|
|
探针在失败后被认为成功的最小连续成功次数。默认为 1。对于存活性探针和启动探针必须为 1。最小值为 1。 |
|
|
TCPSocket 指定一个涉及 TCP 端口的操作。 |
|
|
探针失败后,Pod 需要优雅终止的可选持续时间(以秒为单位)。宽限期是在向 Pod 中运行的进程发送终止信号和使用 kill 信号强制停止进程之间的时间(以秒为单位)。将此值设置为超过进程的预期清理时间。如果此值为 nil,则将使用 Pod 的 terminationGracePeriodSeconds。否则,此值将覆盖 Pod 规范中提供的值。值必须是非负整数。值为零表示立即通过 kill 信号停止(没有关闭的机会)。这是一个 Beta 字段,需要启用 ProbeTerminationGracePeriod 功能开关。最小值为 1。如果未设置,则使用 spec.terminationGracePeriodSeconds。 |
|
|
探针超时之前的秒数。默认为 1 秒。最小值为 1。更多信息:https://kubernetes.ac.cn/docs/concepts/workloads/pods/pod-lifecycle#container-probes |
Exec 指定要执行的操作。
object
Property 属性 | Type 类型 | Description 描述 |
---|---|---|
|
|
Command 是在容器内执行的命令行,命令的工作目录是容器文件系统中的根目录 ('/')。该命令只是简单地执行,不会在 shell 中运行,因此传统的 shell 指令 ('|' 等) 将不起作用。要使用 shell,需要显式调用该 shell。退出状态 0 被视为存活/健康,非零状态为不健康。 |
GRPC 指定一个涉及 GRPC 端口的操作。
object
端口
Property 属性 | Type 类型 | Description 描述 |
---|---|---|
|
|
gRPC 服务的端口号。编号必须在 1 到 65535 的范围内。 |
|
|
要在 gRPC HealthCheckRequest 中放置的服务名称(参见 https://github.com/grpc/grpc/blob/master/doc/health-checking.md)。 如果未指定,则默认行为由 gRPC 定义。 |
HTTPGet 指定要执行的 HTTP 请求。
object
端口
Property 属性 | Type 类型 | Description 描述 |
---|---|---|
|
|
要连接到的主机名,默认为 Pod IP。您可能需要在 httpHeaders 中设置“Host”。 |
|
|
要设置在请求中的自定义标头。HTTP 允许重复标头。 |
|
|
HTTPHeader 描述要在 HTTP 探针中使用的自定义标头。 |
|
|
在 HTTP 服务器上访问的路径。 |
|
|
要访问容器上端口的名称或编号。编号必须在 1 到 65535 的范围内。名称必须是 IANA_SVC_NAME。 |
|
|
用于连接到主机的方案。默认为 HTTP。 |
要设置在请求中的自定义标头。HTTP 允许重复标头。
数组
HTTPHeader 描述要在 HTTP 探针中使用的自定义标头。
object
name
值
Property 属性 | Type 类型 | Description 描述 |
---|---|---|
|
|
标头字段名称。这将在输出时规范化,因此大小写不同的名称将被理解为相同的标头。 |
|
|
标头字段值。 |
TCPSocket 指定一个涉及 TCP 端口的操作。
object
端口
Property 属性 | Type 类型 | Description 描述 |
---|---|---|
|
|
可选:要连接到的主机名,默认为 Pod IP。 |
|
|
要访问容器上端口的编号或名称。编号必须在 1 到 65535 的范围内。名称必须是 IANA_SVC_NAME。 |
volumeDevice 描述了容器内原始块设备的映射。
object
devicePath
name
Property 属性 | Type 类型 | Description 描述 |
---|---|---|
|
|
devicePath 是容器内部设备将映射到的路径。 |
|
|
名称必须与 Pod 中的 persistentVolumeClaim 名称匹配。 |
VolumeMount 描述在容器内挂载卷。
object
mountPath
name
Property 属性 | Type 类型 | Description 描述 |
---|---|---|
|
|
容器中应挂载卷的路径。不能包含“:”。 |
|
|
mountPropagation 决定如何将挂载从主机传播到容器,反之亦然。如果未设置,则使用 MountPropagationNone。此字段在 1.10 中为 Beta 版本。如果 RecursiveReadOnly 设置为 IfPossible 或 Enabled,则 MountPropagation 必须为 None 或未指定(默认为 None)。 |
|
|
这必须与卷的名称匹配。 |
|
|
如果为 true,则以只读方式挂载;否则以读写方式挂载(false 或未指定)。默认为 false。 |
|
|
RecursiveReadOnly 指定是否应递归处理只读挂载。 如果 ReadOnly 为 false,则此字段无意义,必须未指定。 如果 ReadOnly 为 true,并且此字段设置为 Disabled,则不会递归地将挂载设置为只读。如果此字段设置为 IfPossible,则如果容器运行时支持,则会递归地将挂载设置为只读。如果此字段设置为 Enabled,则如果容器运行时支持,则会递归地将挂载设置为只读;否则,Pod 将不会启动,并且会生成错误以指示原因。 如果此字段设置为 IfPossible 或 Enabled,则 MountPropagation 必须设置为 None(或未指定,默认为 None)。 如果未指定此字段,则将其视为等效于 Disabled。 |
|
|
容器的卷应从中挂载的卷内的路径。默认为 ""(卷的根目录)。 |
|
|
容器的卷应从中挂载的卷内的展开路径。行为类似于 SubPath,但环境变量引用 $(VAR_NAME) 使用容器的环境进行展开。默认为 ""(卷的根目录)。SubPathExpr 和 SubPath 互斥。 |
要从强制执行源命名空间标签中排除的PodMonitor、ServiceMonitor、Probe和PrometheusRule对象的引用列表。
仅当spec.enforcedNamespaceLabel
设置为true时才适用。
数组
ObjectReference引用PodMonitor、ServiceMonitor、Probe或PrometheusRule对象。
object
命名空间
resource
Property 属性 | Type 类型 | Description 描述 |
---|---|---|
|
|
引用的组。如果未指定,则默认为 |
|
|
引用的名称。如果未设置,则匹配命名空间中的所有资源。 |
|
|
引用的命名空间。更多信息:https://kubernetes.ac.cn/docs/concepts/overview/working-with-objects/namespaces/ |
|
|
引用的资源。 |
与示例相关的设置,可在运行时重新加载。它需要启用exemplar-storage
功能标志才能生效。
object
Property 属性 | Type 类型 | Description 描述 |
---|---|---|
|
|
为所有序列存储在内存中的示例的最大数量。 首先必须使用 如果未设置,Prometheus 将使用其默认值。值为零或小于零将禁用存储。 |
HostAlias保存IP和主机名之间的映射,这些映射将作为条目注入到Pod的主机文件中。
object
hostnames
ip
Property 属性 | Type 类型 | Description 描述 |
---|---|---|
|
|
上述 IP 地址的主机名。 |
|
|
主机文件条目的 IP 地址。 |
从注册表拉取镜像时,用于同一命名空间中Secrets的可选引用列表。请参见 https://kubernetes.ac.cn/docs/user-guide/images#specifying-imagepullsecrets-on-a-pod
数组
LocalObjectReference包含足够的信息,让您可以在同一命名空间内找到引用的对象。
object
Property 属性 | Type 类型 | Description 描述 |
---|---|---|
|
|
引用的名称。此字段实际上是必需的,但由于向后兼容性,允许为空。此类型的实例在此处为空值几乎肯定是错误的。TODO:添加其他有用的字段。apiVersion、kind、uid?更多信息:https://kubernetes.ac.cn/docs/concepts/overview/working-with-objects/names/#names TODO:当 controller-gen 不需要时删除 |
InitContainers允许将initContainers注入到Pod定义中。这些可以用于例如从外部来源获取用于注入到Prometheus配置中的密钥。initContainer执行期间的任何错误都将导致Pod重启。更多信息:https://kubernetes.ac.cn/docs/concepts/workloads/pods/init-containers/ 此处描述的InitContainers如果具有相同的名称并且修改是通过策略性合并补丁完成的,则会修改操作员生成的init容器。
操作员管理的init容器名称为:* init-config-reloader
。
覆盖init容器完全不在维护者将支持的范围内,这样做意味着您接受此行为可能会随时中断而无需通知。
数组
您想要在 Pod 中运行的单个应用程序容器。
object
name
Property 属性 | Type 类型 | Description 描述 |
---|---|---|
|
|
传递给入口点的参数。如果未提供此参数,则使用容器镜像的 CMD。变量引用 $(VAR_NAME) 使用容器的环境进行扩展。如果无法解析变量,则输入字符串中的引用将保持不变。双美元符将简化为单个美元符,这允许转义 $(VAR_NAME) 语法:例如,“(VAR_NAME)”将生成字符串字面量“$(VAR_NAME)”。转义的引用将永远不会被扩展,无论变量是否存在。 |
|
|
入口点数组。不在 shell 中执行。如果未提供此参数,则使用容器镜像的 ENTRYPOINT。变量引用 $(VAR_NAME) 使用容器的环境进行扩展。如果无法解析变量,则输入字符串中的引用将保持不变。双美元符将简化为单个美元符,这允许转义 $(VAR_NAME) 语法:例如,“(VAR_NAME)”将生成字符串字面量“$(VAR_NAME)”。转义的引用将永远不会被扩展,无论变量是否存在。 |
|
|
要在容器中设置的环境变量列表。 |
|
|
EnvVar 表示容器中存在的环境变量。 |
|
|
用于填充容器中环境变量的来源列表。来源中定义的键必须是 C_IDENTIFIER。所有无效的键都将在容器启动时作为事件报告。当一个键存在于多个来源时,最后一个来源关联的值将优先。Env 中定义的具有重复键的值将优先。 |
|
|
EnvFromSource 表示一组 ConfigMaps 的来源。 |
|
|
容器镜像名称。此字段是可选的,允许更高级别的配置管理默认或覆盖工作负载控制器(如 Deployment 和 StatefulSet)中的容器镜像。 |
|
|
镜像拉取策略。Always、Never、IfNotPresent 之一。如果指定了 :latest 标签,则默认为 Always,否则默认为 IfNotPresent。 |
|
|
管理系统应针对容器生命周期事件采取的操作。 |
|
|
容器存活状态的定期探测。如果探测失败,容器将被重启。 |
|
|
指定为 DNS_LABEL 的容器名称。pod 中的每个容器必须具有唯一的名称 (DNS_LABEL)。 |
|
|
要从容器中暴露的端口列表。此处不指定端口并不会阻止该端口被暴露。容器内监听默认“0.0.0.0”地址的任何端口都可从网络访问。使用战略性合并补丁修改此数组可能会损坏数据。 |
|
|
ContainerPort 表示单个容器中的网络端口。 |
|
|
容器服务就绪状态的定期探测。如果探测失败,容器将从服务端点中移除。 |
|
|
容器的资源调整策略。 |
|
|
ContainerResizePolicy 表示容器的资源调整策略。 |
|
|
此容器所需的计算资源。 |
|
|
RestartPolicy 定义了 Pod 中单个容器的重启行为。此字段只能为 init 容器设置,且唯一允许的值为“Always”。对于非 init 容器或未指定此字段的情况,重启行为由 Pod 的重启策略和容器类型定义。为 init 容器设置 RestartPolicy 为“Always”将产生以下效果:此 init 容器将在退出时持续重启,直到所有常规容器都终止。一旦所有常规容器都完成,所有具有 restartPolicy 为“Always”的 init 容器都将关闭。此生命周期与普通 init 容器不同,通常被称为“sidecar”容器。尽管此 init 容器仍在 init 容器序列中启动,但在继续下一个 init 容器之前,它不会等待容器完成。相反,下一个 init 容器会在启动此 init 容器之后或任何 startupProbe 成功完成之后立即启动。 |
|
|
SecurityContext 定义了容器应运行的安全选项。如果设置,SecurityContext 的字段将覆盖 PodSecurityContext 的等效字段。更多信息:https://kubernetes.ac.cn/docs/tasks/configure-pod-container/security-context/ |
|
|
StartupProbe 指示 Pod 已成功初始化。如果指定,则在该探针成功完成之前不会执行其他探针。如果此探针失败,Pod 将被重启,就像 livenessProbe 失败一样。这可用于在 Pod 生命周期开始时提供不同的探针参数,此时加载数据或预热缓存可能需要很长时间,而稳态运行期间则不需要。这无法更新。更多信息:https://kubernetes.ac.cn/docs/concepts/workloads/pods/pod-lifecycle#container-probes |
|
|
此容器是否应在容器运行时分配 stdin 的缓冲区。如果未设置,则容器中来自 stdin 的读取将始终导致 EOF。默认为 false。 |
|
|
容器运行时是否应在单个附加操作打开 stdin 通道后关闭它。当 stdin 为 true 时,stdin 流将在多个附加会话中保持打开状态。如果将 stdinOnce 设置为 true,则在容器启动时打开 stdin,在第一个客户端附加到 stdin 之前为空,然后保持打开状态并接受数据,直到客户端断开连接,此时 stdin 关闭并保持关闭状态,直到容器重新启动。如果此标志为 false,则从 stdin 读取的容器进程将永远不会收到 EOF。默认为 false |
|
|
可选:将容器终止消息写入的文件安装到容器文件系统的路径。写入的消息旨在简短地显示最终状态,例如断言失败消息。如果大于 4096 字节,则节点将对其进行截断。所有容器的总消息长度将限制为 12kb。默认为 /dev/termination-log。无法更新。 |
|
|
指示应如何填充终止消息。File 将使用 terminationMessagePath 的内容在成功和失败时填充容器状态消息。FallbackToLogsOnError 如果终止消息文件为空且容器以错误退出,则将使用容器日志输出的最后一段。日志输出限制为 2048 字节或 80 行,取较小值。默认为 File。无法更新。 |
|
|
此容器是否应为自己分配一个 TTY,也需要 'stdin' 为 true。默认为 false。 |
|
|
volumeDevices 是容器要使用的块设备列表。 |
|
|
volumeDevice 描述了容器内原始块设备的映射。 |
|
|
要安装到容器文件系统的 Pod 卷。无法更新。 |
|
|
VolumeMount 描述在容器内挂载卷。 |
|
|
容器的工作目录。如果未指定,则将使用容器运行时的默认值,这可能在容器镜像中配置。无法更新。 |
EnvVar 表示容器中存在的环境变量。
object
name
Property 属性 | Type 类型 | Description 描述 |
---|---|---|
|
|
环境变量的名称。必须是 C_IDENTIFIER。 |
|
|
变量引用 $(VAR_NAME) 使用容器中先前定义的环境变量和任何服务环境变量进行扩展。如果无法解析变量,则输入字符串中的引用将保持不变。双美元符号将减少为单个美元符号,这允许转义 $(VAR_NAME) 语法:即“(VAR_NAME)”将产生字符串字面量“$(VAR_NAME)” 。转义的引用将永远不会扩展,无论变量是否存在。 |
|
|
环境变量值的来源。如果 value 不为空,则不能使用。 |
环境变量值的来源。如果 value 不为空,则不能使用。
object
Property 属性 | Type 类型 | Description 描述 |
---|---|---|
|
|
选择 ConfigMap 的键。 |
|
|
选择 Pod 的字段:支持 metadata.name、metadata.namespace、 |
|
|
选择容器的资源:当前仅支持资源限制和请求(limits.cpu、limits.memory、limits.ephemeral-storage、requests.cpu、requests.memory 和 requests.ephemeral-storage)。 |
|
|
选择 Pod 命名空间中的密钥。 |
选择 ConfigMap 的键。
object
key
Property 属性 | Type 类型 | Description 描述 |
---|---|---|
|
|
要选择的键。 |
|
|
引用的名称。此字段实际上是必需的,但由于向后兼容性,允许为空。此类型的实例在此处为空值几乎肯定是错误的。TODO:添加其他有用的字段。apiVersion、kind、uid?更多信息:https://kubernetes.ac.cn/docs/concepts/overview/working-with-objects/names/#names TODO:当 controller-gen 不需要时删除 |
|
|
指定是否必须定义 ConfigMap 或其键 |
选择 Pod 的字段:支持 metadata.name、metadata.namespace、metadata.labels['<KEY>']
、metadata.annotations['<KEY>']
、spec.nodeName、spec.serviceAccountName、status.hostIP、status.podIP、status.podIPs。
object
fieldPath
Property 属性 | Type 类型 | Description 描述 |
---|---|---|
|
|
FieldPath 的模式版本,默认为“v1”。 |
|
|
在指定的 API 版本中选择的字段的路径。 |
选择容器的资源:当前仅支持资源限制和请求(limits.cpu、limits.memory、limits.ephemeral-storage、requests.cpu、requests.memory 和 requests.ephemeral-storage)。
object
resource
Property 属性 | Type 类型 | Description 描述 |
---|---|---|
|
|
容器名称:卷需要,环境变量可选 |
|
|
指定公开资源的输出格式,默认为“1” |
|
|
必需:要选择的资源 |
选择 Pod 命名空间中的密钥。
object
key
Property 属性 | Type 类型 | Description 描述 |
---|---|---|
|
|
要从中选择的密钥的密钥。必须是有效的密钥。 |
|
|
引用的名称。此字段实际上是必需的,但由于向后兼容性,允许为空。此类型的实例在此处为空值几乎肯定是错误的。TODO:添加其他有用的字段。apiVersion、kind、uid?更多信息:https://kubernetes.ac.cn/docs/concepts/overview/working-with-objects/names/#names TODO:当 controller-gen 不需要时删除 |
|
|
指定是否必须定义 Secret 或其密钥。 |
用于填充容器中环境变量的来源列表。来源中定义的键必须是 C_IDENTIFIER。所有无效的键都将在容器启动时作为事件报告。当一个键存在于多个来源时,最后一个来源关联的值将优先。Env 中定义的具有重复键的值将优先。
数组
EnvFromSource 表示一组 ConfigMaps 的来源。
object
Property 属性 | Type 类型 | Description 描述 |
---|---|---|
|
|
要从中选择的 ConfigMap |
|
|
一个可选的标识符,用于在 ConfigMap 中每个键的前面添加。必须是 C_IDENTIFIER。 |
|
|
要从中选择的 Secret |
要从中选择的 ConfigMap
object
Property 属性 | Type 类型 | Description 描述 |
---|---|---|
|
|
引用的名称。此字段实际上是必需的,但由于向后兼容性,允许为空。此类型的实例在此处为空值几乎肯定是错误的。TODO:添加其他有用的字段。apiVersion、kind、uid?更多信息:https://kubernetes.ac.cn/docs/concepts/overview/working-with-objects/names/#names TODO:当 controller-gen 不需要时删除 |
|
|
指定是否必须定义 ConfigMap |
要从中选择的 Secret
object
Property 属性 | Type 类型 | Description 描述 |
---|---|---|
|
|
引用的名称。此字段实际上是必需的,但由于向后兼容性,允许为空。此类型的实例在此处为空值几乎肯定是错误的。TODO:添加其他有用的字段。apiVersion、kind、uid?更多信息:https://kubernetes.ac.cn/docs/concepts/overview/working-with-objects/names/#names TODO:当 controller-gen 不需要时删除 |
|
|
指定是否必须定义 Secret |
管理系统应针对容器生命周期事件采取的操作。
object
Property 属性 | Type 类型 | Description 描述 |
---|---|---|
|
|
PostStart 在容器创建后立即调用。如果处理程序失败,则容器将根据其重启策略终止并重启。容器的其他管理将阻塞,直到挂钩完成。更多信息:https://kubernetes.ac.cn/docs/concepts/containers/container-lifecycle-hooks/#container-hooks |
|
|
PreStop 钩子在容器由于 API 请求或管理事件(例如存活性/启动探针失败、抢占、资源争用等)终止之前立即调用。如果容器崩溃或退出,则不会调用此处理程序。Pod 的终止宽限期倒计时在执行 PreStop 钩子之前开始。无论处理程序的结果如何,容器最终都会在 Pod 的终止宽限期内终止(除非被最终器延迟)。其他容器管理操作将阻塞,直到钩子完成或终止宽限期结束。更多信息:https://kubernetes.ac.cn/docs/concepts/containers/container-lifecycle-hooks/#container-hooks |
PostStart 在容器创建后立即调用。如果处理程序失败,则容器将根据其重启策略终止并重启。容器的其他管理将阻塞,直到挂钩完成。更多信息:https://kubernetes.ac.cn/docs/concepts/containers/container-lifecycle-hooks/#container-hooks
object
Property 属性 | Type 类型 | Description 描述 |
---|---|---|
|
|
Exec 指定要执行的操作。 |
|
|
HTTPGet 指定要执行的 HTTP 请求。 |
|
|
Sleep 表示容器在终止前应休眠的持续时间。 |
|
|
已弃用。TCPSocket 不支持作为 LifecycleHandler,保留是为了向后兼容。此字段没有验证,当指定 tcp 处理程序时,生命周期钩子将在运行时失败。 |
Exec 指定要执行的操作。
object
Property 属性 | Type 类型 | Description 描述 |
---|---|---|
|
|
Command 是在容器内执行的命令行,命令的工作目录是容器文件系统中的根目录 ('/')。该命令只是简单地执行,不会在 shell 中运行,因此传统的 shell 指令 ('|' 等) 将不起作用。要使用 shell,需要显式调用该 shell。退出状态 0 被视为存活/健康,非零状态为不健康。 |
HTTPGet 指定要执行的 HTTP 请求。
object
端口
Property 属性 | Type 类型 | Description 描述 |
---|---|---|
|
|
要连接到的主机名,默认为 Pod IP。您可能需要在 httpHeaders 中设置“Host”。 |
|
|
要设置在请求中的自定义标头。HTTP 允许重复标头。 |
|
|
HTTPHeader 描述要在 HTTP 探针中使用的自定义标头。 |
|
|
在 HTTP 服务器上访问的路径。 |
|
|
要访问容器上端口的名称或编号。编号必须在 1 到 65535 的范围内。名称必须是 IANA_SVC_NAME。 |
|
|
用于连接到主机的方案。默认为 HTTP。 |
要设置在请求中的自定义标头。HTTP 允许重复标头。
数组
HTTPHeader 描述要在 HTTP 探针中使用的自定义标头。
object
name
值
Property 属性 | Type 类型 | Description 描述 |
---|---|---|
|
|
标头字段名称。这将在输出时规范化,因此大小写不同的名称将被理解为相同的标头。 |
|
|
标头字段值。 |
Sleep 表示容器在终止前应休眠的持续时间。
object
seconds
Property 属性 | Type 类型 | Description 描述 |
---|---|---|
|
|
Seconds 是要休眠的秒数。 |
已弃用。TCPSocket 不支持作为 LifecycleHandler,保留是为了向后兼容。此字段没有验证,当指定 tcp 处理程序时,生命周期钩子将在运行时失败。
object
端口
Property 属性 | Type 类型 | Description 描述 |
---|---|---|
|
|
可选:要连接到的主机名,默认为 Pod IP。 |
|
|
要访问容器上端口的编号或名称。编号必须在 1 到 65535 的范围内。名称必须是 IANA_SVC_NAME。 |
PreStop 钩子在容器由于 API 请求或管理事件(例如存活性/启动探针失败、抢占、资源争用等)终止之前立即调用。如果容器崩溃或退出,则不会调用此处理程序。Pod 的终止宽限期倒计时在执行 PreStop 钩子之前开始。无论处理程序的结果如何,容器最终都会在 Pod 的终止宽限期内终止(除非被最终器延迟)。其他容器管理操作将阻塞,直到钩子完成或终止宽限期结束。更多信息:https://kubernetes.ac.cn/docs/concepts/containers/container-lifecycle-hooks/#container-hooks
object
Property 属性 | Type 类型 | Description 描述 |
---|---|---|
|
|
Exec 指定要执行的操作。 |
|
|
HTTPGet 指定要执行的 HTTP 请求。 |
|
|
Sleep 表示容器在终止前应休眠的持续时间。 |
|
|
已弃用。TCPSocket 不支持作为 LifecycleHandler,保留是为了向后兼容。此字段没有验证,当指定 tcp 处理程序时,生命周期钩子将在运行时失败。 |
Exec 指定要执行的操作。
object
Property 属性 | Type 类型 | Description 描述 |
---|---|---|
|
|
Command 是在容器内执行的命令行,命令的工作目录是容器文件系统中的根目录 ('/')。该命令只是简单地执行,不会在 shell 中运行,因此传统的 shell 指令 ('|' 等) 将不起作用。要使用 shell,需要显式调用该 shell。退出状态 0 被视为存活/健康,非零状态为不健康。 |
HTTPGet 指定要执行的 HTTP 请求。
object
端口
Property 属性 | Type 类型 | Description 描述 |
---|---|---|
|
|
要连接到的主机名,默认为 Pod IP。您可能需要在 httpHeaders 中设置“Host”。 |
|
|
要设置在请求中的自定义标头。HTTP 允许重复标头。 |
|
|
HTTPHeader 描述要在 HTTP 探针中使用的自定义标头。 |
|
|
在 HTTP 服务器上访问的路径。 |
|
|
要访问容器上端口的名称或编号。编号必须在 1 到 65535 的范围内。名称必须是 IANA_SVC_NAME。 |
|
|
用于连接到主机的方案。默认为 HTTP。 |
要设置在请求中的自定义标头。HTTP 允许重复标头。
数组
HTTPHeader 描述要在 HTTP 探针中使用的自定义标头。
object
name
值
Property 属性 | Type 类型 | Description 描述 |
---|---|---|
|
|
标头字段名称。这将在输出时规范化,因此大小写不同的名称将被理解为相同的标头。 |
|
|
标头字段值。 |
Sleep 表示容器在终止前应休眠的持续时间。
object
seconds
Property 属性 | Type 类型 | Description 描述 |
---|---|---|
|
|
Seconds 是要休眠的秒数。 |
已弃用。TCPSocket 不支持作为 LifecycleHandler,保留是为了向后兼容。此字段没有验证,当指定 tcp 处理程序时,生命周期钩子将在运行时失败。
object
端口
Property 属性 | Type 类型 | Description 描述 |
---|---|---|
|
|
可选:要连接到的主机名,默认为 Pod IP。 |
|
|
要访问容器上端口的编号或名称。编号必须在 1 到 65535 的范围内。名称必须是 IANA_SVC_NAME。 |
容器存活状态的定期探测。如果探测失败,容器将被重启。
object
Property 属性 | Type 类型 | Description 描述 |
---|---|---|
|
|
Exec 指定要执行的操作。 |
|
|
探针在成功后被认为失败的最小连续失败次数。默认为 3。最小值为 1。 |
|
|
GRPC 指定一个涉及 GRPC 端口的操作。 |
|
|
HTTPGet 指定要执行的 HTTP 请求。 |
|
|
容器启动后开始进行存活性探测之前的秒数。更多信息:https://kubernetes.ac.cn/docs/concepts/workloads/pods/pod-lifecycle#container-probes |
|
|
执行探测的频率(以秒为单位)。默认为 10 秒。最小值为 1。 |
|
|
探针在失败后被认为成功的最小连续成功次数。默认为 1。对于存活性探针和启动探针必须为 1。最小值为 1。 |
|
|
TCPSocket 指定一个涉及 TCP 端口的操作。 |
|
|
探针失败后,Pod 需要优雅终止的可选持续时间(以秒为单位)。宽限期是在向 Pod 中运行的进程发送终止信号和使用 kill 信号强制停止进程之间的时间(以秒为单位)。将此值设置为超过进程的预期清理时间。如果此值为 nil,则将使用 Pod 的 terminationGracePeriodSeconds。否则,此值将覆盖 Pod 规范中提供的值。值必须是非负整数。值为零表示立即通过 kill 信号停止(没有关闭的机会)。这是一个 Beta 字段,需要启用 ProbeTerminationGracePeriod 功能开关。最小值为 1。如果未设置,则使用 spec.terminationGracePeriodSeconds。 |
|
|
探针超时之前的秒数。默认为 1 秒。最小值为 1。更多信息:https://kubernetes.ac.cn/docs/concepts/workloads/pods/pod-lifecycle#container-probes |
Exec 指定要执行的操作。
object
Property 属性 | Type 类型 | Description 描述 |
---|---|---|
|
|
Command 是在容器内执行的命令行,命令的工作目录是容器文件系统中的根目录 ('/')。该命令只是简单地执行,不会在 shell 中运行,因此传统的 shell 指令 ('|' 等) 将不起作用。要使用 shell,需要显式调用该 shell。退出状态 0 被视为存活/健康,非零状态为不健康。 |
GRPC 指定一个涉及 GRPC 端口的操作。
object
端口
Property 属性 | Type 类型 | Description 描述 |
---|---|---|
|
|
gRPC 服务的端口号。编号必须在 1 到 65535 的范围内。 |
|
|
要在 gRPC HealthCheckRequest 中放置的服务名称(参见 https://github.com/grpc/grpc/blob/master/doc/health-checking.md)。 如果未指定,则默认行为由 gRPC 定义。 |
HTTPGet 指定要执行的 HTTP 请求。
object
端口
Property 属性 | Type 类型 | Description 描述 |
---|---|---|
|
|
要连接到的主机名,默认为 Pod IP。您可能需要在 httpHeaders 中设置“Host”。 |
|
|
要设置在请求中的自定义标头。HTTP 允许重复标头。 |
|
|
HTTPHeader 描述要在 HTTP 探针中使用的自定义标头。 |
|
|
在 HTTP 服务器上访问的路径。 |
|
|
要访问容器上端口的名称或编号。编号必须在 1 到 65535 的范围内。名称必须是 IANA_SVC_NAME。 |
|
|
用于连接到主机的方案。默认为 HTTP。 |
要设置在请求中的自定义标头。HTTP 允许重复标头。
数组
HTTPHeader 描述要在 HTTP 探针中使用的自定义标头。
object
name
值
Property 属性 | Type 类型 | Description 描述 |
---|---|---|
|
|
标头字段名称。这将在输出时规范化,因此大小写不同的名称将被理解为相同的标头。 |
|
|
标头字段值。 |
TCPSocket 指定一个涉及 TCP 端口的操作。
object
端口
Property 属性 | Type 类型 | Description 描述 |
---|---|---|
|
|
可选:要连接到的主机名,默认为 Pod IP。 |
|
|
要访问容器上端口的编号或名称。编号必须在 1 到 65535 的范围内。名称必须是 IANA_SVC_NAME。 |
要从容器中暴露的端口列表。此处不指定端口并不会阻止该端口被暴露。容器内监听默认“0.0.0.0”地址的任何端口都可从网络访问。使用战略性合并补丁修改此数组可能会损坏数据。
数组
ContainerPort 表示单个容器中的网络端口。
object
containerPort
Property 属性 | Type 类型 | Description 描述 |
---|---|---|
|
|
要在 Pod 的 IP 地址上公开的端口号。这必须是一个有效的端口号,0 < x < 65536。 |
|
|
将外部端口绑定到的主机 IP。 |
|
|
要在主机上公开的端口号。如果指定,这必须是一个有效的端口号,0 < x < 65536。如果指定了 HostNetwork,则这必须与 ContainerPort 匹配。大多数容器不需要这个。 |
|
|
如果指定,这必须是 IANA_SVC_NAME 并且在 Pod 内唯一。Pod 中的每个命名端口都必须具有唯一的名称。可以由服务引用的端口名称。 |
|
|
端口协议。必须是 UDP、TCP 或 SCTP。默认为“TCP”。 |
容器服务就绪状态的定期探测。如果探测失败,容器将从服务端点中移除。
object
Property 属性 | Type 类型 | Description 描述 |
---|---|---|
|
|
Exec 指定要执行的操作。 |
|
|
探针在成功后被认为失败的最小连续失败次数。默认为 3。最小值为 1。 |
|
|
GRPC 指定一个涉及 GRPC 端口的操作。 |
|
|
HTTPGet 指定要执行的 HTTP 请求。 |
|
|
容器启动后开始进行存活性探测之前的秒数。更多信息:https://kubernetes.ac.cn/docs/concepts/workloads/pods/pod-lifecycle#container-probes |
|
|
执行探测的频率(以秒为单位)。默认为 10 秒。最小值为 1。 |
|
|
探针在失败后被认为成功的最小连续成功次数。默认为 1。对于存活性探针和启动探针必须为 1。最小值为 1。 |
|
|
TCPSocket 指定一个涉及 TCP 端口的操作。 |
|
|
探针失败后,Pod 需要优雅终止的可选持续时间(以秒为单位)。宽限期是在向 Pod 中运行的进程发送终止信号和使用 kill 信号强制停止进程之间的时间(以秒为单位)。将此值设置为超过进程的预期清理时间。如果此值为 nil,则将使用 Pod 的 terminationGracePeriodSeconds。否则,此值将覆盖 Pod 规范中提供的值。值必须是非负整数。值为零表示立即通过 kill 信号停止(没有关闭的机会)。这是一个 Beta 字段,需要启用 ProbeTerminationGracePeriod 功能开关。最小值为 1。如果未设置,则使用 spec.terminationGracePeriodSeconds。 |
|
|
探针超时之前的秒数。默认为 1 秒。最小值为 1。更多信息:https://kubernetes.ac.cn/docs/concepts/workloads/pods/pod-lifecycle#container-probes |
Exec 指定要执行的操作。
object
Property 属性 | Type 类型 | Description 描述 |
---|---|---|
|
|
Command 是在容器内执行的命令行,命令的工作目录是容器文件系统中的根目录 ('/')。该命令只是简单地执行,不会在 shell 中运行,因此传统的 shell 指令 ('|' 等) 将不起作用。要使用 shell,需要显式调用该 shell。退出状态 0 被视为存活/健康,非零状态为不健康。 |
GRPC 指定一个涉及 GRPC 端口的操作。
object
端口
Property 属性 | Type 类型 | Description 描述 |
---|---|---|
|
|
gRPC 服务的端口号。编号必须在 1 到 65535 的范围内。 |
|
|
要在 gRPC HealthCheckRequest 中放置的服务名称(参见 https://github.com/grpc/grpc/blob/master/doc/health-checking.md)。 如果未指定,则默认行为由 gRPC 定义。 |
HTTPGet 指定要执行的 HTTP 请求。
object
端口
Property 属性 | Type 类型 | Description 描述 |
---|---|---|
|
|
要连接到的主机名,默认为 Pod IP。您可能需要在 httpHeaders 中设置“Host”。 |
|
|
要设置在请求中的自定义标头。HTTP 允许重复标头。 |
|
|
HTTPHeader 描述要在 HTTP 探针中使用的自定义标头。 |
|
|
在 HTTP 服务器上访问的路径。 |
|
|
要访问容器上端口的名称或编号。编号必须在 1 到 65535 的范围内。名称必须是 IANA_SVC_NAME。 |
|
|
用于连接到主机的方案。默认为 HTTP。 |
要设置在请求中的自定义标头。HTTP 允许重复标头。
数组
HTTPHeader 描述要在 HTTP 探针中使用的自定义标头。
object
name
值
Property 属性 | Type 类型 | Description 描述 |
---|---|---|
|
|
标头字段名称。这将在输出时规范化,因此大小写不同的名称将被理解为相同的标头。 |
|
|
标头字段值。 |
TCPSocket 指定一个涉及 TCP 端口的操作。
object
端口
Property 属性 | Type 类型 | Description 描述 |
---|---|---|
|
|
可选:要连接到的主机名,默认为 Pod IP。 |
|
|
要访问容器上端口的编号或名称。编号必须在 1 到 65535 的范围内。名称必须是 IANA_SVC_NAME。 |
ContainerResizePolicy 表示容器的资源调整策略。
object
resourceName
restartPolicy
Property 属性 | Type 类型 | Description 描述 |
---|---|---|
|
|
应用此资源调整策略的资源名称。支持的值:cpu、memory。 |
|
|
调整指定资源时要应用的重启策略。如果未指定,则默认为 NotRequired。 |
此容器所需的计算资源。
object
Property 属性 | Type 类型 | Description 描述 |
---|---|---|
|
|
Claims 列出了此容器使用的资源名称,这些资源在 spec.resourceClaims 中定义。 这是一个 alpha 字段,需要启用 DynamicResourceAllocation 功能网关。 此字段是不可变的。它只能为容器设置。 |
|
|
ResourceClaim 引用 PodSpec.ResourceClaims 中的一个条目。 |
|
|
Limits 描述了允许的最大计算资源量。更多信息:https://kubernetes.ac.cn/docs/concepts/configuration/manage-resources-containers/ |
|
|
Requests 描述了所需的最小计算资源量。如果容器省略了 Requests,则默认为 Limits(如果明确指定),否则默认为实现定义的值。Requests 不能超过 Limits。更多信息:https://kubernetes.ac.cn/docs/concepts/configuration/manage-resources-containers/ |
Claims 列出了此容器使用的资源名称,这些资源在 spec.resourceClaims 中定义。
这是一个 alpha 字段,需要启用 DynamicResourceAllocation 功能网关。
此字段是不可变的。它只能为容器设置。
数组
ResourceClaim 引用 PodSpec.ResourceClaims 中的一个条目。
object
name
Property 属性 | Type 类型 | Description 描述 |
---|---|---|
|
|
名称必须与使用此字段的 Pod 的 pod.spec.resourceClaims 中的一个条目的名称匹配。它使该资源在容器内可用。 |
SecurityContext 定义了容器应运行的安全选项。如果设置,SecurityContext 的字段将覆盖 PodSecurityContext 的等效字段。更多信息:https://kubernetes.ac.cn/docs/tasks/configure-pod-container/security-context/
object
Property 属性 | Type 类型 | Description 描述 |
---|---|---|
|
|
AllowPrivilegeEscalation 控制进程是否可以获得比其父进程更多的权限。此布尔值直接控制容器进程上是否设置 no_new_privs 标志。当容器:1) 作为特权运行 2) 具有 CAP_SYS_ADMIN 时,AllowPrivilegeEscalation 始终为 true。请注意,当 spec.os.name 为 windows 时,无法设置此字段。 |
|
|
appArmorProfile 是此容器要使用的 AppArmor 选项。如果设置,此配置文件将覆盖 pod 的 appArmorProfile。请注意,当 spec.os.name 为 windows 时,无法设置此字段。 |
|
|
运行容器时要添加/删除的功能。默认为容器运行时授予的功能的默认集。请注意,当 spec.os.name 为 windows 时,无法设置此字段。 |
|
|
以特权模式运行容器。特权容器中的进程基本上等同于主机上的 root。默认为 false。请注意,当 spec.os.name 为 windows 时,无法设置此字段。 |
|
|
procMount 表示要为容器使用的 proc 挂载类型。默认为 DefaultProcMount,它使用容器运行时针对只读路径和屏蔽路径的默认值。这需要启用 ProcMountType 功能标志。请注意,当 spec.os.name 为 windows 时,无法设置此字段。 |
|
|
此容器是否具有只读根文件系统。默认为 false。请注意,当 spec.os.name 为 windows 时,无法设置此字段。 |
|
|
运行容器进程入口点的 GID。如果未设置,则使用运行时默认值。也可以在 PodSecurityContext 中设置。如果在 SecurityContext 和 PodSecurityContext 中都设置,则 SecurityContext 中指定的值优先。请注意,当 spec.os.name 为 windows 时,无法设置此字段。 |
|
|
指示容器必须以非 root 用户身份运行。如果为 true,则 Kubelet 将在运行时验证映像以确保它不以 UID 0(root)身份运行,如果确实如此,则启动容器失败。如果未设置或为 false,则不会执行此类验证。也可以在 PodSecurityContext 中设置。如果在 SecurityContext 和 PodSecurityContext 中都设置,则 SecurityContext 中指定的值优先。 |
|
|
运行容器进程入口点的 UID。如果未指定,则默认为映像元数据中指定的用户。也可以在 PodSecurityContext 中设置。如果在 SecurityContext 和 PodSecurityContext 中都设置,则 SecurityContext 中指定的值优先。请注意,当 spec.os.name 为 windows 时,无法设置此字段。 |
|
|
要应用于容器的 SELinux 上下文。如果未指定,容器运行时将为每个容器分配一个随机 SELinux 上下文。也可以在 PodSecurityContext 中设置。如果在 SecurityContext 和 PodSecurityContext 中都设置,则 SecurityContext 中指定的值优先。请注意,当 spec.os.name 为 windows 时,无法设置此字段。 |
|
|
此容器要使用的 seccomp 选项。如果在 pod 和容器级别都提供了 seccomp 选项,则容器选项将覆盖 pod 选项。请注意,当 spec.os.name 为 windows 时,无法设置此字段。 |
|
|
应用于所有容器的 Windows 特定设置。如果未指定,将使用 PodSecurityContext 中的选项。如果在 SecurityContext 和 PodSecurityContext 中都设置,则 SecurityContext 中指定的值优先。请注意,当 spec.os.name 为 linux 时,无法设置此字段。 |
appArmorProfile 是此容器要使用的 AppArmor 选项。如果设置,此配置文件将覆盖 pod 的 appArmorProfile。请注意,当 spec.os.name 为 windows 时,无法设置此字段。
object
type
Property 属性 | Type 类型 | Description 描述 |
---|---|---|
|
|
localhostProfile 指示应使用在节点上加载的配置文件。配置文件必须预先配置在节点上才能工作。必须与配置文件的加载名称匹配。当且仅当类型为“Localhost”时才必须设置。 |
|
|
type 指示将应用哪种 AppArmor 配置文件。有效选项为:Localhost - 节点上预加载的配置文件。RuntimeDefault - 容器运行时的默认配置文件。Unconfined - 没有 AppArmor 强制执行。 |
运行容器时要添加/删除的功能。默认为容器运行时授予的功能的默认集。请注意,当 spec.os.name 为 windows 时,无法设置此字段。
object
Property 属性 | Type 类型 | Description 描述 |
---|---|---|
|
|
添加的功能 |
|
|
删除的功能 |
要应用于容器的 SELinux 上下文。如果未指定,容器运行时将为每个容器分配一个随机 SELinux 上下文。也可以在 PodSecurityContext 中设置。如果在 SecurityContext 和 PodSecurityContext 中都设置,则 SecurityContext 中指定的值优先。请注意,当 spec.os.name 为 windows 时,无法设置此字段。
object
Property 属性 | Type 类型 | Description 描述 |
---|---|---|
|
|
Level 是应用于容器的 SELinux 等级标签。 |
|
|
Role 是应用于容器的 SELinux 角色标签。 |
|
|
Type 是应用于容器的 SELinux 类型标签。 |
|
|
User 是应用于容器的 SELinux 用户标签。 |
此容器要使用的 seccomp 选项。如果在 pod 和容器级别都提供了 seccomp 选项,则容器选项将覆盖 pod 选项。请注意,当 spec.os.name 为 windows 时,无法设置此字段。
object
type
Property 属性 | Type 类型 | Description 描述 |
---|---|---|
|
|
localhostProfile 指示应使用节点上文件定义的配置文件。配置文件必须预先配置在节点上才能工作。必须是相对于 kubelet 配置的 seccomp 配置文件位置的递减路径。如果类型为“Localhost”,则必须设置。对于任何其他类型,则不能设置。 |
|
|
type 指示将应用哪种 seccomp 配置文件。有效选项为 Localhost - 应使用节点上文件中定义的配置文件。RuntimeDefault - 应使用容器运行时的默认配置文件。Unconfined - 不应应用任何配置文件。 |
应用于所有容器的 Windows 特定设置。如果未指定,将使用 PodSecurityContext 中的选项。如果在 SecurityContext 和 PodSecurityContext 中都设置,则 SecurityContext 中指定的值优先。请注意,当 spec.os.name 为 linux 时,无法设置此字段。
object
Property 属性 | Type 类型 | Description 描述 |
---|---|---|
|
|
GMSACredentialSpec 定义了 GMSA 准入 Webhook (https://github.com/kubernetes-sigs/windows-gmsa) 内联 GMSACredentialSpecName 字段指定的 GMSA 凭据规范的内容。 |
|
|
GMSACredentialSpecName 是要使用的 GMSA 凭据规范的名称。 |
|
|
HostProcess 决定容器是否应作为“主机进程”容器运行。Pod 的所有容器必须具有相同的有效 HostProcess 值(不允许混合使用 HostProcess 容器和非 HostProcess 容器)。此外,如果 HostProcess 为 true,则 HostNetwork 也必须设置为 true。 |
|
|
在 Windows 中运行容器进程入口点的用户名。如果未指定,则默认为映像元数据中指定的用户名。也可以在 PodSecurityContext 中设置。如果在 SecurityContext 和 PodSecurityContext 中都设置了此值,则 SecurityContext 中指定的值优先。 |
StartupProbe 指示 Pod 已成功初始化。如果指定,则在该探针成功完成之前不会执行其他探针。如果此探针失败,Pod 将被重启,就像 livenessProbe 失败一样。这可用于在 Pod 生命周期开始时提供不同的探针参数,此时加载数据或预热缓存可能需要很长时间,而稳态运行期间则不需要。这无法更新。更多信息:https://kubernetes.ac.cn/docs/concepts/workloads/pods/pod-lifecycle#container-probes
object
Property 属性 | Type 类型 | Description 描述 |
---|---|---|
|
|
Exec 指定要执行的操作。 |
|
|
探针在成功后被认为失败的最小连续失败次数。默认为 3。最小值为 1。 |
|
|
GRPC 指定一个涉及 GRPC 端口的操作。 |
|
|
HTTPGet 指定要执行的 HTTP 请求。 |
|
|
容器启动后开始进行存活性探测之前的秒数。更多信息:https://kubernetes.ac.cn/docs/concepts/workloads/pods/pod-lifecycle#container-probes |
|
|
执行探测的频率(以秒为单位)。默认为 10 秒。最小值为 1。 |
|
|
探针在失败后被认为成功的最小连续成功次数。默认为 1。对于存活性探针和启动探针必须为 1。最小值为 1。 |
|
|
TCPSocket 指定一个涉及 TCP 端口的操作。 |
|
|
探针失败后,Pod 需要优雅终止的可选持续时间(以秒为单位)。宽限期是在向 Pod 中运行的进程发送终止信号和使用 kill 信号强制停止进程之间的时间(以秒为单位)。将此值设置为超过进程的预期清理时间。如果此值为 nil,则将使用 Pod 的 terminationGracePeriodSeconds。否则,此值将覆盖 Pod 规范中提供的值。值必须是非负整数。值为零表示立即通过 kill 信号停止(没有关闭的机会)。这是一个 Beta 字段,需要启用 ProbeTerminationGracePeriod 功能开关。最小值为 1。如果未设置,则使用 spec.terminationGracePeriodSeconds。 |
|
|
探针超时之前的秒数。默认为 1 秒。最小值为 1。更多信息:https://kubernetes.ac.cn/docs/concepts/workloads/pods/pod-lifecycle#container-probes |
Exec 指定要执行的操作。
object
Property 属性 | Type 类型 | Description 描述 |
---|---|---|
|
|
Command 是在容器内执行的命令行,命令的工作目录是容器文件系统中的根目录 ('/')。该命令只是简单地执行,不会在 shell 中运行,因此传统的 shell 指令 ('|' 等) 将不起作用。要使用 shell,需要显式调用该 shell。退出状态 0 被视为存活/健康,非零状态为不健康。 |
GRPC 指定一个涉及 GRPC 端口的操作。
object
端口
Property 属性 | Type 类型 | Description 描述 |
---|---|---|
|
|
gRPC 服务的端口号。编号必须在 1 到 65535 的范围内。 |
|
|
要在 gRPC HealthCheckRequest 中放置的服务名称(参见 https://github.com/grpc/grpc/blob/master/doc/health-checking.md)。 如果未指定,则默认行为由 gRPC 定义。 |
HTTPGet 指定要执行的 HTTP 请求。
object
端口
Property 属性 | Type 类型 | Description 描述 |
---|---|---|
|
|
要连接到的主机名,默认为 Pod IP。您可能需要在 httpHeaders 中设置“Host”。 |
|
|
要设置在请求中的自定义标头。HTTP 允许重复标头。 |
|
|
HTTPHeader 描述要在 HTTP 探针中使用的自定义标头。 |
|
|
在 HTTP 服务器上访问的路径。 |
|
|
要访问容器上端口的名称或编号。编号必须在 1 到 65535 的范围内。名称必须是 IANA_SVC_NAME。 |
|
|
用于连接到主机的方案。默认为 HTTP。 |
要设置在请求中的自定义标头。HTTP 允许重复标头。
数组
HTTPHeader 描述要在 HTTP 探针中使用的自定义标头。
object
name
值
Property 属性 | Type 类型 | Description 描述 |
---|---|---|
|
|
标头字段名称。这将在输出时规范化,因此大小写不同的名称将被理解为相同的标头。 |
|
|
标头字段值。 |
TCPSocket 指定一个涉及 TCP 端口的操作。
object
端口
Property 属性 | Type 类型 | Description 描述 |
---|---|---|
|
|
可选:要连接到的主机名,默认为 Pod IP。 |
|
|
要访问容器上端口的编号或名称。编号必须在 1 到 65535 的范围内。名称必须是 IANA_SVC_NAME。 |
volumeDevice 描述了容器内原始块设备的映射。
object
devicePath
name
Property 属性 | Type 类型 | Description 描述 |
---|---|---|
|
|
devicePath 是容器内部设备将映射到的路径。 |
|
|
名称必须与 Pod 中的 persistentVolumeClaim 名称匹配。 |
VolumeMount 描述在容器内挂载卷。
object
mountPath
name
Property 属性 | Type 类型 | Description 描述 |
---|---|---|
|
|
容器中应挂载卷的路径。不能包含“:”。 |
|
|
mountPropagation 决定如何将挂载从主机传播到容器,反之亦然。如果未设置,则使用 MountPropagationNone。此字段在 1.10 中为 Beta 版本。如果 RecursiveReadOnly 设置为 IfPossible 或 Enabled,则 MountPropagation 必须为 None 或未指定(默认为 None)。 |
|
|
这必须与卷的名称匹配。 |
|
|
如果为 true,则以只读方式挂载;否则以读写方式挂载(false 或未指定)。默认为 false。 |
|
|
RecursiveReadOnly 指定是否应递归处理只读挂载。 如果 ReadOnly 为 false,则此字段无意义,必须未指定。 如果 ReadOnly 为 true,并且此字段设置为 Disabled,则不会递归地将挂载设置为只读。如果此字段设置为 IfPossible,则如果容器运行时支持,则会递归地将挂载设置为只读。如果此字段设置为 Enabled,则如果容器运行时支持,则会递归地将挂载设置为只读;否则,Pod 将不会启动,并且会生成错误以指示原因。 如果此字段设置为 IfPossible 或 Enabled,则 MountPropagation 必须设置为 None(或未指定,默认为 None)。 如果未指定此字段,则将其视为等效于 Disabled。 |
|
|
容器的卷应从中挂载的卷内的路径。默认为 ""(卷的根目录)。 |
|
|
容器的卷应从中挂载的卷内的展开路径。行为类似于 SubPath,但环境变量引用 $(VAR_NAME) 使用容器的环境进行展开。默认为 ""(卷的根目录)。SubPathExpr 和 SubPath 互斥。 |
该字段控制在 StatefulSet 的生命周期中是否以及如何删除 PVC。默认行为是保留所有 PVC。这是 Kubernetes 1.23 到 1.26 的 alpha 字段,以及 1.26 的 beta 字段。它需要启用 StatefulSetAutoDeletePVC 功能开关。
object
Property 属性 | Type 类型 | Description 描述 |
---|---|---|
|
|
当删除 StatefulSet 时,WhenDeleted 指定对从 StatefulSet VolumeClaimTemplates 创建的 PVC 执行的操作。默认策略 `Retain` 导致 PVC 不受 StatefulSet 删除的影响。`Delete` 策略会导致这些 PVC 被删除。 |
|
|
WhenScaled 指定当 StatefulSet 缩容时,对从 StatefulSet VolumeClaimTemplates 创建的 PVC 执行的操作。默认策略 `Retain` 导致 PVC 不受缩容的影响。`Delete` 策略会导致任何超过副本数量的多余 Pod 的关联 PVC 被删除。 |
PodMetadata 配置传播到 Prometheus pod 的标签和注释。
以下项目是保留的,不能被覆盖:* “prometheus”标签,设置为 Prometheus 对象的名称。* “app.kubernetes.io/instance”标签,设置为 Prometheus 对象的名称。* “app.kubernetes.io/managed-by”标签,设置为“prometheus-operator”。* “app.kubernetes.io/name”标签,设置为“prometheus”。* “app.kubernetes.io/version”标签,设置为 Prometheus 版本。* “operator.prometheus.io/name”标签,设置为 Prometheus 对象的名称。* “operator.prometheus.io/shard”标签,设置为 Prometheus 对象的分片号。* “kubectl.kubernetes.io/default-container”注释,设置为“prometheus”。
object
Property 属性 | Type 类型 | Description 描述 |
---|---|---|
|
|
Annotations 是存储在资源中的非结构化键值映射,外部工具可以使用它来存储和检索任意元数据。它们不可查询,在修改对象时应予以保留。更多信息:https://kubernetes.ac.cn/docs/user-guide/annotations |
|
|
字符串键值对的映射,可用于组织和分类(范围和选择)对象。可能与复制控制器和服务的选取器匹配。更多信息:https://kubernetes.ac.cn/docs/user-guide/labels |
|
|
名称在命名空间内必须唯一。创建资源时是必需的,尽管某些资源可能允许客户端自动请求生成合适的名称。名称主要用于创建幂等性和配置定义。无法更新。更多信息:https://kubernetes.ac.cn/docs/user-guide/identifiers#names |
要匹配 PodMonitors 发现的命名空间。空标签选择器匹配所有命名空间。空标签选择器(默认值)仅匹配当前命名空间。
object
Property 属性 | Type 类型 | Description 描述 |
---|---|---|
|
|
matchExpressions 是标签选择器要求的列表。这些要求是 ANDed 的。 |
|
|
标签选择器要求是一个包含值、键和运算符的选择器,这些值、键和运算符将键和值关联起来。 |
|
|
matchLabels 是 {key,value} 对的映射。matchLabels 映射中的单个 {key,value} 等效于 matchExpressions 的一个元素,其 key 字段为“key”,运算符为“In”,而 values 数组仅包含“value”。这些要求是 ANDed 的。 |
matchExpressions 是标签选择器要求的列表。这些要求是 ANDed 的。
数组
标签选择器要求是一个包含值、键和运算符的选择器,这些值、键和运算符将键和值关联起来。
object
key
运算符
Property 属性 | Type 类型 | Description 描述 |
---|---|---|
|
|
key 是选择器应用到的标签键。 |
|
|
operator 表示键与一组值的关系。有效的运算符为 In、NotIn、Exists 和 DoesNotExist。 |
|
|
values 是字符串值的数组。如果运算符为 In 或 NotIn,则 values 数组必须是非空的。如果运算符为 Exists 或 DoesNotExist,则 values 数组必须为空。此数组在策略性合并补丁期间会被替换。 |
要选择用于目标发现的 PodMonitors。空标签选择器匹配所有对象。空标签选择器不匹配任何对象。
如果spec.serviceMonitorSelector
、spec.podMonitorSelector
、spec.probeSelector
和spec.scrapeConfigSelector
为空,则 Prometheus 配置不受管理。Prometheus 运算符将确保 Prometheus 配置的 Secret 存在,但用户有责任在prometheus.yaml.gz
密钥下提供原始的 gzip 压缩的 Prometheus 配置。此行为已弃用,将在自定义资源定义的下一个主要版本中删除。建议改用spec.additionalScrapeConfigs
。
object
Property 属性 | Type 类型 | Description 描述 |
---|---|---|
|
|
matchExpressions 是标签选择器要求的列表。这些要求是 ANDed 的。 |
|
|
标签选择器要求是一个包含值、键和运算符的选择器,这些值、键和运算符将键和值关联起来。 |
|
|
matchLabels 是 {key,value} 对的映射。matchLabels 映射中的单个 {key,value} 等效于 matchExpressions 的一个元素,其 key 字段为“key”,运算符为“In”,而 values 数组仅包含“value”。这些要求是 ANDed 的。 |
matchExpressions 是标签选择器要求的列表。这些要求是 ANDed 的。
数组
标签选择器要求是一个包含值、键和运算符的选择器,这些值、键和运算符将键和值关联起来。
object
key
运算符
Property 属性 | Type 类型 | Description 描述 |
---|---|---|
|
|
key 是选择器应用到的标签键。 |
|
|
operator 表示键与一组值的关系。有效的运算符为 In、NotIn、Exists 和 DoesNotExist。 |
|
|
values 是字符串值的数组。如果运算符为 In 或 NotIn,则 values 数组必须是非空的。如果运算符为 Exists 或 DoesNotExist,则 values 数组必须为空。此数组在策略性合并补丁期间会被替换。 |
要匹配 Probe 发现的命名空间。空标签选择器匹配所有命名空间。空标签选择器仅匹配当前命名空间。
object
Property 属性 | Type 类型 | Description 描述 |
---|---|---|
|
|
matchExpressions 是标签选择器要求的列表。这些要求是 ANDed 的。 |
|
|
标签选择器要求是一个包含值、键和运算符的选择器,这些值、键和运算符将键和值关联起来。 |
|
|
matchLabels 是 {key,value} 对的映射。matchLabels 映射中的单个 {key,value} 等效于 matchExpressions 的一个元素,其 key 字段为“key”,运算符为“In”,而 values 数组仅包含“value”。这些要求是 ANDed 的。 |
matchExpressions 是标签选择器要求的列表。这些要求是 ANDed 的。
数组
标签选择器要求是一个包含值、键和运算符的选择器,这些值、键和运算符将键和值关联起来。
object
key
运算符
Property 属性 | Type 类型 | Description 描述 |
---|---|---|
|
|
key 是选择器应用到的标签键。 |
|
|
operator 表示键与一组值的关系。有效的运算符为 In、NotIn、Exists 和 DoesNotExist。 |
|
|
values 是字符串值的数组。如果运算符为 In 或 NotIn,则 values 数组必须是非空的。如果运算符为 Exists 或 DoesNotExist,则 values 数组必须为空。此数组在策略性合并补丁期间会被替换。 |
要选择用于目标发现的探针。空标签选择器匹配所有对象。空标签选择器不匹配任何对象。
如果spec.serviceMonitorSelector
、spec.podMonitorSelector
、spec.probeSelector
和spec.scrapeConfigSelector
为空,则 Prometheus 配置不受管理。Prometheus 运算符将确保 Prometheus 配置的 Secret 存在,但用户有责任在prometheus.yaml.gz
密钥下提供原始的 gzip 压缩的 Prometheus 配置。此行为已弃用,将在自定义资源定义的下一个主要版本中删除。建议改用spec.additionalScrapeConfigs
。
object
Property 属性 | Type 类型 | Description 描述 |
---|---|---|
|
|
matchExpressions 是标签选择器要求的列表。这些要求是 ANDed 的。 |
|
|
标签选择器要求是一个包含值、键和运算符的选择器,这些值、键和运算符将键和值关联起来。 |
|
|
matchLabels 是 {key,value} 对的映射。matchLabels 映射中的单个 {key,value} 等效于 matchExpressions 的一个元素,其 key 字段为“key”,运算符为“In”,而 values 数组仅包含“value”。这些要求是 ANDed 的。 |
matchExpressions 是标签选择器要求的列表。这些要求是 ANDed 的。
数组
标签选择器要求是一个包含值、键和运算符的选择器,这些值、键和运算符将键和值关联起来。
object
key
运算符
Property 属性 | Type 类型 | Description 描述 |
---|---|---|
|
|
key 是选择器应用到的标签键。 |
|
|
operator 表示键与一组值的关系。有效的运算符为 In、NotIn、Exists 和 DoesNotExist。 |
|
|
values 是字符串值的数组。如果运算符为 In 或 NotIn,则 values 数组必须是非空的。如果运算符为 Exists 或 DoesNotExist,则 values 数组必须为空。此数组在策略性合并补丁期间会被替换。 |
定义不应用命名空间标签强制执行的 PrometheusRule 对象列表。这仅在spec.enforcedNamespaceLabel
设置为 true 时才相关。已弃用:改用spec.excludedFromEnforcement
。
数组
PrometheusRuleExcludeConfig 使用户能够配置被排除的 PrometheusRule 名称及其命名空间,以便在对警报和指标强制执行命名空间标签时忽略它们。
object
ruleName
ruleNamespace
Property 属性 | Type 类型 | Description 描述 |
---|---|---|
|
|
被排除的 PrometheusRule 对象的名称。 |
|
|
被排除的 PrometheusRule 对象的命名空间。 |
QuerySpec 定义 Promethus 查询服务的配置。
object
Property 属性 | Type 类型 | Description 描述 |
---|---|---|
|
|
在表达式求值期间检索指标允许的增量差值。 |
|
|
一次可以运行的并发查询数。 |
|
|
单个查询可以加载到内存中的最大样本数。请注意,如果查询加载到内存中的样本数超过此数,则查询将失败,因此这也限制了查询可以返回的样本数。 |
|
|
查询在被中止之前可能花费的最长时间。 |
RemoteReadSpec 定义 Prometheus 从远程端点读取回样本的配置。
object
url
Property 属性 | Type 类型 | Description 描述 |
---|---|---|
|
|
URL 的授权部分。 它需要 Prometheus >= v2.26.0。 不能与 `basicAuth` 或 `oauth2` 同时设置。 |
|
|
URL 的 BasicAuth 配置。 不能与 `authorization` 或 `oauth2` 同时设置。 |
|
|
警告:不应使用此字段,因为令牌值以明文形式出现。建议使用 已弃用:这将在未来的版本中移除。 |
|
|
从中读取 URL 的 bearer token 的文件。 已弃用:这将在未来的版本中删除。建议使用 |
|
|
是否将外部标签用作远程读取端点的选择器。 它需要 Prometheus >= v2.34.0。 |
|
|
配置 HTTP 请求是否遵循 HTTP 3xx 重定向。 它需要 Prometheus >= v2.26.0。 |
|
|
要与每个远程读取请求一起发送的自定义 HTTP 标头。请注意,Prometheus 本身设置的标头无法被覆盖。仅在 Prometheus 2.26.0 及更高版本中有效。 |
|
|
远程读取队列的名称,如果指定,则必须唯一。该名称用于指标和日志记录,以便区分读取配置。 它需要 Prometheus >= v2.15.0。 |
|
|
`noProxy` 是一个逗号分隔的字符串,可以包含应从代理中排除的 IP、CIDR 表示法、域名。IP 和域名可以包含端口号。 它需要 Prometheus >= v2.43.0。 |
|
|
URL 的 OAuth2 配置。 需要 Prometheus >= v2.27.0。 不能与 `authorization` 或 `basicAuth` 同时设置。 |
|
|
ProxyConnectHeader 可选地指定在 CONNECT 请求期间发送到代理的标头。 它需要 Prometheus >= v2.43.0。 |
|
|
|
|
|
SecretKeySelector 选择 Secret 的一个密钥。 |
|
|
是否使用由环境变量 (HTTP_PROXY、HTTPS_PROXY 和 NO_PROXY) 定义的代理配置。如果未设置,Prometheus 将使用其默认值。 它需要 Prometheus >= v2.43.0。 |
|
|
`proxyURL` 定义要使用的 HTTP 代理服务器。 它需要 Prometheus >= v2.43.0。 |
|
|
是否应为本地存储应具有完整数据的时段范围的查询进行读取。 |
|
|
对远程读取端点的请求的超时。 |
|
|
可选的相等匹配器列表,这些匹配器必须存在于选择器中才能查询远程读取端点。 |
|
|
要用于 URL 的 TLS 配置。 |
|
|
要从中查询端点的 URL。 |
URL 的授权部分。
它需要 Prometheus >= v2.26.0。
不能与 `basicAuth` 或 `oauth2` 同时设置。
object
Property 属性 | Type 类型 | Description 描述 |
---|---|---|
|
|
选择命名空间中 Secret 的密钥,该密钥包含用于身份验证的凭据。 |
|
|
读取密钥的文件,与 |
|
|
定义身份验证类型。该值不区分大小写。 “Basic”不是受支持的值。 默认值:“Bearer” |
选择命名空间中 Secret 的密钥,该密钥包含用于身份验证的凭据。
object
key
Property 属性 | Type 类型 | Description 描述 |
---|---|---|
|
|
要从中选择的密钥的密钥。必须是有效的密钥。 |
|
|
引用的名称。此字段实际上是必需的,但由于向后兼容性,允许为空。此类型的实例在此处为空值几乎肯定是错误的。TODO:添加其他有用的字段。apiVersion、kind、uid?更多信息:https://kubernetes.ac.cn/docs/concepts/overview/working-with-objects/names/#names TODO:当 controller-gen 不需要时删除 |
|
|
指定是否必须定义 Secret 或其密钥。 |
URL 的 BasicAuth 配置。
不能与 `authorization` 或 `oauth2` 同时设置。
object
Property 属性 | Type 类型 | Description 描述 |
---|---|---|
|
|
|
|
|
|
password
指定包含用于身份验证的密码的 Secret 的密钥。
object
key
Property 属性 | Type 类型 | Description 描述 |
---|---|---|
|
|
要从中选择的密钥的密钥。必须是有效的密钥。 |
|
|
引用的名称。此字段实际上是必需的,但由于向后兼容性,允许为空。此类型的实例在此处为空值几乎肯定是错误的。TODO:添加其他有用的字段。apiVersion、kind、uid?更多信息:https://kubernetes.ac.cn/docs/concepts/overview/working-with-objects/names/#names TODO:当 controller-gen 不需要时删除 |
|
|
指定是否必须定义 Secret 或其密钥。 |
username
指定包含用于身份验证的用户名 Secret 的密钥。
object
key
Property 属性 | Type 类型 | Description 描述 |
---|---|---|
|
|
要从中选择的密钥的密钥。必须是有效的密钥。 |
|
|
引用的名称。此字段实际上是必需的,但由于向后兼容性,允许为空。此类型的实例在此处为空值几乎肯定是错误的。TODO:添加其他有用的字段。apiVersion、kind、uid?更多信息:https://kubernetes.ac.cn/docs/concepts/overview/working-with-objects/names/#names TODO:当 controller-gen 不需要时删除 |
|
|
指定是否必须定义 Secret 或其密钥。 |
URL 的 OAuth2 配置。
需要 Prometheus >= v2.27.0。
不能与 `authorization` 或 `basicAuth` 同时设置。
object
clientId
clientSecret
tokenUrl
Property 属性 | Type 类型 | Description 描述 |
---|---|---|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
clientId
指定一个 Secret 或 ConfigMap 的键,其中包含 OAuth2 客户端 ID。
object
Property 属性 | Type 类型 | Description 描述 |
---|---|---|
|
|
包含用于目标的数据的 ConfigMap。 |
|
|
包含用于目标的数据的 Secret。 |
包含用于目标的数据的 ConfigMap。
object
key
Property 属性 | Type 类型 | Description 描述 |
---|---|---|
|
|
要选择的键。 |
|
|
引用的名称。此字段实际上是必需的,但由于向后兼容性,允许为空。此类型的实例在此处为空值几乎肯定是错误的。TODO:添加其他有用的字段。apiVersion、kind、uid?更多信息:https://kubernetes.ac.cn/docs/concepts/overview/working-with-objects/names/#names TODO:当 controller-gen 不需要时删除 |
|
|
指定是否必须定义 ConfigMap 或其键 |
包含用于目标的数据的 Secret。
object
key
Property 属性 | Type 类型 | Description 描述 |
---|---|---|
|
|
要从中选择的密钥的密钥。必须是有效的密钥。 |
|
|
引用的名称。此字段实际上是必需的,但由于向后兼容性,允许为空。此类型的实例在此处为空值几乎肯定是错误的。TODO:添加其他有用的字段。apiVersion、kind、uid?更多信息:https://kubernetes.ac.cn/docs/concepts/overview/working-with-objects/names/#names TODO:当 controller-gen 不需要时删除 |
|
|
指定是否必须定义 Secret 或其密钥。 |
clientSecret
指定一个 Secret 的键,其中包含 OAuth2 客户端密钥。
object
key
Property 属性 | Type 类型 | Description 描述 |
---|---|---|
|
|
要从中选择的密钥的密钥。必须是有效的密钥。 |
|
|
引用的名称。此字段实际上是必需的,但由于向后兼容性,允许为空。此类型的实例在此处为空值几乎肯定是错误的。TODO:添加其他有用的字段。apiVersion、kind、uid?更多信息:https://kubernetes.ac.cn/docs/concepts/overview/working-with-objects/names/#names TODO:当 controller-gen 不需要时删除 |
|
|
指定是否必须定义 Secret 或其密钥。 |
ProxyConnectHeader 可选地指定在 CONNECT 请求期间发送到代理的标头。
它需要 Prometheus >= v2.43.0。
object
SecretKeySelector 选择 Secret 的一个密钥。
object
key
Property 属性 | Type 类型 | Description 描述 |
---|---|---|
|
|
要从中选择的密钥的密钥。必须是有效的密钥。 |
|
|
引用的名称。此字段实际上是必需的,但由于向后兼容性,允许为空。此类型的实例在此处为空值几乎肯定是错误的。TODO:添加其他有用的字段。apiVersion、kind、uid?更多信息:https://kubernetes.ac.cn/docs/concepts/overview/working-with-objects/names/#names TODO:当 controller-gen 不需要时删除 |
|
|
指定是否必须定义 Secret 或其密钥。 |
要用于 URL 的 TLS 配置。
object
Property 属性 | Type 类型 | Description 描述 |
---|---|---|
|
|
验证服务器证书时使用的证书颁发机构。 |
|
|
Prometheus 容器中用于目标的 CA 证书的路径。 |
|
|
进行客户端身份验证时要提供的客户端证书。 |
|
|
Prometheus 容器中用于目标的客户端证书文件的路径。 |
|
|
禁用目标证书验证。 |
|
|
Prometheus 容器中用于目标的客户端密钥文件的路径。 |
|
|
包含用于目标的客户端密钥文件的 Secret。 |
|
|
用于验证目标的主机名。 |
验证服务器证书时使用的证书颁发机构。
object
Property 属性 | Type 类型 | Description 描述 |
---|---|---|
|
|
包含用于目标的数据的 ConfigMap。 |
|
|
包含用于目标的数据的 Secret。 |
包含用于目标的数据的 ConfigMap。
object
key
Property 属性 | Type 类型 | Description 描述 |
---|---|---|
|
|
要选择的键。 |
|
|
引用的名称。此字段实际上是必需的,但由于向后兼容性,允许为空。此类型的实例在此处为空值几乎肯定是错误的。TODO:添加其他有用的字段。apiVersion、kind、uid?更多信息:https://kubernetes.ac.cn/docs/concepts/overview/working-with-objects/names/#names TODO:当 controller-gen 不需要时删除 |
|
|
指定是否必须定义 ConfigMap 或其键 |
包含用于目标的数据的 Secret。
object
key
Property 属性 | Type 类型 | Description 描述 |
---|---|---|
|
|
要从中选择的密钥的密钥。必须是有效的密钥。 |
|
|
引用的名称。此字段实际上是必需的,但由于向后兼容性,允许为空。此类型的实例在此处为空值几乎肯定是错误的。TODO:添加其他有用的字段。apiVersion、kind、uid?更多信息:https://kubernetes.ac.cn/docs/concepts/overview/working-with-objects/names/#names TODO:当 controller-gen 不需要时删除 |
|
|
指定是否必须定义 Secret 或其密钥。 |
进行客户端身份验证时要提供的客户端证书。
object
Property 属性 | Type 类型 | Description 描述 |
---|---|---|
|
|
包含用于目标的数据的 ConfigMap。 |
|
|
包含用于目标的数据的 Secret。 |
包含用于目标的数据的 ConfigMap。
object
key
Property 属性 | Type 类型 | Description 描述 |
---|---|---|
|
|
要选择的键。 |
|
|
引用的名称。此字段实际上是必需的,但由于向后兼容性,允许为空。此类型的实例在此处为空值几乎肯定是错误的。TODO:添加其他有用的字段。apiVersion、kind、uid?更多信息:https://kubernetes.ac.cn/docs/concepts/overview/working-with-objects/names/#names TODO:当 controller-gen 不需要时删除 |
|
|
指定是否必须定义 ConfigMap 或其键 |
包含用于目标的数据的 Secret。
object
key
Property 属性 | Type 类型 | Description 描述 |
---|---|---|
|
|
要从中选择的密钥的密钥。必须是有效的密钥。 |
|
|
引用的名称。此字段实际上是必需的,但由于向后兼容性,允许为空。此类型的实例在此处为空值几乎肯定是错误的。TODO:添加其他有用的字段。apiVersion、kind、uid?更多信息:https://kubernetes.ac.cn/docs/concepts/overview/working-with-objects/names/#names TODO:当 controller-gen 不需要时删除 |
|
|
指定是否必须定义 Secret 或其密钥。 |
包含用于目标的客户端密钥文件的 Secret。
object
key
Property 属性 | Type 类型 | Description 描述 |
---|---|---|
|
|
要从中选择的密钥的密钥。必须是有效的密钥。 |
|
|
引用的名称。此字段实际上是必需的,但由于向后兼容性,允许为空。此类型的实例在此处为空值几乎肯定是错误的。TODO:添加其他有用的字段。apiVersion、kind、uid?更多信息:https://kubernetes.ac.cn/docs/concepts/overview/working-with-objects/names/#names TODO:当 controller-gen 不需要时删除 |
|
|
指定是否必须定义 Secret 或其密钥。 |
RemoteWriteSpec 定义将样本从 Prometheus 写入远程端点的配置。
object
url
Property 属性 | Type 类型 | Description 描述 |
---|---|---|
|
|
URL 的授权部分。 它需要 Prometheus >= v2.26.0。 不能与 |
|
|
用于 URL 的 AzureAD。 需要 Prometheus >= v2.45.0。 不能与 |
|
|
URL 的 BasicAuth 配置。 不能与 |
|
|
警告:不应使用此字段,因为令牌值以明文形式出现。建议使用 已弃用:这将在未来的版本中移除。 |
|
|
用于读取 URL 的 bearer 令牌的文件。 已弃用:这将在未来的版本中删除。建议使用 |
|
|
是否启用 HTTP2。 |
|
|
配置 HTTP 请求是否遵循 HTTP 3xx 重定向。 它需要 Prometheus >= v2.26.0。 |
|
|
要与每个远程写入请求一起发送的自定义 HTTP 头。请注意,Prometheus 本身设置的 header 无法覆盖。 需要 Prometheus >= v2.25.0。 |
|
|
MetadataConfig 配置将序列元数据发送到远程存储。 |
|
|
远程写入队列的名称,如果指定,则必须唯一。该名称用于指标和日志记录,以便区分队列。 它需要 Prometheus >= v2.15.0。 |
|
|
`noProxy` 是一个逗号分隔的字符串,可以包含应从代理中排除的 IP、CIDR 表示法、域名。IP 和域名可以包含端口号。 它需要 Prometheus >= v2.43.0。 |
|
|
URL 的 OAuth2 配置。 需要 Prometheus >= v2.27.0。 不能与 |
|
|
ProxyConnectHeader 可选地指定在 CONNECT 请求期间发送到代理的标头。 它需要 Prometheus >= v2.43.0。 |
|
|
|
|
|
SecretKeySelector 选择 Secret 的一个密钥。 |
|
|
是否使用由环境变量 (HTTP_PROXY、HTTPS_PROXY 和 NO_PROXY) 定义的代理配置。如果未设置,Prometheus 将使用其默认值。 它需要 Prometheus >= v2.43.0。 |
|
|
`proxyURL` 定义要使用的 HTTP 代理服务器。 它需要 Prometheus >= v2.43.0。 |
|
|
QueueConfig 允许调整远程写入队列参数。 |
|
|
对远程写入端点的请求超时。 |
|
|
启用通过远程写入发送示例。请注意,必须首先使用 需要 Prometheus >= v2.27.0。 |
|
|
启用发送原生直方图,也称为通过远程写入的稀疏直方图。 需要 Prometheus >= v2.40.0。 |
|
|
Sigv4 允许为 URL 配置 AWS 的签名验证 4。 它需要 Prometheus >= v2.26.0。 不能与 |
|
|
要用于 URL 的 TLS 配置。 |
|
|
发送样本的端点 URL。 |
|
|
远程写入重命名配置列表。 |
|
|
RelabelConfig 允许对目标、警报、抓取样本和远程写入样本的标签集进行动态重写。 更多信息:https://prometheus.ac.cn/docs/prometheus/latest/configuration/configuration/#relabel_config |
URL 的授权部分。
它需要 Prometheus >= v2.26.0。
不能与sigv4
、basicAuth
、oauth2
或 azureAd
同时设置。
object
Property 属性 | Type 类型 | Description 描述 |
---|---|---|
|
|
选择命名空间中 Secret 的密钥,该密钥包含用于身份验证的凭据。 |
|
|
读取密钥的文件,与 |
|
|
定义身份验证类型。该值不区分大小写。 “Basic”不是受支持的值。 默认值:“Bearer” |
选择命名空间中 Secret 的密钥,该密钥包含用于身份验证的凭据。
object
key
Property 属性 | Type 类型 | Description 描述 |
---|---|---|
|
|
要从中选择的密钥的密钥。必须是有效的密钥。 |
|
|
引用的名称。此字段实际上是必需的,但由于向后兼容性,允许为空。此类型的实例在此处为空值几乎肯定是错误的。TODO:添加其他有用的字段。apiVersion、kind、uid?更多信息:https://kubernetes.ac.cn/docs/concepts/overview/working-with-objects/names/#names TODO:当 controller-gen 不需要时删除 |
|
|
指定是否必须定义 Secret 或其密钥。 |
用于 URL 的 AzureAD。
需要 Prometheus >= v2.45.0。
不能与authorization
、basicAuth
、oauth2
或 sigv4
同时设置。
object
Property 属性 | Type 类型 | Description 描述 |
---|---|---|
|
|
Azure 云。选项为“AzurePublic”、“AzureChina”或“AzureGovernment”。 |
|
|
ManagedIdentity 定义 Azure 用户分配的托管标识。不能与 |
|
|
OAuth 定义用于身份验证的 oauth 配置。不能与 这需要 Prometheus >= v2.48.0。 |
|
|
SDK 定义用于身份验证的 Azure SDK 配置。请参阅 https://learn.microsoft.com/en-us/azure/developer/go/azure-sdk-authentication 不能与 需要 Prometheus >= 2.52.0。 |
ManagedIdentity 定义 Azure 用户分配的托管标识。不能与oauth
或sdk
同时设置。
object
clientId
Property 属性 | Type 类型 | Description 描述 |
---|---|---|
|
|
客户端 ID |
OAuth 定义用于身份验证的 oauth 配置。不能与managedIdentity
或sdk
同时设置。
这需要 Prometheus >= v2.48.0。
object
clientId
clientSecret
tenantId
Property 属性 | Type 类型 | Description 描述 |
---|---|---|
|
|
|
|
|
|
|
|
|
clientSecret
指定一个 Secret 的键,其中包含用于身份验证的 Azure Active Directory 应用程序的客户端密钥。
object
key
Property 属性 | Type 类型 | Description 描述 |
---|---|---|
|
|
要从中选择的密钥的密钥。必须是有效的密钥。 |
|
|
引用的名称。此字段实际上是必需的,但由于向后兼容性,允许为空。此类型的实例在此处为空值几乎肯定是错误的。TODO:添加其他有用的字段。apiVersion、kind、uid?更多信息:https://kubernetes.ac.cn/docs/concepts/overview/working-with-objects/names/#names TODO:当 controller-gen 不需要时删除 |
|
|
指定是否必须定义 Secret 或其密钥。 |
SDK 定义用于身份验证的 Azure SDK 配置。请参阅 https://learn.microsoft.com/en-us/azure/developer/go/azure-sdk-authentication 不能与oauth
或managedIdentity
同时设置。
需要 Prometheus >= 2.52.0。
object
Property 属性 | Type 类型 | Description 描述 |
---|---|---|
|
|
|
URL 的 BasicAuth 配置。
不能与sigv4
、authorization
、oauth2
或 azureAd
同时设置。
object
Property 属性 | Type 类型 | Description 描述 |
---|---|---|
|
|
|
|
|
|
password
指定包含用于身份验证的密码的 Secret 的密钥。
object
key
Property 属性 | Type 类型 | Description 描述 |
---|---|---|
|
|
要从中选择的密钥的密钥。必须是有效的密钥。 |
|
|
引用的名称。此字段实际上是必需的,但由于向后兼容性,允许为空。此类型的实例在此处为空值几乎肯定是错误的。TODO:添加其他有用的字段。apiVersion、kind、uid?更多信息:https://kubernetes.ac.cn/docs/concepts/overview/working-with-objects/names/#names TODO:当 controller-gen 不需要时删除 |
|
|
指定是否必须定义 Secret 或其密钥。 |
username
指定包含用于身份验证的用户名 Secret 的密钥。
object
key
Property 属性 | Type 类型 | Description 描述 |
---|---|---|
|
|
要从中选择的密钥的密钥。必须是有效的密钥。 |
|
|
引用的名称。此字段实际上是必需的,但由于向后兼容性,允许为空。此类型的实例在此处为空值几乎肯定是错误的。TODO:添加其他有用的字段。apiVersion、kind、uid?更多信息:https://kubernetes.ac.cn/docs/concepts/overview/working-with-objects/names/#names TODO:当 controller-gen 不需要时删除 |
|
|
指定是否必须定义 Secret 或其密钥。 |
MetadataConfig 配置将序列元数据发送到远程存储。
object
Property 属性 | Type 类型 | Description 描述 |
---|---|---|
|
|
定义是否将指标元数据发送到远程存储。 |
|
|
定义多久将指标元数据发送到远程存储。 |
URL 的 OAuth2 配置。
需要 Prometheus >= v2.27.0。
不能与sigv4
、authorization
、basicAuth
或 azureAd
同时设置。
object
clientId
clientSecret
tokenUrl
Property 属性 | Type 类型 | Description 描述 |
---|---|---|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
clientId
指定一个 Secret 或 ConfigMap 的键,其中包含 OAuth2 客户端 ID。
object
Property 属性 | Type 类型 | Description 描述 |
---|---|---|
|
|
包含用于目标的数据的 ConfigMap。 |
|
|
包含用于目标的数据的 Secret。 |
包含用于目标的数据的 ConfigMap。
object
key
Property 属性 | Type 类型 | Description 描述 |
---|---|---|
|
|
要选择的键。 |
|
|
引用的名称。此字段实际上是必需的,但由于向后兼容性,允许为空。此类型的实例在此处为空值几乎肯定是错误的。TODO:添加其他有用的字段。apiVersion、kind、uid?更多信息:https://kubernetes.ac.cn/docs/concepts/overview/working-with-objects/names/#names TODO:当 controller-gen 不需要时删除 |
|
|
指定是否必须定义 ConfigMap 或其键 |
包含用于目标的数据的 Secret。
object
key
Property 属性 | Type 类型 | Description 描述 |
---|---|---|
|
|
要从中选择的密钥的密钥。必须是有效的密钥。 |
|
|
引用的名称。此字段实际上是必需的,但由于向后兼容性,允许为空。此类型的实例在此处为空值几乎肯定是错误的。TODO:添加其他有用的字段。apiVersion、kind、uid?更多信息:https://kubernetes.ac.cn/docs/concepts/overview/working-with-objects/names/#names TODO:当 controller-gen 不需要时删除 |
|
|
指定是否必须定义 Secret 或其密钥。 |
clientSecret
指定一个 Secret 的键,其中包含 OAuth2 客户端密钥。
object
key
Property 属性 | Type 类型 | Description 描述 |
---|---|---|
|
|
要从中选择的密钥的密钥。必须是有效的密钥。 |
|
|
引用的名称。此字段实际上是必需的,但由于向后兼容性,允许为空。此类型的实例在此处为空值几乎肯定是错误的。TODO:添加其他有用的字段。apiVersion、kind、uid?更多信息:https://kubernetes.ac.cn/docs/concepts/overview/working-with-objects/names/#names TODO:当 controller-gen 不需要时删除 |
|
|
指定是否必须定义 Secret 或其密钥。 |
ProxyConnectHeader 可选地指定在 CONNECT 请求期间发送到代理的标头。
它需要 Prometheus >= v2.43.0。
object
SecretKeySelector 选择 Secret 的一个密钥。
object
key
Property 属性 | Type 类型 | Description 描述 |
---|---|---|
|
|
要从中选择的密钥的密钥。必须是有效的密钥。 |
|
|
引用的名称。此字段实际上是必需的,但由于向后兼容性,允许为空。此类型的实例在此处为空值几乎肯定是错误的。TODO:添加其他有用的字段。apiVersion、kind、uid?更多信息:https://kubernetes.ac.cn/docs/concepts/overview/working-with-objects/names/#names TODO:当 controller-gen 不需要时删除 |
|
|
指定是否必须定义 Secret 或其密钥。 |
QueueConfig 允许调整远程写入队列参数。
object
Property 属性 | Type 类型 | Description 描述 |
---|---|---|
|
|
BatchSendDeadline 是样本在缓冲区中等待的最大时间。 |
|
|
Capacity 是在开始丢弃样本之前每个分片要缓冲的样本数量。 |
|
|
MaxBackoff 是最大重试延迟。 |
|
|
MaxRetries 是在可恢复错误上重试批次的最多次数。 |
|
|
MaxSamplesPerSend 是每次发送的最大样本数。 |
|
|
MaxShards 是最大分片数,即并发量。 |
|
|
MinBackoff 是初始重试延迟。每次重试都会加倍。 |
|
|
MinShards 是最小分片数,即并发量。 |
|
|
从远程写入存储收到 429 状态码后重试。 这是一个实验性功能,它可能会在任何即将发布的版本中以破坏性方式发生更改。 |
|
|
SampleAgeLimit 删除比限制旧的样本。需要 Prometheus >= v2.50.0。 |
Sigv4 允许为 URL 配置 AWS 的签名验证 4。
它需要 Prometheus >= v2.26.0。
不能与authorization
、basicAuth
、oauth2
或 azureAd
同时设置。
object
Property 属性 | Type 类型 | Description 描述 |
---|---|---|
|
|
AccessKey 是 AWS API 密钥。如果未指定,则使用环境变量 |
|
|
Profile 是用于身份验证的命名 AWS 配置文件。 |
|
|
Region 是 AWS 区域。如果为空,则使用默认凭据链中的区域。 |
|
|
RoleArn 是用于身份验证的命名 AWS 配置文件。 |
|
|
SecretKey 是 AWS API 密钥。如果未指定,则使用环境变量 |
AccessKey 是 AWS API 密钥。如果未指定,则使用环境变量AWS_ACCESS_KEY_ID
。
object
key
Property 属性 | Type 类型 | Description 描述 |
---|---|---|
|
|
要从中选择的密钥的密钥。必须是有效的密钥。 |
|
|
引用的名称。此字段实际上是必需的,但由于向后兼容性,允许为空。此类型的实例在此处为空值几乎肯定是错误的。TODO:添加其他有用的字段。apiVersion、kind、uid?更多信息:https://kubernetes.ac.cn/docs/concepts/overview/working-with-objects/names/#names TODO:当 controller-gen 不需要时删除 |
|
|
指定是否必须定义 Secret 或其密钥。 |
SecretKey 是 AWS API 密钥。如果未指定,则使用环境变量AWS_SECRET_ACCESS_KEY
。
object
key
Property 属性 | Type 类型 | Description 描述 |
---|---|---|
|
|
要从中选择的密钥的密钥。必须是有效的密钥。 |
|
|
引用的名称。此字段实际上是必需的,但由于向后兼容性,允许为空。此类型的实例在此处为空值几乎肯定是错误的。TODO:添加其他有用的字段。apiVersion、kind、uid?更多信息:https://kubernetes.ac.cn/docs/concepts/overview/working-with-objects/names/#names TODO:当 controller-gen 不需要时删除 |
|
|
指定是否必须定义 Secret 或其密钥。 |
要用于 URL 的 TLS 配置。
object
Property 属性 | Type 类型 | Description 描述 |
---|---|---|
|
|
验证服务器证书时使用的证书颁发机构。 |
|
|
Prometheus 容器中用于目标的 CA 证书的路径。 |
|
|
进行客户端身份验证时要提供的客户端证书。 |
|
|
Prometheus 容器中用于目标的客户端证书文件的路径。 |
|
|
禁用目标证书验证。 |
|
|
Prometheus 容器中用于目标的客户端密钥文件的路径。 |
|
|
包含用于目标的客户端密钥文件的 Secret。 |
|
|
用于验证目标的主机名。 |
验证服务器证书时使用的证书颁发机构。
object
Property 属性 | Type 类型 | Description 描述 |
---|---|---|
|
|
包含用于目标的数据的 ConfigMap。 |
|
|
包含用于目标的数据的 Secret。 |
包含用于目标的数据的 ConfigMap。
object
key
Property 属性 | Type 类型 | Description 描述 |
---|---|---|
|
|
要选择的键。 |
|
|
引用的名称。此字段实际上是必需的,但由于向后兼容性,允许为空。此类型的实例在此处为空值几乎肯定是错误的。TODO:添加其他有用的字段。apiVersion、kind、uid?更多信息:https://kubernetes.ac.cn/docs/concepts/overview/working-with-objects/names/#names TODO:当 controller-gen 不需要时删除 |
|
|
指定是否必须定义 ConfigMap 或其键 |
包含用于目标的数据的 Secret。
object
key
Property 属性 | Type 类型 | Description 描述 |
---|---|---|
|
|
要从中选择的密钥的密钥。必须是有效的密钥。 |
|
|
引用的名称。此字段实际上是必需的,但由于向后兼容性,允许为空。此类型的实例在此处为空值几乎肯定是错误的。TODO:添加其他有用的字段。apiVersion、kind、uid?更多信息:https://kubernetes.ac.cn/docs/concepts/overview/working-with-objects/names/#names TODO:当 controller-gen 不需要时删除 |
|
|
指定是否必须定义 Secret 或其密钥。 |
进行客户端身份验证时要提供的客户端证书。
object
Property 属性 | Type 类型 | Description 描述 |
---|---|---|
|
|
包含用于目标的数据的 ConfigMap。 |
|
|
包含用于目标的数据的 Secret。 |
包含用于目标的数据的 ConfigMap。
object
key
Property 属性 | Type 类型 | Description 描述 |
---|---|---|
|
|
要选择的键。 |
|
|
引用的名称。此字段实际上是必需的,但由于向后兼容性,允许为空。此类型的实例在此处为空值几乎肯定是错误的。TODO:添加其他有用的字段。apiVersion、kind、uid?更多信息:https://kubernetes.ac.cn/docs/concepts/overview/working-with-objects/names/#names TODO:当 controller-gen 不需要时删除 |
|
|
指定是否必须定义 ConfigMap 或其键 |
包含用于目标的数据的 Secret。
object
key
Property 属性 | Type 类型 | Description 描述 |
---|---|---|
|
|
要从中选择的密钥的密钥。必须是有效的密钥。 |
|
|
引用的名称。此字段实际上是必需的,但由于向后兼容性,允许为空。此类型的实例在此处为空值几乎肯定是错误的。TODO:添加其他有用的字段。apiVersion、kind、uid?更多信息:https://kubernetes.ac.cn/docs/concepts/overview/working-with-objects/names/#names TODO:当 controller-gen 不需要时删除 |
|
|
指定是否必须定义 Secret 或其密钥。 |
包含用于目标的客户端密钥文件的 Secret。
object
key
Property 属性 | Type 类型 | Description 描述 |
---|---|---|
|
|
要从中选择的密钥的密钥。必须是有效的密钥。 |
|
|
引用的名称。此字段实际上是必需的,但由于向后兼容性,允许为空。此类型的实例在此处为空值几乎肯定是错误的。TODO:添加其他有用的字段。apiVersion、kind、uid?更多信息:https://kubernetes.ac.cn/docs/concepts/overview/working-with-objects/names/#names TODO:当 controller-gen 不需要时删除 |
|
|
指定是否必须定义 Secret 或其密钥。 |
RelabelConfig 允许对目标、警报、抓取样本和远程写入样本的标签集进行动态重写。
object
Property 属性 | Type 类型 | Description 描述 |
---|---|---|
|
|
根据正则表达式匹配执行的操作。
默认值:“Replace” |
|
|
对源标签值的哈希进行取模。 仅当操作为 |
|
|
与提取的值匹配的正则表达式。 |
|
|
如果正则表达式匹配,则执行 Replace 操作的替换值。 正则表达式捕获组可用。 |
|
|
Separator 是连接的 SourceLabels 之间的字符串。 |
|
|
源标签从现有标签中选择值。它们的内容使用配置的 Separator 连接,并与配置的正则表达式匹配。 |
|
|
将结果字符串写入替换中的标签。 对于 正则表达式捕获组可用。 |
定义“prometheus”容器的资源请求和限制。
object
Property 属性 | Type 类型 | Description 描述 |
---|---|---|
|
|
Claims 列出了此容器使用的资源名称,这些资源在 spec.resourceClaims 中定义。 这是一个 alpha 字段,需要启用 DynamicResourceAllocation 功能网关。 此字段是不可变的。它只能为容器设置。 |
|
|
ResourceClaim 引用 PodSpec.ResourceClaims 中的一个条目。 |
|
|
Limits 描述了允许的最大计算资源量。更多信息:https://kubernetes.ac.cn/docs/concepts/configuration/manage-resources-containers/ |
|
|
Requests 描述了所需的最小计算资源量。如果容器省略了 Requests,则默认为 Limits(如果明确指定),否则默认为实现定义的值。Requests 不能超过 Limits。更多信息:https://kubernetes.ac.cn/docs/concepts/configuration/manage-resources-containers/ |
Claims 列出了此容器使用的资源名称,这些资源在 spec.resourceClaims 中定义。
这是一个 alpha 字段,需要启用 DynamicResourceAllocation 功能网关。
此字段是不可变的。它只能为容器设置。
数组
ResourceClaim 引用 PodSpec.ResourceClaims 中的一个条目。
object
name
Property 属性 | Type 类型 | Description 描述 |
---|---|---|
|
|
名称必须与使用此字段的 Pod 的 pod.spec.resourceClaims 中的一个条目的名称匹配。它使该资源在容器内可用。 |
匹配 PrometheusRule 发现的命名空间。空标签选择器匹配所有命名空间。空标签选择器仅匹配当前命名空间。
object
Property 属性 | Type 类型 | Description 描述 |
---|---|---|
|
|
matchExpressions 是标签选择器要求的列表。这些要求是 ANDed 的。 |
|
|
标签选择器要求是一个包含值、键和运算符的选择器,这些值、键和运算符将键和值关联起来。 |
|
|
matchLabels 是 {key,value} 对的映射。matchLabels 映射中的单个 {key,value} 等效于 matchExpressions 的一个元素,其 key 字段为“key”,运算符为“In”,而 values 数组仅包含“value”。这些要求是 ANDed 的。 |
matchExpressions 是标签选择器要求的列表。这些要求是 ANDed 的。
数组
标签选择器要求是一个包含值、键和运算符的选择器,这些值、键和运算符将键和值关联起来。
object
key
运算符
Property 属性 | Type 类型 | Description 描述 |
---|---|---|
|
|
key 是选择器应用到的标签键。 |
|
|
operator 表示键与一组值的关系。有效的运算符为 In、NotIn、Exists 和 DoesNotExist。 |
|
|
values 是字符串值的数组。如果运算符为 In 或 NotIn,则 values 数组必须是非空的。如果运算符为 Exists 或 DoesNotExist,则 values 数组必须为空。此数组在策略性合并补丁期间会被替换。 |
要选择用于规则评估的 PrometheusRule 对象。空标签选择器匹配所有对象。空标签选择器不匹配任何对象。
object
Property 属性 | Type 类型 | Description 描述 |
---|---|---|
|
|
matchExpressions 是标签选择器要求的列表。这些要求是 ANDed 的。 |
|
|
标签选择器要求是一个包含值、键和运算符的选择器,这些值、键和运算符将键和值关联起来。 |
|
|
matchLabels 是 {key,value} 对的映射。matchLabels 映射中的单个 {key,value} 等效于 matchExpressions 的一个元素,其 key 字段为“key”,运算符为“In”,而 values 数组仅包含“value”。这些要求是 ANDed 的。 |
matchExpressions 是标签选择器要求的列表。这些要求是 ANDed 的。
数组
标签选择器要求是一个包含值、键和运算符的选择器,这些值、键和运算符将键和值关联起来。
object
key
运算符
Property 属性 | Type 类型 | Description 描述 |
---|---|---|
|
|
key 是选择器应用到的标签键。 |
|
|
operator 表示键与一组值的关系。有效的运算符为 In、NotIn、Exists 和 DoesNotExist。 |
|
|
values 是字符串值的数组。如果运算符为 In 或 NotIn,则 values 数组必须是非空的。如果运算符为 Exists 或 DoesNotExist,则 values 数组必须为空。此数组在策略性合并补丁期间会被替换。 |
定义 Prometheus 规则引擎的配置。
object
Property 属性 | Type 类型 | Description 描述 |
---|---|---|
|
|
定义Prometheus规则引擎的参数。 对这些参数的任何更新都会触发 Pod 的重启。 |
定义Prometheus规则引擎的参数。
对这些参数的任何更新都会触发 Pod 的重启。
object
Property 属性 | Type 类型 | Description 描述 |
---|---|---|
|
|
告警和恢复为“for”状态之间的最短持续时间。 仅对配置的“for”时间大于宽限期的告警保持此状态。 |
|
|
容忍Prometheus中断以恢复告警“for”状态的最大时间。 |
|
|
向Alertmanager重新发送告警之前需要等待的最短时间。 |
要公开给抓取对象(例如 PodMonitors、ServiceMonitors、Probes 和 ScrapeConfigs)的抓取类列表。
这是一个实验性功能,它可能会在任何即将发布的版本中以破坏性方式发生更改。
数组
object
name
Property 属性 | Type 类型 | Description 描述 |
---|---|---|
|
|
Default表示抓取适用于所有未配置显式抓取类名称的抓取对象。 只能将一个抓取类设置为默认值。 |
|
|
MetricRelabelings配置应用于所有样本在摄取之前的重标记规则。 操作符添加此处定义的抓取类指标重标记。然后,操作符添加在ServiceMonitors、PodMonitors、Probes和ScrapeConfigs中定义的目标特定指标重标记。然后,操作符添加在“.spec.enforcedNamespaceLabel”中指定的命名空间强制重标记规则。 更多信息:https://prometheus.ac.cn/docs/prometheus/latest/configuration/configuration/#metric_relabel_configs |
|
|
RelabelConfig 允许对目标、警报、抓取样本和远程写入样本的标签集进行动态重写。 更多信息:https://prometheus.ac.cn/docs/prometheus/latest/configuration/configuration/#relabel_config |
|
|
抓取类的名称。 |
|
|
Relabelings配置应用于所有抓取目标的重标记规则。 操作符会自动添加一些标准Kubernetes字段(如`meta_kubernetes_namespace`和`meta_kubernetes_service_name`)的重标记。然后,操作符添加此处定义的抓取类重标记。然后,操作符添加在抓取对象中定义的目标特定重标记。 更多信息:https://prometheus.ac.cn/docs/prometheus/latest/configuration/configuration/#relabel_config |
|
|
RelabelConfig 允许对目标、警报、抓取样本和远程写入样本的标签集进行动态重写。 更多信息:https://prometheus.ac.cn/docs/prometheus/latest/configuration/configuration/#relabel_config |
|
|
TLSConfig定义用于抓取的TLS设置。当抓取对象定义自己的CA、证书和/或密钥时,它们优先于相应的抓取类字段。 目前仅支持`caFile`、`certFile`和`keyFile`字段。 |
MetricRelabelings配置应用于所有样本在摄取之前的重标记规则。
操作符添加此处定义的抓取类指标重标记。然后,操作符添加在ServiceMonitors、PodMonitors、Probes和ScrapeConfigs中定义的目标特定指标重标记。然后,操作符添加在“.spec.enforcedNamespaceLabel”中指定的命名空间强制重标记规则。
数组
RelabelConfig 允许对目标、警报、抓取样本和远程写入样本的标签集进行动态重写。
object
Property 属性 | Type 类型 | Description 描述 |
---|---|---|
|
|
根据正则表达式匹配执行的操作。
默认值:“Replace” |
|
|
对源标签值的哈希进行取模。 仅当操作为 |
|
|
与提取的值匹配的正则表达式。 |
|
|
如果正则表达式匹配,则执行 Replace 操作的替换值。 正则表达式捕获组可用。 |
|
|
Separator 是连接的 SourceLabels 之间的字符串。 |
|
|
源标签从现有标签中选择值。它们的内容使用配置的 Separator 连接,并与配置的正则表达式匹配。 |
|
|
将结果字符串写入替换中的标签。 对于 正则表达式捕获组可用。 |
Relabelings配置应用于所有抓取目标的重标记规则。
操作符会自动添加一些标准Kubernetes字段(如`meta_kubernetes_namespace`和`meta_kubernetes_service_name`)的重标记。然后,操作符添加此处定义的抓取类重标记。然后,操作符添加在抓取对象中定义的目标特定重标记。
数组
RelabelConfig 允许对目标、警报、抓取样本和远程写入样本的标签集进行动态重写。
object
Property 属性 | Type 类型 | Description 描述 |
---|---|---|
|
|
根据正则表达式匹配执行的操作。
默认值:“Replace” |
|
|
对源标签值的哈希进行取模。 仅当操作为 |
|
|
与提取的值匹配的正则表达式。 |
|
|
如果正则表达式匹配,则执行 Replace 操作的替换值。 正则表达式捕获组可用。 |
|
|
Separator 是连接的 SourceLabels 之间的字符串。 |
|
|
源标签从现有标签中选择值。它们的内容使用配置的 Separator 连接,并与配置的正则表达式匹配。 |
|
|
将结果字符串写入替换中的标签。 对于 正则表达式捕获组可用。 |
TLSConfig定义用于抓取的TLS设置。当抓取对象定义自己的CA、证书和/或密钥时,它们优先于相应的抓取类字段。
目前仅支持`caFile`、`certFile`和`keyFile`字段。
object
Property 属性 | Type 类型 | Description 描述 |
---|---|---|
|
|
验证服务器证书时使用的证书颁发机构。 |
|
|
Prometheus 容器中用于目标的 CA 证书的路径。 |
|
|
进行客户端身份验证时要提供的客户端证书。 |
|
|
Prometheus 容器中用于目标的客户端证书文件的路径。 |
|
|
禁用目标证书验证。 |
|
|
Prometheus 容器中用于目标的客户端密钥文件的路径。 |
|
|
包含用于目标的客户端密钥文件的 Secret。 |
|
|
用于验证目标的主机名。 |
验证服务器证书时使用的证书颁发机构。
object
Property 属性 | Type 类型 | Description 描述 |
---|---|---|
|
|
包含用于目标的数据的 ConfigMap。 |
|
|
包含用于目标的数据的 Secret。 |
包含用于目标的数据的 ConfigMap。
object
key
Property 属性 | Type 类型 | Description 描述 |
---|---|---|
|
|
要选择的键。 |
|
|
引用的名称。此字段实际上是必需的,但由于向后兼容性,允许为空。此类型的实例在此处为空值几乎肯定是错误的。TODO:添加其他有用的字段。apiVersion、kind、uid?更多信息:https://kubernetes.ac.cn/docs/concepts/overview/working-with-objects/names/#names TODO:当 controller-gen 不需要时删除 |
|
|
指定是否必须定义 ConfigMap 或其键 |
包含用于目标的数据的 Secret。
object
key
Property 属性 | Type 类型 | Description 描述 |
---|---|---|
|
|
要从中选择的密钥的密钥。必须是有效的密钥。 |
|
|
引用的名称。此字段实际上是必需的,但由于向后兼容性,允许为空。此类型的实例在此处为空值几乎肯定是错误的。TODO:添加其他有用的字段。apiVersion、kind、uid?更多信息:https://kubernetes.ac.cn/docs/concepts/overview/working-with-objects/names/#names TODO:当 controller-gen 不需要时删除 |
|
|
指定是否必须定义 Secret 或其密钥。 |
进行客户端身份验证时要提供的客户端证书。
object
Property 属性 | Type 类型 | Description 描述 |
---|---|---|
|
|
包含用于目标的数据的 ConfigMap。 |
|
|
包含用于目标的数据的 Secret。 |
包含用于目标的数据的 ConfigMap。
object
key
Property 属性 | Type 类型 | Description 描述 |
---|---|---|
|
|
要选择的键。 |
|
|
引用的名称。此字段实际上是必需的,但由于向后兼容性,允许为空。此类型的实例在此处为空值几乎肯定是错误的。TODO:添加其他有用的字段。apiVersion、kind、uid?更多信息:https://kubernetes.ac.cn/docs/concepts/overview/working-with-objects/names/#names TODO:当 controller-gen 不需要时删除 |
|
|
指定是否必须定义 ConfigMap 或其键 |
包含用于目标的数据的 Secret。
object
key
Property 属性 | Type 类型 | Description 描述 |
---|---|---|
|
|
要从中选择的密钥的密钥。必须是有效的密钥。 |
|
|
引用的名称。此字段实际上是必需的,但由于向后兼容性,允许为空。此类型的实例在此处为空值几乎肯定是错误的。TODO:添加其他有用的字段。apiVersion、kind、uid?更多信息:https://kubernetes.ac.cn/docs/concepts/overview/working-with-objects/names/#names TODO:当 controller-gen 不需要时删除 |
|
|
指定是否必须定义 Secret 或其密钥。 |
包含用于目标的客户端密钥文件的 Secret。
object
key
Property 属性 | Type 类型 | Description 描述 |
---|---|---|
|
|
要从中选择的密钥的密钥。必须是有效的密钥。 |
|
|
引用的名称。此字段实际上是必需的,但由于向后兼容性,允许为空。此类型的实例在此处为空值几乎肯定是错误的。TODO:添加其他有用的字段。apiVersion、kind、uid?更多信息:https://kubernetes.ac.cn/docs/concepts/overview/working-with-objects/names/#names TODO:当 controller-gen 不需要时删除 |
|
|
指定是否必须定义 Secret 或其密钥。 |
匹配 ScrapeConfig 发现的命名空间。空标签选择器匹配所有命名空间。空标签选择器仅匹配当前命名空间。
请注意,ScrapeConfig 自定义资源定义目前处于 Alpha 级别。
object
Property 属性 | Type 类型 | Description 描述 |
---|---|---|
|
|
matchExpressions 是标签选择器要求的列表。这些要求是 ANDed 的。 |
|
|
标签选择器要求是一个包含值、键和运算符的选择器,这些值、键和运算符将键和值关联起来。 |
|
|
matchLabels 是 {key,value} 对的映射。matchLabels 映射中的单个 {key,value} 等效于 matchExpressions 的一个元素,其 key 字段为“key”,运算符为“In”,而 values 数组仅包含“value”。这些要求是 ANDed 的。 |
matchExpressions 是标签选择器要求的列表。这些要求是 ANDed 的。
数组
标签选择器要求是一个包含值、键和运算符的选择器,这些值、键和运算符将键和值关联起来。
object
key
运算符
Property 属性 | Type 类型 | Description 描述 |
---|---|---|
|
|
key 是选择器应用到的标签键。 |
|
|
operator 表示键与一组值的关系。有效的运算符为 In、NotIn、Exists 和 DoesNotExist。 |
|
|
values 是字符串值的数组。如果运算符为 In 或 NotIn,则 values 数组必须是非空的。如果运算符为 Exists 或 DoesNotExist,则 values 数组必须为空。此数组在策略性合并补丁期间会被替换。 |
要选择用于目标发现的 ScrapeConfigs。空标签选择器匹配所有对象。空标签选择器不匹配任何对象。
如果spec.serviceMonitorSelector
、spec.podMonitorSelector
、spec.probeSelector
和spec.scrapeConfigSelector
为空,则 Prometheus 配置不受管理。Prometheus 运算符将确保 Prometheus 配置的 Secret 存在,但用户有责任在prometheus.yaml.gz
密钥下提供原始的 gzip 压缩的 Prometheus 配置。此行为已弃用,将在自定义资源定义的下一个主要版本中删除。建议改用spec.additionalScrapeConfigs
。
请注意,ScrapeConfig 自定义资源定义目前处于 Alpha 级别。
object
Property 属性 | Type 类型 | Description 描述 |
---|---|---|
|
|
matchExpressions 是标签选择器要求的列表。这些要求是 ANDed 的。 |
|
|
标签选择器要求是一个包含值、键和运算符的选择器,这些值、键和运算符将键和值关联起来。 |
|
|
matchLabels 是 {key,value} 对的映射。matchLabels 映射中的单个 {key,value} 等效于 matchExpressions 的一个元素,其 key 字段为“key”,运算符为“In”,而 values 数组仅包含“value”。这些要求是 ANDed 的。 |
matchExpressions 是标签选择器要求的列表。这些要求是 ANDed 的。
数组
标签选择器要求是一个包含值、键和运算符的选择器,这些值、键和运算符将键和值关联起来。
object
key
运算符
Property 属性 | Type 类型 | Description 描述 |
---|---|---|
|
|
key 是选择器应用到的标签键。 |
|
|
operator 表示键与一组值的关系。有效的运算符为 In、NotIn、Exists 和 DoesNotExist。 |
|
|
values 是字符串值的数组。如果运算符为 In 或 NotIn,则 values 数组必须是非空的。如果运算符为 Exists 或 DoesNotExist,则 values 数组必须为空。此数组在策略性合并补丁期间会被替换。 |
SecurityContext 包含 Pod 级别的安全属性和常见的容器设置。这默认为默认 PodSecurityContext。
object
Property 属性 | Type 类型 | Description 描述 |
---|---|---|
|
|
appArmorProfile是此Pod中容器使用的AppArmor选项。请注意,当spec.os.name为windows时,无法设置此字段。 |
|
|
应用于Pod中所有容器的特殊补充组。某些卷类型允许Kubelet更改该卷的所有权,使其归Pod所有。 1.拥有GID将是FSGroup 2.设置setgid位(在卷中创建的新文件将由FSGroup拥有)3.权限位将与rw-rw----进行OR运算。 如果未设置,Kubelet将不会修改任何卷的所有权和权限。请注意,当spec.os.name为windows时,无法设置此字段。 |
|
|
fsGroupChangePolicy定义在卷暴露在Pod内部之前更改其所有权和权限的行为。此字段仅适用于支持基于fsGroup的所有权(和权限)的卷类型。它对短暂卷类型(如:secret、configmaps和emptydir)无效。有效值为“OnRootMismatch”和“Always”。如果未指定,则使用“Always”。请注意,当spec.os.name为windows时,无法设置此字段。 |
|
|
运行容器进程入口点的GID。如果未设置,则使用运行时默认值。也可以在SecurityContext中设置。如果在SecurityContext和PodSecurityContext中都设置了,则SecurityContext中指定的值对该容器优先。请注意,当spec.os.name为windows时,无法设置此字段。 |
|
|
指示容器必须作为非root用户运行。如果为true,Kubelet将在运行时验证映像,以确保它不以UID 0(root)运行,如果确实如此,则启动容器失败。如果未设置或为false,则不执行此类验证。也可以在SecurityContext中设置。如果在SecurityContext和PodSecurityContext中都设置了,则SecurityContext中指定的值优先。 |
|
|
运行容器进程入口点的UID。如果未指定,则默认为映像元数据中指定的用户。也可以在SecurityContext中设置。如果在SecurityContext和PodSecurityContext中都设置了,则SecurityContext中指定的值对该容器优先。请注意,当spec.os.name为windows时,无法设置此字段。 |
|
|
要应用于所有容器的SELinux上下文。如果未指定,容器运行时将为每个容器分配一个随机SELinux上下文。也可以在SecurityContext中设置。如果在SecurityContext和PodSecurityContext中都设置了,则SecurityContext中指定的值对该容器优先。请注意,当spec.os.name为windows时,无法设置此字段。 |
|
|
此Pod中容器使用的seccomp选项。请注意,当spec.os.name为windows时,无法设置此字段。 |
|
|
除了容器的主GID、fsGroup(如果指定)和容器映像中为容器进程uid定义的组成员资格之外,还应用于每个容器中运行的第一个进程的一组组。如果未指定,则不会向任何容器添加其他组。请注意,即使未包含在此列表中,容器映像中为容器进程uid定义的组成员资格仍然有效。请注意,当spec.os.name为windows时,无法设置此字段。 |
|
|
sysctls 包含 Pod 使用的命名空间 sysctls 列表。如果 Pod 使用容器运行时不支持的 sysctls,则 Pod 可能无法启动。请注意,当 spec.os.name 为 windows 时,无法设置此字段。 |
|
|
sysctl 定义要设置的内核参数。 |
|
|
应用于所有容器的 Windows 特定设置。如果未指定,则将使用容器 SecurityContext 中的选项。如果在 SecurityContext 和 PodSecurityContext 中都设置了此字段,则 SecurityContext 中指定的值优先。请注意,当 spec.os.name 为 linux 时,无法设置此字段。 |
appArmorProfile是此Pod中容器使用的AppArmor选项。请注意,当spec.os.name为windows时,无法设置此字段。
object
type
Property 属性 | Type 类型 | Description 描述 |
---|---|---|
|
|
localhostProfile 指示应使用在节点上加载的配置文件。配置文件必须预先配置在节点上才能工作。必须与配置文件的加载名称匹配。当且仅当类型为“Localhost”时才必须设置。 |
|
|
type 指示将应用哪种 AppArmor 配置文件。有效选项为:Localhost - 节点上预加载的配置文件。RuntimeDefault - 容器运行时的默认配置文件。Unconfined - 没有 AppArmor 强制执行。 |
要应用于所有容器的SELinux上下文。如果未指定,容器运行时将为每个容器分配一个随机SELinux上下文。也可以在SecurityContext中设置。如果在SecurityContext和PodSecurityContext中都设置了,则SecurityContext中指定的值对该容器优先。请注意,当spec.os.name为windows时,无法设置此字段。
object
Property 属性 | Type 类型 | Description 描述 |
---|---|---|
|
|
Level 是应用于容器的 SELinux 等级标签。 |
|
|
Role 是应用于容器的 SELinux 角色标签。 |
|
|
Type 是应用于容器的 SELinux 类型标签。 |
|
|
User 是应用于容器的 SELinux 用户标签。 |
此Pod中容器使用的seccomp选项。请注意,当spec.os.name为windows时,无法设置此字段。
object
type
Property 属性 | Type 类型 | Description 描述 |
---|---|---|
|
|
localhostProfile 指示应使用节点上文件定义的配置文件。配置文件必须预先配置在节点上才能工作。必须是相对于 kubelet 配置的 seccomp 配置文件位置的递减路径。如果类型为“Localhost”,则必须设置。对于任何其他类型,则不能设置。 |
|
|
type 指示将应用哪种 seccomp 配置文件。有效选项为 Localhost - 应使用节点上文件中定义的配置文件。RuntimeDefault - 应使用容器运行时的默认配置文件。Unconfined - 不应应用任何配置文件。 |
sysctls 包含 Pod 使用的命名空间 sysctls 列表。如果 Pod 使用容器运行时不支持的 sysctls,则 Pod 可能无法启动。请注意,当 spec.os.name 为 windows 时,无法设置此字段。
数组
sysctl 定义要设置的内核参数。
object
name
值
Property 属性 | Type 类型 | Description 描述 |
---|---|---|
|
|
要设置的属性名称。 |
|
|
要设置的属性值。 |
应用于所有容器的 Windows 特定设置。如果未指定,则将使用容器 SecurityContext 中的选项。如果在 SecurityContext 和 PodSecurityContext 中都设置了此字段,则 SecurityContext 中指定的值优先。请注意,当 spec.os.name 为 linux 时,无法设置此字段。
object
Property 属性 | Type 类型 | Description 描述 |
---|---|---|
|
|
GMSACredentialSpec 定义了 GMSA 准入 Webhook (https://github.com/kubernetes-sigs/windows-gmsa) 内联 GMSACredentialSpecName 字段指定的 GMSA 凭据规范的内容。 |
|
|
GMSACredentialSpecName 是要使用的 GMSA 凭据规范的名称。 |
|
|
HostProcess 决定容器是否应作为“主机进程”容器运行。Pod 的所有容器必须具有相同的有效 HostProcess 值(不允许混合使用 HostProcess 容器和非 HostProcess 容器)。此外,如果 HostProcess 为 true,则 HostNetwork 也必须设置为 true。 |
|
|
在 Windows 中运行容器进程入口点的用户名。如果未指定,则默认为映像元数据中指定的用户名。也可以在 PodSecurityContext 中设置。如果在 SecurityContext 和 PodSecurityContext 中都设置了此值,则 SecurityContext 中指定的值优先。 |
匹配 ServicedMonitors 发现的命名空间。空标签选择器匹配所有命名空间。空标签选择器(默认值)仅匹配当前命名空间。
object
Property 属性 | Type 类型 | Description 描述 |
---|---|---|
|
|
matchExpressions 是标签选择器要求的列表。这些要求是 ANDed 的。 |
|
|
标签选择器要求是一个包含值、键和运算符的选择器,这些值、键和运算符将键和值关联起来。 |
|
|
matchLabels 是 {key,value} 对的映射。matchLabels 映射中的单个 {key,value} 等效于 matchExpressions 的一个元素,其 key 字段为“key”,运算符为“In”,而 values 数组仅包含“value”。这些要求是 ANDed 的。 |
matchExpressions 是标签选择器要求的列表。这些要求是 ANDed 的。
数组
标签选择器要求是一个包含值、键和运算符的选择器,这些值、键和运算符将键和值关联起来。
object
key
运算符
Property 属性 | Type 类型 | Description 描述 |
---|---|---|
|
|
key 是选择器应用到的标签键。 |
|
|
operator 表示键与一组值的关系。有效的运算符为 In、NotIn、Exists 和 DoesNotExist。 |
|
|
values 是字符串值的数组。如果运算符为 In 或 NotIn,则 values 数组必须是非空的。如果运算符为 Exists 或 DoesNotExist,则 values 数组必须为空。此数组在策略性合并补丁期间会被替换。 |
要选择用于目标发现的 ServiceMonitors。空标签选择器匹配所有对象。空标签选择器不匹配任何对象。
如果spec.serviceMonitorSelector
、spec.podMonitorSelector
、spec.probeSelector
和spec.scrapeConfigSelector
为空,则 Prometheus 配置不受管理。Prometheus 运算符将确保 Prometheus 配置的 Secret 存在,但用户有责任在prometheus.yaml.gz
密钥下提供原始的 gzip 压缩的 Prometheus 配置。此行为已弃用,将在自定义资源定义的下一个主要版本中删除。建议改用spec.additionalScrapeConfigs
。
object
Property 属性 | Type 类型 | Description 描述 |
---|---|---|
|
|
matchExpressions 是标签选择器要求的列表。这些要求是 ANDed 的。 |
|
|
标签选择器要求是一个包含值、键和运算符的选择器,这些值、键和运算符将键和值关联起来。 |
|
|
matchLabels 是 {key,value} 对的映射。matchLabels 映射中的单个 {key,value} 等效于 matchExpressions 的一个元素,其 key 字段为“key”,运算符为“In”,而 values 数组仅包含“value”。这些要求是 ANDed 的。 |
matchExpressions 是标签选择器要求的列表。这些要求是 ANDed 的。
数组
标签选择器要求是一个包含值、键和运算符的选择器,这些值、键和运算符将键和值关联起来。
object
key
运算符
Property 属性 | Type 类型 | Description 描述 |
---|---|---|
|
|
key 是选择器应用到的标签键。 |
|
|
operator 表示键与一组值的关系。有效的运算符为 In、NotIn、Exists 和 DoesNotExist。 |
|
|
values 是字符串值的数组。如果运算符为 In 或 NotIn,则 values 数组必须是非空的。如果运算符为 Exists 或 DoesNotExist,则 values 数组必须为空。此数组在策略性合并补丁期间会被替换。 |
Storage 定义 Prometheus 使用的存储。
object
Property 属性 | Type 类型 | Description 描述 |
---|---|---|
|
|
已弃用:subPath 使用将在未来版本中移除。 |
|
|
StatefulSet 要使用的 EmptyDirVolumeSource。如果指定此字段,则它优先于 |
|
|
StatefulSet 要使用的 EphemeralVolumeSource。这是 k8s 1.21 中的 Beta 字段,在 1.15 中为 GA。对于较低版本,从 k8s 1.19 开始,需要启用 GenericEphemeralVolume 功能网关。更多信息:https://kubernetes.ac.cn/docs/concepts/storage/ephemeral-volumes/#generic-ephemeral-volumes |
|
|
定义 Prometheus StatefulSets 要使用的 PVC 规范。使用无法自动供应的卷的最简单方法是结合手动创建的 PersistentVolumes 使用标签选择器。 |
StatefulSet 要使用的 EmptyDirVolumeSource。如果指定此字段,则它优先于ephemeral
和 volumeClaimTemplate
。更多信息:https://kubernetes.ac.cn/docs/concepts/storage/volumes/#emptydir
object
Property 属性 | Type 类型 | Description 描述 |
---|---|---|
|
|
medium 表示什么类型的存储介质应该支持此目录。默认为 "",这意味着使用节点的默认介质。必须是空字符串(默认)或 Memory。更多信息:https://kubernetes.ac.cn/docs/concepts/storage/volumes#emptydir |
|
|
sizeLimit 是此 EmptyDir 卷所需的本地存储总量。大小限制也适用于内存介质。内存介质 EmptyDir 的最大使用量将是此处指定的 SizeLimit 与 Pod 中所有容器的内存限制总和之间的最小值。默认为 nil,这意味着限制未定义。更多信息:https://kubernetes.ac.cn/docs/concepts/storage/volumes#emptydir |
StatefulSet 要使用的 EphemeralVolumeSource。这是 k8s 1.21 中的 Beta 字段,在 1.15 中为 GA。对于较低版本,从 k8s 1.19 开始,需要启用 GenericEphemeralVolume 功能网关。更多信息:https://kubernetes.ac.cn/docs/concepts/storage/ephemeral-volumes/#generic-ephemeral-volumes
object
Property 属性 | Type 类型 | Description 描述 |
---|---|---|
|
|
将用于创建独立的 PVC 来供应卷。嵌入此 EphemeralVolumeSource 的 Pod 将是 PVC 的所有者,即 PVC 将与 Pod 一起删除。PVC 的名称将为 为了避免错误地使用不相关的卷,Pod 将不会使用名称相同但不是 Pod 拥有的现有 PVC。然后,Pod 的启动将被阻塞,直到不相关的 PVC 被移除。如果此类预先创建的 PVC 旨在被 Pod 使用,则在 Pod 存在后,必须使用对 Pod 的所有者引用更新 PVC。通常情况下,这应该是不必要的,但在手动重建损坏的集群时可能很有用。 此字段是只读的,创建 PVC 后,Kubernetes 不会对其进行任何更改。 必需,不能为 nil。 |
将用于创建独立的 PVC 来供应卷。嵌入此 EphemeralVolumeSource 的 Pod 将是 PVC 的所有者,即 PVC 将与 Pod 一起删除。PVC 的名称将为 <pod name>-<volume name>
,其中 <volume name>
来自 PodSpec.Volumes
数组条目中的名称。如果连接后的名称对于 PVC 无效(例如,太长),则 Pod 验证将拒绝该 Pod。
为了避免错误地使用不相关的卷,Pod 将不会使用名称相同但不是 Pod 拥有的现有 PVC。然后,Pod 的启动将被阻塞,直到不相关的 PVC 被移除。如果此类预先创建的 PVC 旨在被 Pod 使用,则在 Pod 存在后,必须使用对 Pod 的所有者引用更新 PVC。通常情况下,这应该是不必要的,但在手动重建损坏的集群时可能很有用。
此字段是只读的,创建 PVC 后,Kubernetes 不会对其进行任何更改。
必需,不能为 nil。
object
spec
Property 属性 | Type 类型 | Description 描述 |
---|---|---|
|
|
可能包含在创建 PVC 时将复制到其中的标签和注释。不允许使用其他字段,并且在验证期间将被拒绝。 |
|
|
PersistentVolumeClaim 的规范。整个内容将原样复制到从此模板创建的 PVC 中。PersistentVolumeClaim 中的相同字段在此处也有效。 |
可能包含在创建 PVC 时将复制到其中的标签和注释。不允许使用其他字段,并且在验证期间将被拒绝。
object
PersistentVolumeClaim 的规范。整个内容将原样复制到从此模板创建的 PVC 中。PersistentVolumeClaim 中的相同字段在此处也有效。
object
Property 属性 | Type 类型 | Description 描述 |
---|---|---|
|
|
accessModes 包含卷应具有的所需访问模式。更多信息:https://kubernetes.ac.cn/docs/concepts/storage/persistent-volumes#access-modes-1 |
|
|
dataSource 字段可用于指定:* 现有的 VolumeSnapshot 对象 (snapshot.storage.k8s.io/VolumeSnapshot) * 现有的 PVC (PersistentVolumeClaim) 如果供应程序或外部控制器可以支持指定的 Data Source,它将基于指定 Data Source 的内容创建一个新卷。启用 AnyVolumeDataSource 功能网关后,dataSource 内容将复制到 dataSourceRef,而 dataSourceRef 内容将复制到 dataSource(如果未指定 dataSourceRef.namespace)。如果指定了命名空间,则 dataSourceRef 将不会复制到 dataSource。 |
|
|
dataSourceRef 指定要从中使用数据填充卷的对象(如果需要非空卷)。这可能是来自非空 API 组(非核心对象)的任何对象或 PersistentVolumeClaim 对象。指定此字段时,只有当指定对象的类型与某些已安装的卷填充程序或动态供应程序匹配时,卷绑定才会成功。此字段将替换 dataSource 字段的功能,因此,如果两个字段都非空,则它们必须具有相同的值。为了向后兼容,当 dataSourceRef 中未指定命名空间时,如果其中一个字段为空而另一个字段非空,则这两个字段 (dataSource 和 dataSourceRef) 将自动设置为相同的值。当在 dataSourceRef 中指定命名空间时,dataSource 未设置为相同的值,并且必须为空。dataSource 和 dataSourceRef 之间存在三个重要区别:* dataSource 只允许两种特定类型的对象,而 dataSourceRef 允许任何非核心对象以及 PersistentVolumeClaim 对象。* dataSource 会忽略不允许的值(删除它们),而 dataSourceRef 会保留所有值,并在指定不允许的值时生成错误。* dataSource 只允许本地对象,而 dataSourceRef 允许任何命名空间中的对象。(Beta)使用此字段需要启用 AnyVolumeDataSource 功能网关。(Alpha)使用 dataSourceRef 的 namespace 字段需要启用 CrossNamespaceVolumeDataSource 功能网关。 |
|
|
resources 表示卷应具有的最小资源。如果启用了 RecoverVolumeExpansionFailure 功能,则允许用户指定低于先前值的资源需求,但仍必须高于 claim 状态字段中记录的容量。更多信息:https://kubernetes.ac.cn/docs/concepts/storage/persistent-volumes#resources |
|
|
selector 是一个用于选择要绑定卷的标签查询。 |
|
|
storageClassName 是 claim 所需的 StorageClass 的名称。更多信息:https://kubernetes.ac.cn/docs/concepts/storage/persistent-volumes#class-1 |
|
|
volumeAttributesClassName 可用于设置此 claim 使用的 VolumeAttributesClass。如果指定,CSI 驱动程序将使用相应 VolumeAttributesClass 中定义的属性创建或更新卷。这与 storageClassName 的用途不同,它可以在创建 claim 后更改。空字符串值表示不会将任何 VolumeAttributesClass 应用于 claim,但一旦设置,则不允许将此字段重置为空字符串。如果未指定且 PersistentVolumeClaim 未绑定,则如果存在,持久卷控制器将设置默认的 VolumeAttributesClass。如果 volumeAttributesClass 所引用的资源不存在,则此 PersistentVolumeClaim 将设置为 Pending 状态(如 modifyVolumeStatus 字段所示),直到此类资源存在为止。更多信息:https://kubernetes.ac.cn/docs/concepts/storage/volume-attributes-classes/ (Alpha) 使用此字段需要启用 VolumeAttributesClass 功能网关。 |
|
|
volumeMode 定义 claim 所需的卷类型。如果 claim spec 中未包含,则隐含 Filesystem 值。 |
|
|
volumeName 是对支持此 claim 的 PersistentVolume 的绑定引用。 |
dataSource 字段可用于指定:* 现有的 VolumeSnapshot 对象 (snapshot.storage.k8s.io/VolumeSnapshot) * 现有的 PVC (PersistentVolumeClaim) 如果供应程序或外部控制器可以支持指定的 Data Source,它将基于指定 Data Source 的内容创建一个新卷。启用 AnyVolumeDataSource 功能网关后,dataSource 内容将复制到 dataSourceRef,而 dataSourceRef 内容将复制到 dataSource(如果未指定 dataSourceRef.namespace)。如果指定了命名空间,则 dataSourceRef 将不会复制到 dataSource。
object
kind
name
Property 属性 | Type 类型 | Description 描述 |
---|---|---|
|
|
APIGroup 是被引用资源的组。如果未指定 APIGroup,则指定的 Kind 必须位于核心 API 组中。对于任何其他第三方类型,都需要 APIGroup。 |
|
|
Kind 是被引用资源的类型。 |
|
|
Name 是被引用资源的名称。 |
dataSourceRef 指定要从中使用数据填充卷的对象(如果需要非空卷)。这可能是来自非空 API 组(非核心对象)的任何对象或 PersistentVolumeClaim 对象。指定此字段时,只有当指定对象的类型与某些已安装的卷填充程序或动态供应程序匹配时,卷绑定才会成功。此字段将替换 dataSource 字段的功能,因此,如果两个字段都非空,则它们必须具有相同的值。为了向后兼容,当 dataSourceRef 中未指定命名空间时,如果其中一个字段为空而另一个字段非空,则这两个字段 (dataSource 和 dataSourceRef) 将自动设置为相同的值。当在 dataSourceRef 中指定命名空间时,dataSource 未设置为相同的值,并且必须为空。dataSource 和 dataSourceRef 之间存在三个重要区别:* dataSource 只允许两种特定类型的对象,而 dataSourceRef 允许任何非核心对象以及 PersistentVolumeClaim 对象。* dataSource 会忽略不允许的值(删除它们),而 dataSourceRef 会保留所有值,并在指定不允许的值时生成错误。* dataSource 只允许本地对象,而 dataSourceRef 允许任何命名空间中的对象。(Beta)使用此字段需要启用 AnyVolumeDataSource 功能网关。(Alpha)使用 dataSourceRef 的 namespace 字段需要启用 CrossNamespaceVolumeDataSource 功能网关。
object
kind
name
Property 属性 | Type 类型 | Description 描述 |
---|---|---|
|
|
APIGroup 是被引用资源的组。如果未指定 APIGroup,则指定的 Kind 必须位于核心 API 组中。对于任何其他第三方类型,都需要 APIGroup。 |
|
|
Kind 是被引用资源的类型。 |
|
|
Name 是被引用资源的名称。 |
|
|
Namespace 是被引用资源的命名空间。请注意,当指定命名空间时,需要在引用命名空间中使用 gateway.networking.k8s.io/ReferenceGrant 对象,以允许该命名空间的所有者接受该引用。有关详细信息,请参阅 ReferenceGrant 文档。(Alpha) 此字段需要启用 CrossNamespaceVolumeDataSource 功能网关。 |
resources 表示卷应具有的最小资源。如果启用了 RecoverVolumeExpansionFailure 功能,则允许用户指定低于先前值的资源需求,但仍必须高于 claim 状态字段中记录的容量。更多信息:https://kubernetes.ac.cn/docs/concepts/storage/persistent-volumes#resources
object
Property 属性 | Type 类型 | Description 描述 |
---|---|---|
|
|
Limits 描述了允许的最大计算资源量。更多信息:https://kubernetes.ac.cn/docs/concepts/configuration/manage-resources-containers/ |
|
|
Requests 描述了所需的最小计算资源量。如果容器省略了 Requests,则默认为 Limits(如果明确指定),否则默认为实现定义的值。Requests 不能超过 Limits。更多信息:https://kubernetes.ac.cn/docs/concepts/configuration/manage-resources-containers/ |
selector 是一个用于选择要绑定卷的标签查询。
object
Property 属性 | Type 类型 | Description 描述 |
---|---|---|
|
|
matchExpressions 是标签选择器要求的列表。这些要求是 ANDed 的。 |
|
|
标签选择器要求是一个包含值、键和运算符的选择器,这些值、键和运算符将键和值关联起来。 |
|
|
matchLabels 是 {key,value} 对的映射。matchLabels 映射中的单个 {key,value} 等效于 matchExpressions 的一个元素,其 key 字段为“key”,运算符为“In”,而 values 数组仅包含“value”。这些要求是 ANDed 的。 |
matchExpressions 是标签选择器要求的列表。这些要求是 ANDed 的。
数组
标签选择器要求是一个包含值、键和运算符的选择器,这些值、键和运算符将键和值关联起来。
object
key
运算符
Property 属性 | Type 类型 | Description 描述 |
---|---|---|
|
|
key 是选择器应用到的标签键。 |
|
|
operator 表示键与一组值的关系。有效的运算符为 In、NotIn、Exists 和 DoesNotExist。 |
|
|
values 是字符串值的数组。如果运算符为 In 或 NotIn,则 values 数组必须是非空的。如果运算符为 Exists 或 DoesNotExist,则 values 数组必须为空。此数组在策略性合并补丁期间会被替换。 |
定义 Prometheus StatefulSets 要使用的 PVC 规范。使用无法自动供应的卷的最简单方法是结合手动创建的 PersistentVolumes 使用标签选择器。
object
Property 属性 | Type 类型 | Description 描述 |
---|---|---|
|
|
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 |
|
|
EmbeddedMetadata 包含与嵌入式资源相关的元数据。 |
|
|
定义 pod 作者请求的卷的所需特性。更多信息:https://kubernetes.ac.cn/docs/concepts/storage/persistent-volumes#persistentvolumeclaims |
|
|
已弃用:此字段从未设置。 |
EmbeddedMetadata 包含与嵌入式资源相关的元数据。
object
Property 属性 | Type 类型 | Description 描述 |
---|---|---|
|
|
Annotations 是存储在资源中的非结构化键值映射,外部工具可以使用它来存储和检索任意元数据。它们不可查询,在修改对象时应予以保留。更多信息:https://kubernetes.ac.cn/docs/user-guide/annotations |
|
|
字符串键值对的映射,可用于组织和分类(范围和选择)对象。可能与复制控制器和服务的选取器匹配。更多信息:https://kubernetes.ac.cn/docs/user-guide/labels |
|
|
名称在命名空间内必须唯一。创建资源时是必需的,尽管某些资源可能允许客户端自动请求生成合适的名称。名称主要用于创建幂等性和配置定义。无法更新。更多信息:https://kubernetes.ac.cn/docs/user-guide/identifiers#names |
定义 pod 作者请求的卷的所需特性。更多信息:https://kubernetes.ac.cn/docs/concepts/storage/persistent-volumes#persistentvolumeclaims
object
Property 属性 | Type 类型 | Description 描述 |
---|---|---|
|
|
accessModes 包含卷应具有的所需访问模式。更多信息:https://kubernetes.ac.cn/docs/concepts/storage/persistent-volumes#access-modes-1 |
|
|
dataSource 字段可用于指定:* 现有的 VolumeSnapshot 对象 (snapshot.storage.k8s.io/VolumeSnapshot) * 现有的 PVC (PersistentVolumeClaim) 如果供应程序或外部控制器可以支持指定的 Data Source,它将基于指定 Data Source 的内容创建一个新卷。启用 AnyVolumeDataSource 功能网关后,dataSource 内容将复制到 dataSourceRef,而 dataSourceRef 内容将复制到 dataSource(如果未指定 dataSourceRef.namespace)。如果指定了命名空间,则 dataSourceRef 将不会复制到 dataSource。 |
|
|
dataSourceRef 指定要从中使用数据填充卷的对象(如果需要非空卷)。这可能是来自非空 API 组(非核心对象)的任何对象或 PersistentVolumeClaim 对象。指定此字段时,只有当指定对象的类型与某些已安装的卷填充程序或动态供应程序匹配时,卷绑定才会成功。此字段将替换 dataSource 字段的功能,因此,如果两个字段都非空,则它们必须具有相同的值。为了向后兼容,当 dataSourceRef 中未指定命名空间时,如果其中一个字段为空而另一个字段非空,则这两个字段 (dataSource 和 dataSourceRef) 将自动设置为相同的值。当在 dataSourceRef 中指定命名空间时,dataSource 未设置为相同的值,并且必须为空。dataSource 和 dataSourceRef 之间存在三个重要区别:* dataSource 只允许两种特定类型的对象,而 dataSourceRef 允许任何非核心对象以及 PersistentVolumeClaim 对象。* dataSource 会忽略不允许的值(删除它们),而 dataSourceRef 会保留所有值,并在指定不允许的值时生成错误。* dataSource 只允许本地对象,而 dataSourceRef 允许任何命名空间中的对象。(Beta)使用此字段需要启用 AnyVolumeDataSource 功能网关。(Alpha)使用 dataSourceRef 的 namespace 字段需要启用 CrossNamespaceVolumeDataSource 功能网关。 |
|
|
resources 表示卷应具有的最小资源。如果启用了 RecoverVolumeExpansionFailure 功能,则允许用户指定低于先前值的资源需求,但仍必须高于 claim 状态字段中记录的容量。更多信息:https://kubernetes.ac.cn/docs/concepts/storage/persistent-volumes#resources |
|
|
selector 是一个用于选择要绑定卷的标签查询。 |
|
|
storageClassName 是 claim 所需的 StorageClass 的名称。更多信息:https://kubernetes.ac.cn/docs/concepts/storage/persistent-volumes#class-1 |
|
|
volumeAttributesClassName 可用于设置此 claim 使用的 VolumeAttributesClass。如果指定,CSI 驱动程序将使用相应 VolumeAttributesClass 中定义的属性创建或更新卷。这与 storageClassName 的用途不同,它可以在创建 claim 后更改。空字符串值表示不会将任何 VolumeAttributesClass 应用于 claim,但一旦设置,则不允许将此字段重置为空字符串。如果未指定且 PersistentVolumeClaim 未绑定,则如果存在,持久卷控制器将设置默认的 VolumeAttributesClass。如果 volumeAttributesClass 所引用的资源不存在,则此 PersistentVolumeClaim 将设置为 Pending 状态(如 modifyVolumeStatus 字段所示),直到此类资源存在为止。更多信息:https://kubernetes.ac.cn/docs/concepts/storage/volume-attributes-classes/ (Alpha) 使用此字段需要启用 VolumeAttributesClass 功能网关。 |
|
|
volumeMode 定义 claim 所需的卷类型。如果 claim spec 中未包含,则隐含 Filesystem 值。 |
|
|
volumeName 是对支持此 claim 的 PersistentVolume 的绑定引用。 |
dataSource 字段可用于指定:* 现有的 VolumeSnapshot 对象 (snapshot.storage.k8s.io/VolumeSnapshot) * 现有的 PVC (PersistentVolumeClaim) 如果供应程序或外部控制器可以支持指定的 Data Source,它将基于指定 Data Source 的内容创建一个新卷。启用 AnyVolumeDataSource 功能网关后,dataSource 内容将复制到 dataSourceRef,而 dataSourceRef 内容将复制到 dataSource(如果未指定 dataSourceRef.namespace)。如果指定了命名空间,则 dataSourceRef 将不会复制到 dataSource。
object
kind
name
Property 属性 | Type 类型 | Description 描述 |
---|---|---|
|
|
APIGroup 是被引用资源的组。如果未指定 APIGroup,则指定的 Kind 必须位于核心 API 组中。对于任何其他第三方类型,都需要 APIGroup。 |
|
|
Kind 是被引用资源的类型。 |
|
|
Name 是被引用资源的名称。 |
dataSourceRef 指定要从中使用数据填充卷的对象(如果需要非空卷)。这可能是来自非空 API 组(非核心对象)的任何对象或 PersistentVolumeClaim 对象。指定此字段时,只有当指定对象的类型与某些已安装的卷填充程序或动态供应程序匹配时,卷绑定才会成功。此字段将替换 dataSource 字段的功能,因此,如果两个字段都非空,则它们必须具有相同的值。为了向后兼容,当 dataSourceRef 中未指定命名空间时,如果其中一个字段为空而另一个字段非空,则这两个字段 (dataSource 和 dataSourceRef) 将自动设置为相同的值。当在 dataSourceRef 中指定命名空间时,dataSource 未设置为相同的值,并且必须为空。dataSource 和 dataSourceRef 之间存在三个重要区别:* dataSource 只允许两种特定类型的对象,而 dataSourceRef 允许任何非核心对象以及 PersistentVolumeClaim 对象。* dataSource 会忽略不允许的值(删除它们),而 dataSourceRef 会保留所有值,并在指定不允许的值时生成错误。* dataSource 只允许本地对象,而 dataSourceRef 允许任何命名空间中的对象。(Beta)使用此字段需要启用 AnyVolumeDataSource 功能网关。(Alpha)使用 dataSourceRef 的 namespace 字段需要启用 CrossNamespaceVolumeDataSource 功能网关。
object
kind
name
Property 属性 | Type 类型 | Description 描述 |
---|---|---|
|
|
APIGroup 是被引用资源的组。如果未指定 APIGroup,则指定的 Kind 必须位于核心 API 组中。对于任何其他第三方类型,都需要 APIGroup。 |
|
|
Kind 是被引用资源的类型。 |
|
|
Name 是被引用资源的名称。 |
|
|
Namespace 是被引用资源的命名空间。请注意,当指定命名空间时,需要在引用命名空间中使用 gateway.networking.k8s.io/ReferenceGrant 对象,以允许该命名空间的所有者接受该引用。有关详细信息,请参阅 ReferenceGrant 文档。(Alpha) 此字段需要启用 CrossNamespaceVolumeDataSource 功能网关。 |
resources 表示卷应具有的最小资源。如果启用了 RecoverVolumeExpansionFailure 功能,则允许用户指定低于先前值的资源需求,但仍必须高于 claim 状态字段中记录的容量。更多信息:https://kubernetes.ac.cn/docs/concepts/storage/persistent-volumes#resources
object
Property 属性 | Type 类型 | Description 描述 |
---|---|---|
|
|
Limits 描述了允许的最大计算资源量。更多信息:https://kubernetes.ac.cn/docs/concepts/configuration/manage-resources-containers/ |
|
|
Requests 描述了所需的最小计算资源量。如果容器省略了 Requests,则默认为 Limits(如果明确指定),否则默认为实现定义的值。Requests 不能超过 Limits。更多信息:https://kubernetes.ac.cn/docs/concepts/configuration/manage-resources-containers/ |
selector 是一个用于选择要绑定卷的标签查询。
object
Property 属性 | Type 类型 | Description 描述 |
---|---|---|
|
|
matchExpressions 是标签选择器要求的列表。这些要求是 ANDed 的。 |
|
|
标签选择器要求是一个包含值、键和运算符的选择器,这些值、键和运算符将键和值关联起来。 |
|
|
matchLabels 是 {key,value} 对的映射。matchLabels 映射中的单个 {key,value} 等效于 matchExpressions 的一个元素,其 key 字段为“key”,运算符为“In”,而 values 数组仅包含“value”。这些要求是 ANDed 的。 |
matchExpressions 是标签选择器要求的列表。这些要求是 ANDed 的。
数组
标签选择器要求是一个包含值、键和运算符的选择器,这些值、键和运算符将键和值关联起来。
object
key
运算符
Property 属性 | Type 类型 | Description 描述 |
---|---|---|
|
|
key 是选择器应用到的标签键。 |
|
|
operator 表示键与一组值的关系。有效的运算符为 In、NotIn、Exists 和 DoesNotExist。 |
|
|
values 是字符串值的数组。如果运算符为 In 或 NotIn,则 values 数组必须是非空的。如果运算符为 Exists 或 DoesNotExist,则 values 数组必须为空。此数组在策略性合并补丁期间会被替换。 |
已弃用:此字段从未设置。
object
Property 属性 | Type 类型 | Description 描述 |
---|---|---|
|
|
accessModes 包含支持 PVC 的卷的实际访问模式。更多信息:https://kubernetes.ac.cn/docs/concepts/storage/persistent-volumes#access-modes-1 |
|
|
allocatedResourceStatuses 存储为给定 PVC 调整大小的资源的状态。键名遵循标准 Kubernetes 标签语法。有效值为:* 无前缀的键:- storage - 卷的容量。* 自定义资源必须使用实现定义的前缀名称,例如“example.com/my-custom-resource”。除上述值外,无前缀或具有 kubernetes.io 前缀的键被认为是保留的,因此不能使用。 ClaimResourceStatus 可以处于以下任何状态:- ControllerResizeInProgress:当调整大小控制器开始在控制平面调整卷大小时设置的状态。- ControllerResizeFailed:当调整大小在调整大小控制器中因最终错误而失败时设置的状态。- NodeResizePending:当调整大小控制器已完成卷大小调整但节点上仍需要进一步调整卷大小时设置的状态。- NodeResizeInProgress:当 kubelet 开始调整卷大小时设置的状态。- NodeResizeFailed:当调整大小在 kubelet 中因最终错误而失败时设置的状态。瞬态错误不会设置 NodeResizeFailed。例如:如果扩展 PVC 以获得更多容量,此字段可以是以下状态之一:- pvc.status.allocatedResourceStatus['storage'] = "ControllerResizeInProgress" - pvc.status.allocatedResourceStatus['storage'] = "ControllerResizeFailed" - pvc.status.allocatedResourceStatus['storage'] = "NodeResizePending" - pvc.status.allocatedResourceStatus['storage'] = "NodeResizeInProgress" - pvc.status.allocatedResourceStatus['storage'] = "NodeResizeFailed" 当此字段未设置时,表示对于给定的 PVC,没有调整大小操作正在进行。 接收具有先前未知 resourceName 或 ClaimResourceStatus 的 PVC 更新的控制器应忽略其设计的更新目的。例如,仅负责调整卷容量的控制器应忽略更改与 PVC 关联的其他有效资源的 PVC 更新。 这是一个 alpha 字段,需要启用 RecoverVolumeExpansionFailure 功能。 |
|
|
allocatedResources 跟踪分配给 PVC 的资源,包括其容量。键名遵循标准 Kubernetes 标签语法。有效值为:* 无前缀的键:- storage - 卷的容量。* 自定义资源必须使用实现定义的前缀名称,例如“example.com/my-custom-resource”。除上述值外,无前缀或具有 kubernetes.io 前缀的键被认为是保留的,因此不能使用。 当请求卷扩展操作时,此处报告的容量可能大于实际容量。对于存储配额,使用 allocatedResources 和 PVC.spec.resources 中较大的值。如果未设置 allocatedResources,则仅使用 PVC.spec.resources 进行配额计算。如果降低了卷扩展容量请求,则只有在没有扩展操作正在进行并且实际卷容量等于或小于请求容量的情况下,才会降低 allocatedResources。 接收具有先前未知 resourceName 的 PVC 更新的控制器应忽略其设计的更新目的。例如,仅负责调整卷容量的控制器应忽略更改与 PVC 关联的其他有效资源的 PVC 更新。 这是一个 alpha 字段,需要启用 RecoverVolumeExpansionFailure 功能。 |
|
|
capacity 表示底层卷的实际资源。 |
|
|
conditions 是持久卷声明的当前状态。如果底层持久卷正在调整大小,则状态将设置为“Resizing”。 |
|
|
PersistentVolumeClaimCondition 包含有关 pvc 状态的详细信息。 |
|
|
currentVolumeAttributesClassName 是 PVC 当前使用的 VolumeAttributesClass 的名称。未设置时,不会将任何 VolumeAttributeClass 应用于此 PersistentVolumeClaim。这是一个 alpha 字段,需要启用 VolumeAttributesClass 功能。 |
|
|
ModifyVolumeStatus 代表 ControllerModifyVolume 操作的状态对象。如果未设置此值,则表示没有尝试进行 ModifyVolume 操作。这是一个 alpha 字段,需要启用 VolumeAttributesClass 功能。 |
|
|
phase 表示 PersistentVolumeClaim 的当前阶段。 |
conditions 是持久卷声明的当前状态。如果底层持久卷正在调整大小,则状态将设置为“Resizing”。
数组
PersistentVolumeClaimCondition 包含有关 pvc 状态的详细信息。
object
status
type
Property 属性 | Type 类型 | Description 描述 |
---|---|---|
|
|
lastProbeTime 是探测条件的时间。 |
|
|
lastTransitionTime 是条件从一种状态转换到另一种状态的时间。 |
|
|
message 是一个易于理解的消息,指示有关上次转换的详细信息。 |
|
|
reason 是一个唯一的、简短的、机器可理解的字符串,它给出条件上次转换的原因。如果它报告“Resizing”,则表示底层持久卷正在调整大小。 |
|
|
|
|
|
PersistentVolumeClaimConditionType 是 PersistentVolumeClaimCondition.Type 的有效值。 |
ModifyVolumeStatus 代表 ControllerModifyVolume 操作的状态对象。如果未设置此值,则表示没有尝试进行 ModifyVolume 操作。这是一个 alpha 字段,需要启用 VolumeAttributesClass 功能。
object
status
Property 属性 | Type 类型 | Description 描述 |
---|---|---|
|
|
status 是 ControllerModifyVolume 操作的状态。它可以处于以下任何状态:- Pending Pending 指示由于未满足的要求(例如,指定的 VolumeAttributesClass 不存在)而无法修改 PersistentVolumeClaim。- InProgress InProgress 指示卷正在修改中。- Infeasible Infeasible 指示 CSI 驱动程序已拒绝该请求,因为它无效。要解决此错误,需要指定有效的 VolumeAttributesClass。注意:将来可以添加新的状态。使用者应检查未知状态并进行相应的失败处理。 |
|
|
targetVolumeAttributesClassName 是当前正在协调的 PVC 的 VolumeAttributesClass 的名称。 |
定义可选 Thanos sidecar 的配置。
object
Property 属性 | Type 类型 | Description 描述 |
---|---|---|
|
|
AdditionalArgs 允许为 Thanos 容器设置附加参数。这些参数将原样传递给 Thanos 容器,如果参数无效或不受给定 Thanos 版本支持,可能会导致问题。如果出现参数冲突(例如,操作员本身已设置的参数)或提供无效参数,则协调将失败并记录错误。 |
|
|
作为 AdditionalArgs 列表一部分的参数。 |
|
|
已弃用:请改用“image”。 |
|
|
BlockDuration 控制 Prometheus 生成的 TSDB 块的大小。默认值为 2h,以匹配上游 Prometheus 的默认值。 警告:更改块持续时间可能会影响整个 Prometheus/Thanos 堆栈的性能和效率,因为它与内存和 Thanos 压缩器的交互方式。建议将此值设置为最长抓取或规则间隔的 120 倍的倍数。例如,30s * 120 = 1h。 |
|
|
检索 Prometheus 配置的频率。 |
|
|
检索 Prometheus 配置时的最大等待时间。 |
|
|
如果为 true,则 Thanos sidecar 将监听环回接口而不是 Pod IP 地址的 gRPC 端点。 如果 |
|
|
配置提供 StoreAPI 的 gRPC 服务器的 TLS 参数。 注意:目前仅支持 |
|
|
如果为 true,则 Thanos sidecar 将监听环回接口而不是 Pod IP 地址的 HTTP 端点。 如果 |
|
|
Thanos 的容器镜像名称。如果指定,则优先于 仍然需要指定 如果既未定义 |
|
|
已弃用:请改用 |
|
|
Thanos sidecar 的日志格式。 |
|
|
Thanos sidecar 的日志级别。 |
|
|
定义 Thanos sidecar 的 StoreAPI 提供的服务时间范围限制的开始时间。该字段的值应为 RFC3339 格式的常量时间或相对于当前时间的持续时间,例如 -1d 或 2h45m。有效的持续时间单位为 ms、s、m、h、d、w、y。 |
|
|
定义 Thanos sidecar 将 TSDB 块上传到对象存储的配置。 更多信息:https://thanos.io/tip/thanos/storage.md/ objectStorageConfigFile 优先于此字段。 |
|
|
定义 Thanos sidecar 将 TSDB 块上传到对象存储的配置文件。 更多信息:https://thanos.io/tip/thanos/storage.md/ 此字段优先于 objectStorageConfig。 |
|
|
ReadyTimeout 是 Thanos sidecar 等待 Prometheus 启动的最大时间。 |
|
|
定义 Thanos sidecar 的资源请求和限制。 |
|
|
已弃用:请改用“image”。镜像摘要可以作为镜像名称的一部分指定。 |
|
|
已弃用:请改用“image”。镜像的标签可以作为镜像名称的一部分指定。 |
|
|
定义 Thanos sidecar 的追踪配置。
更多信息:https://thanos.io/tip/thanos/tracing.md/ 这是一个实验性功能,它可能会在任何即将发布的版本中以破坏性方式发生更改。 |
|
|
定义 Thanos sidecar 的追踪配置文件。 此字段优先于 更多信息:https://thanos.io/tip/thanos/tracing.md/ 这是一个实验性功能,它可能会在任何即将发布的版本中以破坏性方式发生更改。 |
|
|
正在部署的 Thanos 版本。操作员使用此信息生成 Prometheus StatefulSet + 配置文件。 如果未指定,操作员将假定在发布操作员版本时可用的最新上游版本的 Thanos。 |
|
|
VolumeMounts 允许配置 Thanos 的附加 VolumeMounts。指定的 VolumeMounts 将附加到“thanos-sidecar”容器中的其他 VolumeMounts。 |
|
|
VolumeMount 描述在容器内挂载卷。 |
AdditionalArgs 允许为 Thanos 容器设置附加参数。这些参数将原样传递给 Thanos 容器,如果参数无效或不受给定 Thanos 版本支持,可能会导致问题。如果出现参数冲突(例如,操作员本身已设置的参数)或提供无效参数,则协调将失败并记录错误。
数组
作为 AdditionalArgs 列表一部分的参数。
object
name
Property 属性 | Type 类型 | Description 描述 |
---|---|---|
|
|
参数名称,例如“scrape.discovery-reload-interval”。 |
|
|
参数值,例如 30s。对于仅名称的参数可以为空(例如 --storage.tsdb.no-lockfile) |
配置提供 StoreAPI 的 gRPC 服务器的 TLS 参数。
注意:目前仅支持caFile
、certFile
和keyFile
字段。
object
Property 属性 | Type 类型 | Description 描述 |
---|---|---|
|
|
验证服务器证书时使用的证书颁发机构。 |
|
|
Prometheus 容器中用于目标的 CA 证书的路径。 |
|
|
进行客户端身份验证时要提供的客户端证书。 |
|
|
Prometheus 容器中用于目标的客户端证书文件的路径。 |
|
|
禁用目标证书验证。 |
|
|
Prometheus 容器中用于目标的客户端密钥文件的路径。 |
|
|
包含用于目标的客户端密钥文件的 Secret。 |
|
|
用于验证目标的主机名。 |
验证服务器证书时使用的证书颁发机构。
object
Property 属性 | Type 类型 | Description 描述 |
---|---|---|
|
|
包含用于目标的数据的 ConfigMap。 |
|
|
包含用于目标的数据的 Secret。 |
包含用于目标的数据的 ConfigMap。
object
key
Property 属性 | Type 类型 | Description 描述 |
---|---|---|
|
|
要选择的键。 |
|
|
引用的名称。此字段实际上是必需的,但由于向后兼容性,允许为空。此类型的实例在此处为空值几乎肯定是错误的。TODO:添加其他有用的字段。apiVersion、kind、uid?更多信息:https://kubernetes.ac.cn/docs/concepts/overview/working-with-objects/names/#names TODO:当 controller-gen 不需要时删除 |
|
|
指定是否必须定义 ConfigMap 或其键 |
包含用于目标的数据的 Secret。
object
key
Property 属性 | Type 类型 | Description 描述 |
---|---|---|
|
|
要从中选择的密钥的密钥。必须是有效的密钥。 |
|
|
引用的名称。此字段实际上是必需的,但由于向后兼容性,允许为空。此类型的实例在此处为空值几乎肯定是错误的。TODO:添加其他有用的字段。apiVersion、kind、uid?更多信息:https://kubernetes.ac.cn/docs/concepts/overview/working-with-objects/names/#names TODO:当 controller-gen 不需要时删除 |
|
|
指定是否必须定义 Secret 或其密钥。 |
进行客户端身份验证时要提供的客户端证书。
object
Property 属性 | Type 类型 | Description 描述 |
---|---|---|
|
|
包含用于目标的数据的 ConfigMap。 |
|
|
包含用于目标的数据的 Secret。 |
包含用于目标的数据的 ConfigMap。
object
key
Property 属性 | Type 类型 | Description 描述 |
---|---|---|
|
|
要选择的键。 |
|
|
引用的名称。此字段实际上是必需的,但由于向后兼容性,允许为空。此类型的实例在此处为空值几乎肯定是错误的。TODO:添加其他有用的字段。apiVersion、kind、uid?更多信息:https://kubernetes.ac.cn/docs/concepts/overview/working-with-objects/names/#names TODO:当 controller-gen 不需要时删除 |
|
|
指定是否必须定义 ConfigMap 或其键 |
包含用于目标的数据的 Secret。
object
key
Property 属性 | Type 类型 | Description 描述 |
---|---|---|
|
|
要从中选择的密钥的密钥。必须是有效的密钥。 |
|
|
引用的名称。此字段实际上是必需的,但由于向后兼容性,允许为空。此类型的实例在此处为空值几乎肯定是错误的。TODO:添加其他有用的字段。apiVersion、kind、uid?更多信息:https://kubernetes.ac.cn/docs/concepts/overview/working-with-objects/names/#names TODO:当 controller-gen 不需要时删除 |
|
|
指定是否必须定义 Secret 或其密钥。 |
包含用于目标的客户端密钥文件的 Secret。
object
key
Property 属性 | Type 类型 | Description 描述 |
---|---|---|
|
|
要从中选择的密钥的密钥。必须是有效的密钥。 |
|
|
引用的名称。此字段实际上是必需的,但由于向后兼容性,允许为空。此类型的实例在此处为空值几乎肯定是错误的。TODO:添加其他有用的字段。apiVersion、kind、uid?更多信息:https://kubernetes.ac.cn/docs/concepts/overview/working-with-objects/names/#names TODO:当 controller-gen 不需要时删除 |
|
|
指定是否必须定义 Secret 或其密钥。 |
定义 Thanos sidecar 将 TSDB 块上传到对象存储的配置。
objectStorageConfigFile 优先于此字段。
object
key
Property 属性 | Type 类型 | Description 描述 |
---|---|---|
|
|
要从中选择的密钥的密钥。必须是有效的密钥。 |
|
|
引用的名称。此字段实际上是必需的,但由于向后兼容性,允许为空。此类型的实例在此处为空值几乎肯定是错误的。TODO:添加其他有用的字段。apiVersion、kind、uid?更多信息:https://kubernetes.ac.cn/docs/concepts/overview/working-with-objects/names/#names TODO:当 controller-gen 不需要时删除 |
|
|
指定是否必须定义 Secret 或其密钥。 |
定义 Thanos sidecar 的资源请求和限制。
object
Property 属性 | Type 类型 | Description 描述 |
---|---|---|
|
|
Claims 列出了此容器使用的资源名称,这些资源在 spec.resourceClaims 中定义。 这是一个 alpha 字段,需要启用 DynamicResourceAllocation 功能网关。 此字段是不可变的。它只能为容器设置。 |
|
|
ResourceClaim 引用 PodSpec.ResourceClaims 中的一个条目。 |
|
|
Limits 描述了允许的最大计算资源量。更多信息:https://kubernetes.ac.cn/docs/concepts/configuration/manage-resources-containers/ |
|
|
Requests 描述了所需的最小计算资源量。如果容器省略了 Requests,则默认为 Limits(如果明确指定),否则默认为实现定义的值。Requests 不能超过 Limits。更多信息:https://kubernetes.ac.cn/docs/concepts/configuration/manage-resources-containers/ |
Claims 列出了此容器使用的资源名称,这些资源在 spec.resourceClaims 中定义。
这是一个 alpha 字段,需要启用 DynamicResourceAllocation 功能网关。
此字段是不可变的。它只能为容器设置。
数组
ResourceClaim 引用 PodSpec.ResourceClaims 中的一个条目。
object
name
Property 属性 | Type 类型 | Description 描述 |
---|---|---|
|
|
名称必须与使用此字段的 Pod 的 pod.spec.resourceClaims 中的一个条目的名称匹配。它使该资源在容器内可用。 |
定义 Thanos sidecar 的追踪配置。
tracingConfigFile
优先于此字段。
这是一个实验性功能,它可能会在任何即将发布的版本中以破坏性方式发生更改。
object
key
Property 属性 | Type 类型 | Description 描述 |
---|---|---|
|
|
要从中选择的密钥的密钥。必须是有效的密钥。 |
|
|
引用的名称。此字段实际上是必需的,但由于向后兼容性,允许为空。此类型的实例在此处为空值几乎肯定是错误的。TODO:添加其他有用的字段。apiVersion、kind、uid?更多信息:https://kubernetes.ac.cn/docs/concepts/overview/working-with-objects/names/#names TODO:当 controller-gen 不需要时删除 |
|
|
指定是否必须定义 Secret 或其密钥。 |
VolumeMounts 允许配置 Thanos 的附加 VolumeMounts。指定的 VolumeMounts 将附加到“thanos-sidecar”容器中的其他 VolumeMounts。
数组
VolumeMount 描述在容器内挂载卷。
object
mountPath
name
Property 属性 | Type 类型 | Description 描述 |
---|---|---|
|
|
容器中应挂载卷的路径。不能包含“:”。 |
|
|
mountPropagation 决定如何将挂载从主机传播到容器,反之亦然。如果未设置,则使用 MountPropagationNone。此字段在 1.10 中为 Beta 版本。如果 RecursiveReadOnly 设置为 IfPossible 或 Enabled,则 MountPropagation 必须为 None 或未指定(默认为 None)。 |
|
|
这必须与卷的名称匹配。 |
|
|
如果为 true,则以只读方式挂载;否则以读写方式挂载(false 或未指定)。默认为 false。 |
|
|
RecursiveReadOnly 指定是否应递归处理只读挂载。 如果 ReadOnly 为 false,则此字段无意义,必须未指定。 如果 ReadOnly 为 true,并且此字段设置为 Disabled,则不会递归地将挂载设置为只读。如果此字段设置为 IfPossible,则如果容器运行时支持,则会递归地将挂载设置为只读。如果此字段设置为 Enabled,则如果容器运行时支持,则会递归地将挂载设置为只读;否则,Pod 将不会启动,并且会生成错误以指示原因。 如果此字段设置为 IfPossible 或 Enabled,则 MountPropagation 必须设置为 None(或未指定,默认为 None)。 如果未指定此字段,则将其视为等效于 Disabled。 |
|
|
容器的卷应从中挂载的卷内的路径。默认为 ""(卷的根目录)。 |
|
|
容器的卷应从中挂载的卷内的展开路径。行为类似于 SubPath,但环境变量引用 $(VAR_NAME) 使用容器的环境进行展开。默认为 ""(卷的根目录)。SubPathExpr 和 SubPath 互斥。 |
此容忍度附加到的 Pod 容忍任何与三元组 <key,value,effect> 匹配的污点,使用匹配运算符 <operator>。
object
Property 属性 | Type 类型 | Description 描述 |
---|---|---|
|
|
Effect 指示要匹配的污点效应。空表示匹配所有污点效应。如果指定,允许的值为 NoSchedule、PreferNoSchedule 和 NoExecute。 |
|
|
Key 是容忍度适用的污点键。空表示匹配所有污点键。如果键为空,则运算符必须为 Exists;此组合表示匹配所有值和所有键。 |
|
|
Operator 表示键与值的关系。有效的运算符为 Exists 和 Equal。默认为 Equal。Exists 等效于值的通配符,因此 Pod 可以容忍特定类别下的所有污点。 |
|
|
TolerationSeconds 表示容忍度(必须具有 NoExecute 效应,否则忽略此字段)容忍污点的持续时间。默认情况下,它未设置,这意味着永远容忍污点(不驱逐)。系统将把零和负值视为 0(立即驱逐)。 |
|
|
Value 是容忍度匹配的污点值。如果运算符为 Exists,则值应为空,否则为常规字符串。 |
object
maxSkew
topologyKey
whenUnsatisfiable
Property 属性 | Type 类型 | Description 描述 |
---|---|---|
|
|
定义应添加到 topologySpreadConstraint 上 labelSelector 的 Prometheus Operator 管理的标签。 |
|
|
LabelSelector 用于查找匹配的 Pod。匹配此标签选择器的 Pod 将被计算在内,以确定其对应拓扑域中的 Pod 数量。 |
|
|
MatchLabelKeys 是一组 Pod 标签键,用于选择将对其进行传播计算的 Pod。这些键用于从传入的 Pod 标签中查找值,这些键值标签与 labelSelector 进行 AND 运算,以选择将为传入 Pod 计算传播的现有 Pod 组。同一键禁止同时存在于 MatchLabelKeys 和 LabelSelector 中。如果未设置 LabelSelector,则不能设置 MatchLabelKeys。传入 Pod 标签中不存在的键将被忽略。空列表表示仅根据 labelSelector 匹配。 这是一个 Beta 功能,需要启用 MatchLabelKeysInPodTopologySpread 功能门(默认启用)。 |
|
|
MaxSkew 描述了 Pod 分布不均匀的程度。当 |
|
|
MinDomains 指示合格域的最小数量。当具有匹配拓扑键的合格域的数量小于 minDomains 时,Pod 拓扑传播将“全局最小值”视为 0,然后执行 Skew 的计算。当具有匹配拓扑键的合格域的数量等于或大于 minDomains 时,此值对调度没有影响。因此,当合格域的数量小于 minDomains 时,调度程序不会向这些域调度超过 maxSkew 个 Pod。如果值为 nil,则约束的行为就像 MinDomains 等于 1 一样。有效值为大于 0 的整数。当值不为 nil 时,WhenUnsatisfiable 必须为 DoNotSchedule。 例如,在 3 个区域的集群中,MaxSkew 设置为 2,MinDomains 设置为 5,并且具有相同 labelSelector 的 Pod 分布为 2/2/2:域的数量小于 5(MinDomains),因此“全局最小值”被视为 0。在这种情况下,无法调度具有相同 labelSelector 的新 Pod,因为如果调度新 Pod 到任何三个区域中的任何一个,计算出的 skew 将为 3(3 - 0),这将违反 MaxSkew。 |
|
|
NodeAffinityPolicy 指示在计算 Pod 拓扑传播 skew 时如何处理 Pod 的 nodeAffinity/nodeSelector。选项包括:- Honor:仅计算匹配 nodeAffinity/nodeSelector 的节点。- Ignore:忽略 nodeAffinity/nodeSelector。所有节点都包含在计算中。 如果此值为 nil,则行为等效于 Honor 策略。这是一个 Beta 级功能,默认情况下由 NodeInclusionPolicyInPodTopologySpread 功能标志启用。 |
|
|
NodeTaintsPolicy 指示在计算 Pod 拓扑传播 skew 时如何处理节点污点。选项包括:- Honor:包含没有污点的节点,以及传入 Pod 具有容忍度的污点节点。- Ignore:忽略节点污点。所有节点都包含在内。 如果此值为 nil,则行为等效于 Ignore 策略。这是一个 Beta 级功能,默认情况下由 NodeInclusionPolicyInPodTopologySpread 功能标志启用。 |
|
|
TopologyKey 是节点标签的键。具有此键和相同值的标签的节点被认为位于相同的拓扑中。我们将每个 |
|
|
WhenUnsatisfiable 指示如果 Pod 不满足传播约束,如何处理它。- DoNotSchedule(默认)告诉调度程序不要调度它。- ScheduleAnyway 告诉调度程序在任何位置调度 Pod,但优先考虑有助于减少 skew 的拓扑。当且仅当该 Pod 的每个可能的节点分配都会在某个拓扑上违反“MaxSkew”时,约束才被认为对于传入的 Pod 是“无法满足的”。例如,在 3 个区域的集群中,MaxSkew 设置为 1,并且具有相同 labelSelector 的 Pod 分布为 3/1/1:如果 WhenUnsatisfiable 设置为 DoNotSchedule,则传入的 Pod 只能调度到 zone2(zone3)以变为 3/2/1(3/1/2),因为 zone2(zone3)上的 ActualSkew(2-1)满足 MaxSkew(1)。换句话说,集群仍然可能不平衡,但调度程序不会使其变得**更**不平衡。这是一个必需字段。 |
LabelSelector 用于查找匹配的 Pod。匹配此标签选择器的 Pod 将被计算在内,以确定其对应拓扑域中的 Pod 数量。
object
Property 属性 | Type 类型 | Description 描述 |
---|---|---|
|
|
matchExpressions 是标签选择器要求的列表。这些要求是 ANDed 的。 |
|
|
标签选择器要求是一个包含值、键和运算符的选择器,这些值、键和运算符将键和值关联起来。 |
|
|
matchLabels 是 {key,value} 对的映射。matchLabels 映射中的单个 {key,value} 等效于 matchExpressions 的一个元素,其 key 字段为“key”,运算符为“In”,而 values 数组仅包含“value”。这些要求是 ANDed 的。 |
matchExpressions 是标签选择器要求的列表。这些要求是 ANDed 的。
数组
标签选择器要求是一个包含值、键和运算符的选择器,这些值、键和运算符将键和值关联起来。
object
key
运算符
Property 属性 | Type 类型 | Description 描述 |
---|---|---|
|
|
key 是选择器应用到的标签键。 |
|
|
operator 表示键与一组值的关系。有效的运算符为 In、NotIn、Exists 和 DoesNotExist。 |
|
|
values 是字符串值的数组。如果运算符为 In 或 NotIn,则 values 数组必须是非空的。如果运算符为 Exists 或 DoesNotExist,则 values 数组必须为空。此数组在策略性合并补丁期间会被替换。 |
TracingConfig 配置 Prometheus 中的跟踪。
这是一个实验性功能,它可能会在任何即将发布的版本中以破坏性方式发生更改。
object
endpoint
Property 属性 | Type 类型 | Description 描述 |
---|---|---|
|
|
用于导出跟踪的客户端。支持的值为 |
|
|
支持的压缩类型的压缩密钥。唯一支持的值是 |
|
|
发送追踪数据的端点。应采用` |
|
|
用作与 gRPC 或 HTTP 请求关联的标头的键值对。 |
|
|
如果禁用,客户端将使用安全连接。 |
|
|
设置给定追踪被采样的概率。必须是 0 到 1 之间的浮点数。 |
|
|
导出器将等待每个批量导出程序的最大时间。 |
|
|
发送追踪数据时使用的 TLS 配置。 |
发送追踪数据时使用的 TLS 配置。
object
Property 属性 | Type 类型 | Description 描述 |
---|---|---|
|
|
验证服务器证书时使用的证书颁发机构。 |
|
|
Prometheus 容器中用于目标的 CA 证书的路径。 |
|
|
进行客户端身份验证时要提供的客户端证书。 |
|
|
Prometheus 容器中用于目标的客户端证书文件的路径。 |
|
|
禁用目标证书验证。 |
|
|
Prometheus 容器中用于目标的客户端密钥文件的路径。 |
|
|
包含用于目标的客户端密钥文件的 Secret。 |
|
|
用于验证目标的主机名。 |
验证服务器证书时使用的证书颁发机构。
object
Property 属性 | Type 类型 | Description 描述 |
---|---|---|
|
|
包含用于目标的数据的 ConfigMap。 |
|
|
包含用于目标的数据的 Secret。 |
包含用于目标的数据的 ConfigMap。
object
key
Property 属性 | Type 类型 | Description 描述 |
---|---|---|
|
|
要选择的键。 |
|
|
引用的名称。此字段实际上是必需的,但由于向后兼容性,允许为空。此类型的实例在此处为空值几乎肯定是错误的。TODO:添加其他有用的字段。apiVersion、kind、uid?更多信息:https://kubernetes.ac.cn/docs/concepts/overview/working-with-objects/names/#names TODO:当 controller-gen 不需要时删除 |
|
|
指定是否必须定义 ConfigMap 或其键 |
包含用于目标的数据的 Secret。
object
key
Property 属性 | Type 类型 | Description 描述 |
---|---|---|
|
|
要从中选择的密钥的密钥。必须是有效的密钥。 |
|
|
引用的名称。此字段实际上是必需的,但由于向后兼容性,允许为空。此类型的实例在此处为空值几乎肯定是错误的。TODO:添加其他有用的字段。apiVersion、kind、uid?更多信息:https://kubernetes.ac.cn/docs/concepts/overview/working-with-objects/names/#names TODO:当 controller-gen 不需要时删除 |
|
|
指定是否必须定义 Secret 或其密钥。 |
进行客户端身份验证时要提供的客户端证书。
object
Property 属性 | Type 类型 | Description 描述 |
---|---|---|
|
|
包含用于目标的数据的 ConfigMap。 |
|
|
包含用于目标的数据的 Secret。 |
包含用于目标的数据的 ConfigMap。
object
key
Property 属性 | Type 类型 | Description 描述 |
---|---|---|
|
|
要选择的键。 |
|
|
引用的名称。此字段实际上是必需的,但由于向后兼容性,允许为空。此类型的实例在此处为空值几乎肯定是错误的。TODO:添加其他有用的字段。apiVersion、kind、uid?更多信息:https://kubernetes.ac.cn/docs/concepts/overview/working-with-objects/names/#names TODO:当 controller-gen 不需要时删除 |
|
|
指定是否必须定义 ConfigMap 或其键 |
包含用于目标的数据的 Secret。
object
key
Property 属性 | Type 类型 | Description 描述 |
---|---|---|
|
|
要从中选择的密钥的密钥。必须是有效的密钥。 |
|
|
引用的名称。此字段实际上是必需的,但由于向后兼容性,允许为空。此类型的实例在此处为空值几乎肯定是错误的。TODO:添加其他有用的字段。apiVersion、kind、uid?更多信息:https://kubernetes.ac.cn/docs/concepts/overview/working-with-objects/names/#names TODO:当 controller-gen 不需要时删除 |
|
|
指定是否必须定义 Secret 或其密钥。 |
包含用于目标的客户端密钥文件的 Secret。
object
key
Property 属性 | Type 类型 | Description 描述 |
---|---|---|
|
|
要从中选择的密钥的密钥。必须是有效的密钥。 |
|
|
引用的名称。此字段实际上是必需的,但由于向后兼容性,允许为空。此类型的实例在此处为空值几乎肯定是错误的。TODO:添加其他有用的字段。apiVersion、kind、uid?更多信息:https://kubernetes.ac.cn/docs/concepts/overview/working-with-objects/names/#names TODO:当 controller-gen 不需要时删除 |
|
|
指定是否必须定义 Secret 或其密钥。 |
定义时间序列数据库 (TSDB) 的运行时可重新加载配置。
object
Property 属性 | Type 类型 | Description 描述 |
---|---|---|
|
|
配置相对于 TSDB 最大时间,无序/越界样本可以有多旧。 只要样本的时间戳 >= (TSDB.MaxTime - outOfOrderTimeWindow),就会将无序/越界样本摄取到 TSDB 中。 这是一个实验性功能,它可能会在任何即将发布的版本中以破坏性方式发生更改。 它需要 Prometheus >= v2.39.0。 |
VolumeMounts 允许配置额外的 VolumeMounts。
VolumeMounts 将附加到“prometheus”容器中的其他 VolumeMounts,这些 VolumeMounts 是 StorageSpec 对象生成的。
数组
VolumeMount 描述在容器内挂载卷。
object
mountPath
name
Property 属性 | Type 类型 | Description 描述 |
---|---|---|
|
|
容器中应挂载卷的路径。不能包含“:”。 |
|
|
mountPropagation 决定如何将挂载从主机传播到容器,反之亦然。如果未设置,则使用 MountPropagationNone。此字段在 1.10 中为 Beta 版本。如果 RecursiveReadOnly 设置为 IfPossible 或 Enabled,则 MountPropagation 必须为 None 或未指定(默认为 None)。 |
|
|
这必须与卷的名称匹配。 |
|
|
如果为 true,则以只读方式挂载;否则以读写方式挂载(false 或未指定)。默认为 false。 |
|
|
RecursiveReadOnly 指定是否应递归处理只读挂载。 如果 ReadOnly 为 false,则此字段无意义,必须未指定。 如果 ReadOnly 为 true,并且此字段设置为 Disabled,则不会递归地将挂载设置为只读。如果此字段设置为 IfPossible,则如果容器运行时支持,则会递归地将挂载设置为只读。如果此字段设置为 Enabled,则如果容器运行时支持,则会递归地将挂载设置为只读;否则,Pod 将不会启动,并且会生成错误以指示原因。 如果此字段设置为 IfPossible 或 Enabled,则 MountPropagation 必须设置为 None(或未指定,默认为 None)。 如果未指定此字段,则将其视为等效于 Disabled。 |
|
|
容器的卷应从中挂载的卷内的路径。默认为 ""(卷的根目录)。 |
|
|
容器的卷应从中挂载的卷内的展开路径。行为类似于 SubPath,但环境变量引用 $(VAR_NAME) 使用容器的环境进行展开。默认为 ""(卷的根目录)。SubPathExpr 和 SubPath 互斥。 |
Volumes 允许在输出 StatefulSet 定义中配置附加卷。指定的卷将附加到由 StorageSpec 对象生成的其它卷。
数组
Volume 代表 Pod 中的命名卷,Pod 中的任何容器都可以访问该卷。
object
name
Property 属性 | Type 类型 | Description 描述 |
---|---|---|
|
|
awsElasticBlockStore 表示附加到 kubelet 主机然后公开到 pod 的 AWS 磁盘资源。更多信息:https://kubernetes.ac.cn/docs/concepts/storage/volumes#awselasticblockstore |
|
|
azureDisk 表示主机上的 Azure 数据磁盘挂载,并绑定挂载到 pod。 |
|
|
azureFile 表示主机上的 Azure 文件服务挂载,并绑定挂载到 pod。 |
|
|
cephFS 表示主机上的 Ceph FS 挂载,与 pod 的生命周期共享。 |
|
|
cinder 表示附加到 kubelet 主机并挂载在其上的 cinder 卷。更多信息:https://examples.k8s.io/mysql-cinder-pd/README.md |
|
|
configMap 表示应填充此卷的 configMap。 |
|
|
csi(容器存储接口)表示由某些外部 CSI 驱动程序处理的临时存储(Beta 功能)。 |
|
|
downwardAPI 表示应填充此卷的关于 pod 的向下 API。 |
|
|
emptyDir 表示与 pod 的生命周期共享的临时目录。更多信息:https://kubernetes.ac.cn/docs/concepts/storage/volumes#emptydir |
|
|
ephemeral 表示由集群存储驱动程序处理的卷。卷的生命周期与其定义它的 pod 相关联 - 它将在 pod 启动之前创建,并在 pod 删除时删除。 如果您需要:a) 只在 pod 运行时才需要卷,b) 需要普通卷的功能,例如从快照恢复或容量跟踪,c) 通过存储类指定存储驱动程序,以及 d) 存储驱动程序支持通过 PersistentVolumeClaim 进行动态卷预配(有关此卷类型和 PersistentVolumeClaim 之间连接的更多信息,请参阅 EphemeralVolumeSource)。 对于比单个 pod 生命周期持续时间更长的卷,请使用 PersistentVolumeClaim 或其中一个特定于供应商的 API。 如果 CSI 驱动程序旨在以这种方式使用,请使用 CSI 来创建轻量级本地临时卷 - 请参阅驱动程序的文档以获取更多信息。 pod 可以同时使用这两种类型的临时卷和持久卷。 |
|
|
fc 表示附加到 kubelet 主机然后公开到 pod 的光纤通道资源。 |
|
|
flexVolume 表示使用基于 exec 的插件预配/附加的通用卷资源。 |
|
|
flocker 表示附加到 kubelet 主机的 Flocker 卷。这取决于 Flocker 控制服务的运行。 |
|
|
gcePersistentDisk 表示附加到 kubelet 主机然后公开到 pod 的 GCE 磁盘资源。更多信息:https://kubernetes.ac.cn/docs/concepts/storage/volumes#gcepersistentdisk |
|
|
gitRepo 表示特定修订版本下的 git 存储库。已弃用:GitRepo 已弃用。要使用 git repo 预配容器,请将 EmptyDir 挂载到 InitContainer 中,该容器使用 git 克隆 repo,然后将 EmptyDir 挂载到 Pod 的容器中。 |
|
|
glusterfs 表示主机上的 Glusterfs 挂载,与 pod 的生命周期共享。更多信息:https://examples.k8s.io/volumes/glusterfs/README.md |
|
|
hostPath 表示主机上已存在的直接公开给容器的文件或目录。这通常用于系统代理或其他允许查看主机机的特权内容。大多数容器不需要这个。更多信息:https://kubernetes.ac.cn/docs/concepts/storage/volumes#hostpath --- TODO(jonesdl) 我们需要限制谁可以使用主机目录挂载,以及谁可以/不可以将主机目录挂载为读/写。 |
|
|
iscsi 表示附加到 kubelet 主机然后公开到 pod 的 ISCSI 磁盘资源。更多信息:https://examples.k8s.io/volumes/iscsi/README.md |
|
|
卷的名称。必须是 DNS_LABEL,并且在 pod 内唯一。更多信息:https://kubernetes.ac.cn/docs/concepts/overview/working-with-objects/names/#names |
|
|
nfs 表示主机上的 NFS 挂载,与 pod 的生命周期共享。更多信息:https://kubernetes.ac.cn/docs/concepts/storage/volumes#nfs |
|
|
persistentVolumeClaimVolumeSource 表示对同一命名空间中 PersistentVolumeClaim 的引用。更多信息:https://kubernetes.ac.cn/docs/concepts/storage/persistent-volumes#persistentvolumeclaims |
|
|
photonPersistentDisk 表示附加到 kubelet 主机并挂载在其上的 PhotonController 持久磁盘。 |
|
|
portworxVolume 表示附加到 kubelet 主机并挂载在其上的 portworx 卷。 |
|
|
所有一体化资源的投影项,例如密钥、configmap 和向下 API。 |
|
|
quobyte 表示主机上的 Quobyte 挂载,与 pod 的生命周期共享。 |
|
|
rbd 表示主机上的 Rados 块设备挂载,与 pod 的生命周期共享。更多信息:https://examples.k8s.io/volumes/rbd/README.md |
|
|
scaleIO 表示附加到 Kubernetes 节点并挂载在其上的 ScaleIO 持久卷。 |
|
|
secret 表示应填充此卷的密钥。更多信息:https://kubernetes.ac.cn/docs/concepts/storage/volumes#secret |
|
|
storageOS 表示附加到 Kubernetes 节点并挂载在其上的 StorageOS 卷。 |
|
|
vsphereVolume 表示附加到 kubelet 主机并挂载在其上的 vSphere 卷。 |
awsElasticBlockStore 表示附加到 kubelet 主机然后公开到 pod 的 AWS 磁盘资源。更多信息:https://kubernetes.ac.cn/docs/concepts/storage/volumes#awselasticblockstore
object
volumeID
Property 属性 | Type 类型 | Description 描述 |
---|---|---|
|
|
fsType 是要挂载的卷的文件系统类型。提示:确保主机操作系统支持文件系统类型。示例:“ext4”、“xfs”、“ntfs”。如果未指定,则隐式推断为“ext4”。更多信息:https://kubernetes.ac.cn/docs/concepts/storage/volumes#awselasticblockstore TODO:我们如何防止文件系统中的错误影响机器? |
|
|
partition 是您要挂载的卷中的分区。如果省略,则默认按卷名挂载。示例:对于卷 /dev/sda1,您将分区指定为“1”。类似地,/dev/sda 的卷分区为“0”(或者您可以保留属性为空)。 |
|
|
readOnly 值 true 将强制执行 VolumeMounts 中的 readOnly 设置。更多信息:https://kubernetes.ac.cn/docs/concepts/storage/volumes#awselasticblockstore |
|
|
volumeID 是 AWS(Amazon EBS 卷)中持久性磁盘资源的唯一 ID。更多信息:https://kubernetes.ac.cn/docs/concepts/storage/volumes#awselasticblockstore |
azureDisk 表示主机上的 Azure 数据磁盘挂载,并绑定挂载到 pod。
object
diskName
diskURI
Property 属性 | Type 类型 | Description 描述 |
---|---|---|
|
|
cachingMode 是主机缓存模式:无、只读、读写。 |
|
|
diskName 是 Blob 存储中数据磁盘的名称。 |
|
|
diskURI 是 Blob 存储中数据磁盘的 URI。 |
|
|
fsType 是要挂载的文件系统类型。必须是主机操作系统支持的文件系统类型。例如,“ext4”、“xfs”、“ntfs”。如果未指定,则隐式推断为“ext4”。 |
|
|
kind 预期值为 Shared:每个存储帐户有多个 Blob 磁盘 Dedicated:每个存储帐户只有一个 Blob 磁盘 Managed:Azure 托管数据磁盘(仅在托管可用性集中)。默认为 shared |
|
|
readOnly 默认为 false(读/写)。此处的 ReadOnly 将强制执行 VolumeMounts 中的 ReadOnly 设置。 |
azureFile 表示主机上的 Azure 文件服务挂载,并绑定挂载到 pod。
object
secretName
shareName
Property 属性 | Type 类型 | Description 描述 |
---|---|---|
|
|
readOnly 默认为 false(读/写)。此处的 ReadOnly 将强制执行 VolumeMounts 中的 ReadOnly 设置。 |
|
|
secretName 是包含 Azure 存储帐户名称和密钥的密钥的名称。 |
|
|
shareName 是 Azure 共享名称。 |
cephFS 表示主机上的 Ceph FS 挂载,与 pod 的生命周期共享。
object
monitors
Property 属性 | Type 类型 | Description 描述 |
---|---|---|
|
|
monitors 是必需的:Monitors 是 Ceph 监控器的集合。更多信息:https://examples.k8s.io/volumes/cephfs/README.md#how-to-use-it |
|
|
path 是可选的:用作已挂载的根目录,而不是完整的 Ceph 树,默认为 / |
|
|
readOnly 是可选的:默认为 false(读/写)。此处的 ReadOnly 将强制执行 VolumeMounts 中的 ReadOnly 设置。更多信息:https://examples.k8s.io/volumes/cephfs/README.md#how-to-use-it |
|
|
secretFile 是可选的:SecretFile 是用户密钥环的路径,默认为 /etc/ceph/user.secret。更多信息:https://examples.k8s.io/volumes/cephfs/README.md#how-to-use-it |
|
|
secretRef 是可选的:SecretRef 是对用户身份验证密钥的引用,默认为空。更多信息:https://examples.k8s.io/volumes/cephfs/README.md#how-to-use-it |
|
|
user 是可选的:User 是 rados 用户名,默认为 admin。更多信息:https://examples.k8s.io/volumes/cephfs/README.md#how-to-use-it |
secretRef 是可选的:SecretRef 是对用户身份验证密钥的引用,默认为空。更多信息:https://examples.k8s.io/volumes/cephfs/README.md#how-to-use-it
object
Property 属性 | Type 类型 | Description 描述 |
---|---|---|
|
|
引用的名称。此字段实际上是必需的,但由于向后兼容性,允许为空。此类型的实例在此处为空值几乎肯定是错误的。TODO:添加其他有用的字段。apiVersion、kind、uid?更多信息:https://kubernetes.ac.cn/docs/concepts/overview/working-with-objects/names/#names TODO:当 controller-gen 不需要时删除 |
cinder 表示附加到 kubelet 主机并挂载在其上的 cinder 卷。更多信息:https://examples.k8s.io/mysql-cinder-pd/README.md
object
volumeID
Property 属性 | Type 类型 | Description 描述 |
---|---|---|
|
|
fsType 是要挂载的文件系统类型。必须是主机操作系统支持的文件系统类型。例如:“ext4”、“xfs”、“ntfs”。如果未指定,则隐式推断为“ext4”。更多信息:https://examples.k8s.io/mysql-cinder-pd/README.md |
|
|
readOnly 默认为 false(读/写)。此处的 ReadOnly 将强制执行 VolumeMounts 中的 ReadOnly 设置。更多信息:https://examples.k8s.io/mysql-cinder-pd/README.md |
|
|
secretRef 是可选的:指向包含用于连接到 OpenStack 的参数的密钥对象。 |
|
|
volumeID 用于在 cinder 中标识卷。更多信息:https://examples.k8s.io/mysql-cinder-pd/README.md |
secretRef 是可选的:指向包含用于连接到 OpenStack 的参数的密钥对象。
object
Property 属性 | Type 类型 | Description 描述 |
---|---|---|
|
|
引用的名称。此字段实际上是必需的,但由于向后兼容性,允许为空。此类型的实例在此处为空值几乎肯定是错误的。TODO:添加其他有用的字段。apiVersion、kind、uid?更多信息:https://kubernetes.ac.cn/docs/concepts/overview/working-with-objects/names/#names TODO:当 controller-gen 不需要时删除 |
configMap 表示应填充此卷的 configMap。
object
Property 属性 | Type 类型 | Description 描述 |
---|---|---|
|
|
defaultMode 是可选的:用于默认设置创建文件的权限的模式位。必须是 0000 到 0777 之间的八进制值,或 0 到 511 之间的十进制值。YAML 接受八进制和十进制值,JSON 需要模式位的十进制值。默认为 0644。路径中的目录不受此设置的影响。这可能与影响文件模式的其他选项(如 fsGroup)冲突,结果可能是设置了其他模式位。 |
|
|
items 如果未指定,则引用的 ConfigMap 的 Data 字段中的每个键值对都将作为文件投影到卷中,其名称为键,内容为值。如果指定,则列出的键将投影到指定的路径中,未列出的键将不存在。如果指定了 ConfigMap 中不存在的键,则除非将其标记为可选,否则卷设置将出错。路径必须是相对路径,并且不能包含“..”路径或以“..”开头。 |
|
|
将字符串键映射到卷中的路径。 |
|
|
引用的名称。此字段实际上是必需的,但由于向后兼容性,允许为空。此类型的实例在此处为空值几乎肯定是错误的。TODO:添加其他有用的字段。apiVersion、kind、uid?更多信息:https://kubernetes.ac.cn/docs/concepts/overview/working-with-objects/names/#names TODO:当 controller-gen 不需要时删除 |
|
|
optional 指定是否必须定义 ConfigMap 或其键。 |
items 如果未指定,则引用的 ConfigMap 的 Data 字段中的每个键值对都将作为文件投影到卷中,其名称为键,内容为值。如果指定,则列出的键将投影到指定的路径中,未列出的键将不存在。如果指定了 ConfigMap 中不存在的键,则除非将其标记为可选,否则卷设置将出错。路径必须是相对路径,并且不能包含“..”路径或以“..”开头。
数组
将字符串键映射到卷中的路径。
object
key
path
Property 属性 | Type 类型 | Description 描述 |
---|---|---|
|
|
key 是要投影的键。 |
|
|
mode 是可选的:用于设置此文件的权限的模式位。必须是 0000 到 0777 之间的八进制值,或 0 到 511 之间的十进制值。YAML 接受八进制和十进制值,JSON 需要模式位的十进制值。如果未指定,则将使用卷 defaultMode。这可能与影响文件模式的其他选项(如 fsGroup)冲突,结果可能是设置了其他模式位。 |
|
|
path 是将键映射到的文件的相对路径。不能是绝对路径。不能包含路径元素“..” 。不能以字符串“..”开头。 |
csi(容器存储接口)表示由某些外部 CSI 驱动程序处理的临时存储(Beta 功能)。
object
driver
Property 属性 | Type 类型 | Description 描述 |
---|---|---|
|
|
driver 是处理此卷的 CSI 驱动程序的名称。请咨询您的管理员以获取在集群中注册的正确名称。 |
|
|
fsType 要挂载。例如,“ext4”、“xfs”、“ntfs”。如果未提供,则空值将传递给关联的 CSI 驱动程序,该驱动程序将确定要应用的默认文件系统。 |
|
|
nodePublishSecretRef 是对密钥对象的引用,该对象包含要传递给 CSI 驱动程序以完成 CSI NodePublishVolume 和 NodeUnpublishVolume 调用的敏感信息。此字段是可选的,如果不需要密钥,则可以为空。如果密钥对象包含多个密钥,则将传递所有密钥引用。 |
|
|
readOnly 指定卷的只读配置。默认为 false(读/写)。 |
|
|
volumeAttributes 存储传递给 CSI 驱动程序的驱动程序特定属性。请参阅驱动程序的文档以了解支持的值。 |
nodePublishSecretRef 是对密钥对象的引用,该对象包含要传递给 CSI 驱动程序以完成 CSI NodePublishVolume 和 NodeUnpublishVolume 调用的敏感信息。此字段是可选的,如果不需要密钥,则可以为空。如果密钥对象包含多个密钥,则将传递所有密钥引用。
object
Property 属性 | Type 类型 | Description 描述 |
---|---|---|
|
|
引用的名称。此字段实际上是必需的,但由于向后兼容性,允许为空。此类型的实例在此处为空值几乎肯定是错误的。TODO:添加其他有用的字段。apiVersion、kind、uid?更多信息:https://kubernetes.ac.cn/docs/concepts/overview/working-with-objects/names/#names TODO:当 controller-gen 不需要时删除 |
downwardAPI 表示应填充此卷的关于 pod 的向下 API。
object
Property 属性 | Type 类型 | Description 描述 |
---|---|---|
|
|
可选:默认情况下对创建的文件使用的模式位。必须是可选的:用于默认设置创建文件的权限的模式位。必须是 0000 到 0777 之间的八进制值,或 0 到 511 之间的十进制值。YAML 接受八进制和十进制值,JSON 需要模式位的十进制值。默认为 0644。路径中的目录不受此设置的影响。这可能与影响文件模式的其他选项(如 fsGroup)冲突,结果可能是设置了其他模式位。 |
|
|
Items 是向下 API 卷文件的列表 |
|
|
DownwardAPIVolumeFile 表示包含 pod 字段的文件创建信息 |
DownwardAPIVolumeFile 表示包含 pod 字段的文件创建信息
object
path
Property 属性 | Type 类型 | Description 描述 |
---|---|---|
|
|
必填:选择 Pod 的一个字段:仅支持注释、标签、名称、命名空间和 UID。 |
|
|
可选:用于设置此文件权限的模式位,必须是 0000 到 0777 之间的八进制值或 0 到 511 之间的十进制值。YAML 接受八进制和十进制值,JSON 要求模式位使用十进制值。如果未指定,将使用卷的 defaultMode。这可能与影响文件模式的其他选项(如 fsGroup)冲突,结果可能是设置了其他模式位。 |
|
|
必填:Path 是要创建的文件的相对路径名。不能是绝对路径或包含“..”路径。必须是 utf-8 编码。相对路径的第一个项目不能以“..”开头。 |
|
|
选择容器的资源:目前仅支持资源限制和请求(limits.cpu、limits.memory、requests.cpu 和 requests.memory)。 |
必填:选择 Pod 的一个字段:仅支持注释、标签、名称、命名空间和 UID。
object
fieldPath
Property 属性 | Type 类型 | Description 描述 |
---|---|---|
|
|
FieldPath 的模式版本,默认为“v1”。 |
|
|
在指定的 API 版本中选择的字段的路径。 |
选择容器的资源:目前仅支持资源限制和请求(limits.cpu、limits.memory、requests.cpu 和 requests.memory)。
object
resource
Property 属性 | Type 类型 | Description 描述 |
---|---|---|
|
|
容器名称:卷需要,环境变量可选 |
|
|
指定公开资源的输出格式,默认为“1” |
|
|
必需:要选择的资源 |
emptyDir 表示与 pod 的生命周期共享的临时目录。更多信息:https://kubernetes.ac.cn/docs/concepts/storage/volumes#emptydir
object
Property 属性 | Type 类型 | Description 描述 |
---|---|---|
|
|
medium 表示什么类型的存储介质应该支持此目录。默认为 "",这意味着使用节点的默认介质。必须是空字符串(默认)或 Memory。更多信息:https://kubernetes.ac.cn/docs/concepts/storage/volumes#emptydir |
|
|
sizeLimit 是此 EmptyDir 卷所需的本地存储总量。大小限制也适用于内存介质。内存介质 EmptyDir 的最大使用量将是此处指定的 SizeLimit 与 Pod 中所有容器的内存限制总和之间的最小值。默认为 nil,这意味着限制未定义。更多信息:https://kubernetes.ac.cn/docs/concepts/storage/volumes#emptydir |
ephemeral 表示由集群存储驱动程序处理的卷。卷的生命周期与其定义它的 pod 相关联 - 它将在 pod 启动之前创建,并在 pod 删除时删除。
如果您需要:a) 只在 pod 运行时才需要卷,b) 需要普通卷的功能,例如从快照恢复或容量跟踪,c) 通过存储类指定存储驱动程序,以及 d) 存储驱动程序支持通过 PersistentVolumeClaim 进行动态卷预配(有关此卷类型和 PersistentVolumeClaim 之间连接的更多信息,请参阅 EphemeralVolumeSource)。
对于比单个 pod 生命周期持续时间更长的卷,请使用 PersistentVolumeClaim 或其中一个特定于供应商的 API。
如果 CSI 驱动程序旨在以这种方式使用,请使用 CSI 来创建轻量级本地临时卷 - 请参阅驱动程序的文档以获取更多信息。
pod 可以同时使用这两种类型的临时卷和持久卷。
object
Property 属性 | Type 类型 | Description 描述 |
---|---|---|
|
|
将用于创建独立的 PVC 来供应卷。嵌入此 EphemeralVolumeSource 的 Pod 将是 PVC 的所有者,即 PVC 将与 Pod 一起删除。PVC 的名称将为 为了避免错误地使用不相关的卷,Pod 将不会使用名称相同但不是 Pod 拥有的现有 PVC。然后,Pod 的启动将被阻塞,直到不相关的 PVC 被移除。如果此类预先创建的 PVC 旨在被 Pod 使用,则在 Pod 存在后,必须使用对 Pod 的所有者引用更新 PVC。通常情况下,这应该是不必要的,但在手动重建损坏的集群时可能很有用。 此字段是只读的,创建 PVC 后,Kubernetes 不会对其进行任何更改。 必需,不能为 nil。 |
将用于创建独立的 PVC 来供应卷。嵌入此 EphemeralVolumeSource 的 Pod 将是 PVC 的所有者,即 PVC 将与 Pod 一起删除。PVC 的名称将为 <pod name>-<volume name>
,其中 <volume name>
来自 PodSpec.Volumes
数组条目中的名称。如果连接后的名称对于 PVC 无效(例如,太长),则 Pod 验证将拒绝该 Pod。
为了避免错误地使用不相关的卷,Pod 将不会使用名称相同但不是 Pod 拥有的现有 PVC。然后,Pod 的启动将被阻塞,直到不相关的 PVC 被移除。如果此类预先创建的 PVC 旨在被 Pod 使用,则在 Pod 存在后,必须使用对 Pod 的所有者引用更新 PVC。通常情况下,这应该是不必要的,但在手动重建损坏的集群时可能很有用。
此字段是只读的,创建 PVC 后,Kubernetes 不会对其进行任何更改。
必需,不能为 nil。
object
spec
Property 属性 | Type 类型 | Description 描述 |
---|---|---|
|
|
可能包含在创建 PVC 时将复制到其中的标签和注释。不允许使用其他字段,并且在验证期间将被拒绝。 |
|
|
PersistentVolumeClaim 的规范。整个内容将原样复制到从此模板创建的 PVC 中。PersistentVolumeClaim 中的相同字段在此处也有效。 |
可能包含在创建 PVC 时将复制到其中的标签和注释。不允许使用其他字段,并且在验证期间将被拒绝。
object
PersistentVolumeClaim 的规范。整个内容将原样复制到从此模板创建的 PVC 中。PersistentVolumeClaim 中的相同字段在此处也有效。
object
Property 属性 | Type 类型 | Description 描述 |
---|---|---|
|
|
accessModes 包含卷应具有的所需访问模式。更多信息:https://kubernetes.ac.cn/docs/concepts/storage/persistent-volumes#access-modes-1 |
|
|
dataSource 字段可用于指定:* 现有的 VolumeSnapshot 对象 (snapshot.storage.k8s.io/VolumeSnapshot) * 现有的 PVC (PersistentVolumeClaim) 如果供应程序或外部控制器可以支持指定的 Data Source,它将基于指定 Data Source 的内容创建一个新卷。启用 AnyVolumeDataSource 功能网关后,dataSource 内容将复制到 dataSourceRef,而 dataSourceRef 内容将复制到 dataSource(如果未指定 dataSourceRef.namespace)。如果指定了命名空间,则 dataSourceRef 将不会复制到 dataSource。 |
|
|
dataSourceRef 指定要从中使用数据填充卷的对象(如果需要非空卷)。这可能是来自非空 API 组(非核心对象)的任何对象或 PersistentVolumeClaim 对象。指定此字段时,只有当指定对象的类型与某些已安装的卷填充程序或动态供应程序匹配时,卷绑定才会成功。此字段将替换 dataSource 字段的功能,因此,如果两个字段都非空,则它们必须具有相同的值。为了向后兼容,当 dataSourceRef 中未指定命名空间时,如果其中一个字段为空而另一个字段非空,则这两个字段 (dataSource 和 dataSourceRef) 将自动设置为相同的值。当在 dataSourceRef 中指定命名空间时,dataSource 未设置为相同的值,并且必须为空。dataSource 和 dataSourceRef 之间存在三个重要区别:* dataSource 只允许两种特定类型的对象,而 dataSourceRef 允许任何非核心对象以及 PersistentVolumeClaim 对象。* dataSource 会忽略不允许的值(删除它们),而 dataSourceRef 会保留所有值,并在指定不允许的值时生成错误。* dataSource 只允许本地对象,而 dataSourceRef 允许任何命名空间中的对象。(Beta)使用此字段需要启用 AnyVolumeDataSource 功能网关。(Alpha)使用 dataSourceRef 的 namespace 字段需要启用 CrossNamespaceVolumeDataSource 功能网关。 |
|
|
resources 表示卷应具有的最小资源。如果启用了 RecoverVolumeExpansionFailure 功能,则允许用户指定低于先前值的资源需求,但仍必须高于 claim 状态字段中记录的容量。更多信息:https://kubernetes.ac.cn/docs/concepts/storage/persistent-volumes#resources |
|
|
selector 是一个用于选择要绑定卷的标签查询。 |
|
|
storageClassName 是 claim 所需的 StorageClass 的名称。更多信息:https://kubernetes.ac.cn/docs/concepts/storage/persistent-volumes#class-1 |
|
|
volumeAttributesClassName 可用于设置此 claim 使用的 VolumeAttributesClass。如果指定,CSI 驱动程序将使用相应 VolumeAttributesClass 中定义的属性创建或更新卷。这与 storageClassName 的用途不同,它可以在创建 claim 后更改。空字符串值表示不会将任何 VolumeAttributesClass 应用于 claim,但一旦设置,则不允许将此字段重置为空字符串。如果未指定且 PersistentVolumeClaim 未绑定,则如果存在,持久卷控制器将设置默认的 VolumeAttributesClass。如果 volumeAttributesClass 所引用的资源不存在,则此 PersistentVolumeClaim 将设置为 Pending 状态(如 modifyVolumeStatus 字段所示),直到此类资源存在为止。更多信息:https://kubernetes.ac.cn/docs/concepts/storage/volume-attributes-classes/ (Alpha) 使用此字段需要启用 VolumeAttributesClass 功能网关。 |
|
|
volumeMode 定义 claim 所需的卷类型。如果 claim spec 中未包含,则隐含 Filesystem 值。 |
|
|
volumeName 是对支持此 claim 的 PersistentVolume 的绑定引用。 |
dataSource 字段可用于指定:* 现有的 VolumeSnapshot 对象 (snapshot.storage.k8s.io/VolumeSnapshot) * 现有的 PVC (PersistentVolumeClaim) 如果供应程序或外部控制器可以支持指定的 Data Source,它将基于指定 Data Source 的内容创建一个新卷。启用 AnyVolumeDataSource 功能网关后,dataSource 内容将复制到 dataSourceRef,而 dataSourceRef 内容将复制到 dataSource(如果未指定 dataSourceRef.namespace)。如果指定了命名空间,则 dataSourceRef 将不会复制到 dataSource。
object
kind
name
Property 属性 | Type 类型 | Description 描述 |
---|---|---|
|
|
APIGroup 是被引用资源的组。如果未指定 APIGroup,则指定的 Kind 必须位于核心 API 组中。对于任何其他第三方类型,都需要 APIGroup。 |
|
|
Kind 是被引用资源的类型。 |
|
|
Name 是被引用资源的名称。 |
dataSourceRef 指定要从中使用数据填充卷的对象(如果需要非空卷)。这可能是来自非空 API 组(非核心对象)的任何对象或 PersistentVolumeClaim 对象。指定此字段时,只有当指定对象的类型与某些已安装的卷填充程序或动态供应程序匹配时,卷绑定才会成功。此字段将替换 dataSource 字段的功能,因此,如果两个字段都非空,则它们必须具有相同的值。为了向后兼容,当 dataSourceRef 中未指定命名空间时,如果其中一个字段为空而另一个字段非空,则这两个字段 (dataSource 和 dataSourceRef) 将自动设置为相同的值。当在 dataSourceRef 中指定命名空间时,dataSource 未设置为相同的值,并且必须为空。dataSource 和 dataSourceRef 之间存在三个重要区别:* dataSource 只允许两种特定类型的对象,而 dataSourceRef 允许任何非核心对象以及 PersistentVolumeClaim 对象。* dataSource 会忽略不允许的值(删除它们),而 dataSourceRef 会保留所有值,并在指定不允许的值时生成错误。* dataSource 只允许本地对象,而 dataSourceRef 允许任何命名空间中的对象。(Beta)使用此字段需要启用 AnyVolumeDataSource 功能网关。(Alpha)使用 dataSourceRef 的 namespace 字段需要启用 CrossNamespaceVolumeDataSource 功能网关。
object
kind
name
Property 属性 | Type 类型 | Description 描述 |
---|---|---|
|
|
APIGroup 是被引用资源的组。如果未指定 APIGroup,则指定的 Kind 必须位于核心 API 组中。对于任何其他第三方类型,都需要 APIGroup。 |
|
|
Kind 是被引用资源的类型。 |
|
|
Name 是被引用资源的名称。 |
|
|
Namespace 是被引用资源的命名空间。请注意,当指定命名空间时,需要在引用命名空间中使用 gateway.networking.k8s.io/ReferenceGrant 对象,以允许该命名空间的所有者接受该引用。有关详细信息,请参阅 ReferenceGrant 文档。(Alpha) 此字段需要启用 CrossNamespaceVolumeDataSource 功能网关。 |
resources 表示卷应具有的最小资源。如果启用了 RecoverVolumeExpansionFailure 功能,则允许用户指定低于先前值的资源需求,但仍必须高于 claim 状态字段中记录的容量。更多信息:https://kubernetes.ac.cn/docs/concepts/storage/persistent-volumes#resources
object
Property 属性 | Type 类型 | Description 描述 |
---|---|---|
|
|
Limits 描述了允许的最大计算资源量。更多信息:https://kubernetes.ac.cn/docs/concepts/configuration/manage-resources-containers/ |
|
|
Requests 描述了所需的最小计算资源量。如果容器省略了 Requests,则默认为 Limits(如果明确指定),否则默认为实现定义的值。Requests 不能超过 Limits。更多信息:https://kubernetes.ac.cn/docs/concepts/configuration/manage-resources-containers/ |
selector 是一个用于选择要绑定卷的标签查询。
object
Property 属性 | Type 类型 | Description 描述 |
---|---|---|
|
|
matchExpressions 是标签选择器要求的列表。这些要求是 ANDed 的。 |
|
|
标签选择器要求是一个包含值、键和运算符的选择器,这些值、键和运算符将键和值关联起来。 |
|
|
matchLabels 是 {key,value} 对的映射。matchLabels 映射中的单个 {key,value} 等效于 matchExpressions 的一个元素,其 key 字段为“key”,运算符为“In”,而 values 数组仅包含“value”。这些要求是 ANDed 的。 |
matchExpressions 是标签选择器要求的列表。这些要求是 ANDed 的。
数组
标签选择器要求是一个包含值、键和运算符的选择器,这些值、键和运算符将键和值关联起来。
object
key
运算符
Property 属性 | Type 类型 | Description 描述 |
---|---|---|
|
|
key 是选择器应用到的标签键。 |
|
|
operator 表示键与一组值的关系。有效的运算符为 In、NotIn、Exists 和 DoesNotExist。 |
|
|
values 是字符串值的数组。如果运算符为 In 或 NotIn,则 values 数组必须是非空的。如果运算符为 Exists 或 DoesNotExist,则 values 数组必须为空。此数组在策略性合并补丁期间会被替换。 |
fc 表示附加到 kubelet 主机然后公开到 pod 的光纤通道资源。
object
Property 属性 | Type 类型 | Description 描述 |
---|---|---|
|
|
fsType 是要挂载的文件系统类型。必须是主机操作系统支持的文件系统类型。例如,“ext4”、“xfs”、“ntfs”。如果未指定,则隐式推断为“ext4”。待办事项:我们如何防止文件系统中的错误影响机器? |
|
|
lun 可选:FC 目标 LUN 号码 |
|
|
readOnly 可选:默认为 false(读/写)。此处的 ReadOnly 将强制执行 VolumeMounts 中的 ReadOnly 设置。 |
|
|
targetWWNs 可选:FC 目标全球名称 (WWN) |
|
|
wwids 可选:FC 卷全球标识符 (wwid) 必须设置 wwids 或 targetWWNs 和 lun 的组合,但不能同时设置两者。 |
flexVolume 表示使用基于 exec 的插件预配/附加的通用卷资源。
object
driver
Property 属性 | Type 类型 | Description 描述 |
---|---|---|
|
|
driver 是此卷要使用的驱动程序的名称。 |
|
|
fsType 是要挂载的文件系统类型。必须是主机操作系统支持的文件系统类型。例如,“ext4”、“xfs”、“ntfs”。默认文件系统取决于 FlexVolume 脚本。 |
|
|
options 可选:此字段包含任何额外的命令选项。 |
|
|
readOnly 可选:默认为 false(读/写)。此处的 ReadOnly 将强制执行 VolumeMounts 中的 ReadOnly 设置。 |
|
|
secretRef 可选:secretRef 是对包含敏感信息的 secret 对象的引用,这些敏感信息将传递给插件脚本。如果没有指定 secret 对象,则可以为空。如果 secret 对象包含多个 secret,则所有 secret 都将传递给插件脚本。 |
secretRef 可选:secretRef 是对包含敏感信息的 secret 对象的引用,这些敏感信息将传递给插件脚本。如果没有指定 secret 对象,则可以为空。如果 secret 对象包含多个 secret,则所有 secret 都将传递给插件脚本。
object
Property 属性 | Type 类型 | Description 描述 |
---|---|---|
|
|
引用的名称。此字段实际上是必需的,但由于向后兼容性,允许为空。此类型的实例在此处为空值几乎肯定是错误的。TODO:添加其他有用的字段。apiVersion、kind、uid?更多信息:https://kubernetes.ac.cn/docs/concepts/overview/working-with-objects/names/#names TODO:当 controller-gen 不需要时删除 |
flocker 表示附加到 kubelet 主机的 Flocker 卷。这取决于 Flocker 控制服务的运行。
object
Property 属性 | Type 类型 | Description 描述 |
---|---|---|
|
|
datasetName 是数据集的名称,存储为数据集上的元数据→名称,Flocker 的数据集名称应视为已弃用。 |
|
|
datasetUUID 是数据集的 UUID。这是 Flocker 数据集的唯一标识符。 |
gcePersistentDisk 表示附加到 kubelet 主机然后公开到 pod 的 GCE 磁盘资源。更多信息:https://kubernetes.ac.cn/docs/concepts/storage/volumes#gcepersistentdisk
object
pdName
Property 属性 | Type 类型 | Description 描述 |
---|---|---|
|
|
fsType 是要挂载的卷的文件系统类型。提示:确保主机操作系统支持文件系统类型。示例:“ext4”、“xfs”、“ntfs”。如果未指定,则隐式推断为“ext4”。更多信息:https://kubernetes.ac.cn/docs/concepts/storage/volumes#gcepersistentdisk 待办事项:我们如何防止文件系统中的错误影响机器? |
|
|
partition 是要挂载的卷中的分区。如果省略,则默认为按卷名挂载。示例:对于卷 /dev/sda1,您将分区指定为“1”。类似地,/dev/sda 的卷分区为“0”(或者您可以保留属性为空)。更多信息:https://kubernetes.ac.cn/docs/concepts/storage/volumes#gcepersistentdisk |
|
|
pdName 是 GCE 中 PD 资源的唯一名称。用于在 GCE 中标识磁盘。更多信息:https://kubernetes.ac.cn/docs/concepts/storage/volumes#gcepersistentdisk |
|
|
readOnly 此处将强制执行 VolumeMounts 中的 ReadOnly 设置。默认为 false。更多信息:https://kubernetes.ac.cn/docs/concepts/storage/volumes#gcepersistentdisk |
gitRepo 表示特定修订版本下的 git 存储库。已弃用:GitRepo 已弃用。要使用 git repo 预配容器,请将 EmptyDir 挂载到 InitContainer 中,该容器使用 git 克隆 repo,然后将 EmptyDir 挂载到 Pod 的容器中。
object
repository
Property 属性 | Type 类型 | Description 描述 |
---|---|---|
|
|
directory 是目标目录名。不能包含或以“..”开头。如果提供“.”,则卷目录将是 git 存储库。否则,如果指定,则卷将包含具有给定名称的子目录中的 git 存储库。 |
|
|
repository 是 URL |
|
|
revision 是指定修订版本的提交哈希。 |
glusterfs 表示主机上的 Glusterfs 挂载,与 pod 的生命周期共享。更多信息:https://examples.k8s.io/volumes/glusterfs/README.md
object
endpoints
path
Property 属性 | Type 类型 | Description 描述 |
---|---|---|
|
|
endpoints 是详细说明 Glusterfs 拓扑的端点名称。更多信息:https://examples.k8s.io/volumes/glusterfs/README.md#create-a-pod |
|
|
path 是 Glusterfs 卷路径。更多信息:https://examples.k8s.io/volumes/glusterfs/README.md#create-a-pod |
|
|
readOnly 此处将强制 Glusterfs 卷以只读权限挂载。默认为 false。更多信息:https://examples.k8s.io/volumes/glusterfs/README.md#create-a-pod |
hostPath 表示主机上已存在的直接公开给容器的文件或目录。这通常用于系统代理或其他允许查看主机机的特权内容。大多数容器不需要这个。更多信息:https://kubernetes.ac.cn/docs/concepts/storage/volumes#hostpath --- TODO(jonesdl) 我们需要限制谁可以使用主机目录挂载,以及谁可以/不可以将主机目录挂载为读/写。
object
path
Property 属性 | Type 类型 | Description 描述 |
---|---|---|
|
|
主机上目录的路径。如果路径是符号链接,它将跟踪链接到实际路径。更多信息:https://kubernetes.ac.cn/docs/concepts/storage/volumes#hostpath |
|
|
HostPath 卷的类型,默认为 ""。更多信息:https://kubernetes.ac.cn/docs/concepts/storage/volumes#hostpath |
iscsi 表示附加到 kubelet 主机然后公开到 pod 的 ISCSI 磁盘资源。更多信息:https://examples.k8s.io/volumes/iscsi/README.md
object
iqn
lun
targetPortal
Property 属性 | Type 类型 | Description 描述 |
---|---|---|
|
|
chapAuthDiscovery 定义是否支持 iSCSI Discovery CHAP 身份验证 |
|
|
chapAuthSession 定义是否支持 iSCSI Session CHAP 身份验证 |
|
|
fsType 是要挂载的卷的文件系统类型。提示:确保主机操作系统支持文件系统类型。示例:“ext4”、“xfs”、“ntfs”。如果未指定,则隐式推断为“ext4”。更多信息:https://kubernetes.ac.cn/docs/concepts/storage/volumes#iscsi 待办事项:我们如何防止文件系统中的错误影响机器? |
|
|
initiatorName 是自定义 iSCSI 发起程序名称。如果同时指定 initiatorName 和 iscsiInterface,则将为连接创建新的 iSCSI 接口 <目标门户>:<卷名>。 |
|
|
iqn 是目标 iSCSI 限定名称。 |
|
|
iscsiInterface 是使用 iSCSI 传输的接口名称。默认为“default”(tcp)。 |
|
|
lun 代表 iSCSI 目标 LUN 号码。 |
|
|
portals 是 iSCSI 目标门户列表。门户是 IP 地址,或者如果端口不是默认端口(通常是 TCP 端口 860 和 3260)则为 ip_addr:port。 |
|
|
readOnly 将强制在 VolumeMounts 中设置 ReadOnly。默认为 false。 |
|
|
secretRef 是 iSCSI 目标和发起者身份验证的 CHAP 密钥。 |
|
|
targetPortal 是 iSCSI 目标门户。门户是 IP 地址,或者如果端口不是默认端口(通常是 TCP 端口 860 和 3260)则为 ip_addr:port。 |
secretRef 是 iSCSI 目标和发起者身份验证的 CHAP 密钥。
object
Property 属性 | Type 类型 | Description 描述 |
---|---|---|
|
|
引用的名称。此字段实际上是必需的,但由于向后兼容性,允许为空。此类型的实例在此处为空值几乎肯定是错误的。TODO:添加其他有用的字段。apiVersion、kind、uid?更多信息:https://kubernetes.ac.cn/docs/concepts/overview/working-with-objects/names/#names TODO:当 controller-gen 不需要时删除 |
nfs 表示主机上的 NFS 挂载,与 pod 的生命周期共享。更多信息:https://kubernetes.ac.cn/docs/concepts/storage/volumes#nfs
object
path
服务器
Property 属性 | Type 类型 | Description 描述 |
---|---|---|
|
|
NFS 服务器导出的路径。更多信息:https://kubernetes.ac.cn/docs/concepts/storage/volumes#nfs |
|
|
readOnly 将强制以只读权限挂载 NFS 导出。默认为 false。更多信息:https://kubernetes.ac.cn/docs/concepts/storage/volumes#nfs |
|
|
server 是 NFS 服务器的主机名或 IP 地址。更多信息:https://kubernetes.ac.cn/docs/concepts/storage/volumes#nfs |
persistentVolumeClaimVolumeSource 表示对同一命名空间中 PersistentVolumeClaim 的引用。更多信息:https://kubernetes.ac.cn/docs/concepts/storage/persistent-volumes#persistentvolumeclaims
object
claimName
Property 属性 | Type 类型 | Description 描述 |
---|---|---|
|
|
claimName 是与使用此卷的 Pod 位于同一命名空间中的 PersistentVolumeClaim 的名称。更多信息:https://kubernetes.ac.cn/docs/concepts/storage/persistent-volumes#persistentvolumeclaims |
|
|
readOnly 将强制在 VolumeMounts 中设置 ReadOnly。默认为 false。 |
photonPersistentDisk 表示附加到 kubelet 主机并挂载在其上的 PhotonController 持久磁盘。
object
pdID
Property 属性 | Type 类型 | Description 描述 |
---|---|---|
|
|
fsType 是要挂载的文件系统类型。必须是主机操作系统支持的文件系统类型。例如,“ext4”、“xfs”、“ntfs”。如果未指定,则隐式推断为“ext4”。 |
|
|
pdID 是标识 Photon Controller 持久磁盘的 ID。 |
portworxVolume 表示附加到 kubelet 主机并挂载在其上的 portworx 卷。
object
volumeID
Property 属性 | Type 类型 | Description 描述 |
---|---|---|
|
|
fSType 表示要挂载的文件系统类型。必须是主机操作系统支持的文件系统类型。例如,“ext4”、“xfs”。如果未指定,则隐式推断为“ext4”。 |
|
|
readOnly 默认为 false(读/写)。此处的 ReadOnly 将强制执行 VolumeMounts 中的 ReadOnly 设置。 |
|
|
volumeID 唯一标识 Portworx 卷。 |
所有一体化资源的投影项,例如密钥、configmap 和向下 API。
object
Property 属性 | Type 类型 | Description 描述 |
---|---|---|
|
|
defaultMode 是用于默认设置创建文件的权限的模式位。必须是 0000 到 0777 之间的八进制值,或 0 到 511 之间的十进制值。YAML 接受八进制和十进制值,JSON 需要模式位的十进制值。路径中的目录不受此设置的影响。这可能与影响文件模式的其他选项(如 fsGroup)冲突,结果可能是设置了其他模式位。 |
|
|
sources 是卷投影的列表。 |
|
|
可以与其他受支持的卷类型一起投影的投影。 |
可以与其他受支持的卷类型一起投影的投影。
object
Property 属性 | Type 类型 | Description 描述 |
---|---|---|
|
|
ClusterTrustBundle 允许 Pod 访问 ClusterTrustBundle 对象的 Alpha 版本,受 ClusterTrustBundleProjection 功能门控控制。 ClusterTrustBundle 对象可以通过名称或签名者名称和标签选择器的组合进行选择。 Kubelet 对写入 Pod 文件系统的 PEM 内容执行积极的规范化。剥离了诸如块间注释和块标题之类的深奥的 PEM 功能。证书已去重。文件中证书的顺序是任意的,Kubelet 可能会随着时间的推移改变顺序。 |
|
|
configMap 关于要投影的 configMap 数据的信息。 |
|
|
downwardAPI 关于要投影的 downwardAPI 数据的信息。 |
|
|
secret 关于要投影的 secret 数据的信息。 |
|
|
serviceAccountToken 是关于要投影的 serviceAccountToken 数据的信息。 |
ClusterTrustBundle 允许 Pod 访问 ClusterTrustBundle 对象的.spec.trustBundle
字段中的自动更新文件。
Alpha 版本,受 ClusterTrustBundleProjection 功能门控控制。
ClusterTrustBundle 对象可以通过名称或签名者名称和标签选择器的组合进行选择。
Kubelet 对写入 Pod 文件系统的 PEM 内容执行积极的规范化。剥离了诸如块间注释和块标题之类的深奥的 PEM 功能。证书已去重。文件中证书的顺序是任意的,Kubelet 可能会随着时间的推移改变顺序。
object
path
Property 属性 | Type 类型 | Description 描述 |
---|---|---|
|
|
选择与该标签选择器匹配的所有 ClusterTrustBundles。只有在设置了 signerName 时才有效。与 name 互斥。如果未设置,则解释为“不匹配任何内容”。如果设置为空,则解释为“匹配所有内容”。 |
|
|
通过对象名称选择单个 ClusterTrustBundle。与 signerName 和 labelSelector 互斥。 |
|
|
如果为 true,则如果引用的 ClusterTrustBundle(s) 不可用,则不会阻塞 Pod 启动。如果使用名称,则允许命名 ClusterTrustBundle 不存在。如果使用 signerName,则允许 signerName 和 labelSelector 的组合匹配零个 ClusterTrustBundles。 |
|
|
从卷根目录到写入捆绑包的相对路径。 |
|
|
选择与该签名者名称匹配的所有 ClusterTrustBundles。与 name 互斥。所有选定 ClusterTrustBundles 的内容都将被统一和去重。 |
选择与该标签选择器匹配的所有 ClusterTrustBundles。只有在设置了 signerName 时才有效。与 name 互斥。如果未设置,则解释为“不匹配任何内容”。如果设置为空,则解释为“匹配所有内容”。
object
Property 属性 | Type 类型 | Description 描述 |
---|---|---|
|
|
matchExpressions 是标签选择器要求的列表。这些要求是 ANDed 的。 |
|
|
标签选择器要求是一个包含值、键和运算符的选择器,这些值、键和运算符将键和值关联起来。 |
|
|
matchLabels 是 {key,value} 对的映射。matchLabels 映射中的单个 {key,value} 等效于 matchExpressions 的一个元素,其 key 字段为“key”,运算符为“In”,而 values 数组仅包含“value”。这些要求是 ANDed 的。 |
matchExpressions 是标签选择器要求的列表。这些要求是 ANDed 的。
数组
标签选择器要求是一个包含值、键和运算符的选择器,这些值、键和运算符将键和值关联起来。
object
key
运算符
Property 属性 | Type 类型 | Description 描述 |
---|---|---|
|
|
key 是选择器应用到的标签键。 |
|
|
operator 表示键与一组值的关系。有效的运算符为 In、NotIn、Exists 和 DoesNotExist。 |
|
|
values 是字符串值的数组。如果运算符为 In 或 NotIn,则 values 数组必须是非空的。如果运算符为 Exists 或 DoesNotExist,则 values 数组必须为空。此数组在策略性合并补丁期间会被替换。 |
configMap 关于要投影的 configMap 数据的信息。
object
Property 属性 | Type 类型 | Description 描述 |
---|---|---|
|
|
items 如果未指定,则引用的 ConfigMap 的 Data 字段中的每个键值对都将作为文件投影到卷中,其名称为键,内容为值。如果指定,则列出的键将投影到指定的路径中,未列出的键将不存在。如果指定了 ConfigMap 中不存在的键,则除非将其标记为可选,否则卷设置将出错。路径必须是相对路径,并且不能包含“..”路径或以“..”开头。 |
|
|
将字符串键映射到卷中的路径。 |
|
|
引用的名称。此字段实际上是必需的,但由于向后兼容性,允许为空。此类型的实例在此处为空值几乎肯定是错误的。TODO:添加其他有用的字段。apiVersion、kind、uid?更多信息:https://kubernetes.ac.cn/docs/concepts/overview/working-with-objects/names/#names TODO:当 controller-gen 不需要时删除 |
|
|
optional 指定是否必须定义 ConfigMap 或其键。 |
items 如果未指定,则引用的 ConfigMap 的 Data 字段中的每个键值对都将作为文件投影到卷中,其名称为键,内容为值。如果指定,则列出的键将投影到指定的路径中,未列出的键将不存在。如果指定了 ConfigMap 中不存在的键,则除非将其标记为可选,否则卷设置将出错。路径必须是相对路径,并且不能包含“..”路径或以“..”开头。
数组
将字符串键映射到卷中的路径。
object
key
path
Property 属性 | Type 类型 | Description 描述 |
---|---|---|
|
|
key 是要投影的键。 |
|
|
mode 是可选的:用于设置此文件的权限的模式位。必须是 0000 到 0777 之间的八进制值,或 0 到 511 之间的十进制值。YAML 接受八进制和十进制值,JSON 需要模式位的十进制值。如果未指定,则将使用卷 defaultMode。这可能与影响文件模式的其他选项(如 fsGroup)冲突,结果可能是设置了其他模式位。 |
|
|
path 是将键映射到的文件的相对路径。不能是绝对路径。不能包含路径元素“..” 。不能以字符串“..”开头。 |
downwardAPI 关于要投影的 downwardAPI 数据的信息。
object
Property 属性 | Type 类型 | Description 描述 |
---|---|---|
|
|
Items 是 DownwardAPIVolume 文件的列表。 |
|
|
DownwardAPIVolumeFile 表示包含 pod 字段的文件创建信息 |
Items 是 DownwardAPIVolume 文件的列表。
数组
DownwardAPIVolumeFile 表示包含 pod 字段的文件创建信息
object
path
Property 属性 | Type 类型 | Description 描述 |
---|---|---|
|
|
必填:选择 Pod 的一个字段:仅支持注释、标签、名称、命名空间和 UID。 |
|
|
可选:用于设置此文件权限的模式位,必须是 0000 到 0777 之间的八进制值或 0 到 511 之间的十进制值。YAML 接受八进制和十进制值,JSON 要求模式位使用十进制值。如果未指定,将使用卷的 defaultMode。这可能与影响文件模式的其他选项(如 fsGroup)冲突,结果可能是设置了其他模式位。 |
|
|
必填:Path 是要创建的文件的相对路径名。不能是绝对路径或包含“..”路径。必须是 utf-8 编码。相对路径的第一个项目不能以“..”开头。 |
|
|
选择容器的资源:目前仅支持资源限制和请求(limits.cpu、limits.memory、requests.cpu 和 requests.memory)。 |
必填:选择 Pod 的一个字段:仅支持注释、标签、名称、命名空间和 UID。
object
fieldPath
Property 属性 | Type 类型 | Description 描述 |
---|---|---|
|
|
FieldPath 的模式版本,默认为“v1”。 |
|
|
在指定的 API 版本中选择的字段的路径。 |
选择容器的资源:目前仅支持资源限制和请求(limits.cpu、limits.memory、requests.cpu 和 requests.memory)。
object
resource
Property 属性 | Type 类型 | Description 描述 |
---|---|---|
|
|
容器名称:卷需要,环境变量可选 |
|
|
指定公开资源的输出格式,默认为“1” |
|
|
必需:要选择的资源 |
secret 关于要投影的 secret 数据的信息。
object
Property 属性 | Type 类型 | Description 描述 |
---|---|---|
|
|
items 如果未指定,则引用的 Secret 的 Data 字段中的每个键值对都将作为文件投影到卷中,其名称为键,内容为值。如果指定,则列出的键将投影到指定的路径中,未列出的键将不存在。如果指定了 Secret 中不存在的键,则除非将其标记为可选,否则卷设置将出错。路径必须是相对路径,并且不能包含“..”路径或以“..”开头。 |
|
|
将字符串键映射到卷中的路径。 |
|
|
引用的名称。此字段实际上是必需的,但由于向后兼容性,允许为空。此类型的实例在此处为空值几乎肯定是错误的。TODO:添加其他有用的字段。apiVersion、kind、uid?更多信息:https://kubernetes.ac.cn/docs/concepts/overview/working-with-objects/names/#names TODO:当 controller-gen 不需要时删除 |
|
|
optional 字段指定是否必须定义 Secret 或其键。 |
items 如果未指定,则引用的 Secret 的 Data 字段中的每个键值对都将作为文件投影到卷中,其名称为键,内容为值。如果指定,则列出的键将投影到指定的路径中,未列出的键将不存在。如果指定了 Secret 中不存在的键,则除非将其标记为可选,否则卷设置将出错。路径必须是相对路径,并且不能包含“..”路径或以“..”开头。
数组
将字符串键映射到卷中的路径。
object
key
path
Property 属性 | Type 类型 | Description 描述 |
---|---|---|
|
|
key 是要投影的键。 |
|
|
mode 是可选的:用于设置此文件的权限的模式位。必须是 0000 到 0777 之间的八进制值,或 0 到 511 之间的十进制值。YAML 接受八进制和十进制值,JSON 需要模式位的十进制值。如果未指定,则将使用卷 defaultMode。这可能与影响文件模式的其他选项(如 fsGroup)冲突,结果可能是设置了其他模式位。 |
|
|
path 是将键映射到的文件的相对路径。不能是绝对路径。不能包含路径元素“..” 。不能以字符串“..”开头。 |
serviceAccountToken 是关于要投影的 serviceAccountToken 数据的信息。
object
path
Property 属性 | Type 类型 | Description 描述 |
---|---|---|
|
|
audience 是令牌的目标受众。令牌的接收者必须使用令牌的 audience 中指定的标识符识别自身,否则应拒绝令牌。audience 默认为 apiserver 的标识符。 |
|
|
expirationSeconds 是请求的服务帐户令牌的有效期。当令牌接近过期时,kubelet 卷插件将主动轮换服务帐户令牌。如果令牌的年龄超过其生命周期的 80%,或者令牌的年龄超过 24 小时,则 kubelet 将开始尝试轮换令牌。默认为 1 小时,必须至少为 10 分钟。 |
|
|
path 是相对于挂载点的文件的路径,用于将令牌投影到该路径中。 |
quobyte 表示主机上的 Quobyte 挂载,与 pod 的生命周期共享。
object
注册表
卷
Property 属性 | Type 类型 | Description 描述 |
---|---|---|
|
|
映射卷访问的组。默认为无组。 |
|
|
readOnly 将强制以只读权限挂载 Quobyte 卷。默认为 false。 |
|
|
registry 代表一个或多个 Quobyte 注册服务,以主机:端口对字符串的形式指定(多个条目用逗号分隔),它充当卷的中央注册表。 |
|
|
拥有后端中给定 Quobyte 卷的租户。与动态配置的 Quobyte 卷一起使用,值由插件设置。 |
|
|
用户,用于映射卷访问权限。默认为 service account 用户。 |
|
|
volume 是一个字符串,通过名称引用已创建的 Quobyte 卷。 |
rbd 表示主机上的 Rados 块设备挂载,与 pod 的生命周期共享。更多信息:https://examples.k8s.io/volumes/rbd/README.md
object
image
monitors
Property 属性 | Type 类型 | Description 描述 |
---|---|---|
|
|
fsType 是您要挂载的卷的文件系统类型。提示:确保主机操作系统支持该文件系统类型。示例:“ext4”、“xfs”、“ntfs”。如果未指定,则隐式推断为“ext4”。更多信息:https://kubernetes.ac.cn/docs/concepts/storage/volumes#rbd TODO:我们如何防止文件系统中的错误影响机器? |
|
|
image 是 rados 镜像名称。更多信息:https://examples.k8s.io/volumes/rbd/README.md#how-to-use-it |
|
|
keyring 是 RBDUser 的密钥环路径。默认为 /etc/ceph/keyring。更多信息:https://examples.k8s.io/volumes/rbd/README.md#how-to-use-it |
|
|
monitors 是 Ceph 监控器的集合。更多信息:https://examples.k8s.io/volumes/rbd/README.md#how-to-use-it |
|
|
pool 是 rados 池名称。默认为 rbd。更多信息:https://examples.k8s.io/volumes/rbd/README.md#how-to-use-it |
|
|
readOnly 将强制在 VolumeMounts 中设置 ReadOnly。默认为 false。更多信息:https://examples.k8s.io/volumes/rbd/README.md#how-to-use-it |
|
|
secretRef 是 RBDUser 的身份验证密钥的名称。如果提供,则覆盖 keyring。默认为 nil。更多信息:https://examples.k8s.io/volumes/rbd/README.md#how-to-use-it |
|
|
user 是 rados 用户名。默认为 admin。更多信息:https://examples.k8s.io/volumes/rbd/README.md#how-to-use-it |
secretRef 是 RBDUser 的身份验证密钥的名称。如果提供,则覆盖 keyring。默认为 nil。更多信息:https://examples.k8s.io/volumes/rbd/README.md#how-to-use-it
object
Property 属性 | Type 类型 | Description 描述 |
---|---|---|
|
|
引用的名称。此字段实际上是必需的,但由于向后兼容性,允许为空。此类型的实例在此处为空值几乎肯定是错误的。TODO:添加其他有用的字段。apiVersion、kind、uid?更多信息:https://kubernetes.ac.cn/docs/concepts/overview/working-with-objects/names/#names TODO:当 controller-gen 不需要时删除 |
scaleIO 表示附加到 Kubernetes 节点并挂载在其上的 ScaleIO 持久卷。
object
网关
secretRef
系统
Property 属性 | Type 类型 | Description 描述 |
---|---|---|
|
|
fsType 是要挂载的文件系统类型。必须是主机操作系统支持的文件系统类型。例如,“ext4”、“xfs”、“ntfs”。默认为“xfs”。 |
|
|
gateway 是 ScaleIO API 网关的主机地址。 |
|
|
protectionDomain 是为配置的存储配置的 ScaleIO 保护域的名称。 |
|
|
readOnly 默认为 false(读/写)。此处的 ReadOnly 将强制执行 VolumeMounts 中的 ReadOnly 设置。 |
|
|
secretRef 引用 ScaleIO 用户和其他敏感信息的密钥。如果没有提供此信息,登录操作将失败。 |
|
|
sslEnabled 标志启用/禁用与网关的 SSL 通信,默认为 false。 |
|
|
storageMode 指示卷的存储应该是厚置备还是薄置备。默认为 ThinProvisioned(薄置备)。 |
|
|
storagePool 是与保护域关联的 ScaleIO 存储池。 |
|
|
system 是在 ScaleIO 中配置的存储系统的名称。 |
|
|
volumeName 是已在与该卷源关联的 ScaleIO 系统中创建的卷的名称。 |
secretRef 引用 ScaleIO 用户和其他敏感信息的密钥。如果没有提供此信息,登录操作将失败。
object
Property 属性 | Type 类型 | Description 描述 |
---|---|---|
|
|
引用的名称。此字段实际上是必需的,但由于向后兼容性,允许为空。此类型的实例在此处为空值几乎肯定是错误的。TODO:添加其他有用的字段。apiVersion、kind、uid?更多信息:https://kubernetes.ac.cn/docs/concepts/overview/working-with-objects/names/#names TODO:当 controller-gen 不需要时删除 |
secret 表示应填充此卷的密钥。更多信息:https://kubernetes.ac.cn/docs/concepts/storage/volumes#secret
object
Property 属性 | Type 类型 | Description 描述 |
---|---|---|
|
|
defaultMode 可选:默认情况下用于设置创建文件的权限的模式位。必须是 0000 到 0777 之间的八进制值或 0 到 511 之间的十进制值。YAML 接受八进制和十进制值,JSON 需要模式位的十进制值。默认为 0644。路径中的目录不受此设置的影响。这可能会与影响文件模式的其他选项(如 fsGroup)冲突,结果可能是设置了其他模式位。 |
|
|
items 如果未指定,则引用的 Secret 的 Data 字段中的每个键值对都将作为文件投影到卷中,其名称为键,内容为值。如果指定,则列出的键将投影到指定的路径中,未列出的键将不存在。如果指定了密钥但在 Secret 中不存在,则除非将其标记为可选,否则卷设置将出错。路径必须是相对路径,并且不能包含“..”路径或以“..”开头。 |
|
|
将字符串键映射到卷中的路径。 |
|
|
optional 字段指定是否必须定义 Secret 或其密钥。 |
|
|
secretName 是要使用的 pod 命名空间中的密钥名称。更多信息:https://kubernetes.ac.cn/docs/concepts/storage/volumes#secret |
items 如果未指定,则引用的 Secret 的 Data 字段中的每个键值对都将作为文件投影到卷中,其名称为键,内容为值。如果指定,则列出的键将投影到指定的路径中,未列出的键将不存在。如果指定了密钥但在 Secret 中不存在,则除非将其标记为可选,否则卷设置将出错。路径必须是相对路径,并且不能包含“..”路径或以“..”开头。
数组
将字符串键映射到卷中的路径。
object
key
path
Property 属性 | Type 类型 | Description 描述 |
---|---|---|
|
|
key 是要投影的键。 |
|
|
mode 是可选的:用于设置此文件的权限的模式位。必须是 0000 到 0777 之间的八进制值,或 0 到 511 之间的十进制值。YAML 接受八进制和十进制值,JSON 需要模式位的十进制值。如果未指定,则将使用卷 defaultMode。这可能与影响文件模式的其他选项(如 fsGroup)冲突,结果可能是设置了其他模式位。 |
|
|
path 是将键映射到的文件的相对路径。不能是绝对路径。不能包含路径元素“..” 。不能以字符串“..”开头。 |
storageOS 表示附加到 Kubernetes 节点并挂载在其上的 StorageOS 卷。
object
Property 属性 | Type 类型 | Description 描述 |
---|---|---|
|
|
fsType 是要挂载的文件系统类型。必须是主机操作系统支持的文件系统类型。例如,“ext4”、“xfs”、“ntfs”。如果未指定,则隐式推断为“ext4”。 |
|
|
readOnly 默认为 false(读/写)。此处的 ReadOnly 将强制执行 VolumeMounts 中的 ReadOnly 设置。 |
|
|
secretRef 指定用于获取 StorageOS API 凭据的密钥。如果未指定,将尝试使用默认值。 |
|
|
volumeName 是 StorageOS 卷的可读名称。卷名在一个命名空间内是唯一的。 |
|
|
volumeNamespace 指定 StorageOS 中卷的范围。如果没有指定命名空间,则将使用 Pod 的命名空间。这允许在 StorageOS 中镜像 Kubernetes 名称范围,以实现更紧密的集成。设置 VolumeName 为任何名称以覆盖默认行为。如果您没有在 StorageOS 中使用命名空间,则设置为“default”。StorageOS 中不存在的命名空间将被创建。 |
secretRef 指定用于获取 StorageOS API 凭据的密钥。如果未指定,将尝试使用默认值。
object
Property 属性 | Type 类型 | Description 描述 |
---|---|---|
|
|
引用的名称。此字段实际上是必需的,但由于向后兼容性,允许为空。此类型的实例在此处为空值几乎肯定是错误的。TODO:添加其他有用的字段。apiVersion、kind、uid?更多信息:https://kubernetes.ac.cn/docs/concepts/overview/working-with-objects/names/#names TODO:当 controller-gen 不需要时删除 |
vsphereVolume 表示附加到 kubelet 主机并挂载在其上的 vSphere 卷。
object
volumePath
Property 属性 | Type 类型 | Description 描述 |
---|---|---|
|
|
fsType 是要挂载的文件系统类型。必须是主机操作系统支持的文件系统类型。例如,“ext4”、“xfs”、“ntfs”。如果未指定,则隐式推断为“ext4”。 |
|
|
storagePolicyID 是与 StoragePolicyName 关联的基于存储策略的管理 (SPBM) 配置文件 ID。 |
|
|
storagePolicyName 是基于存储策略的管理 (SPBM) 配置文件名称。 |
|
|
volumePath 是标识 vSphere 卷 vmdk 的路径。 |
定义 Prometheus web 服务器的配置。
object
Property 属性 | Type 类型 | Description 描述 |
---|---|---|
|
|
定义 Web 服务器的 HTTP 参数。 |
|
|
定义同时连接的最大数量。零值表示 Prometheus 不接受任何传入连接。 |
|
|
Prometheus 网页标题。 |
|
|
定义 HTTPS 的 TLS 参数。 |
定义 Web 服务器的 HTTP 参数。
object
Property 属性 | Type 类型 | Description 描述 |
---|---|---|
|
|
可以添加到 HTTP 响应的标头列表。 |
|
|
启用 HTTP/2 支持。请注意,HTTP/2 仅支持 TLS。如果未配置 TLSConfig,则将禁用 HTTP/2。每当字段的值更改时,都将触发滚动更新。 |
可以添加到 HTTP 响应的标头列表。
object
Property 属性 | Type 类型 | Description 描述 |
---|---|---|
|
|
将 Content-Security-Policy 标头设置为 HTTP 响应。如果为空则取消设置。 |
|
|
将 Strict-Transport-Security 头部设置为 HTTP 响应。如果为空则取消设置。请谨慎使用此头部,因为它可能会强制浏览器通过 HTTPS 加载 Prometheus 和托管在同一域名和子域名上的其他应用程序。https://mdn.org.cn/en-US/docs/Web/HTTP/Headers/Strict-Transport-Security |
|
|
将 X-Content-Type-Options 头部设置为 HTTP 响应。如果为空则取消设置。接受的值为 nosniff。https://mdn.org.cn/en-US/docs/Web/HTTP/Headers/X-Content-Type-Options |
|
|
将 X-Frame-Options 头部设置为 HTTP 响应。如果为空则取消设置。接受的值为 deny 和 sameorigin。https://mdn.org.cn/en-US/docs/Web/HTTP/Headers/X-Frame-Options |
|
|
将 X-XSS-Protection 头部设置为所有响应。如果为空则取消设置。https://mdn.org.cn/en-US/docs/Web/HTTP/Headers/X-XSS-Protection |
定义 HTTPS 的 TLS 参数。
object
cert
keySecret
Property 属性 | Type 类型 | Description 描述 |
---|---|---|
|
|
包含服务器的 TLS 证书。 |
|
|
支持的密码套件列表,适用于 TLS 1.2 及之前的版本。如果为空,则使用 Go 默认的密码套件。可用的密码套件在 Go 文档中有所说明:https://golang.ac.cn/pkg/crypto/tls/#pkg-constants |
|
|
服务器的客户端身份验证策略。映射到 ClientAuth 策略。有关 clientAuth 选项的更多详细信息:https://golang.ac.cn/pkg/crypto/tls/#ClientAuthType |
|
|
包含用于客户端证书身份验证的 CA 证书。 |
|
|
将在 ECDHE 握手过程中使用的椭圆曲线,按优先顺序排列。可用的曲线在 Go 文档中有所说明:https://golang.ac.cn/pkg/crypto/tls/#CurveID |
|
|
包含服务器 TLS 密钥的密钥。 |
|
|
可接受的最高 TLS 版本。默认为 TLS13。 |
|
|
可接受的最低 TLS 版本。默认为 TLS12。 |
|
|
控制服务器是选择客户端最偏好的密码套件,还是服务器最偏好的密码套件。如果为 true,则使用服务器的偏好(如 cipherSuites 中元素的顺序所示)。 |
包含服务器的 TLS 证书。
object
Property 属性 | Type 类型 | Description 描述 |
---|---|---|
|
|
包含用于目标的数据的 ConfigMap。 |
|
|
包含用于目标的数据的 Secret。 |
包含用于目标的数据的 ConfigMap。
object
key
Property 属性 | Type 类型 | Description 描述 |
---|---|---|
|
|
要选择的键。 |
|
|
引用的名称。此字段实际上是必需的,但由于向后兼容性,允许为空。此类型的实例在此处为空值几乎肯定是错误的。TODO:添加其他有用的字段。apiVersion、kind、uid?更多信息:https://kubernetes.ac.cn/docs/concepts/overview/working-with-objects/names/#names TODO:当 controller-gen 不需要时删除 |
|
|
指定是否必须定义 ConfigMap 或其键 |
包含用于目标的数据的 Secret。
object
key
Property 属性 | Type 类型 | Description 描述 |
---|---|---|
|
|
要从中选择的密钥的密钥。必须是有效的密钥。 |
|
|
引用的名称。此字段实际上是必需的,但由于向后兼容性,允许为空。此类型的实例在此处为空值几乎肯定是错误的。TODO:添加其他有用的字段。apiVersion、kind、uid?更多信息:https://kubernetes.ac.cn/docs/concepts/overview/working-with-objects/names/#names TODO:当 controller-gen 不需要时删除 |
|
|
指定是否必须定义 Secret 或其密钥。 |
包含用于客户端证书身份验证的 CA 证书。
object
Property 属性 | Type 类型 | Description 描述 |
---|---|---|
|
|
包含用于目标的数据的 ConfigMap。 |
|
|
包含用于目标的数据的 Secret。 |
包含用于目标的数据的 ConfigMap。
object
key
Property 属性 | Type 类型 | Description 描述 |
---|---|---|
|
|
要选择的键。 |
|
|
引用的名称。此字段实际上是必需的,但由于向后兼容性,允许为空。此类型的实例在此处为空值几乎肯定是错误的。TODO:添加其他有用的字段。apiVersion、kind、uid?更多信息:https://kubernetes.ac.cn/docs/concepts/overview/working-with-objects/names/#names TODO:当 controller-gen 不需要时删除 |
|
|
指定是否必须定义 ConfigMap 或其键 |
包含用于目标的数据的 Secret。
object
key
Property 属性 | Type 类型 | Description 描述 |
---|---|---|
|
|
要从中选择的密钥的密钥。必须是有效的密钥。 |
|
|
引用的名称。此字段实际上是必需的,但由于向后兼容性,允许为空。此类型的实例在此处为空值几乎肯定是错误的。TODO:添加其他有用的字段。apiVersion、kind、uid?更多信息:https://kubernetes.ac.cn/docs/concepts/overview/working-with-objects/names/#names TODO:当 controller-gen 不需要时删除 |
|
|
指定是否必须定义 Secret 或其密钥。 |
包含服务器 TLS 密钥的密钥。
object
key
Property 属性 | Type 类型 | Description 描述 |
---|---|---|
|
|
要从中选择的密钥的密钥。必须是有效的密钥。 |
|
|
引用的名称。此字段实际上是必需的,但由于向后兼容性,允许为空。此类型的实例在此处为空值几乎肯定是错误的。TODO:添加其他有用的字段。apiVersion、kind、uid?更多信息:https://kubernetes.ac.cn/docs/concepts/overview/working-with-objects/names/#names TODO:当 controller-gen 不需要时删除 |
|
|
指定是否必须定义 Secret 或其密钥。 |
object
availableReplicas
paused
replicas
unavailableReplicas
updatedReplicas
Property 属性 | Type 类型 | Description 描述 |
---|---|---|
|
|
此 Prometheus 部署的目标中可用的 Pod 总数(至少已准备 minReadySeconds 秒)。 |
|
|
Prometheus 部署的当前状态。 |
|
|
Condition 表示与 Prometheus、Alertmanager 或 ThanosRuler 资源关联的资源的状态。 |
|
|
表示是否正在对底层托管对象执行任何操作。仅执行删除操作。 |
|
|
此 Prometheus 部署的目标中未终止的 Pod 总数(其标签与选择器匹配)。 |
|
|
用于匹配此 Prometheus 资源目标 Pod 的选择器。 |
|
|
此列表每个分片有一项条目。每个条目都提供了分片状态的摘要。 |
|
|
|
|
|
Shards 是最近观察到的分片数量。 |
|
|
此 Prometheus 部署的目标中不可用的 Pod 总数。 |
|
|
此 Prometheus 部署的目标中具有所需版本规范的未终止 Pod 总数。 |
Condition 表示与 Prometheus、Alertmanager 或 ThanosRuler 资源关联的资源的状态。
object
lastTransitionTime
status
type
Property 属性 | Type 类型 | Description 描述 |
---|---|---|
|
|
lastTransitionTime 是上次更新当前状态属性的时间。 |
|
|
指示条件上次转换详细信息的人类可读消息。 |
|
|
ObservedGeneration 表示设置条件的 .metadata.generation。例如,如果 |
|
|
条件上次转换的原因。 |
|
|
条件的状态。 |
|
|
正在报告的条件的类型。 |
object
availableReplicas
replicas
shardID
unavailableReplicas
updatedReplicas
Property 属性 | Type 类型 | Description 描述 |
---|---|---|
|
|
此分片目标中可用的 Pod 总数(至少已准备 minReadySeconds 秒)。 |
|
|
此分片目标的 Pod 总数。 |
|
|
分片的标识符。 |
|
|
此分片目标中不可用的 Pod 总数。 |
|
|
此分片目标中具有所需规范的未终止 Pod 总数。 |
提供以下 API 端点
/apis/monitoring.coreos.com/v1/prometheuses
GET
:列出 Prometheus 类型的对象
/apis/monitoring.coreos.com/v1/namespaces/{namespace}/prometheuses
DELETE
:删除 Prometheus 集合
GET
:列出 Prometheus 类型的对象
POST
:创建 Prometheus
/apis/monitoring.coreos.com/v1/namespaces/{namespace}/prometheuses/{name}
DELETE
:删除 Prometheus
GET
:读取指定的 Prometheus
PATCH
:部分更新指定的 Prometheus
PUT
:替换指定的 Prometheus
/apis/monitoring.coreos.com/v1/namespaces/{namespace}/prometheuses/{name}/scale
GET
:读取指定 Prometheus 的规模
PATCH
:部分更新指定 Prometheus 的规模
PUT
:替换指定 Prometheus 的规模
/apis/monitoring.coreos.com/v1/namespaces/{namespace}/prometheuses/{name}/status
GET
:读取指定 Prometheus 的状态
PATCH
:部分更新指定 Prometheus 的状态
PUT
:替换指定 Prometheus 的状态
GET
列出 Prometheus 类型的对象
HTTP 代码 | 响应体 |
---|---|
200 - OK |
|
401 - 未授权 |
空 |
DELETE
删除 Prometheus 集合
HTTP 代码 | 响应体 |
---|---|
200 - OK |
|
401 - 未授权 |
空 |
GET
列出 Prometheus 类型的对象
HTTP 代码 | 响应体 |
---|---|
200 - OK |
|
401 - 未授权 |
空 |
POST
创建 Prometheus
参数 | Type 类型 | Description 描述 |
---|---|---|
|
|
如果存在,则表示不应持久化修改。无效或无法识别的 dryRun 指令将导致错误响应,并且不会进一步处理请求。有效值为:- All:将处理所有 dry run 阶段 |
|
|
fieldValidation 指示服务器如何处理请求 (POST/PUT/PATCH) 中包含未知或重复字段的对象。有效值为:- Ignore:这将忽略任何未知字段(这些字段将从对象中静默删除),并且将忽略解码器遇到的所有重复字段中的最后一个字段。这是 v1.23 之前的默认行为。- Warn:这将通过标准警告响应标头为每个从对象中删除的未知字段以及遇到的每个重复字段发送警告。如果没有任何其他错误,请求仍然会成功,并且只会保留任何重复字段中的最后一个字段。这是 v1.23+ 中的默认值 - Strict:如果从对象中删除任何未知字段,或者存在任何重复字段,这将使请求失败并出现 BadRequest 错误。服务器返回的错误将包含遇到的所有未知和重复字段。 |
参数 | Type 类型 | Description 描述 |
---|---|---|
|
|
HTTP 代码 | 响应体 |
---|---|
200 - OK |
|
201 - 已创建 |
|
202 - 已接受 |
|
401 - 未授权 |
空 |
参数 | Type 类型 | Description 描述 |
---|---|---|
|
|
Prometheus 的名称 |
DELETE
删除 Prometheus
参数 | Type 类型 | Description 描述 |
---|---|---|
|
|
如果存在,则表示不应持久化修改。无效或无法识别的 dryRun 指令将导致错误响应,并且不会进一步处理请求。有效值为:- All:将处理所有 dry run 阶段 |
HTTP 代码 | 响应体 |
---|---|
200 - OK |
|
202 - 已接受 |
|
401 - 未授权 |
空 |
GET
读取指定的 Prometheus
HTTP 代码 | 响应体 |
---|---|
200 - OK |
|
401 - 未授权 |
空 |
PATCH
部分更新指定的 Prometheus
参数 | Type 类型 | Description 描述 |
---|---|---|
|
|
如果存在,则表示不应持久化修改。无效或无法识别的 dryRun 指令将导致错误响应,并且不会进一步处理请求。有效值为:- All:将处理所有 dry run 阶段 |
|
|
fieldValidation 指示服务器如何处理请求 (POST/PUT/PATCH) 中包含未知或重复字段的对象。有效值为:- Ignore:这将忽略任何未知字段(这些字段将从对象中静默删除),并且将忽略解码器遇到的所有重复字段中的最后一个字段。这是 v1.23 之前的默认行为。- Warn:这将通过标准警告响应标头为每个从对象中删除的未知字段以及遇到的每个重复字段发送警告。如果没有任何其他错误,请求仍然会成功,并且只会保留任何重复字段中的最后一个字段。这是 v1.23+ 中的默认值 - Strict:如果从对象中删除任何未知字段,或者存在任何重复字段,这将使请求失败并出现 BadRequest 错误。服务器返回的错误将包含遇到的所有未知和重复字段。 |
HTTP 代码 | 响应体 |
---|---|
200 - OK |
|
401 - 未授权 |
空 |
PUT
替换指定的 Prometheus
参数 | Type 类型 | Description 描述 |
---|---|---|
|
|
如果存在,则表示不应持久化修改。无效或无法识别的 dryRun 指令将导致错误响应,并且不会进一步处理请求。有效值为:- All:将处理所有 dry run 阶段 |
|
|
fieldValidation 指示服务器如何处理请求 (POST/PUT/PATCH) 中包含未知或重复字段的对象。有效值为:- Ignore:这将忽略任何未知字段(这些字段将从对象中静默删除),并且将忽略解码器遇到的所有重复字段中的最后一个字段。这是 v1.23 之前的默认行为。- Warn:这将通过标准警告响应标头为每个从对象中删除的未知字段以及遇到的每个重复字段发送警告。如果没有任何其他错误,请求仍然会成功,并且只会保留任何重复字段中的最后一个字段。这是 v1.23+ 中的默认值 - Strict:如果从对象中删除任何未知字段,或者存在任何重复字段,这将使请求失败并出现 BadRequest 错误。服务器返回的错误将包含遇到的所有未知和重复字段。 |
参数 | Type 类型 | Description 描述 |
---|---|---|
|
|
HTTP 代码 | 响应体 |
---|---|
200 - OK |
|
201 - 已创建 |
|
401 - 未授权 |
空 |
参数 | Type 类型 | Description 描述 |
---|---|---|
|
|
Prometheus 的名称 |
GET
读取指定 Prometheus 的缩放比例
HTTP 代码 | 响应体 |
---|---|
200 - OK |
|
401 - 未授权 |
空 |
PATCH
部分更新指定 Prometheus 的缩放比例
参数 | Type 类型 | Description 描述 |
---|---|---|
|
|
如果存在,则表示不应持久化修改。无效或无法识别的 dryRun 指令将导致错误响应,并且不会进一步处理请求。有效值为:- All:将处理所有 dry run 阶段 |
|
|
fieldValidation 指示服务器如何处理请求 (POST/PUT/PATCH) 中包含未知或重复字段的对象。有效值为:- Ignore:这将忽略任何未知字段(这些字段将从对象中静默删除),并且将忽略解码器遇到的所有重复字段中的最后一个字段。这是 v1.23 之前的默认行为。- Warn:这将通过标准警告响应标头为每个从对象中删除的未知字段以及遇到的每个重复字段发送警告。如果没有任何其他错误,请求仍然会成功,并且只会保留任何重复字段中的最后一个字段。这是 v1.23+ 中的默认值 - Strict:如果从对象中删除任何未知字段,或者存在任何重复字段,这将使请求失败并出现 BadRequest 错误。服务器返回的错误将包含遇到的所有未知和重复字段。 |
HTTP 代码 | 响应体 |
---|---|
200 - OK |
|
401 - 未授权 |
空 |
PUT
替换指定 Prometheus 的缩放比例
参数 | Type 类型 | Description 描述 |
---|---|---|
|
|
如果存在,则表示不应持久化修改。无效或无法识别的 dryRun 指令将导致错误响应,并且不会进一步处理请求。有效值为:- All:将处理所有 dry run 阶段 |
|
|
fieldValidation 指示服务器如何处理请求 (POST/PUT/PATCH) 中包含未知或重复字段的对象。有效值为:- Ignore:这将忽略任何未知字段(这些字段将从对象中静默删除),并且将忽略解码器遇到的所有重复字段中的最后一个字段。这是 v1.23 之前的默认行为。- Warn:这将通过标准警告响应标头为每个从对象中删除的未知字段以及遇到的每个重复字段发送警告。如果没有任何其他错误,请求仍然会成功,并且只会保留任何重复字段中的最后一个字段。这是 v1.23+ 中的默认值 - Strict:如果从对象中删除任何未知字段,或者存在任何重复字段,这将使请求失败并出现 BadRequest 错误。服务器返回的错误将包含遇到的所有未知和重复字段。 |
参数 | Type 类型 | Description 描述 |
---|---|---|
|
|
HTTP 代码 | 响应体 |
---|---|
200 - OK |
|
201 - 已创建 |
|
401 - 未授权 |
空 |
参数 | Type 类型 | Description 描述 |
---|---|---|
|
|
Prometheus 的名称 |
GET
读取指定 Prometheus 的状态
HTTP 代码 | 响应体 |
---|---|
200 - OK |
|
401 - 未授权 |
空 |
PATCH
部分更新指定 Prometheus 的状态
参数 | Type 类型 | Description 描述 |
---|---|---|
|
|
如果存在,则表示不应持久化修改。无效或无法识别的 dryRun 指令将导致错误响应,并且不会进一步处理请求。有效值为:- All:将处理所有 dry run 阶段 |
|
|
fieldValidation 指示服务器如何处理请求 (POST/PUT/PATCH) 中包含未知或重复字段的对象。有效值为:- Ignore:这将忽略任何未知字段(这些字段将从对象中静默删除),并且将忽略解码器遇到的所有重复字段中的最后一个字段。这是 v1.23 之前的默认行为。- Warn:这将通过标准警告响应标头为每个从对象中删除的未知字段以及遇到的每个重复字段发送警告。如果没有任何其他错误,请求仍然会成功,并且只会保留任何重复字段中的最后一个字段。这是 v1.23+ 中的默认值 - Strict:如果从对象中删除任何未知字段,或者存在任何重复字段,这将使请求失败并出现 BadRequest 错误。服务器返回的错误将包含遇到的所有未知和重复字段。 |
HTTP 代码 | 响应体 |
---|---|
200 - OK |
|
401 - 未授权 |
空 |
PUT
替换指定 Prometheus 的状态
参数 | Type 类型 | Description 描述 |
---|---|---|
|
|
如果存在,则表示不应持久化修改。无效或无法识别的 dryRun 指令将导致错误响应,并且不会进一步处理请求。有效值为:- All:将处理所有 dry run 阶段 |
|
|
fieldValidation 指示服务器如何处理请求 (POST/PUT/PATCH) 中包含未知或重复字段的对象。有效值为:- Ignore:这将忽略任何未知字段(这些字段将从对象中静默删除),并且将忽略解码器遇到的所有重复字段中的最后一个字段。这是 v1.23 之前的默认行为。- Warn:这将通过标准警告响应标头为每个从对象中删除的未知字段以及遇到的每个重复字段发送警告。如果没有任何其他错误,请求仍然会成功,并且只会保留任何重复字段中的最后一个字段。这是 v1.23+ 中的默认值 - Strict:如果从对象中删除任何未知字段,或者存在任何重复字段,这将使请求失败并出现 BadRequest 错误。服务器返回的错误将包含遇到的所有未知和重复字段。 |
参数 | Type 类型 | Description 描述 |
---|---|---|
|
|
HTTP 代码 | 响应体 |
---|---|
200 - OK |
|
201 - 已创建 |
|
401 - 未授权 |
空 |