监控 API
监控 API 的参考指南
摘要
第 1 章 监控 API
1.1. Alertmanager [monitoring.coreos.com/v1]
- 描述
- Alertmanager 描述 Alertmanager 集群。
- 类型
-
object
1.2. AlertmanagerConfig [monitoring.coreos.com/v1beta1]
- 描述
- AlertmanagerConfig 配置 Prometheus Alertmanager,指定应如何对外部系统分组、禁止和通知警报。
- 类型
-
object
1.3. AlertRelabelConfig [monitoring.openshift.io/v1]
- 描述
- AlertRelabelConfig 为警报定义一组重新标记配置。兼容性级别 1:在主发行版本中至少提供 12 个月或 3 个次版本(以更长的时间为准)。
- 类型
-
object
1.4. AlertingRule [monitoring.openshift.io/v1]
- 描述
- AlertingRule 代表一组用户定义的 Prometheus 规则组,其中包含警报规则。此资源是集群管理员根据 OpenShift 中平台监控堆栈记录的指标创建警报的方法,如部署到 openshift-monitoring 命名空间中的 Prometheus 实例。您可以使用它来根据组件(如 node_exporter)中的指标创建没有 OpenShift 附带的自定义警报规则,它提供机器级别的指标,如 CPU 使用量或 kube-state-metrics,它提供了有关 Kubernetes 使用量的指标。API 与来自 prometheus-operator 的上游 PrometheusRule 类型兼容。这里不允许记录规则的主要区别。对于创建的每个 AlertingRule 资源,将在 openshift-monitoring 命名空间中创建对应的 PrometheusRule。OpenShift 要求管理员使用 AlertingRule 资源而不是上游类型,以允许更好的 OpenShift 默认和验证,而不直接修改上游 API。您可以在此处找到 PrometheusRule 资源的上游 API 文档 :https://github.com/prometheus-operator/prometheus-operator/blob/main/Documentation/api.md 兼容性级别 1: 可在主发行版本中至少提供 12 个月或 3 个次版本(以更长的时间为准)。
- 类型
-
对象
1.5. PodMonitor [monitoring.coreos.com/v1]
- 描述
- PodMonitor 为一组 pod 定义监控。
- 类型
-
对象
1.6. Probe [monitoring.coreos.com/v1]
- 描述
- 探测为一组静态目标或入口定义监控。
- 类型
-
对象
1.7. Prometheus [monitoring.coreos.com/v1]
- 描述
- Prometheus 定义 Prometheus 部署。
- 类型
-
对象
1.8. PrometheusRule [monitoring.coreos.com/v1]
- 描述
- PrometheusRule 为 Prometheus 实例定义记录和警报规则
- 类型
-
对象
1.9. ServiceMonitor [monitoring.coreos.com/v1]
- 描述
- ServiceMonitor 为一组服务定义监控。
- 类型
-
对象
1.10. ThanosRuler [monitoring.coreos.com/v1]
- 描述
- ThanosRuler 定义 ThanosRuler 部署。
- 类型
-
object
1.11. NodeMetrics [metrics.k8s.io/v1beta1]
- 描述
- NodeMetrics 设置节点的资源使用量指标。
- 类型
-
object
1.12. PodMetrics [metrics.k8s.io/v1beta1]
- 描述
- PodMetrics 设置 pod 的资源使用量指标。
- 类型
-
对象
第 2 章 Alertmanager [monitoring.coreos.com/v1]
- 描述
- Alertmanager 描述 Alertmanager 集群。
- 类型
-
object
- 必填
-
spec
-
2.1. 规格
属性 | 类型 | 描述 |
---|---|---|
|
| APIVersion 定义对象的这个表示法的版本化的 schema。服务器应该将识别的模式转换为最新的内部值,并可拒绝未识别的值。更多信息: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources |
|
| kind 是一个字符串值,代表此对象所代表的 REST 资源。服务器可以从客户端向其提交请求的端点推断。无法更新。采用驼峰拼写法 (CamelCase)。更多信息: 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 | |
|
| Alertmanager 集群所需行为的规格。更多信息: https://github.com/kubernetes/community/blob/master/contributors/devel/sig-architecture/api-conventions.md#spec-and-status |
|
| Alertmanager 集群的状态最近观察到的状态。只读。更多信息: https://github.com/kubernetes/community/blob/master/contributors/devel/sig-architecture/api-conventions.md#spec-and-status |
2.1.1. .spec
- 描述
- Alertmanager 集群所需行为的规格。更多信息: https://github.com/kubernetes/community/blob/master/contributors/devel/sig-architecture/api-conventions.md#spec-and-status
- 类型
-
object
属性 | 类型 | 描述 |
---|---|---|
|
| AdditionalPeers 允许将一组额外的 Alertmanager 注入与 peer 组成一个高可用性集群。 |
|
| 如果指定,pod 的调度限制。 |
|
| AlertmanagerConfigMatcherStrategy 定义 AlertmanagerConfig 对象如何与警报匹配。以后可能会添加更多选项。 |
|
| 为 AlertmanagerConfig 发现选择的命名空间。如果为 nil,则仅检查自己的命名空间。 |
|
| 要选择的 alertmanagerconfigs,用于合并并配置 Alertmanager。 |
|
| alertmanagerConfiguration 指定 Alertmanager 的配置。
如果定义,它优先于 这是一个 实验性功能,它可能会以中断的方式改变任何即将推出的版本。 |
|
|
AutomountServiceAccountToken 表示服务帐户令牌是否应该自动挂载到 pod 中。如果服务帐户具有 |
|
| 用于部署 pod 的基础镜像,没有标签。deprecated: 使用 'image' 替代。 |
|
| ClusterAdvertiseAddress 是集群中要公告的显式地址。需要为非 RFC1918 [1] (公共)地址提供。[1] RFC1918: https://tools.ietf.org/html/rfc1918 |
|
| 在 gosip 尝试之间间隔。 |
|
|
定义唯一标识 Alertmanager 集群的标识符。只有在 Alertmanager 集群包含此 Alertmanager 资源外部的 Alertmanager 实例时,才应设置它。在实践中,外部实例的地址通过 |
|
| 集群对等的超时时间。 |
|
| 拉取尝试之间的间隔。 |
|
|
ConfigMap 是与 Alertmanager 对象相同的命名空间中的 ConfigMap 列表,该对象应挂载到 Alertmanager Pod 中。每个 ConfigMap 都作为名为 |
|
|
ConfigSecret 是与 Alertmanager 对象相同的命名空间中的 Kubernetes Secret 的名称,其中包含此 Alertmanager 实例的配置。如果为空,则默认为
Alertmanager 配置应在
如果缺少 secret 或 |
|
|
容器允许注入其他容器。这是允许向 Alertmanager pod 添加身份验证代理。这里描述的容器如果操作器共享相同的名称和修改,则修改通过战略合并补丁来完成。当前容器名称为: |
|
| 要在 pod 中运行的单一应用程序容器。 |
|
| 启用对 Alertmanager 功能标记的访问。默认情况下,不启用任何功能。启用默认情况下禁用的功能完全超出了维护人员将支持什么范围,通过这样做,您接受的行为可能随时中断,而无需通知。 它需要 Alertmanager >= 0.27.0。 |
|
| Alertmanager 实例将位于的外部 URL。这是生成正确 URL 所必需的。如果 Alertmanager 没有从 DNS 名称的根目录提供,则需要此项。 |
|
| ForceEnableClusterMode 可确保 Alertmanager 在使用单个副本运行时不会取消激活集群模式。用例是,例如在 Kubernetes 集群间生成 Alertmanager 集群,每个集群都有单个副本。 |
|
| Pod 的 hostAliases 配置 |
|
| HostAlias 包含 IP 和主机名之间的映射,这些映射将作为 pod 的主机文件中的条目注入。 |
|
| 如果指定,则镜像的优先级高于 baseImage、tag 和 sha 组合。仍然需要指定版本以确保 Prometheus Operator 知道要配置 Alertmanager 版本。 |
|
| 'alertmanager', 'init-config-reloader' 和 'config-reloader' 容器的镜像拉取策略。详情请查看 https://kubernetes.io/docs/concepts/containers/images/#image-pull-policy。 |
|
| 从 registry 中对同一命名空间中的 secret 的引用列表,用于从 registry 中拉取 prometheus 和 alertmanager 镜像,请参阅 http://kubernetes.io/docs/user-guide/images#specifying-imagepullsecrets-on-a-pod |
|
| LocalObjectReference 包含足够信息,供您在同一命名空间中找到引用的对象。 |
|
|
initContainers 允许将 initContainers 添加到 pod 定义中。它们可用于从外部来源获取用于注入 Alertmanager 配置的 secret。执行 initContainer 期间的任何错误将导致重启 Pod。更多信息: https://kubernetes.io/docs/concepts/workloads/pods/init-containers/ InitContainers如果操作器共享相同的名称和修改,则修改 Operator 生成的 init 容器(如果它们通过策略合并补丁完成)。当前 init 容器名称为: |
|
| 要在 pod 中运行的单一应用程序容器。 |
|
| ListenLocal 使 Alertmanager 服务器侦听回环,因此它不会绑定 Pod IP。请注意,这只适用于 Alertmanager UI,而不是 gossip 通信。 |
|
| 用于配置 Alertmanager 的日志格式。 |
|
| 用于配置 Alertmanager 的日志级别。 |
|
| 新创建的 pod 应该在不出现任何容器崩溃的情况下变为可用状态的最小秒数。默认值为 0 (pod 会在就绪时被视为可用)。这是 kubernetes 1.22 的一个 alpha 字段,直到 1.24 (需要启用 StatefulSetMinReadySeconds 功能门)。 |
|
| 定义 Pod 调度到哪些节点上。 |
|
| 如果设置为 true,则不会执行底层受管对象的所有操作,但 delete 操作除外。 |
|
| podMetadata 配置传播到 Alertmanager pod 的标签和注解。 以下项目会被保留且无法覆盖:* "alertmanager" 标签,设置为 Alertmanager 实例的名称。* "app.kubernetes.io/instance" 标签,设置为 Alertmanager 实例的名称。* "app.kubernetes.io/managed-by" 标签,设置为 "prometheus-operator"。* "app.kubernetes.io/name" label, set to "alertmanager".* "app.kubernetes.io/version" 标签,设置为 Alertmanager 版本。* "kubectl.kubernetes.io/default-container" annotation, set to "alertmanager". |
|
|
用于 pod 和监管服务的端口名称。默认为 |
|
| 分配给 Pod 的优先级类 |
|
| size 是 alertmanager 集群的预期大小。控制器最终将使正在运行的集群的大小等于预期大小。 |
|
| 为单个 Pod 定义资源请求和限值。 |
|
|
Alertmanager 应该保留数据的时长:默认为 '120h',它必须与正则表达式 |
|
|
Alertmanager 为以下情况注册 HTTP 处理程序的路由前缀。这在使用 ExternalURL 和代理时很有用,如果重写请求的 HTTP 路由,并且实际的 ExternalURL 仍为 true,但服务器在不同的路由前缀下提供请求。例如,用于 |
|
|
secret 是与 Alertmanager 对象相同的命名空间中的 Secret 列表,它应挂载到 Alertmanager Pod 中。每个 Secret 都作为名为 |
|
| securityContext 包含 pod 级别的安全属性和通用容器设置。默认为默认的 PodSecurityContext。 |
|
| serviceAccountName 是用于运行 Prometheus Pod 的 ServiceAccount 的名称。 |
|
|
要部署的 Alertmanager 容器镜像的 SHA。默认为 |
|
| 存储是 Alertmanager 实例如何使用存储的定义。 |
|
|
要部署的 Alertmanager 容器镜像标签。默认为 |
|
| 如果指定,pod 的容限。 |
|
| 此 Toleration 附加到 pod,以使用匹配的 operator <operator> 容许与 triple <key,value,effect> 匹配的任何污点。 |
|
| 如果指定,pod 的拓扑分布限制。 |
|
| TopologySpreadConstraint 指定如何在给定的拓扑中分布匹配的 pod。 |
|
| 集群应该为 on 的版本。 |
|
| volumeMounts 允许在输出 StatefulSet 定义上配置额外的 VolumeMount。指定 volumeMounts 将附加到 alertmanager 容器中的其他 VolumeMount,这些 VolumeMount 会根据 StorageSpec 对象生成的。 |
|
| VolumeMount 描述了容器内卷挂载。 |
|
| 卷允许在输出 StatefulSet 定义中配置额外的卷。指定的卷将附加到作为 StorageSpec 对象生成的其他卷。 |
|
| 卷代表 pod 中的指定卷,可以被 pod 中的任何容器访问。 |
|
| 定义启动 Alertmanager 时的 Web 命令行标志。 |
2.1.2. .spec.affinity
- 描述
- 如果指定,pod 的调度限制。
- 类型
-
object
属性 | 类型 | 描述 |
---|---|---|
|
| 描述 pod 的节点关联性调度规则。 |
|
| 描述 pod 关联性调度规则(例如,将这个 pod 位于同一个节点、区等)中。 |
|
| 描述 pod 反关联性调度规则(例如,避免将此 pod 放置到同一个节点、区等)。 |
2.1.3. .spec.affinity.nodeAffinity
- 描述
- 描述 pod 的节点关联性调度规则。
- 类型
-
object
属性 | 类型 | 描述 |
---|---|---|
|
| 调度程序更喜欢将 pod 调度到满足此字段指定的关联性表达式的节点,但可能会选择违反一个或多个表达式的节点。最首选节点是具有最大权重总和的节点,即对于满足所有调度要求(资源请求、必需关联表达式等)的每个节点,计算出一个总和总和总和总和(如果节点与相应的 matchExpressions 匹配),则计算总和最高的节点是最首选的。 |
|
| 空白的首选调度术语与带有隐式权重 0 (例如,它的一个 no-op)的所有对象匹配。空首选调度术语不匹配任何对象(例如,也是 no-op)。 |
|
| 如果在调度时没有满足此字段指定的关联性要求,则 pod 不会被调度到该节点上。如果此字段指定的关联性要求在 pod 执行期间某一点满足(例如,由于更新),则系统可能或可能无法最终从其节点驱除 pod。 |
2.1.4. .spec.affinity.nodeAffinity.preferredDuringSchedulingIgnoredDuringExecution
- 描述
- 调度程序更喜欢将 pod 调度到满足此字段指定的关联性表达式的节点,但可能会选择违反一个或多个表达式的节点。最首选节点是具有最大权重总和的节点,即对于满足所有调度要求(资源请求、必需关联表达式等)的每个节点,计算出一个总和总和总和总和(如果节点与相应的 matchExpressions 匹配),则计算总和最高的节点是最首选的。
- 类型
-
array
2.1.5. .spec.affinity.nodeAffinity.preferredDuringSchedulingIgnoredDuringExecution[]
- 描述
- 空白的首选调度术语与带有隐式权重 0 (例如,它的一个 no-op)的所有对象匹配。空首选调度术语不匹配任何对象(例如,也是 no-op)。
- 类型
-
object
- 必填
-
preference
-
weight
-
属性 | 类型 | 描述 |
---|---|---|
|
| 与对应权重关联的节点选择器术语。 |
|
| 与对应 nodeSelectorTerm 关联的权重,范围为 1-100。 |
2.1.6. .spec.affinity.nodeAffinity.preferredDuringSchedulingIgnoredDuringExecution[].preference
- 描述
- 与对应权重关联的节点选择器术语。
- 类型
-
object
属性 | 类型 | 描述 |
---|---|---|
|
| 按节点标签划分的节点选择器要求列表。 |
|
| 节点选择器要求是一个选择器,其中包含与键和值相关的值、键和值。 |
|
| 按节点字段划分的节点选择器要求列表。 |
|
| 节点选择器要求是一个选择器,其中包含与键和值相关的值、键和值。 |
2.1.7. .spec.affinity.nodeAffinity.preferredDuringSchedulingIgnoredDuringExecution[].preference.matchExpressions
- 描述
- 按节点标签划分的节点选择器要求列表。
- 类型
-
array
2.1.8. .spec.affinity.nodeAffinity.preferredDuringSchedulingIgnoredDuringExecution[].preference.matchExpressions[]
- 描述
- 节点选择器要求是一个选择器,其中包含与键和值相关的值、键和值。
- 类型
-
object
- 必填
-
key
-
operator
-
属性 | 类型 | 描述 |
---|---|---|
|
| 选择器应用到的标签键。 |
|
| 代表键与一组值的关系。有效的运算符为 In、NotIn、Exists、DoesNotExist。gt 和 Lt. |
|
| 字符串值数组。如果运算符是 In 或 NotIn,则值数组必须是非空的。如果运算符是 Exists 或 DoesNotExist,则值数组必须为空。如果运算符是 Gt 或 Lt,则值数组必须具有单个元素,它将解释为整数。这个数组会在策略性合并补丁中被替换。 |
2.1.9. .spec.affinity.nodeAffinity.preferredDuringSchedulingIgnoredDuringExecution[].preference.matchFields
- 描述
- 按节点字段划分的节点选择器要求列表。
- 类型
-
array
2.1.10. .spec.affinity.nodeAffinity.preferredDuringSchedulingIgnoredDuringExecution[].preference.matchFields[]
- 描述
- 节点选择器要求是一个选择器,其中包含与键和值相关的值、键和值。
- 类型
-
object
- 必填
-
key
-
operator
-
属性 | 类型 | 描述 |
---|---|---|
|
| 选择器应用到的标签键。 |
|
| 代表键与一组值的关系。有效的运算符为 In、NotIn、Exists、DoesNotExist。gt 和 Lt. |
|
| 字符串值数组。如果运算符是 In 或 NotIn,则值数组必须是非空的。如果运算符是 Exists 或 DoesNotExist,则值数组必须为空。如果运算符是 Gt 或 Lt,则值数组必须具有单个元素,它将解释为整数。这个数组会在策略性合并补丁中被替换。 |
2.1.11. .spec.affinity.nodeAffinity.requiredDuringSchedulingIgnoredDuringExecution
- 描述
- 如果在调度时没有满足此字段指定的关联性要求,则 pod 不会被调度到该节点上。如果此字段指定的关联性要求在 pod 执行期间某一点满足(例如,由于更新),则系统可能或可能无法最终从其节点驱除 pod。
- 类型
-
object
- 必填
-
nodeSelectorTerms
-
属性 | 类型 | 描述 |
---|---|---|
|
| 必需。节点选择器术语列表。术语为 ORed。 |
|
| null 或空节点选择器术语不匹配任何对象。它们的要求是 AND。TopologySelectorTerm 类型实现 NodeSelectorTerm 的子集。 |
2.1.12. .spec.affinity.nodeAffinity.requiredDuringSchedulingIgnoredDuringExecution.nodeSelectorTerms
- 描述
- 必需。节点选择器术语列表。术语为 ORed。
- 类型
-
array
2.1.13. .spec.affinity.nodeAffinity.requiredDuringSchedulingIgnoredDuringExecution.nodeSelectorTerms[]
- 描述
- null 或空节点选择器术语不匹配任何对象。它们的要求是 AND。TopologySelectorTerm 类型实现 NodeSelectorTerm 的子集。
- 类型
-
object
属性 | 类型 | 描述 |
---|---|---|
|
| 按节点标签划分的节点选择器要求列表。 |
|
| 节点选择器要求是一个选择器,其中包含与键和值相关的值、键和值。 |
|
| 按节点字段划分的节点选择器要求列表。 |
|
| 节点选择器要求是一个选择器,其中包含与键和值相关的值、键和值。 |
2.1.14. .spec.affinity.nodeAffinity.requiredDuringSchedulingIgnoredDuringExecution.nodeSelectorTerms[].matchExpressions
- 描述
- 按节点标签划分的节点选择器要求列表。
- 类型
-
array
2.1.15. .spec.affinity.nodeAffinity.requiredDuringSchedulingIgnoredDuringExecution.nodeSelectorTerms[].matchExpressions[]
- 描述
- 节点选择器要求是一个选择器,其中包含与键和值相关的值、键和值。
- 类型
-
object
- 必填
-
key
-
operator
-
属性 | 类型 | 描述 |
---|---|---|
|
| 选择器应用到的标签键。 |
|
| 代表键与一组值的关系。有效的运算符为 In、NotIn、Exists、DoesNotExist。gt 和 Lt. |
|
| 字符串值数组。如果运算符是 In 或 NotIn,则值数组必须是非空的。如果运算符是 Exists 或 DoesNotExist,则值数组必须为空。如果运算符是 Gt 或 Lt,则值数组必须具有单个元素,它将解释为整数。这个数组会在策略性合并补丁中被替换。 |
2.1.16. .spec.affinity.nodeAffinity.requiredDuringSchedulingIgnoredDuringExecution.nodeSelectorTerms[].matchFields
- 描述
- 按节点字段划分的节点选择器要求列表。
- 类型
-
array
2.1.17. .spec.affinity.nodeAffinity.requiredDuringSchedulingIgnoredDuringExecution.nodeSelectorTerms[].matchFields[]
- 描述
- 节点选择器要求是一个选择器,其中包含与键和值相关的值、键和值。
- 类型
-
object
- 必填
-
key
-
operator
-
属性 | 类型 | 描述 |
---|---|---|
|
| 选择器应用到的标签键。 |
|
| 代表键与一组值的关系。有效的运算符为 In、NotIn、Exists、DoesNotExist。gt 和 Lt. |
|
| 字符串值数组。如果运算符是 In 或 NotIn,则值数组必须是非空的。如果运算符是 Exists 或 DoesNotExist,则值数组必须为空。如果运算符是 Gt 或 Lt,则值数组必须具有单个元素,它将解释为整数。这个数组会在策略性合并补丁中被替换。 |
2.1.18. .spec.affinity.podAffinity
- 描述
- 描述 pod 关联性调度规则(例如,将这个 pod 位于同一个节点、区等)中。
- 类型
-
object
属性 | 类型 | 描述 |
---|---|---|
|
| 调度程序更喜欢将 pod 调度到满足此字段指定的关联性表达式的节点,但可能会选择违反一个或多个表达式的节点。最首选的节点是具有最大权重总和的节点(即,对于满足所有调度要求的节点(resource request、requiredDuringScheduling 关联性表达式等)的每个节点,计算并迭代此字段元素,并在节点具有与对应 podAffinityTerm 匹配的 pod 时,将"weight"添加到总和(如果节点具有最高 podAffinityTerm)、具有最高总和最高的节点是首选。 |
|
| 所有匹配的 WeightedPodAffinityTerm 字段的权重添加到每个节点,以查找最首选节点。 |
|
| 如果在调度时没有满足此字段指定的关联性要求,则 pod 不会被调度到该节点上。如果此字段指定的关联性要求在 pod 执行期间某一点满足(例如,由于 pod 标签更新),则系统可能或可能无法最终从其节点驱除 pod。当有多个元素时,与每个 podAffinityTerm 对应的节点列表都会被交集,例如必须满足所有术语。 |
|
| 定义一组 pod (即,与给定命名空间相对 labelSelector 匹配的 labelSelector ),该 pod 应该与 pod 共同定位(反关联性)或没有共同定位(反关联性)的节点上运行,其中 co-located 在具有键 <topologyKey> 标签的节点上运行,它与其上运行一组 pod 的 pod 匹配。 |
2.1.19. .spec.affinity.podAffinity.preferredDuringSchedulingIgnoredDuringExecution
- 描述
- 调度程序更喜欢将 pod 调度到满足此字段指定的关联性表达式的节点,但可能会选择违反一个或多个表达式的节点。最首选的节点是具有最大权重总和的节点(即,对于满足所有调度要求的节点(resource request、requiredDuringScheduling 关联性表达式等)的每个节点,计算并迭代此字段元素,并在节点具有与对应 podAffinityTerm 匹配的 pod 时,将"weight"添加到总和(如果节点具有最高 podAffinityTerm)、具有最高总和最高的节点是首选。
- 类型
-
array
2.1.20. .spec.affinity.podAffinity.preferredDuringSchedulingIgnoredDuringExecution[]
- 描述
- 所有匹配的 WeightedPodAffinityTerm 字段的权重添加到每个节点,以查找最首选节点。
- 类型
-
object
- 必填
-
podAffinityTerm
-
weight
-
属性 | 类型 | 描述 |
---|---|---|
|
| 必需。与对应权重关联的 pod 关联性术语。 |
|
| 与对应的 podAffinityTerm 关联的权重,范围为 1-100。 |
2.1.21. .spec.affinity.podAffinity.preferredDuringSchedulingIgnoredDuringExecution[].podAffinityTerm
- 描述
- 必需。与对应权重关联的 pod 关联性术语。
- 类型
-
object
- 必填
-
topologyKey
-
属性 | 类型 | 描述 |
---|---|---|
|
| 对一组资源进行标签查询,本例中为 pod。如果为空,则此 PodAffinityTerm 与任何 Pod 匹配。 |
|
|
matchLabelKeys 是一组 pod 标签键,用于选择要考虑哪些 pod。键用于从传入的 pod 标签中查找值,这些键值标签与 |
|
|
MismatchLabelKeys 是一组 pod 标签键,用于选择要考虑哪些 pod。键用于从传入的 pod 标签中查找值,这些键值标签与 |
|
| 术语适用的命名空间集合上的标签查询。术语应用于此字段选定的命名空间的 union,以及 namespaces 字段中列出的命名空间。null selector 和 null 或空命名空间列表表示"此 pod 的命名空间"。空选择器({})匹配所有命名空间。 |
|
| namespaces 指定术语应用到的命名空间名称的静态列表。术语应用到此字段中列出的命名空间的 union,namespaceSelector 选择的命名空间列表和 null namespaceSelector 表示 " this pod 的命名空间"。 |
|
| 此 pod 应该在指定命名空间中与 labelSelector 匹配的 pod 共存(反关联性),其中 co-located 定义为在运行所选 pod 的节点的值为 running 的节点上运行。不允许为空 topologyKey。 |
2.1.22. .spec.affinity.podAffinity.preferredDuringSchedulingIgnoredDuringExecution[].podAffinityTerm.labelSelector
- 描述
- 对一组资源进行标签查询,本例中为 pod。如果为空,则此 PodAffinityTerm 与任何 Pod 匹配。
- 类型
-
object
属性 | 类型 | 描述 |
---|---|---|
|
| matchExpressions 是标签选择器要求列表。要求的逻辑关系是 AND。 |
|
| 标签选择器要求是一个选择器,其中包含与键和值相关的值、键和值。 |
|
| matchLabels 是 {key,value} 对的映射。MatchLabels 映射中的单个 {key,value} 等同于 matchExpressions 的一个元素,其 key 字段是 "key",运算符是 "In",值数组仅包含 "value"。要求的逻辑关系是 AND。 |
2.1.23. .spec.affinity.podAffinity.preferredDuringSchedulingIgnoredDuringExecution[].podAffinityTerm.labelSelector.matchExpressions
- 描述
- matchExpressions 是标签选择器要求列表。要求的逻辑关系是 AND。
- 类型
-
array
2.1.24. .spec.affinity.podAffinity.preferredDuringSchedulingIgnoredDuringExecution[].podAffinityTerm.labelSelector.matchExpressions[]
- 描述
- 标签选择器要求是一个选择器,其中包含与键和值相关的值、键和值。
- 类型
-
object
- 必填
-
key
-
operator
-
属性 | 类型 | 描述 |
---|---|---|
|
| key 是选择器应用到的标签键。 |
|
| 运算符代表一个键与一组值的关系。有效的运算符是 In、NotIn、Exists 和 DoesNotExist。 |
|
| 值是字符串值的数组。如果运算符是 In 或 NotIn,则值数组必须是非空的。如果运算符是 Exists 或 DoesNotExist,则值数组必须为空。这个数组会在策略性合并补丁中被替换。 |
2.1.25. .spec.affinity.podAffinity.preferredDuringSchedulingIgnoredDuringExecution[].podAffinityTerm.namespaceSelector
- 描述
- 术语适用的命名空间集合上的标签查询。术语应用于此字段选定的命名空间的 union,以及 namespaces 字段中列出的命名空间。null selector 和 null 或空命名空间列表表示"此 pod 的命名空间"。空选择器({})匹配所有命名空间。
- 类型
-
object
属性 | 类型 | 描述 |
---|---|---|
|
| matchExpressions 是标签选择器要求列表。要求的逻辑关系是 AND。 |
|
| 标签选择器要求是一个选择器,其中包含与键和值相关的值、键和值。 |
|
| matchLabels 是 {key,value} 对的映射。MatchLabels 映射中的单个 {key,value} 等同于 matchExpressions 的一个元素,其 key 字段是 "key",运算符是 "In",值数组仅包含 "value"。要求的逻辑关系是 AND。 |
2.1.26. .spec.affinity.podAffinity.preferredDuringSchedulingIgnoredDuringExecution[].podAffinityTerm.namespaceSelector.matchExpressions
- 描述
- matchExpressions 是标签选择器要求列表。要求的逻辑关系是 AND。
- 类型
-
array
2.1.27. .spec.affinity.podAffinity.preferredDuringSchedulingIgnoredDuringExecution[].podAffinityTerm.namespaceSelector.matchExpressions[]
- 描述
- 标签选择器要求是一个选择器,其中包含与键和值相关的值、键和值。
- 类型
-
object
- 必填
-
key
-
operator
-
属性 | 类型 | 描述 |
---|---|---|
|
| key 是选择器应用到的标签键。 |
|
| 运算符代表一个键与一组值的关系。有效的运算符是 In、NotIn、Exists 和 DoesNotExist。 |
|
| 值是字符串值的数组。如果运算符是 In 或 NotIn,则值数组必须是非空的。如果运算符是 Exists 或 DoesNotExist,则值数组必须为空。这个数组会在策略性合并补丁中被替换。 |
2.1.28. .spec.affinity.podAffinity.requiredDuringSchedulingIgnoredDuringExecution
- 描述
- 如果在调度时没有满足此字段指定的关联性要求,则 pod 不会被调度到该节点上。如果此字段指定的关联性要求在 pod 执行期间某一点满足(例如,由于 pod 标签更新),则系统可能或可能无法最终从其节点驱除 pod。当有多个元素时,与每个 podAffinityTerm 对应的节点列表都会被交集,例如必须满足所有术语。
- 类型
-
array
2.1.29. .spec.affinity.podAffinity.requiredDuringSchedulingIgnoredDuringExecution[]
- 描述
- 定义一组 pod (即,与给定命名空间相对 labelSelector 匹配的 labelSelector ),该 pod 应该与 pod 共同定位(反关联性)或没有共同定位(反关联性)的节点上运行,其中 co-located 在具有键 <topologyKey> 标签的节点上运行,它与其上运行一组 pod 的 pod 匹配。
- 类型
-
object
- 必填
-
topologyKey
-
属性 | 类型 | 描述 |
---|---|---|
|
| 对一组资源进行标签查询,本例中为 pod。如果为空,则此 PodAffinityTerm 与任何 Pod 匹配。 |
|
|
matchLabelKeys 是一组 pod 标签键,用于选择要考虑哪些 pod。键用于从传入的 pod 标签中查找值,这些键值标签与 |
|
|
MismatchLabelKeys 是一组 pod 标签键,用于选择要考虑哪些 pod。键用于从传入的 pod 标签中查找值,这些键值标签与 |
|
| 术语适用的命名空间集合上的标签查询。术语应用于此字段选定的命名空间的 union,以及 namespaces 字段中列出的命名空间。null selector 和 null 或空命名空间列表表示"此 pod 的命名空间"。空选择器({})匹配所有命名空间。 |
|
| namespaces 指定术语应用到的命名空间名称的静态列表。术语应用到此字段中列出的命名空间的 union,namespaceSelector 选择的命名空间列表和 null namespaceSelector 表示 " this pod 的命名空间"。 |
|
| 此 pod 应该在指定命名空间中与 labelSelector 匹配的 pod 共存(反关联性),其中 co-located 定义为在运行所选 pod 的节点的值为 running 的节点上运行。不允许为空 topologyKey。 |
2.1.30. .spec.affinity.podAffinity.requiredDuringSchedulingIgnoredDuringExecution[].labelSelector
- 描述
- 对一组资源进行标签查询,本例中为 pod。如果为空,则此 PodAffinityTerm 与任何 Pod 匹配。
- 类型
-
object
属性 | 类型 | 描述 |
---|---|---|
|
| matchExpressions 是标签选择器要求列表。要求的逻辑关系是 AND。 |
|
| 标签选择器要求是一个选择器,其中包含与键和值相关的值、键和值。 |
|
| matchLabels 是 {key,value} 对的映射。MatchLabels 映射中的单个 {key,value} 等同于 matchExpressions 的一个元素,其 key 字段是 "key",运算符是 "In",值数组仅包含 "value"。要求的逻辑关系是 AND。 |
2.1.31. .spec.affinity.podAffinity.requiredDuringSchedulingIgnoredDuringExecution[].labelSelector.matchExpressions
- 描述
- matchExpressions 是标签选择器要求列表。要求的逻辑关系是 AND。
- 类型
-
array
2.1.32. .spec.affinity.podAffinity.requiredDuringSchedulingIgnoredDuringExecution[].labelSelector.matchExpressions[]
- 描述
- 标签选择器要求是一个选择器,其中包含与键和值相关的值、键和值。
- 类型
-
object
- 必填
-
key
-
operator
-
属性 | 类型 | 描述 |
---|---|---|
|
| key 是选择器应用到的标签键。 |
|
| 运算符代表一个键与一组值的关系。有效的运算符是 In、NotIn、Exists 和 DoesNotExist。 |
|
| 值是字符串值的数组。如果运算符是 In 或 NotIn,则值数组必须是非空的。如果运算符是 Exists 或 DoesNotExist,则值数组必须为空。这个数组会在策略性合并补丁中被替换。 |
2.1.33. .spec.affinity.podAffinity.requiredDuringSchedulingIgnoredDuringExecution[].namespaceSelector
- 描述
- 术语适用的命名空间集合上的标签查询。术语应用于此字段选定的命名空间的 union,以及 namespaces 字段中列出的命名空间。null selector 和 null 或空命名空间列表表示"此 pod 的命名空间"。空选择器({})匹配所有命名空间。
- 类型
-
object
属性 | 类型 | 描述 |
---|---|---|
|
| matchExpressions 是标签选择器要求列表。要求的逻辑关系是 AND。 |
|
| 标签选择器要求是一个选择器,其中包含与键和值相关的值、键和值。 |
|
| matchLabels 是 {key,value} 对的映射。MatchLabels 映射中的单个 {key,value} 等同于 matchExpressions 的一个元素,其 key 字段是 "key",运算符是 "In",值数组仅包含 "value"。要求的逻辑关系是 AND。 |
2.1.34. .spec.affinity.podAffinity.requiredDuringSchedulingIgnoredDuringExecution[].namespaceSelector.matchExpressions
- 描述
- matchExpressions 是标签选择器要求列表。要求的逻辑关系是 AND。
- 类型
-
array
2.1.35. .spec.affinity.podAffinity.requiredDuringSchedulingIgnoredDuringExecution[].namespaceSelector.matchExpressions[]
- 描述
- 标签选择器要求是一个选择器,其中包含与键和值相关的值、键和值。
- 类型
-
object
- 必填
-
key
-
operator
-
属性 | 类型 | 描述 |
---|---|---|
|
| key 是选择器应用到的标签键。 |
|
| 运算符代表一个键与一组值的关系。有效的运算符是 In、NotIn、Exists 和 DoesNotExist。 |
|
| 值是字符串值的数组。如果运算符是 In 或 NotIn,则值数组必须是非空的。如果运算符是 Exists 或 DoesNotExist,则值数组必须为空。这个数组会在策略性合并补丁中被替换。 |
2.1.36. .spec.affinity.podAntiAffinity
- 描述
- 描述 pod 反关联性调度规则(例如,避免将此 pod 放置到同一个节点、区等)。
- 类型
-
object
属性 | 类型 | 描述 |
---|---|---|
|
| 调度程序更喜欢将 pod 调度到满足此字段指定的反关联性表达式的节点,但可能会选择违反一个或多个表达式的节点。最首选的节点是具有最大权重总和的节点,即对于满足所有调度要求(资源请求、requiredDuringScheduling 反关联性表达式等)的每个节点,计算通过此字段元素来计算总和总和(如果节点具有与对应的 podAffinityTerm 匹配的 pod)的总和。 |
|
| 所有匹配的 WeightedPodAffinityTerm 字段的权重添加到每个节点,以查找最首选节点。 |
|
| 如果在调度时没有满足此字段指定的反关联性要求,则 pod 不会被调度到该节点上。如果此字段指定的反关联性要求在 Pod 执行期间某一点满足(例如,由于 pod 标签更新),则系统可能或可能无法最终从其节点驱除 pod。当有多个元素时,与每个 podAffinityTerm 对应的节点列表都会被交集,例如必须满足所有术语。 |
|
| 定义一组 pod (即,与给定命名空间相对 labelSelector 匹配的 labelSelector ),该 pod 应该与 pod 共同定位(反关联性)或没有共同定位(反关联性)的节点上运行,其中 co-located 在具有键 <topologyKey> 标签的节点上运行,它与其上运行一组 pod 的 pod 匹配。 |
2.1.37. .spec.affinity.podAntiAffinity.preferredDuringSchedulingIgnoredDuringExecution
- 描述
- 调度程序更喜欢将 pod 调度到满足此字段指定的反关联性表达式的节点,但可能会选择违反一个或多个表达式的节点。最首选的节点是具有最大权重总和的节点,即对于满足所有调度要求(资源请求、requiredDuringScheduling 反关联性表达式等)的每个节点,计算通过此字段元素来计算总和总和(如果节点具有与对应的 podAffinityTerm 匹配的 pod)的总和。
- 类型
-
array
2.1.38. .spec.affinity.podAntiAffinity.preferredDuringSchedulingIgnoredDuringExecution[]
- 描述
- 所有匹配的 WeightedPodAffinityTerm 字段的权重添加到每个节点,以查找最首选节点。
- 类型
-
object
- 必填
-
podAffinityTerm
-
weight
-
属性 | 类型 | 描述 |
---|---|---|
|
| 必需。与对应权重关联的 pod 关联性术语。 |
|
| 与对应的 podAffinityTerm 关联的权重,范围为 1-100。 |
2.1.39. .spec.affinity.podAntiAffinity.preferredDuringSchedulingIgnoredDuringExecution[].podAffinityTerm
- 描述
- 必需。与对应权重关联的 pod 关联性术语。
- 类型
-
object
- 必填
-
topologyKey
-
属性 | 类型 | 描述 |
---|---|---|
|
| 对一组资源进行标签查询,本例中为 pod。如果为空,则此 PodAffinityTerm 与任何 Pod 匹配。 |
|
|
matchLabelKeys 是一组 pod 标签键,用于选择要考虑哪些 pod。键用于从传入的 pod 标签中查找值,这些键值标签与 |
|
|
MismatchLabelKeys 是一组 pod 标签键,用于选择要考虑哪些 pod。键用于从传入的 pod 标签中查找值,这些键值标签与 |
|
| 术语适用的命名空间集合上的标签查询。术语应用于此字段选定的命名空间的 union,以及 namespaces 字段中列出的命名空间。null selector 和 null 或空命名空间列表表示"此 pod 的命名空间"。空选择器({})匹配所有命名空间。 |
|
| namespaces 指定术语应用到的命名空间名称的静态列表。术语应用到此字段中列出的命名空间的 union,namespaceSelector 选择的命名空间列表和 null namespaceSelector 表示 " this pod 的命名空间"。 |
|
| 此 pod 应该在指定命名空间中与 labelSelector 匹配的 pod 共存(反关联性),其中 co-located 定义为在运行所选 pod 的节点的值为 running 的节点上运行。不允许为空 topologyKey。 |
2.1.40. .spec.affinity.podAntiAffinity.preferredDuringSchedulingIgnoredDuringExecution[].podAffinityTerm.labelSelector
- 描述
- 对一组资源进行标签查询,本例中为 pod。如果为空,则此 PodAffinityTerm 与任何 Pod 匹配。
- 类型
-
object
属性 | 类型 | 描述 |
---|---|---|
|
| matchExpressions 是标签选择器要求列表。要求的逻辑关系是 AND。 |
|
| 标签选择器要求是一个选择器,其中包含与键和值相关的值、键和值。 |
|
| matchLabels 是 {key,value} 对的映射。MatchLabels 映射中的单个 {key,value} 等同于 matchExpressions 的一个元素,其 key 字段是 "key",运算符是 "In",值数组仅包含 "value"。要求的逻辑关系是 AND。 |
2.1.41. .spec.affinity.podAntiAffinity.preferredDuringSchedulingIgnoredDuringExecution[].podAffinityTerm.labelSelector.matchExpressions
- 描述
- matchExpressions 是标签选择器要求列表。要求的逻辑关系是 AND。
- 类型
-
array
2.1.42. .spec.affinity.podAntiAffinity.preferredDuringSchedulingIgnoredDuringExecution[].podAffinityTerm.labelSelector.matchExpressions[]
- 描述
- 标签选择器要求是一个选择器,其中包含与键和值相关的值、键和值。
- 类型
-
object
- 必填
-
key
-
operator
-
属性 | 类型 | 描述 |
---|---|---|
|
| key 是选择器应用到的标签键。 |
|
| 运算符代表一个键与一组值的关系。有效的运算符是 In、NotIn、Exists 和 DoesNotExist。 |
|
| 值是字符串值的数组。如果运算符是 In 或 NotIn,则值数组必须是非空的。如果运算符是 Exists 或 DoesNotExist,则值数组必须为空。这个数组会在策略性合并补丁中被替换。 |
2.1.43. .spec.affinity.podAntiAffinity.preferredDuringSchedulingIgnoredDuringExecution[].podAffinityTerm.namespaceSelector
- 描述
- 术语适用的命名空间集合上的标签查询。术语应用于此字段选定的命名空间的 union,以及 namespaces 字段中列出的命名空间。null selector 和 null 或空命名空间列表表示"此 pod 的命名空间"。空选择器({})匹配所有命名空间。
- 类型
-
object
属性 | 类型 | 描述 |
---|---|---|
|
| matchExpressions 是标签选择器要求列表。要求的逻辑关系是 AND。 |
|
| 标签选择器要求是一个选择器,其中包含与键和值相关的值、键和值。 |
|
| matchLabels 是 {key,value} 对的映射。MatchLabels 映射中的单个 {key,value} 等同于 matchExpressions 的一个元素,其 key 字段是 "key",运算符是 "In",值数组仅包含 "value"。要求的逻辑关系是 AND。 |
2.1.44. .spec.affinity.podAntiAffinity.preferredDuringSchedulingIgnoredDuringExecution[].podAffinityTerm.namespaceSelector.matchExpressions
- 描述
- matchExpressions 是标签选择器要求列表。要求的逻辑关系是 AND。
- 类型
-
array
2.1.45. .spec.affinity.podAntiAffinity.preferredDuringSchedulingIgnoredDuringExecution[].podAffinityTerm.namespaceSelector.matchExpressions[]
- 描述
- 标签选择器要求是一个选择器,其中包含与键和值相关的值、键和值。
- 类型
-
object
- 必填
-
key
-
operator
-
属性 | 类型 | 描述 |
---|---|---|
|
| key 是选择器应用到的标签键。 |
|
| 运算符代表一个键与一组值的关系。有效的运算符是 In、NotIn、Exists 和 DoesNotExist。 |
|
| 值是字符串值的数组。如果运算符是 In 或 NotIn,则值数组必须是非空的。如果运算符是 Exists 或 DoesNotExist,则值数组必须为空。这个数组会在策略性合并补丁中被替换。 |
2.1.46. .spec.affinity.podAntiAffinity.requiredDuringSchedulingIgnoredDuringExecution
- 描述
- 如果在调度时没有满足此字段指定的反关联性要求,则 pod 不会被调度到该节点上。如果此字段指定的反关联性要求在 Pod 执行期间某一点满足(例如,由于 pod 标签更新),则系统可能或可能无法最终从其节点驱除 pod。当有多个元素时,与每个 podAffinityTerm 对应的节点列表都会被交集,例如必须满足所有术语。
- 类型
-
array
2.1.47. .spec.affinity.podAntiAffinity.requiredDuringSchedulingIgnoredDuringExecution[]
- 描述
- 定义一组 pod (即,与给定命名空间相对 labelSelector 匹配的 labelSelector ),该 pod 应该与 pod 共同定位(反关联性)或没有共同定位(反关联性)的节点上运行,其中 co-located 在具有键 <topologyKey> 标签的节点上运行,它与其上运行一组 pod 的 pod 匹配。
- 类型
-
object
- 必填
-
topologyKey
-
属性 | 类型 | 描述 |
---|---|---|
|
| 对一组资源进行标签查询,本例中为 pod。如果为空,则此 PodAffinityTerm 与任何 Pod 匹配。 |
|
|
matchLabelKeys 是一组 pod 标签键,用于选择要考虑哪些 pod。键用于从传入的 pod 标签中查找值,这些键值标签与 |
|
|
MismatchLabelKeys 是一组 pod 标签键,用于选择要考虑哪些 pod。键用于从传入的 pod 标签中查找值,这些键值标签与 |
|
| 术语适用的命名空间集合上的标签查询。术语应用于此字段选定的命名空间的 union,以及 namespaces 字段中列出的命名空间。null selector 和 null 或空命名空间列表表示"此 pod 的命名空间"。空选择器({})匹配所有命名空间。 |
|
| namespaces 指定术语应用到的命名空间名称的静态列表。术语应用到此字段中列出的命名空间的 union,namespaceSelector 选择的命名空间列表和 null namespaceSelector 表示 " this pod 的命名空间"。 |
|
| 此 pod 应该在指定命名空间中与 labelSelector 匹配的 pod 共存(反关联性),其中 co-located 定义为在运行所选 pod 的节点的值为 running 的节点上运行。不允许为空 topologyKey。 |
2.1.48. .spec.affinity.podAntiAffinity.requiredDuringSchedulingIgnoredDuringExecution[].labelSelector
- 描述
- 对一组资源进行标签查询,本例中为 pod。如果为空,则此 PodAffinityTerm 与任何 Pod 匹配。
- 类型
-
object
属性 | 类型 | 描述 |
---|---|---|
|
| matchExpressions 是标签选择器要求列表。要求的逻辑关系是 AND。 |
|
| 标签选择器要求是一个选择器,其中包含与键和值相关的值、键和值。 |
|
| matchLabels 是 {key,value} 对的映射。MatchLabels 映射中的单个 {key,value} 等同于 matchExpressions 的一个元素,其 key 字段是 "key",运算符是 "In",值数组仅包含 "value"。要求的逻辑关系是 AND。 |
2.1.49. .spec.affinity.podAntiAffinity.requiredDuringSchedulingIgnoredDuringExecution[].labelSelector.matchExpressions
- 描述
- matchExpressions 是标签选择器要求列表。要求的逻辑关系是 AND。
- 类型
-
array
2.1.50. .spec.affinity.podAntiAffinity.requiredDuringSchedulingIgnoredDuringExecution[].labelSelector.matchExpressions[]
- 描述
- 标签选择器要求是一个选择器,其中包含与键和值相关的值、键和值。
- 类型
-
object
- 必填
-
key
-
operator
-
属性 | 类型 | 描述 |
---|---|---|
|
| key 是选择器应用到的标签键。 |
|
| 运算符代表一个键与一组值的关系。有效的运算符是 In、NotIn、Exists 和 DoesNotExist。 |
|
| 值是字符串值的数组。如果运算符是 In 或 NotIn,则值数组必须是非空的。如果运算符是 Exists 或 DoesNotExist,则值数组必须为空。这个数组会在策略性合并补丁中被替换。 |
2.1.51. .spec.affinity.podAntiAffinity.requiredDuringSchedulingIgnoredDuringExecution[].namespaceSelector
- 描述
- 术语适用的命名空间集合上的标签查询。术语应用于此字段选定的命名空间的 union,以及 namespaces 字段中列出的命名空间。null selector 和 null 或空命名空间列表表示"此 pod 的命名空间"。空选择器({})匹配所有命名空间。
- 类型
-
object
属性 | 类型 | 描述 |
---|---|---|
|
| matchExpressions 是标签选择器要求列表。要求的逻辑关系是 AND。 |
|
| 标签选择器要求是一个选择器,其中包含与键和值相关的值、键和值。 |
|
| matchLabels 是 {key,value} 对的映射。MatchLabels 映射中的单个 {key,value} 等同于 matchExpressions 的一个元素,其 key 字段是 "key",运算符是 "In",值数组仅包含 "value"。要求的逻辑关系是 AND。 |
2.1.52. .spec.affinity.podAntiAffinity.requiredDuringSchedulingIgnoredDuringExecution[].namespaceSelector.matchExpressions
- 描述
- matchExpressions 是标签选择器要求列表。要求的逻辑关系是 AND。
- 类型
-
array
2.1.53. .spec.affinity.podAntiAffinity.requiredDuringSchedulingIgnoredDuringExecution[].namespaceSelector.matchExpressions[]
- 描述
- 标签选择器要求是一个选择器,其中包含与键和值相关的值、键和值。
- 类型
-
object
- 必填
-
key
-
operator
-
属性 | 类型 | 描述 |
---|---|---|
|
| key 是选择器应用到的标签键。 |
|
| 运算符代表一个键与一组值的关系。有效的运算符是 In、NotIn、Exists 和 DoesNotExist。 |
|
| 值是字符串值的数组。如果运算符是 In 或 NotIn,则值数组必须是非空的。如果运算符是 Exists 或 DoesNotExist,则值数组必须为空。这个数组会在策略性合并补丁中被替换。 |
2.1.54. .spec.alertmanagerConfigMatcherStrategy
- 描述
- AlertmanagerConfigMatcherStrategy 定义 AlertmanagerConfig 对象如何与警报匹配。以后可能会添加更多选项。
- 类型
-
object
属性 | 类型 | 描述 |
---|---|---|
|
|
如果设置为 |
2.1.55. .spec.alertmanagerConfigNamespaceSelector
- 描述
- 为 AlertmanagerConfig 发现选择的命名空间。如果为 nil,则仅检查自己的命名空间。
- 类型
-
object
属性 | 类型 | 描述 |
---|---|---|
|
| matchExpressions 是标签选择器要求列表。要求的逻辑关系是 AND。 |
|
| 标签选择器要求是一个选择器,其中包含与键和值相关的值、键和值。 |
|
| matchLabels 是 {key,value} 对的映射。MatchLabels 映射中的单个 {key,value} 等同于 matchExpressions 的一个元素,其 key 字段是 "key",运算符是 "In",值数组仅包含 "value"。要求的逻辑关系是 AND。 |
2.1.56. .spec.alertmanagerConfigNamespaceSelector.matchExpressions
- 描述
- matchExpressions 是标签选择器要求列表。要求的逻辑关系是 AND。
- 类型
-
array
2.1.57. .spec.alertmanagerConfigNamespaceSelector.matchExpressions[]
- 描述
- 标签选择器要求是一个选择器,其中包含与键和值相关的值、键和值。
- 类型
-
object
- 必填
-
key
-
operator
-
属性 | 类型 | 描述 |
---|---|---|
|
| key 是选择器应用到的标签键。 |
|
| 运算符代表一个键与一组值的关系。有效的运算符是 In、NotIn、Exists 和 DoesNotExist。 |
|
| 值是字符串值的数组。如果运算符是 In 或 NotIn,则值数组必须是非空的。如果运算符是 Exists 或 DoesNotExist,则值数组必须为空。这个数组会在策略性合并补丁中被替换。 |
2.1.58. .spec.alertmanagerConfigSelector
- 描述
- 要选择的 alertmanagerconfigs,用于合并并配置 Alertmanager。
- 类型
-
object
属性 | 类型 | 描述 |
---|---|---|
|
| matchExpressions 是标签选择器要求列表。要求的逻辑关系是 AND。 |
|
| 标签选择器要求是一个选择器,其中包含与键和值相关的值、键和值。 |
|
| matchLabels 是 {key,value} 对的映射。MatchLabels 映射中的单个 {key,value} 等同于 matchExpressions 的一个元素,其 key 字段是 "key",运算符是 "In",值数组仅包含 "value"。要求的逻辑关系是 AND。 |
2.1.59. .spec.alertmanagerConfigSelector.matchExpressions
- 描述
- matchExpressions 是标签选择器要求列表。要求的逻辑关系是 AND。
- 类型
-
array
2.1.60. .spec.alertmanagerConfigSelector.matchExpressions[]
- 描述
- 标签选择器要求是一个选择器,其中包含与键和值相关的值、键和值。
- 类型
-
object
- 必填
-
key
-
operator
-
属性 | 类型 | 描述 |
---|---|---|
|
| key 是选择器应用到的标签键。 |
|
| 运算符代表一个键与一组值的关系。有效的运算符是 In、NotIn、Exists 和 DoesNotExist。 |
|
| 值是字符串值的数组。如果运算符是 In 或 NotIn,则值数组必须是非空的。如果运算符是 Exists 或 DoesNotExist,则值数组必须为空。这个数组会在策略性合并补丁中被替换。 |
2.1.61. .spec.alertmanagerConfiguration
- 描述
alertmanagerConfiguration 指定 Alertmanager 的配置。
如果定义,它优先于
configSecret
字段。这是一个 实验性功能,它可能会以中断的方式改变任何即将推出的版本。
- 类型
-
object
属性 | 类型 | 描述 |
---|---|---|
|
| 定义 Alertmanager 配置的全局参数。 |
|
|
用于生成 Alertmanager 配置的 AlertmanagerConfig 资源的名称。它必须与 Alertmanager 对象在同一个命名空间中定义。Operator 不会为路由和禁止规则强制执行 |
|
| 自定义通知模板。 |
|
| SecretOrConfigMap 允许将数据指定为 Secret 或 ConfigMap。字段是互斥的。 |
2.1.62. .spec.alertmanagerConfiguration.global
- 描述
- 定义 Alertmanager 配置的全局参数。
- 类型
-
object
属性 | 类型 | 描述 |
---|---|---|
|
| HTTP 客户端配置。 |
|
| 默认 OpsGenie API 密钥。 |
|
| 默认 OpsGenie API URL。 |
|
| 默认 Pagerduty URL。 |
|
| 如果警报不包含 EndsAt,则 ResolveTimeout 是 alertmanager 使用的默认值,在此时间通过后,它可以声明警报作为解析(如果尚未更新)。这不会影响 Prometheus 的警报,因为它们始终包含 EndsAt。 |
|
| 默认 Slack API URL。 |
|
| 配置全局 SMTP 参数。 |
2.1.63. .spec.alertmanagerConfiguration.global.httpConfig
- 描述
- HTTP 客户端配置。
- 类型
-
object
属性 | 类型 | 描述 |
---|---|---|
|
| 客户端的授权标头配置。这与 BasicAuth 相互排斥,且只能从 Alertmanager v0.22+ 开始。 |
|
| 客户端的 basicAuth。这是与授权相互排斥的。如果定义了这两者,则 BasicAuth 优先。 |
|
| 包含客户端用于身份验证的 bearer 令牌的机密密钥。secret 需要与 Alertmanager 对象位于同一个命名空间中,并可以被 Prometheus Operator 访问。 |
|
| FollowRedirects 指定客户端是否应该遵循 HTTP 3xx 重定向。 |
|
| 用于获取目标令牌的 OAuth2 客户端凭据。 |
|
| 可选的代理 URL。 |
|
| 客户端的 TLS 配置。 |
2.1.64. .spec.alertmanagerConfiguration.global.httpConfig.authorization
- 描述
- 客户端的授权标头配置。这与 BasicAuth 相互排斥,且只能从 Alertmanager v0.22+ 开始。
- 类型
-
object
属性 | 类型 | 描述 |
---|---|---|
|
| 选择命名空间中包含用于身份验证的凭证的 Secret 的键。 |
|
| 定义身份验证类型。该值不区分大小写。 "basic"不是受支持的值。 默认:"Bearer" |
2.1.65. .spec.alertmanagerConfiguration.global.httpConfig.authorization.credentials
- 描述
- 选择命名空间中包含用于身份验证的凭证的 Secret 的键。
- 类型
-
object
- 必填
-
key
-
属性 | 类型 | 描述 |
---|---|---|
|
| 要从中选择的 secret 的密钥。必须是一个有效的 secret 密钥。 |
|
|
引用的名称。有效地需要此字段,但因为允许向后兼容为空。这里具有空值的此类实例几乎是错误的。TODO:添加其他有用的字段。apiVersion、kind、uid?更多信息: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names TODO: 当 controller-gen 不需要 https://github.com/kubernetes-sigs/kubebuilder/issues/3896 时,Drop |
|
| 指定是否需要定义 Secret 还是其密钥 |
2.1.66. .spec.alertmanagerConfiguration.global.httpConfig.basicAuth
- 描述
- 客户端的 basicAuth。这是与授权相互排斥的。如果定义了这两者,则 BasicAuth 优先。
- 类型
-
object
属性 | 类型 | 描述 |
---|---|---|
|
|
|
|
|
|
2.1.67. .spec.alertmanagerConfiguration.global.httpConfig.basicAuth.password
- 描述
-
password
指定包含用于身份验证的密码的 Secret 的键。 - 类型
-
object
- 必填
-
key
-
属性 | 类型 | 描述 |
---|---|---|
|
| 要从中选择的 secret 的密钥。必须是一个有效的 secret 密钥。 |
|
|
引用的名称。有效地需要此字段,但因为允许向后兼容为空。这里具有空值的此类实例几乎是错误的。TODO:添加其他有用的字段。apiVersion、kind、uid?更多信息: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names TODO: 当 controller-gen 不需要 https://github.com/kubernetes-sigs/kubebuilder/issues/3896 时,Drop |
|
| 指定是否需要定义 Secret 还是其密钥 |
2.1.68. .spec.alertmanagerConfiguration.global.httpConfig.basicAuth.username
- 描述
-
username
指定包含用于身份验证的用户名的 Secret 的键。 - 类型
-
object
- 必填
-
key
-
属性 | 类型 | 描述 |
---|---|---|
|
| 要从中选择的 secret 的密钥。必须是一个有效的 secret 密钥。 |
|
|
引用的名称。有效地需要此字段,但因为允许向后兼容为空。这里具有空值的此类实例几乎是错误的。TODO:添加其他有用的字段。apiVersion、kind、uid?更多信息: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names TODO: 当 controller-gen 不需要 https://github.com/kubernetes-sigs/kubebuilder/issues/3896 时,Drop |
|
| 指定是否需要定义 Secret 还是其密钥 |
2.1.69. .spec.alertmanagerConfiguration.global.httpConfig.bearerTokenSecret
- 描述
- 包含客户端用于身份验证的 bearer 令牌的机密密钥。secret 需要与 Alertmanager 对象位于同一个命名空间中,并可以被 Prometheus Operator 访问。
- 类型
-
object
- 必填
-
key
-
属性 | 类型 | 描述 |
---|---|---|
|
| 要从中选择的 secret 的密钥。必须是一个有效的 secret 密钥。 |
|
|
引用的名称。有效地需要此字段,但因为允许向后兼容为空。这里具有空值的此类实例几乎是错误的。TODO:添加其他有用的字段。apiVersion、kind、uid?更多信息: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names TODO: 当 controller-gen 不需要 https://github.com/kubernetes-sigs/kubebuilder/issues/3896 时,Drop |
|
| 指定是否需要定义 Secret 还是其密钥 |
2.1.70. .spec.alertmanagerConfiguration.global.httpConfig.oauth2
- 描述
- 用于获取目标令牌的 OAuth2 客户端凭据。
- 类型
-
object
- 必填
-
clientId
-
clientSecret
-
tokenUrl
-
属性 | 类型 | 描述 |
---|---|---|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
2.1.71. .spec.alertmanagerConfiguration.global.httpConfig.oauth2.clientId
- 描述
-
clientId
指定包含 OAuth2 客户端 ID 的 Secret 或 ConfigMap 的键。 - 类型
-
object
属性 | 类型 | 描述 |
---|---|---|
|
| 包含用于目标的数据的 ConfigMap。 |
|
| 包含用于目标的数据的 secret。 |
2.1.72. .spec.alertmanagerConfiguration.global.httpConfig.oauth2.clientId.configMap
- 描述
- 包含用于目标的数据的 ConfigMap。
- 类型
-
object
- 必填
-
key
-
属性 | 类型 | 描述 |
---|---|---|
|
| 要选择的密钥。 |
|
|
引用的名称。有效地需要此字段,但因为允许向后兼容为空。这里具有空值的此类实例几乎是错误的。TODO:添加其他有用的字段。apiVersion、kind、uid?更多信息: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names TODO: 当 controller-gen 不需要 https://github.com/kubernetes-sigs/kubebuilder/issues/3896 时,Drop |
|
| 指定是否必须定义 ConfigMap 还是其键 |
2.1.73. .spec.alertmanagerConfiguration.global.httpConfig.oauth2.clientId.secret
- 描述
- 包含用于目标的数据的 secret。
- 类型
-
object
- 必填
-
key
-
属性 | 类型 | 描述 |
---|---|---|
|
| 要从中选择的 secret 的密钥。必须是一个有效的 secret 密钥。 |
|
|
引用的名称。有效地需要此字段,但因为允许向后兼容为空。这里具有空值的此类实例几乎是错误的。TODO:添加其他有用的字段。apiVersion、kind、uid?更多信息: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names TODO: 当 controller-gen 不需要 https://github.com/kubernetes-sigs/kubebuilder/issues/3896 时,Drop |
|
| 指定是否需要定义 Secret 还是其密钥 |
2.1.74. .spec.alertmanagerConfiguration.global.httpConfig.oauth2.clientSecret
- 描述
-
clientSecret
指定包含 OAuth2 客户端 secret 的 Secret 的密钥。 - 类型
-
object
- 必填
-
key
-
属性 | 类型 | 描述 |
---|---|---|
|
| 要从中选择的 secret 的密钥。必须是一个有效的 secret 密钥。 |
|
|
引用的名称。有效地需要此字段,但因为允许向后兼容为空。这里具有空值的此类实例几乎是错误的。TODO:添加其他有用的字段。apiVersion、kind、uid?更多信息: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names TODO: 当 controller-gen 不需要 https://github.com/kubernetes-sigs/kubebuilder/issues/3896 时,Drop |
|
| 指定是否需要定义 Secret 还是其密钥 |
2.1.75. .spec.alertmanagerConfiguration.global.httpConfig.tlsConfig
- 描述
- 客户端的 TLS 配置。
- 类型
-
object
属性 | 类型 | 描述 |
---|---|---|
|
| 验证服务器证书时使用的证书颁发机构。 |
|
| 执行 client-authentication 时要出现的客户端证书。 |
|
| 禁用目标证书验证。 |
|
| 包含目标客户端密钥文件的 secret。 |
|
| 用于验证目标的主机名。 |
2.1.76. .spec.alertmanagerConfiguration.global.httpConfig.tlsConfig.ca
- 描述
- 验证服务器证书时使用的证书颁发机构。
- 类型
-
object
属性 | 类型 | 描述 |
---|---|---|
|
| 包含用于目标的数据的 ConfigMap。 |
|
| 包含用于目标的数据的 secret。 |
2.1.77. .spec.alertmanagerConfiguration.global.httpConfig.tlsConfig.ca.configMap
- 描述
- 包含用于目标的数据的 ConfigMap。
- 类型
-
object
- 必填
-
key
-
属性 | 类型 | 描述 |
---|---|---|
|
| 要选择的密钥。 |
|
|
引用的名称。有效地需要此字段,但因为允许向后兼容为空。这里具有空值的此类实例几乎是错误的。TODO:添加其他有用的字段。apiVersion、kind、uid?更多信息: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names TODO: 当 controller-gen 不需要 https://github.com/kubernetes-sigs/kubebuilder/issues/3896 时,Drop |
|
| 指定是否必须定义 ConfigMap 还是其键 |
2.1.78. .spec.alertmanagerConfiguration.global.httpConfig.tlsConfig.ca.secret
- 描述
- 包含用于目标的数据的 secret。
- 类型
-
object
- 必填
-
key
-
属性 | 类型 | 描述 |
---|---|---|
|
| 要从中选择的 secret 的密钥。必须是一个有效的 secret 密钥。 |
|
|
引用的名称。有效地需要此字段,但因为允许向后兼容为空。这里具有空值的此类实例几乎是错误的。TODO:添加其他有用的字段。apiVersion、kind、uid?更多信息: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names TODO: 当 controller-gen 不需要 https://github.com/kubernetes-sigs/kubebuilder/issues/3896 时,Drop |
|
| 指定是否需要定义 Secret 还是其密钥 |
2.1.79. .spec.alertmanagerConfiguration.global.httpConfig.tlsConfig.cert
- 描述
- 执行 client-authentication 时要出现的客户端证书。
- 类型
-
object
属性 | 类型 | 描述 |
---|---|---|
|
| 包含用于目标的数据的 ConfigMap。 |
|
| 包含用于目标的数据的 secret。 |
2.1.80. .spec.alertmanagerConfiguration.global.httpConfig.tlsConfig.cert.configMap
- 描述
- 包含用于目标的数据的 ConfigMap。
- 类型
-
object
- 必填
-
key
-
属性 | 类型 | 描述 |
---|---|---|
|
| 要选择的密钥。 |
|
|
引用的名称。有效地需要此字段,但因为允许向后兼容为空。这里具有空值的此类实例几乎是错误的。TODO:添加其他有用的字段。apiVersion、kind、uid?更多信息: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names TODO: 当 controller-gen 不需要 https://github.com/kubernetes-sigs/kubebuilder/issues/3896 时,Drop |
|
| 指定是否必须定义 ConfigMap 还是其键 |
2.1.81. .spec.alertmanagerConfiguration.global.httpConfig.tlsConfig.cert.secret
- 描述
- 包含用于目标的数据的 secret。
- 类型
-
object
- 必填
-
key
-
属性 | 类型 | 描述 |
---|---|---|
|
| 要从中选择的 secret 的密钥。必须是一个有效的 secret 密钥。 |
|
|
引用的名称。有效地需要此字段,但因为允许向后兼容为空。这里具有空值的此类实例几乎是错误的。TODO:添加其他有用的字段。apiVersion、kind、uid?更多信息: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names TODO: 当 controller-gen 不需要 https://github.com/kubernetes-sigs/kubebuilder/issues/3896 时,Drop |
|
| 指定是否需要定义 Secret 还是其密钥 |
2.1.82. .spec.alertmanagerConfiguration.global.httpConfig.tlsConfig.keySecret
- 描述
- 包含目标客户端密钥文件的 secret。
- 类型
-
object
- 必填
-
key
-
属性 | 类型 | 描述 |
---|---|---|
|
| 要从中选择的 secret 的密钥。必须是一个有效的 secret 密钥。 |
|
|
引用的名称。有效地需要此字段,但因为允许向后兼容为空。这里具有空值的此类实例几乎是错误的。TODO:添加其他有用的字段。apiVersion、kind、uid?更多信息: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names TODO: 当 controller-gen 不需要 https://github.com/kubernetes-sigs/kubebuilder/issues/3896 时,Drop |
|
| 指定是否需要定义 Secret 还是其密钥 |
2.1.83. .spec.alertmanagerConfiguration.global.opsGenieApiKey
- 描述
- 默认 OpsGenie API 密钥。
- 类型
-
object
- 必填
-
key
-
属性 | 类型 | 描述 |
---|---|---|
|
| 要从中选择的 secret 的密钥。必须是一个有效的 secret 密钥。 |
|
|
引用的名称。有效地需要此字段,但因为允许向后兼容为空。这里具有空值的此类实例几乎是错误的。TODO:添加其他有用的字段。apiVersion、kind、uid?更多信息: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names TODO: 当 controller-gen 不需要 https://github.com/kubernetes-sigs/kubebuilder/issues/3896 时,Drop |
|
| 指定是否需要定义 Secret 还是其密钥 |
2.1.84. .spec.alertmanagerConfiguration.global.opsGenieApiUrl
- 描述
- 默认 OpsGenie API URL。
- 类型
-
object
- 必填
-
key
-
属性 | 类型 | 描述 |
---|---|---|
|
| 要从中选择的 secret 的密钥。必须是一个有效的 secret 密钥。 |
|
|
引用的名称。有效地需要此字段,但因为允许向后兼容为空。这里具有空值的此类实例几乎是错误的。TODO:添加其他有用的字段。apiVersion、kind、uid?更多信息: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names TODO: 当 controller-gen 不需要 https://github.com/kubernetes-sigs/kubebuilder/issues/3896 时,Drop |
|
| 指定是否需要定义 Secret 还是其密钥 |
2.1.85. .spec.alertmanagerConfiguration.global.slackApiUrl
- 描述
- 默认 Slack API URL。
- 类型
-
object
- 必填
-
key
-
属性 | 类型 | 描述 |
---|---|---|
|
| 要从中选择的 secret 的密钥。必须是一个有效的 secret 密钥。 |
|
|
引用的名称。有效地需要此字段,但因为允许向后兼容为空。这里具有空值的此类实例几乎是错误的。TODO:添加其他有用的字段。apiVersion、kind、uid?更多信息: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names TODO: 当 controller-gen 不需要 https://github.com/kubernetes-sigs/kubebuilder/issues/3896 时,Drop |
|
| 指定是否需要定义 Secret 还是其密钥 |
2.1.86. .spec.alertmanagerConfiguration.global.smtp
- 描述
- 配置全局 SMTP 参数。
- 类型
-
object
属性 | 类型 | 描述 |
---|---|---|
|
| 使用 PLAIN 的 SMTP Auth |
|
| 使用 LOGIN 和 PLAIN 的 SMTP 身份验证. |
|
| 使用 CRAM-MD5 的 SMTP 身份验证. |
|
| 使用 CRAM-MD5、LOGIN 和 PLAIN 的 SMTP 身份验证.如果为空,Alertmanager 不会向 SMTP 服务器进行身份验证。 |
|
| 默认 SMTP From 头字段。 |
|
| 要识别到 SMTP 服务器的默认主机名。 |
|
| 默认 SMTP TLS 要求。请注意,Go 不支持到远程 SMTP 端点的未加密的连接。 |
|
| 用于发送电子邮件的默认 SMTP 智能主机。 |
2.1.87. .spec.alertmanagerConfiguration.global.smtp.authPassword
- 描述
- 使用 LOGIN 和 PLAIN 的 SMTP 身份验证.
- 类型
-
object
- 必填
-
key
-
属性 | 类型 | 描述 |
---|---|---|
|
| 要从中选择的 secret 的密钥。必须是一个有效的 secret 密钥。 |
|
|
引用的名称。有效地需要此字段,但因为允许向后兼容为空。这里具有空值的此类实例几乎是错误的。TODO:添加其他有用的字段。apiVersion、kind、uid?更多信息: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names TODO: 当 controller-gen 不需要 https://github.com/kubernetes-sigs/kubebuilder/issues/3896 时,Drop |
|
| 指定是否需要定义 Secret 还是其密钥 |
2.1.88. .spec.alertmanagerConfiguration.global.smtp.authSecret
- 描述
- 使用 CRAM-MD5 的 SMTP 身份验证.
- 类型
-
object
- 必填
-
key
-
属性 | 类型 | 描述 |
---|---|---|
|
| 要从中选择的 secret 的密钥。必须是一个有效的 secret 密钥。 |
|
|
引用的名称。有效地需要此字段,但因为允许向后兼容为空。这里具有空值的此类实例几乎是错误的。TODO:添加其他有用的字段。apiVersion、kind、uid?更多信息: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names TODO: 当 controller-gen 不需要 https://github.com/kubernetes-sigs/kubebuilder/issues/3896 时,Drop |
|
| 指定是否需要定义 Secret 还是其密钥 |
2.1.89. .spec.alertmanagerConfiguration.global.smtp.smartHost
- 描述
- 用于发送电子邮件的默认 SMTP 智能主机。
- 类型
-
object
- 必填
-
主机
-
port
-
属性 | 类型 | 描述 |
---|---|---|
|
| 定义主机的地址,它可以是 DNS 名称或字面 IP 地址。 |
|
| 定义主机的端口,可以是字面端口号或端口名称。 |
2.1.90. .spec.alertmanagerConfiguration.templates
- 描述
- 自定义通知模板。
- 类型
-
数组
2.1.91. .spec.alertmanagerConfiguration.templates[]
- 描述
- SecretOrConfigMap 允许将数据指定为 Secret 或 ConfigMap。字段是互斥的。
- 类型
-
object
属性 | 类型 | 描述 |
---|---|---|
|
| 包含用于目标的数据的 ConfigMap。 |
|
| 包含用于目标的数据的 secret。 |
2.1.92. .spec.alertmanagerConfiguration.templates[].configMap
- 描述
- 包含用于目标的数据的 ConfigMap。
- 类型
-
object
- 必填
-
key
-
属性 | 类型 | 描述 |
---|---|---|
|
| 要选择的密钥。 |
|
|
引用的名称。有效地需要此字段,但因为允许向后兼容为空。这里具有空值的此类实例几乎是错误的。TODO:添加其他有用的字段。apiVersion、kind、uid?更多信息: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names TODO: 当 controller-gen 不需要 https://github.com/kubernetes-sigs/kubebuilder/issues/3896 时,Drop |
|
| 指定是否必须定义 ConfigMap 还是其键 |
2.1.93. .spec.alertmanagerConfiguration.templates[].secret
- 描述
- 包含用于目标的数据的 secret。
- 类型
-
object
- 必填
-
key
-
属性 | 类型 | 描述 |
---|---|---|
|
| 要从中选择的 secret 的密钥。必须是一个有效的 secret 密钥。 |
|
|
引用的名称。有效地需要此字段,但因为允许向后兼容为空。这里具有空值的此类实例几乎是错误的。TODO:添加其他有用的字段。apiVersion、kind、uid?更多信息: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names TODO: 当 controller-gen 不需要 https://github.com/kubernetes-sigs/kubebuilder/issues/3896 时,Drop |
|
| 指定是否需要定义 Secret 还是其密钥 |
2.1.94. .spec.containers
- 描述
-
容器允许注入其他容器。这是允许向 Alertmanager pod 添加身份验证代理。这里描述的容器如果操作器共享相同的名称和修改,则修改通过战略合并补丁来完成。当前容器名称为:
alertmanager
和config-reloader
。覆盖容器完全超出维护人员将支持什么范围,通过这样做,您可以接受这种行为,而无需通知。 - 类型
-
array
2.1.95. .spec.containers[]
- 描述
- 要在 pod 中运行的单一应用程序容器。
- 类型
-
object
- 必填
-
name
-
属性 | 类型 | 描述 |
---|---|---|
|
| 入口点的参数。如果没有提供,则使用容器镜像的 CMD。变量引用 $(VAR_NAME)使用容器的环境扩展。如果无法解析变量,则输入字符串中的引用将保持不变。双引号被缩减为单个 $,它允许转义 $(VAR_NAME)语法:即 " (VAR_NAME) " 将生成字符串 literal "$(VAR_NAME) "。转义的引用永远不会扩展,无论变量是否存在。无法更新。更多信息: https://kubernetes.io/docs/tasks/inject-data-application/define-command-argument-container/#running-a-command-in-a-shell |
|
| ENTRYPOINT 数组.没有在 shell 中执行。如果未提供此容器镜像,则使用容器镜像的 ENTRYPOINT。变量引用 $(VAR_NAME)使用容器的环境扩展。如果无法解析变量,则输入字符串中的引用将保持不变。双引号被缩减为单个 $,它允许转义 $(VAR_NAME)语法:即 " (VAR_NAME) " 将生成字符串 literal "$(VAR_NAME) "。转义的引用永远不会扩展,无论变量是否存在。无法更新。更多信息: https://kubernetes.io/docs/tasks/inject-data-application/define-command-argument-container/#running-a-command-in-a-shell |
|
| 容器中要设置的环境变量列表。无法更新。 |
|
| EnvVar 代表容器中存在的环境变量。 |
|
| 在容器中填充环境变量的源列表。源中定义的键必须是 C_IDENTIFIER。当容器启动时,所有无效密钥都会被报告为事件。当多个源中存在键时,与最后一个源关联的值将具有优先权。由带有重复键的 Env 定义的值将具有优先权。无法更新。 |
|
| EnvFromSource 代表一组 ConfigMap 的源 |
|
| 容器镜像名称。更多信息: https://kubernetes.io/docs/concepts/containers/images 此字段是可选的,允许更高级别的配置管理默认或覆盖工作负载控制器(如 Deployments 和 StatefulSets)中的容器镜像。 |
|
| 镜像拉取(pull)策略。Always, Never, IfNotPresent 之一。如果指定了 :latest 标签,则默认为 Always,否则则默认为 IfNotPresent。无法更新。更多信息: https://kubernetes.io/docs/concepts/containers/images#updating-images |
|
| 管理系统应采取的操作来响应容器生命周期事件。无法更新。 |
|
| 容器存活度探测.如果探测失败,容器将重启。无法更新。更多信息: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes |
|
| 指定为 DNS_LABEL 的容器名称。pod 中的每个容器都必须具有唯一的名称(DNS_LABEL)。无法更新。 |
|
| 从容器公开的端口列表。这里没有指定端口不会阻止公开该端口。所有正在侦听容器内默认"0.0.0.0"地址的端口均可从网络访问。使用策略合并补丁修改阵列可能会破坏数据。如需更多信息,请参阅 https://github.com/kubernetes/kubernetes/issues/108255。无法更新。 |
|
| containerPort 代表单个容器中的网络端口。 |
|
| 容器服务的定期探测到就绪状态。如果探测失败,容器将从服务端点中删除。无法更新。更多信息: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes |
|
| 容器的资源重新定义策略。 |
|
| ContainerResizePolicy 代表容器的资源重新定义策略。 |
|
| 此容器所需的计算资源。无法更新。更多信息: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/ |
|
| 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.io/docs/tasks/configure-pod-container/security-context/ |
|
| startupProbe 表示 Pod 已成功初始化。如果指定,则不会执行其他探测,直到成功完成为止。如果这个探测失败,则 Pod 将重启,就像 livenessProbe 失败一样。这可用于在 Pod 生命周期开始时提供不同的探测参数,当可能需要很长时间才能加载数据或温缓存时,而不是在 steady-state 操作过程中提供不同的探测参数。这不能更新。更多信息: https://kubernetes.io/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。无法更新。 |
|
| 指明应当如何填充终止消息。文件将使用 terminationMessagePath 的内容在成功或失败时填充容器状态消息。如果终止消息文件为空,则 FallbackToLogsOnError 将使用容器日志输出的最后块,并且容器退出并显示错误。日志输出限制为 2048 字节或 80 行,以较小者。默认为 File。无法更新。 |
|
| 此容器是否应为自己分配 TTY,也要求 'stdin' 为 true。默认为 false。 |
|
| volumeDevices 是容器要使用的块设备列表。 |
|
| volumeDevice 描述了容器中原始块设备的映射。 |
|
| 要挂载到容器文件系统的 Pod 卷。无法更新。 |
|
| VolumeMount 描述了容器内卷挂载。 |
|
| 容器的工作目录。如果未指定,则将使用容器运行时的默认值,该默认值可能在容器镜像中配置。无法更新。 |
2.1.96. .spec.containers[].env
- 描述
- 容器中要设置的环境变量列表。无法更新。
- 类型
-
array
2.1.97. .spec.containers[].env[]
- 描述
- EnvVar 代表容器中存在的环境变量。
- 类型
-
object
- 必填
-
name
-
属性 | 类型 | 描述 |
---|---|---|
|
| 环境变量的名称。必须是 C_IDENTIFIER。 |
|
| 变量引用 $(VAR_NAME)使用容器中之前定义的环境变量以及任何服务环境变量进行扩展。如果无法解析变量,则输入字符串中的引用将保持不变。双引号被缩减为单个 $,它允许转义 $(VAR_NAME)语法:即 " (VAR_NAME) " 将生成字符串 literal "$(VAR_NAME) "。转义的引用永远不会扩展,无论变量是否存在。默认为 ""。 |
|
| 环境变量的值的源。如果值不为空,则无法使用。 |
2.1.98. .spec.containers[].env[].valueFrom
- 描述
- 环境变量的值的源。如果值不为空,则无法使用。
- 类型
-
object
属性 | 类型 | 描述 |
---|---|---|
|
| 选择 ConfigMap 的键。 |
|
|
选择 pod 的字段:支持 metadata.name、metadata.namespace、 |
|
| 选择容器的资源:当前仅支持资源限值和请求(limits.cpu, limits.memory, limits.ephemeral-storage, requests.cpu, requests.memory and requests.ephemeral-storage)。 |
|
| 在 pod 命名空间中选择 secret 的键 |
2.1.99. .spec.containers[].env[].valueFrom.configMapKeyRef
- 描述
- 选择 ConfigMap 的键。
- 类型
-
object
- 必填
-
key
-
属性 | 类型 | 描述 |
---|---|---|
|
| 要选择的密钥。 |
|
|
引用的名称。有效地需要此字段,但因为允许向后兼容为空。这里具有空值的此类实例几乎是错误的。TODO:添加其他有用的字段。apiVersion、kind、uid?更多信息: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names TODO: 当 controller-gen 不需要 https://github.com/kubernetes-sigs/kubebuilder/issues/3896 时,Drop |
|
| 指定是否必须定义 ConfigMap 还是其键 |
2.1.100. .spec.containers[].env[].valueFrom.fieldRef
- 描述
-
选择 pod 的字段:支持 metadata.name、metadata.namespace、
metadata.labels['<KEY>']
,metadata.annotations['<KEY>']
, spec.nodeName, spec.serviceAccountName, status.hostIP, status.podIP, status.podIPs. - 类型
-
object
- 必填
-
fieldPath
-
属性 | 类型 | 描述 |
---|---|---|
|
| 模式的版本是按术语编写的 FieldPath,默认为 "v1"。 |
|
| 在指定 API 版本中选择的字段路径。 |
2.1.101. .spec.containers[].env[].valueFrom.resourceFieldRef
- 描述
- 选择容器的资源:当前仅支持资源限值和请求(limits.cpu, limits.memory, limits.ephemeral-storage, requests.cpu, requests.memory and requests.ephemeral-storage)。
- 类型
-
object
- 必填
-
resource
-
属性 | 类型 | 描述 |
---|---|---|
|
| 容器名称:卷需要,对于 env vars是可选的 |
|
| 指定公开资源的输出格式,默认为 "1" |
|
| 必需:要选择的资源 |
2.1.102. .spec.containers[].env[].valueFrom.secretKeyRef
- 描述
- 在 pod 命名空间中选择 secret 的键
- 类型
-
object
- 必填
-
key
-
属性 | 类型 | 描述 |
---|---|---|
|
| 要从中选择的 secret 的密钥。必须是一个有效的 secret 密钥。 |
|
|
引用的名称。有效地需要此字段,但因为允许向后兼容为空。这里具有空值的此类实例几乎是错误的。TODO:添加其他有用的字段。apiVersion、kind、uid?更多信息: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names TODO: 当 controller-gen 不需要 https://github.com/kubernetes-sigs/kubebuilder/issues/3896 时,Drop |
|
| 指定是否需要定义 Secret 还是其密钥 |
2.1.103. .spec.containers[].envFrom
- 描述
- 在容器中填充环境变量的源列表。源中定义的键必须是 C_IDENTIFIER。当容器启动时,所有无效密钥都会被报告为事件。当多个源中存在键时,与最后一个源关联的值将具有优先权。由带有重复键的 Env 定义的值将具有优先权。无法更新。
- 类型
-
array
2.1.104. .spec.containers[].envFrom[]
- 描述
- EnvFromSource 代表一组 ConfigMap 的源
- 类型
-
object
属性 | 类型 | 描述 |
---|---|---|
|
| 要从中选择的 ConfigMap |
|
| 要添加到 ConfigMap 中每个键的可选标识符。必须是 C_IDENTIFIER。 |
|
| 要从中选择的 Secret |
2.1.105. .spec.containers[].envFrom[].configMapRef
- 描述
- 要从中选择的 ConfigMap
- 类型
-
object
属性 | 类型 | 描述 |
---|---|---|
|
|
引用的名称。有效地需要此字段,但因为允许向后兼容为空。这里具有空值的此类实例几乎是错误的。TODO:添加其他有用的字段。apiVersion、kind、uid?更多信息: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names TODO: 当 controller-gen 不需要 https://github.com/kubernetes-sigs/kubebuilder/issues/3896 时,Drop |
|
| 指定是否必须定义 ConfigMap |
2.1.106. .spec.containers[].envFrom[].secretRef
- 描述
- 要从中选择的 Secret
- 类型
-
object
属性 | 类型 | 描述 |
---|---|---|
|
|
引用的名称。有效地需要此字段,但因为允许向后兼容为空。这里具有空值的此类实例几乎是错误的。TODO:添加其他有用的字段。apiVersion、kind、uid?更多信息: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names TODO: 当 controller-gen 不需要 https://github.com/kubernetes-sigs/kubebuilder/issues/3896 时,Drop |
|
| 指定是否必须定义 Secret |
2.1.107. .spec.containers[].lifecycle
- 描述
- 管理系统应采取的操作来响应容器生命周期事件。无法更新。
- 类型
-
object
属性 | 类型 | 描述 |
---|---|---|
|
| postStart 在容器被创建后立即调用。如果处理程序失败,则容器将根据其重启策略终止并重启。容器块的其他管理,直到 hook 完成为止。更多信息: https://kubernetes.io/docs/concepts/containers/container-lifecycle-hooks/#container-hooks |
|
| preStop 在因为 API 请求或管理事件而终止容器前马上调用,如存活度/启动探测失败、抢占、资源争用等。如果容器崩溃或退出,则不会调用处理程序。Pod 的终止宽限期倒计时开始,然后再执行 PreStop hook。无论处理程序的结果是什么,容器最终都会在 Pod 的终止宽限期内终止(除非被终结器造成延迟)。容器的其他管理块直到 hook 完成或直至到达终止宽限期为止。更多信息: https://kubernetes.io/docs/concepts/containers/container-lifecycle-hooks/#container-hooks |
2.1.108. .spec.containers[].lifecycle.postStart
- 描述
- postStart 在容器被创建后立即调用。如果处理程序失败,则容器将根据其重启策略终止并重启。容器块的其他管理,直到 hook 完成为止。更多信息: https://kubernetes.io/docs/concepts/containers/container-lifecycle-hooks/#container-hooks
- 类型
-
object
属性 | 类型 | 描述 |
---|---|---|
|
| exec 指定要执行的操作。 |
|
| httpGet 指定要执行的 http 请求。 |
|
| sleep 代表容器在被终止前应休眠的持续时间。 |
|
| 已弃用。tcpSocket 不支持作为 LifecycleHandler,并且保持向后兼容性。指定 tcp 处理程序时,没有此字段的验证和生命周期 hook 将在运行时失败。 |
2.1.109. .spec.containers[].lifecycle.postStart.exec
- 描述
- exec 指定要执行的操作。
- 类型
-
object
属性 | 类型 | 描述 |
---|---|---|
|
| 命令是在容器内执行的命令行,而 命令的工作目录是容器文件系统中的 root ('/')。命令只是 exec'd,它不会在 shell 中运行,因此传统的 shell 指令('|' 等)将无法工作。要使用 shell,您需要明确调用该 shell。0 的退出状态被视为 live/healthy,非零不健康。 |
2.1.110. .spec.containers[].lifecycle.postStart.httpGet
- 描述
- httpGet 指定要执行的 http 请求。
- 类型
-
object
- 必填
-
port
-
属性 | 类型 | 描述 |
---|---|---|
|
| 要连接到的主机名,默认为 pod IP。您可能想在 httpHeaders 中设置"主机"。 |
|
| 在请求中设置的自定义标头。HTTP 允许重复的标头。 |
|
| HTTPHeader 描述了在 HTTP 探测中使用的自定义标头 |
|
| 在 HTTP 服务器上访问的路径。 |
|
| 用于访问容器的端口的名称或编号。number 必须在 1 到 65535 之间。名称必须是 IANA_SVC_NAME。 |
|
| 用于连接到主机的方案。默认为 HTTP。 |
2.1.111. .spec.containers[].lifecycle.postStart.httpGet.httpHeaders
- 描述
- 在请求中设置的自定义标头。HTTP 允许重复的标头。
- 类型
-
array
2.1.112. .spec.containers[].lifecycle.postStart.httpGet.httpHeaders[]
- 描述
- HTTPHeader 描述了在 HTTP 探测中使用的自定义标头
- 类型
-
object
- 必填
-
name
-
value
-
属性 | 类型 | 描述 |
---|---|---|
|
| 标头字段名称。这将在输出时规范,因此理解 case-variant 名称与相同的标头一样。 |
|
| 标头字段值 |
2.1.113. .spec.containers[].lifecycle.postStart.sleep
- 描述
- sleep 代表容器在被终止前应休眠的持续时间。
- 类型
-
object
- 必填
-
SECONDS
-
属性 | 类型 | 描述 |
---|---|---|
|
| seconds 是睡眠的秒数。 |
2.1.114. .spec.containers[].lifecycle.postStart.tcpSocket
- 描述
- 已弃用。tcpSocket 不支持作为 LifecycleHandler,并且保持向后兼容性。指定 tcp 处理程序时,没有此字段的验证和生命周期 hook 将在运行时失败。
- 类型
-
object
- 必填
-
port
-
属性 | 类型 | 描述 |
---|---|---|
|
| 可选:要连接到的主机名,默认为 pod IP。 |
|
| 用于访问容器的端口的编号或名称。number 必须在 1 到 65535 之间。名称必须是 IANA_SVC_NAME。 |
2.1.115. .spec.containers[].lifecycle.preStop
- 描述
- preStop 在因为 API 请求或管理事件而终止容器前马上调用,如存活度/启动探测失败、抢占、资源争用等。如果容器崩溃或退出,则不会调用处理程序。Pod 的终止宽限期倒计时开始,然后再执行 PreStop hook。无论处理程序的结果是什么,容器最终都会在 Pod 的终止宽限期内终止(除非被终结器造成延迟)。容器的其他管理块直到 hook 完成或直至到达终止宽限期为止。更多信息: https://kubernetes.io/docs/concepts/containers/container-lifecycle-hooks/#container-hooks
- 类型
-
object
属性 | 类型 | 描述 |
---|---|---|
|
| exec 指定要执行的操作。 |
|
| httpGet 指定要执行的 http 请求。 |
|
| sleep 代表容器在被终止前应休眠的持续时间。 |
|
| 已弃用。tcpSocket 不支持作为 LifecycleHandler,并且保持向后兼容性。指定 tcp 处理程序时,没有此字段的验证和生命周期 hook 将在运行时失败。 |
2.1.116. .spec.containers[].lifecycle.preStop.exec
- 描述
- exec 指定要执行的操作。
- 类型
-
object
属性 | 类型 | 描述 |
---|---|---|
|
| 命令是在容器内执行的命令行,而 命令的工作目录是容器文件系统中的 root ('/')。命令只是 exec'd,它不会在 shell 中运行,因此传统的 shell 指令('|' 等)将无法工作。要使用 shell,您需要明确调用该 shell。0 的退出状态被视为 live/healthy,非零不健康。 |
2.1.117. .spec.containers[].lifecycle.preStop.httpGet
- 描述
- httpGet 指定要执行的 http 请求。
- 类型
-
object
- 必填
-
port
-
属性 | 类型 | 描述 |
---|---|---|
|
| 要连接到的主机名,默认为 pod IP。您可能想在 httpHeaders 中设置"主机"。 |
|
| 在请求中设置的自定义标头。HTTP 允许重复的标头。 |
|
| HTTPHeader 描述了在 HTTP 探测中使用的自定义标头 |
|
| 在 HTTP 服务器上访问的路径。 |
|
| 用于访问容器的端口的名称或编号。number 必须在 1 到 65535 之间。名称必须是 IANA_SVC_NAME。 |
|
| 用于连接到主机的方案。默认为 HTTP。 |
2.1.118. .spec.containers[].lifecycle.preStop.httpGet.httpHeaders
- 描述
- 在请求中设置的自定义标头。HTTP 允许重复的标头。
- 类型
-
array
2.1.119. .spec.containers[].lifecycle.preStop.httpGet.httpHeaders[]
- 描述
- HTTPHeader 描述了在 HTTP 探测中使用的自定义标头
- 类型
-
object
- 必填
-
name
-
value
-
属性 | 类型 | 描述 |
---|---|---|
|
| 标头字段名称。这将在输出时规范,因此理解 case-variant 名称与相同的标头一样。 |
|
| 标头字段值 |
2.1.120. .spec.containers[].lifecycle.preStop.sleep
- 描述
- sleep 代表容器在被终止前应休眠的持续时间。
- 类型
-
object
- 必填
-
SECONDS
-
属性 | 类型 | 描述 |
---|---|---|
|
| seconds 是睡眠的秒数。 |
2.1.121. .spec.containers[].lifecycle.preStop.tcpSocket
- 描述
- 已弃用。tcpSocket 不支持作为 LifecycleHandler,并且保持向后兼容性。指定 tcp 处理程序时,没有此字段的验证和生命周期 hook 将在运行时失败。
- 类型
-
object
- 必填
-
port
-
属性 | 类型 | 描述 |
---|---|---|
|
| 可选:要连接到的主机名,默认为 pod IP。 |
|
| 用于访问容器的端口的编号或名称。number 必须在 1 到 65535 之间。名称必须是 IANA_SVC_NAME。 |
2.1.122. .spec.containers[].livenessProbe
- 描述
- 容器存活度探测.如果探测失败,容器将重启。无法更新。更多信息: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes
- 类型
-
object
属性 | 类型 | 描述 |
---|---|---|
|
| exec 指定要执行的操作。 |
|
| 在成功后,探测被视为失败的最小连续失败。默认值为 3。最小值为 1。 |
|
| GRPC 指定涉及 GRPC 端口的操作。 |
|
| httpGet 指定要执行的 http 请求。 |
|
| 容器启动存活度探测前的秒数。更多信息: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes |
|
| 执行探测的频率(以秒为单位)。默认值为 10 秒。最小值为 1。 |
|
| 在失败后,探测至少连续成功会被视为成功。默认为 1。对于存活度和启动,必须为 1。最小值为 1。 |
|
| tcpSocket 指定涉及 TCP 端口的操作。 |
|
| pod 在探测失败时安全终止所需的可选持续时间(以秒为单位)。宽限期是 pod 中运行的进程发送终止信号和进程被强制停止使用 kill 信号的时间(以秒为单位)。为您的进程设置这个值超过预期清理时间。如果这个值是 nil,则使用 pod 的 terminationGracePeriodSeconds。否则,这个值会覆盖 pod 规格提供的值。值必须是非负整数。值为零表示立即通过终止信号停止(没有关闭的机会)。这是一个 beta 字段,需要启用 ProbeTerminationGracePeriod 功能门。如果未设置,则使用最小值为 1. spec.terminationGracePeriodSeconds。 |
|
| 探测超时的秒数。默认值为 1 秒。最小值为 1。更多信息: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes |
2.1.123. .spec.containers[].livenessProbe.exec
- 描述
- exec 指定要执行的操作。
- 类型
-
object
属性 | 类型 | 描述 |
---|---|---|
|
| 命令是在容器内执行的命令行,而 命令的工作目录是容器文件系统中的 root ('/')。命令只是 exec'd,它不会在 shell 中运行,因此传统的 shell 指令('|' 等)将无法工作。要使用 shell,您需要明确调用该 shell。0 的退出状态被视为 live/healthy,非零不健康。 |
2.1.124. .spec.containers[].livenessProbe.grpc
- 描述
- GRPC 指定涉及 GRPC 端口的操作。
- 类型
-
object
- 必填
-
port
-
属性 | 类型 | 描述 |
---|---|---|
|
| gRPC 服务的端口号。number 必须在 1 到 65535 之间。 |
|
| service 是要放入 gRPC HealthCheckRequest 中的服务名称(请参阅 https://github.com/grpc/grpc/blob/master/doc/health-checking.md)。 如果没有指定,则默认行为由 gRPC 定义。 |
2.1.125. .spec.containers[].livenessProbe.httpGet
- 描述
- httpGet 指定要执行的 http 请求。
- 类型
-
object
- 必填
-
port
-
属性 | 类型 | 描述 |
---|---|---|
|
| 要连接到的主机名,默认为 pod IP。您可能想在 httpHeaders 中设置"主机"。 |
|
| 在请求中设置的自定义标头。HTTP 允许重复的标头。 |
|
| HTTPHeader 描述了在 HTTP 探测中使用的自定义标头 |
|
| 在 HTTP 服务器上访问的路径。 |
|
| 用于访问容器的端口的名称或编号。number 必须在 1 到 65535 之间。名称必须是 IANA_SVC_NAME。 |
|
| 用于连接到主机的方案。默认为 HTTP。 |
2.1.126. .spec.containers[].livenessProbe.httpGet.httpHeaders
- 描述
- 在请求中设置的自定义标头。HTTP 允许重复的标头。
- 类型
-
array
2.1.127. .spec.containers[].livenessProbe.httpGet.httpHeaders[]
- 描述
- HTTPHeader 描述了在 HTTP 探测中使用的自定义标头
- 类型
-
object
- 必填
-
name
-
value
-
属性 | 类型 | 描述 |
---|---|---|
|
| 标头字段名称。这将在输出时规范,因此理解 case-variant 名称与相同的标头一样。 |
|
| 标头字段值 |
2.1.128. .spec.containers[].livenessProbe.tcpSocket
- 描述
- tcpSocket 指定涉及 TCP 端口的操作。
- 类型
-
object
- 必填
-
port
-
属性 | 类型 | 描述 |
---|---|---|
|
| 可选:要连接到的主机名,默认为 pod IP。 |
|
| 用于访问容器的端口的编号或名称。number 必须在 1 到 65535 之间。名称必须是 IANA_SVC_NAME。 |
2.1.129. .spec.containers[].ports
- 描述
- 从容器公开的端口列表。这里没有指定端口不会阻止公开该端口。所有正在侦听容器内默认"0.0.0.0"地址的端口均可从网络访问。使用策略合并补丁修改阵列可能会破坏数据。如需更多信息,请参阅 https://github.com/kubernetes/kubernetes/issues/108255。无法更新。
- 类型
-
array
2.1.130. .spec.containers[].ports[]
- 描述
- containerPort 代表单个容器中的网络端口。
- 类型
-
object
- 必填
-
containerPort
-
属性 | 类型 | 描述 |
---|---|---|
|
| pod IP 地址上公开的端口号。这必须是有效的端口号 0 < x < 65536。 |
|
| 将外部端口绑定到的主机 IP。 |
|
| 主机上公开的端口号。如果指定,这必须是有效的端口号 0 < x < 65536。如果指定了 HostNetwork,它必须与 ContainerPort 匹配。大多数容器都不需要这样做。 |
|
| 如果指定,这必须是 IANA_SVC_NAME,在 pod 中唯一。pod 中的每个命名端口都必须具有唯一的名称。服务可以引用的端口的名称。 |
|
| 端口的协议。必须是 UDP、TCP 或 SCTP。默认为 "TCP"。 |
2.1.131. .spec.containers[].readinessProbe
- 描述
- 容器服务的定期探测到就绪状态。如果探测失败,容器将从服务端点中删除。无法更新。更多信息: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes
- 类型
-
object
属性 | 类型 | 描述 |
---|---|---|
|
| exec 指定要执行的操作。 |
|
| 在成功后,探测被视为失败的最小连续失败。默认值为 3。最小值为 1。 |
|
| GRPC 指定涉及 GRPC 端口的操作。 |
|
| httpGet 指定要执行的 http 请求。 |
|
| 容器启动存活度探测前的秒数。更多信息: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes |
|
| 执行探测的频率(以秒为单位)。默认值为 10 秒。最小值为 1。 |
|
| 在失败后,探测至少连续成功会被视为成功。默认为 1。对于存活度和启动,必须为 1。最小值为 1。 |
|
| tcpSocket 指定涉及 TCP 端口的操作。 |
|
| pod 在探测失败时安全终止所需的可选持续时间(以秒为单位)。宽限期是 pod 中运行的进程发送终止信号和进程被强制停止使用 kill 信号的时间(以秒为单位)。为您的进程设置这个值超过预期清理时间。如果这个值是 nil,则使用 pod 的 terminationGracePeriodSeconds。否则,这个值会覆盖 pod 规格提供的值。值必须是非负整数。值为零表示立即通过终止信号停止(没有关闭的机会)。这是一个 beta 字段,需要启用 ProbeTerminationGracePeriod 功能门。如果未设置,则使用最小值为 1. spec.terminationGracePeriodSeconds。 |
|
| 探测超时的秒数。默认值为 1 秒。最小值为 1。更多信息: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes |
2.1.132. .spec.containers[].readinessProbe.exec
- 描述
- exec 指定要执行的操作。
- 类型
-
object
属性 | 类型 | 描述 |
---|---|---|
|
| 命令是在容器内执行的命令行,而 命令的工作目录是容器文件系统中的 root ('/')。命令只是 exec'd,它不会在 shell 中运行,因此传统的 shell 指令('|' 等)将无法工作。要使用 shell,您需要明确调用该 shell。0 的退出状态被视为 live/healthy,非零不健康。 |
2.1.133. .spec.containers[].readinessProbe.grpc
- 描述
- GRPC 指定涉及 GRPC 端口的操作。
- 类型
-
object
- 必填
-
port
-
属性 | 类型 | 描述 |
---|---|---|
|
| gRPC 服务的端口号。number 必须在 1 到 65535 之间。 |
|
| service 是要放入 gRPC HealthCheckRequest 中的服务名称(请参阅 https://github.com/grpc/grpc/blob/master/doc/health-checking.md)。 如果没有指定,则默认行为由 gRPC 定义。 |
2.1.134. .spec.containers[].readinessProbe.httpGet
- 描述
- httpGet 指定要执行的 http 请求。
- 类型
-
object
- 必填
-
port
-
属性 | 类型 | 描述 |
---|---|---|
|
| 要连接到的主机名,默认为 pod IP。您可能想在 httpHeaders 中设置"主机"。 |
|
| 在请求中设置的自定义标头。HTTP 允许重复的标头。 |
|
| HTTPHeader 描述了在 HTTP 探测中使用的自定义标头 |
|
| 在 HTTP 服务器上访问的路径。 |
|
| 用于访问容器的端口的名称或编号。number 必须在 1 到 65535 之间。名称必须是 IANA_SVC_NAME。 |
|
| 用于连接到主机的方案。默认为 HTTP。 |
2.1.135. .spec.containers[].readinessProbe.httpGet.httpHeaders
- 描述
- 在请求中设置的自定义标头。HTTP 允许重复的标头。
- 类型
-
array
2.1.136. .spec.containers[].readinessProbe.httpGet.httpHeaders[]
- 描述
- HTTPHeader 描述了在 HTTP 探测中使用的自定义标头
- 类型
-
object
- 必填
-
name
-
value
-
属性 | 类型 | 描述 |
---|---|---|
|
| 标头字段名称。这将在输出时规范,因此理解 case-variant 名称与相同的标头一样。 |
|
| 标头字段值 |
2.1.137. .spec.containers[].readinessProbe.tcpSocket
- 描述
- tcpSocket 指定涉及 TCP 端口的操作。
- 类型
-
object
- 必填
-
port
-
属性 | 类型 | 描述 |
---|---|---|
|
| 可选:要连接到的主机名,默认为 pod IP。 |
|
| 用于访问容器的端口的编号或名称。number 必须在 1 到 65535 之间。名称必须是 IANA_SVC_NAME。 |
2.1.138. .spec.containers[].resizePolicy
- 描述
- 容器的资源重新定义策略。
- 类型
-
数组
2.1.139. .spec.containers[].resizePolicy[]
- 描述
- ContainerResizePolicy 代表容器的资源重新定义策略。
- 类型
-
object
- 必填
-
resourceName
-
restartPolicy
-
属性 | 类型 | 描述 |
---|---|---|
|
| 此资源重新定义策略应用到的资源的名称。支持的值有:cpu、memory。 |
|
| 在指定资源调整大小时,重启策略会被应用。如果没有指定,则默认为 NotRequired。 |
2.1.140. .spec.containers[].resources
- 描述
- 此容器所需的计算资源。无法更新。更多信息: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/
- 类型
-
object
属性 | 类型 | 描述 |
---|---|---|
|
| claim 列出此容器使用的 spec.resourceClaims 中定义的资源名称。 这是一个 alpha 字段,需要启用 DynamicResourceAllocation 功能门。 此字段不可变。它只能为容器设置。 |
|
| ResourceClaim 引用 PodSpec.ResourceClaims 中的一个条目。 |
|
| 限制描述了允许的最大计算资源量。更多信息: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/ |
|
| Requests 描述了所需的最少计算资源。如果容器省略了 Requests,则默认为 Limits (如果明确指定),否则默认为实现定义的值。请求不能超过限值。更多信息: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/ |
2.1.141. .spec.containers[].resources.claims
- 描述
claim 列出此容器使用的 spec.resourceClaims 中定义的资源名称。
这是一个 alpha 字段,需要启用 DynamicResourceAllocation 功能门。
此字段不可变。它只能为容器设置。
- 类型
-
数组
2.1.142. .spec.containers[].resources.claims[]
- 描述
- ResourceClaim 引用 PodSpec.ResourceClaims 中的一个条目。
- 类型
-
object
- 必填
-
name
-
属性 | 类型 | 描述 |
---|---|---|
|
| name 必须与使用此字段的 Pod 的 pod.spec.resourceClaims 中的一个条目的名称匹配。它允许容器内部使用该资源。 |
2.1.143. .spec.containers[].securityContext
- 描述
- securityContext 定义容器应运行的安全选项。如果设置,SecurityContext 的字段会覆盖 PodSecurityContext 的等效字段。更多信息: https://kubernetes.io/docs/tasks/configure-pod-container/security-context/
- 类型
-
object
属性 | 类型 | 描述 |
---|---|---|
|
| allowPrivilegeEscalation 控制进程是否可以比其父进程获得更多特权。此 bool 直接控制容器进程上是否设置了 no_new_privs 标志。当容器是 : 1)作为 CAP_SYS_ADMIN 具有 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 时无法设置此字段。 |
|
| 此容器是否具有只读 root 文件系统。默认为 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 选项。如果 seccomp 选项同时在 pod 和容器级别上提供,则容器选项会覆盖 pod 选项。请注意,当 spec.os.name 是 windows 时无法设置此字段。 |
|
| 应用到所有容器的 Windows 特定设置。如果未指定,则使用 PodSecurityContext 中的选项。如果在 SecurityContext 和 PodSecurityContext 中设置,则 SecurityContext 中指定的值具有优先权。请注意,当 spec.os.name 是 linux 时,不能设置此字段。 |
2.1.144. .spec.containers[].securityContext.appArmorProfile
- 描述
- appArmorProfile 是此容器使用的 AppArmor 选项。如果设置,此配置集会覆盖 pod 的 appArmorProfile。请注意,当 spec.os.name 是 windows 时无法设置此字段。
- 类型
-
object
- 必填
-
type
-
属性 | 类型 | 描述 |
---|---|---|
|
| localhostProfile 表示节点上载入的配置集。该配置集必须在节点上预先配置才能正常工作。必须与配置文件的加载名称匹配。只在 type 为 "Localhost" 时,才应设置。 |
|
| Type 表示将应用哪些类型的 AppArmor 配置集。有效选项包括: Localhost - 节点上的配置文件预加载。RuntimeDefault - 容器运行时的默认配置集。unconfined - 无 AppArmor 强制。 |
2.1.145. .spec.containers[].securityContext.capabilities
- 描述
- 运行容器时添加/丢弃的功能。默认为容器运行时授予的默认功能集。请注意,当 spec.os.name 是 windows 时无法设置此字段。
- 类型
-
object
属性 | 类型 | 描述 |
---|---|---|
|
| 添加了功能 |
|
| 删除的功能 |
2.1.146. .spec.containers[].securityContext.seLinuxOptions
- 描述
- 要应用到容器的 SELinux 上下文。如果未指定,容器运行时将为每个容器分配一个随机 SELinux 上下文。也可以在 PodSecurityContext 中设置。如果在 SecurityContext 和 PodSecurityContext 中设置,则 SecurityContext 中指定的值具有优先权。请注意,当 spec.os.name 是 windows 时无法设置此字段。
- 类型
-
object
属性 | 类型 | 描述 |
---|---|---|
|
| level 是适用于容器的 SELinux 级别标签。 |
|
| role 是适用于容器的 SELinux 角色标签。 |
|
| type 是适用于容器的 SELinux 类型标签。 |
|
| user 是适用于容器的 SELinux 用户标签。 |
2.1.147. .spec.containers[].securityContext.seccompProfile
- 描述
- 此容器使用的 seccomp 选项。如果 seccomp 选项同时在 pod 和容器级别上提供,则容器选项会覆盖 pod 选项。请注意,当 spec.os.name 是 windows 时无法设置此字段。
- 类型
-
object
- 必填
-
type
-
属性 | 类型 | 描述 |
---|---|---|
|
| localhostProfile 表示应使用节点上文件中定义的配置集。该配置集必须在节点上预先配置才能正常工作。必须是一个降序路径,相对于 kubelet 配置的 seccomp 配置集位置。如果类型为"Localhost",则必须设置。不得为任何其他类型设置。 |
|
| Type 表示将应用了哪些 seccomp 配置集。有效选项有: localhost - 应该使用节点上文件中定义的配置文件。RuntimeDefault - 应使用容器运行时默认配置集。unconfined - 不应应用配置集。 |
2.1.148. .spec.containers[].securityContext.windowsOptions
- 描述
- 应用到所有容器的 Windows 特定设置。如果未指定,则使用 PodSecurityContext 中的选项。如果在 SecurityContext 和 PodSecurityContext 中设置,则 SecurityContext 中指定的值具有优先权。请注意,当 spec.os.name 是 linux 时,不能设置此字段。
- 类型
-
object
属性 | 类型 | 描述 |
---|---|---|
|
| GMSACredentialSpec 是 GMSA 准入 Webhook (https://github.com/kubernetes-sigs/windows-gmsa)内联由 GMSACredentialSpec 命名的 GMSA 凭证规格的内容。 |
|
| GMSACredentialSpecName 是要使用的 GMSA 凭证规格的名称。 |
|
| HostProcess 确定容器是否应作为"主机进程"容器运行。所有 Pod 的容器都必须具有相同的有效的 HostProcess 值(不允许混合 HostProcess 容器和非主机进程容器)。另外,如果 HostProcess 为 true,则 HostNetwork 也必须设置为 true。 |
|
| Windows 中的 UserName,以运行容器进程的入口点。如果未指定,则默认为在镜像元数据中指定的用户。也可以在 PodSecurityContext 中设置。如果在 SecurityContext 和 PodSecurityContext 中设置,则 SecurityContext 中指定的值具有优先权。 |
2.1.149. .spec.containers[].startupProbe
- 描述
- startupProbe 表示 Pod 已成功初始化。如果指定,则不会执行其他探测,直到成功完成为止。如果这个探测失败,则 Pod 将重启,就像 livenessProbe 失败一样。这可用于在 Pod 生命周期开始时提供不同的探测参数,当可能需要很长时间才能加载数据或温缓存时,而不是在 steady-state 操作过程中提供不同的探测参数。这不能更新。更多信息: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes
- 类型
-
object
属性 | 类型 | 描述 |
---|---|---|
|
| exec 指定要执行的操作。 |
|
| 在成功后,探测被视为失败的最小连续失败。默认值为 3。最小值为 1。 |
|
| GRPC 指定涉及 GRPC 端口的操作。 |
|
| httpGet 指定要执行的 http 请求。 |
|
| 容器启动存活度探测前的秒数。更多信息: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes |
|
| 执行探测的频率(以秒为单位)。默认值为 10 秒。最小值为 1。 |
|
| 在失败后,探测至少连续成功会被视为成功。默认为 1。对于存活度和启动,必须为 1。最小值为 1。 |
|
| tcpSocket 指定涉及 TCP 端口的操作。 |
|
| pod 在探测失败时安全终止所需的可选持续时间(以秒为单位)。宽限期是 pod 中运行的进程发送终止信号和进程被强制停止使用 kill 信号的时间(以秒为单位)。为您的进程设置这个值超过预期清理时间。如果这个值是 nil,则使用 pod 的 terminationGracePeriodSeconds。否则,这个值会覆盖 pod 规格提供的值。值必须是非负整数。值为零表示立即通过终止信号停止(没有关闭的机会)。这是一个 beta 字段,需要启用 ProbeTerminationGracePeriod 功能门。如果未设置,则使用最小值为 1. spec.terminationGracePeriodSeconds。 |
|
| 探测超时的秒数。默认值为 1 秒。最小值为 1。更多信息: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes |
2.1.150. .spec.containers[].startupProbe.exec
- 描述
- exec 指定要执行的操作。
- 类型
-
object
属性 | 类型 | 描述 |
---|---|---|
|
| 命令是在容器内执行的命令行,而 命令的工作目录是容器文件系统中的 root ('/')。命令只是 exec'd,它不会在 shell 中运行,因此传统的 shell 指令('|' 等)将无法工作。要使用 shell,您需要明确调用该 shell。0 的退出状态被视为 live/healthy,非零不健康。 |
2.1.151. .spec.containers[].startupProbe.grpc
- 描述
- GRPC 指定涉及 GRPC 端口的操作。
- 类型
-
object
- 必填
-
port
-
属性 | 类型 | 描述 |
---|---|---|
|
| gRPC 服务的端口号。number 必须在 1 到 65535 之间。 |
|
| service 是要放入 gRPC HealthCheckRequest 中的服务名称(请参阅 https://github.com/grpc/grpc/blob/master/doc/health-checking.md)。 如果没有指定,则默认行为由 gRPC 定义。 |
2.1.152. .spec.containers[].startupProbe.httpGet
- 描述
- httpGet 指定要执行的 http 请求。
- 类型
-
object
- 必填
-
port
-
属性 | 类型 | 描述 |
---|---|---|
|
| 要连接到的主机名,默认为 pod IP。您可能想在 httpHeaders 中设置"主机"。 |
|
| 在请求中设置的自定义标头。HTTP 允许重复的标头。 |
|
| HTTPHeader 描述了在 HTTP 探测中使用的自定义标头 |
|
| 在 HTTP 服务器上访问的路径。 |
|
| 用于访问容器的端口的名称或编号。number 必须在 1 到 65535 之间。名称必须是 IANA_SVC_NAME。 |
|
| 用于连接到主机的方案。默认为 HTTP。 |
2.1.153. .spec.containers[].startupProbe.httpGet.httpHeaders
- 描述
- 在请求中设置的自定义标头。HTTP 允许重复的标头。
- 类型
-
array
2.1.154. .spec.containers[].startupProbe.httpGet.httpHeaders[]
- 描述
- HTTPHeader 描述了在 HTTP 探测中使用的自定义标头
- 类型
-
object
- 必填
-
name
-
value
-
属性 | 类型 | 描述 |
---|---|---|
|
| 标头字段名称。这将在输出时规范,因此理解 case-variant 名称与相同的标头一样。 |
|
| 标头字段值 |
2.1.155. .spec.containers[].startupProbe.tcpSocket
- 描述
- tcpSocket 指定涉及 TCP 端口的操作。
- 类型
-
object
- 必填
-
port
-
属性 | 类型 | 描述 |
---|---|---|
|
| 可选:要连接到的主机名,默认为 pod IP。 |
|
| 用于访问容器的端口的编号或名称。number 必须在 1 到 65535 之间。名称必须是 IANA_SVC_NAME。 |
2.1.156. .spec.containers[].volumeDevices
- 描述
- volumeDevices 是容器要使用的块设备列表。
- 类型
-
array
2.1.157. .spec.containers[].volumeDevices[]
- 描述
- volumeDevice 描述了容器中原始块设备的映射。
- 类型
-
object
- 必填
-
devicePath
-
name
-
属性 | 类型 | 描述 |
---|---|---|
|
| DevicePath 是该设备要映射到的容器内的路径。 |
|
| name 必须与 pod 中 persistentVolumeClaim 的名称匹配 |
2.1.158. .spec.containers[].volumeMounts
- 描述
- 要挂载到容器文件系统的 Pod 卷。无法更新。
- 类型
-
array
2.1.159. .spec.containers[].volumeMounts[]
- 描述
- VolumeMount 描述了容器内卷挂载。
- 类型
-
object
- 必填
-
mountPath
-
name
-
属性 | 类型 | 描述 |
---|---|---|
|
| 应挂载卷的容器中的路径。不得包含 ':'。 |
|
| mountPropagation 决定挂载如何从主机传播到容器以及反向传播。如果没有设置,则使用 MountPropagationNone。此字段在 1.10 中是 beta。当 RecursiveReadOnly 设置为 IfPossible 或 Enabled 时,mountPropagation 必须是 None 或未指定(默认为 None)。 |
|
| 这必须与卷的 Name 匹配。 |
|
| 如果为 true,则以只读方式挂载,否则读写(false 或未指定)。默认为false。 |
|
| RecursiveReadOnly 指定是否应递归处理只读挂载。 如果 ReadOnly 为 false,则此字段没有意义,必须未指定。 如果 ReadOnly 为 true,且此字段设置为 Disabled,则不会递归只读挂载。如果将此字段设置为 IfPossible,则挂载将递归只读(如果容器运行时支持)。如果此字段设置为 Enabled,则挂载将在容器运行时支持时递归只读,否则不会启动 pod,并生成错误来指示原因。 如果将此字段设置为 IfPossible 或 Enabled,则 MountPropagation 必须设为 None (或未指定,默认为 None)。 如果没有指定此字段,它将被视为与 Disabled 的等效值。 |
|
| 应从中挂载容器卷的卷中的路径。默认为 "" (卷的 root)。 |
|
| 在应该挂载容器卷的卷中扩展路径。行为与 SubPath 类似,但环境变量引用 $(VAR_NAME)使用容器的环境扩展。默认为 "" (卷的 root)。SubPathExpr 和 SubPath 是互斥的。 |
2.1.160. .spec.hostAliases
- 描述
- Pod 的 hostAliases 配置
- 类型
-
数组
2.1.161. .spec.hostAliases[]
- 描述
- HostAlias 包含 IP 和主机名之间的映射,这些映射将作为 pod 的主机文件中的条目注入。
- 类型
-
object
- 必填
-
主机名
-
ip
-
属性 | 类型 | 描述 |
---|---|---|
|
| 以上 IP 地址的主机名。 |
|
| 主机文件条目的 IP 地址。 |
2.1.162. .spec.imagePullSecrets
- 描述
- 从 registry 中对同一命名空间中的 secret 的引用列表,用于从 registry 中拉取 prometheus 和 alertmanager 镜像,请参阅 http://kubernetes.io/docs/user-guide/images#specifying-imagepullsecrets-on-a-pod
- 类型
-
array
2.1.163. .spec.imagePullSecrets[]
- 描述
- LocalObjectReference 包含足够信息,供您在同一命名空间中找到引用的对象。
- 类型
-
object
属性 | 类型 | 描述 |
---|---|---|
|
|
引用的名称。有效地需要此字段,但因为允许向后兼容为空。这里具有空值的此类实例几乎是错误的。TODO:添加其他有用的字段。apiVersion、kind、uid?更多信息: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names TODO: 当 controller-gen 不需要 https://github.com/kubernetes-sigs/kubebuilder/issues/3896 时,Drop |
2.1.164. .spec.initContainers
- 描述
-
initContainers 允许将 initContainers 添加到 pod 定义中。它们可用于从外部来源获取用于注入 Alertmanager 配置的 secret。执行 initContainer 期间的任何错误将导致重启 Pod。更多信息: https://kubernetes.io/docs/concepts/workloads/pods/init-containers/ InitContainers如果操作器共享相同的名称和修改,则修改 Operator 生成的 init 容器(如果它们通过策略合并补丁完成)。当前 init 容器名称为:
init-config-reloader
。覆盖 init 容器完全超出维护人员将支持什么范围,通过这样做,您接受的行为可能随时中断,而无需通知。 - 类型
-
array
2.1.165. .spec.initContainers[]
- 描述
- 要在 pod 中运行的单一应用程序容器。
- 类型
-
object
- 必填
-
name
-
属性 | 类型 | 描述 |
---|---|---|
|
| 入口点的参数。如果没有提供,则使用容器镜像的 CMD。变量引用 $(VAR_NAME)使用容器的环境扩展。如果无法解析变量,则输入字符串中的引用将保持不变。双引号被缩减为单个 $,它允许转义 $(VAR_NAME)语法:即 " (VAR_NAME) " 将生成字符串 literal "$(VAR_NAME) "。转义的引用永远不会扩展,无论变量是否存在。无法更新。更多信息: https://kubernetes.io/docs/tasks/inject-data-application/define-command-argument-container/#running-a-command-in-a-shell |
|
| ENTRYPOINT 数组.没有在 shell 中执行。如果未提供此容器镜像,则使用容器镜像的 ENTRYPOINT。变量引用 $(VAR_NAME)使用容器的环境扩展。如果无法解析变量,则输入字符串中的引用将保持不变。双引号被缩减为单个 $,它允许转义 $(VAR_NAME)语法:即 " (VAR_NAME) " 将生成字符串 literal "$(VAR_NAME) "。转义的引用永远不会扩展,无论变量是否存在。无法更新。更多信息: https://kubernetes.io/docs/tasks/inject-data-application/define-command-argument-container/#running-a-command-in-a-shell |
|
| 容器中要设置的环境变量列表。无法更新。 |
|
| EnvVar 代表容器中存在的环境变量。 |
|
| 在容器中填充环境变量的源列表。源中定义的键必须是 C_IDENTIFIER。当容器启动时,所有无效密钥都会被报告为事件。当多个源中存在键时,与最后一个源关联的值将具有优先权。由带有重复键的 Env 定义的值将具有优先权。无法更新。 |
|
| EnvFromSource 代表一组 ConfigMap 的源 |
|
| 容器镜像名称。更多信息: https://kubernetes.io/docs/concepts/containers/images 此字段是可选的,允许更高级别的配置管理默认或覆盖工作负载控制器(如 Deployments 和 StatefulSets)中的容器镜像。 |
|
| 镜像拉取(pull)策略。Always, Never, IfNotPresent 之一。如果指定了 :latest 标签,则默认为 Always,否则则默认为 IfNotPresent。无法更新。更多信息: https://kubernetes.io/docs/concepts/containers/images#updating-images |
|
| 管理系统应采取的操作来响应容器生命周期事件。无法更新。 |
|
| 容器存活度探测.如果探测失败,容器将重启。无法更新。更多信息: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes |
|
| 指定为 DNS_LABEL 的容器名称。pod 中的每个容器都必须具有唯一的名称(DNS_LABEL)。无法更新。 |
|
| 从容器公开的端口列表。这里没有指定端口不会阻止公开该端口。所有正在侦听容器内默认"0.0.0.0"地址的端口均可从网络访问。使用策略合并补丁修改阵列可能会破坏数据。如需更多信息,请参阅 https://github.com/kubernetes/kubernetes/issues/108255。无法更新。 |
|
| containerPort 代表单个容器中的网络端口。 |
|
| 容器服务的定期探测到就绪状态。如果探测失败,容器将从服务端点中删除。无法更新。更多信息: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes |
|
| 容器的资源重新定义策略。 |
|
| ContainerResizePolicy 代表容器的资源重新定义策略。 |
|
| 此容器所需的计算资源。无法更新。更多信息: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/ |
|
| 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.io/docs/tasks/configure-pod-container/security-context/ |
|
| startupProbe 表示 Pod 已成功初始化。如果指定,则不会执行其他探测,直到成功完成为止。如果这个探测失败,则 Pod 将重启,就像 livenessProbe 失败一样。这可用于在 Pod 生命周期开始时提供不同的探测参数,当可能需要很长时间才能加载数据或温缓存时,而不是在 steady-state 操作过程中提供不同的探测参数。这不能更新。更多信息: https://kubernetes.io/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。无法更新。 |
|
| 指明应当如何填充终止消息。文件将使用 terminationMessagePath 的内容在成功或失败时填充容器状态消息。如果终止消息文件为空,则 FallbackToLogsOnError 将使用容器日志输出的最后块,并且容器退出并显示错误。日志输出限制为 2048 字节或 80 行,以较小者。默认为 File。无法更新。 |
|
| 此容器是否应为自己分配 TTY,也要求 'stdin' 为 true。默认为 false。 |
|
| volumeDevices 是容器要使用的块设备列表。 |
|
| volumeDevice 描述了容器中原始块设备的映射。 |
|
| 要挂载到容器文件系统的 Pod 卷。无法更新。 |
|
| VolumeMount 描述了容器内卷挂载。 |
|
| 容器的工作目录。如果未指定,则将使用容器运行时的默认值,该默认值可能在容器镜像中配置。无法更新。 |
2.1.166. .spec.initContainers[].env
- 描述
- 容器中要设置的环境变量列表。无法更新。
- 类型
-
array
2.1.167. .spec.initContainers[].env[]
- 描述
- EnvVar 代表容器中存在的环境变量。
- 类型
-
object
- 必填
-
name
-
属性 | 类型 | 描述 |
---|---|---|
|
| 环境变量的名称。必须是 C_IDENTIFIER。 |
|
| 变量引用 $(VAR_NAME)使用容器中之前定义的环境变量以及任何服务环境变量进行扩展。如果无法解析变量,则输入字符串中的引用将保持不变。双引号被缩减为单个 $,它允许转义 $(VAR_NAME)语法:即 " (VAR_NAME) " 将生成字符串 literal "$(VAR_NAME) "。转义的引用永远不会扩展,无论变量是否存在。默认为 ""。 |
|
| 环境变量的值的源。如果值不为空,则无法使用。 |
2.1.168. .spec.initContainers[].env[].valueFrom
- 描述
- 环境变量的值的源。如果值不为空,则无法使用。
- 类型
-
object
属性 | 类型 | 描述 |
---|---|---|
|
| 选择 ConfigMap 的键。 |
|
|
选择 pod 的字段:支持 metadata.name、metadata.namespace、 |
|
| 选择容器的资源:当前仅支持资源限值和请求(limits.cpu, limits.memory, limits.ephemeral-storage, requests.cpu, requests.memory and requests.ephemeral-storage)。 |
|
| 在 pod 命名空间中选择 secret 的键 |
2.1.169. .spec.initContainers[].env[].valueFrom.configMapKeyRef
- 描述
- 选择 ConfigMap 的键。
- 类型
-
object
- 必填
-
key
-
属性 | 类型 | 描述 |
---|---|---|
|
| 要选择的密钥。 |
|
|
引用的名称。有效地需要此字段,但因为允许向后兼容为空。这里具有空值的此类实例几乎是错误的。TODO:添加其他有用的字段。apiVersion、kind、uid?更多信息: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names TODO: 当 controller-gen 不需要 https://github.com/kubernetes-sigs/kubebuilder/issues/3896 时,Drop |
|
| 指定是否必须定义 ConfigMap 还是其键 |
2.1.170. .spec.initContainers[].env[].valueFrom.fieldRef
- 描述
-
选择 pod 的字段:支持 metadata.name、metadata.namespace、
metadata.labels['<KEY>']
,metadata.annotations['<KEY>']
, spec.nodeName, spec.serviceAccountName, status.hostIP, status.podIP, status.podIPs. - 类型
-
object
- 必填
-
fieldPath
-
属性 | 类型 | 描述 |
---|---|---|
|
| 模式的版本是按术语编写的 FieldPath,默认为 "v1"。 |
|
| 在指定 API 版本中选择的字段路径。 |
2.1.171. .spec.initContainers[].env[].valueFrom.resourceFieldRef
- 描述
- 选择容器的资源:当前仅支持资源限值和请求(limits.cpu, limits.memory, limits.ephemeral-storage, requests.cpu, requests.memory and requests.ephemeral-storage)。
- 类型
-
object
- 必填
-
resource
-
属性 | 类型 | 描述 |
---|---|---|
|
| 容器名称:卷需要,对于 env vars是可选的 |
|
| 指定公开资源的输出格式,默认为 "1" |
|
| 必需:要选择的资源 |
2.1.172. .spec.initContainers[].env[].valueFrom.secretKeyRef
- 描述
- 在 pod 命名空间中选择 secret 的键
- 类型
-
object
- 必填
-
key
-
属性 | 类型 | 描述 |
---|---|---|
|
| 要从中选择的 secret 的密钥。必须是一个有效的 secret 密钥。 |
|
|
引用的名称。有效地需要此字段,但因为允许向后兼容为空。这里具有空值的此类实例几乎是错误的。TODO:添加其他有用的字段。apiVersion、kind、uid?更多信息: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names TODO: 当 controller-gen 不需要 https://github.com/kubernetes-sigs/kubebuilder/issues/3896 时,Drop |
|
| 指定是否需要定义 Secret 还是其密钥 |
2.1.173. .spec.initContainers[].envFrom
- 描述
- 在容器中填充环境变量的源列表。源中定义的键必须是 C_IDENTIFIER。当容器启动时,所有无效密钥都会被报告为事件。当多个源中存在键时,与最后一个源关联的值将具有优先权。由带有重复键的 Env 定义的值将具有优先权。无法更新。
- 类型
-
array
2.1.174. .spec.initContainers[].envFrom[]
- 描述
- EnvFromSource 代表一组 ConfigMap 的源
- 类型
-
object
属性 | 类型 | 描述 |
---|---|---|
|
| 要从中选择的 ConfigMap |
|
| 要添加到 ConfigMap 中每个键的可选标识符。必须是 C_IDENTIFIER。 |
|
| 要从中选择的 Secret |
2.1.175. .spec.initContainers[].envFrom[].configMapRef
- 描述
- 要从中选择的 ConfigMap
- 类型
-
object
属性 | 类型 | 描述 |
---|---|---|
|
|
引用的名称。有效地需要此字段,但因为允许向后兼容为空。这里具有空值的此类实例几乎是错误的。TODO:添加其他有用的字段。apiVersion、kind、uid?更多信息: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names TODO: 当 controller-gen 不需要 https://github.com/kubernetes-sigs/kubebuilder/issues/3896 时,Drop |
|
| 指定是否必须定义 ConfigMap |
2.1.176. .spec.initContainers[].envFrom[].secretRef
- 描述
- 要从中选择的 Secret
- 类型
-
object
属性 | 类型 | 描述 |
---|---|---|
|
|
引用的名称。有效地需要此字段,但因为允许向后兼容为空。这里具有空值的此类实例几乎是错误的。TODO:添加其他有用的字段。apiVersion、kind、uid?更多信息: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names TODO: 当 controller-gen 不需要 https://github.com/kubernetes-sigs/kubebuilder/issues/3896 时,Drop |
|
| 指定是否必须定义 Secret |
2.1.177. .spec.initContainers[].lifecycle
- 描述
- 管理系统应采取的操作来响应容器生命周期事件。无法更新。
- 类型
-
object
属性 | 类型 | 描述 |
---|---|---|
|
| postStart 在容器被创建后立即调用。如果处理程序失败,则容器将根据其重启策略终止并重启。容器块的其他管理,直到 hook 完成为止。更多信息: https://kubernetes.io/docs/concepts/containers/container-lifecycle-hooks/#container-hooks |
|
| preStop 在因为 API 请求或管理事件而终止容器前马上调用,如存活度/启动探测失败、抢占、资源争用等。如果容器崩溃或退出,则不会调用处理程序。Pod 的终止宽限期倒计时开始,然后再执行 PreStop hook。无论处理程序的结果是什么,容器最终都会在 Pod 的终止宽限期内终止(除非被终结器造成延迟)。容器的其他管理块直到 hook 完成或直至到达终止宽限期为止。更多信息: https://kubernetes.io/docs/concepts/containers/container-lifecycle-hooks/#container-hooks |
2.1.178. .spec.initContainers[].lifecycle.postStart
- 描述
- postStart 在容器被创建后立即调用。如果处理程序失败,则容器将根据其重启策略终止并重启。容器块的其他管理,直到 hook 完成为止。更多信息: https://kubernetes.io/docs/concepts/containers/container-lifecycle-hooks/#container-hooks
- 类型
-
object
属性 | 类型 | 描述 |
---|---|---|
|
| exec 指定要执行的操作。 |
|
| httpGet 指定要执行的 http 请求。 |
|
| sleep 代表容器在被终止前应休眠的持续时间。 |
|
| 已弃用。tcpSocket 不支持作为 LifecycleHandler,并且保持向后兼容性。指定 tcp 处理程序时,没有此字段的验证和生命周期 hook 将在运行时失败。 |
2.1.179. .spec.initContainers[].lifecycle.postStart.exec
- 描述
- exec 指定要执行的操作。
- 类型
-
object
属性 | 类型 | 描述 |
---|---|---|
|
| 命令是在容器内执行的命令行,而 命令的工作目录是容器文件系统中的 root ('/')。命令只是 exec'd,它不会在 shell 中运行,因此传统的 shell 指令('|' 等)将无法工作。要使用 shell,您需要明确调用该 shell。0 的退出状态被视为 live/healthy,非零不健康。 |
2.1.180. .spec.initContainers[].lifecycle.postStart.httpGet
- 描述
- httpGet 指定要执行的 http 请求。
- 类型
-
object
- 必填
-
port
-
属性 | 类型 | 描述 |
---|---|---|
|
| 要连接到的主机名,默认为 pod IP。您可能想在 httpHeaders 中设置"主机"。 |
|
| 在请求中设置的自定义标头。HTTP 允许重复的标头。 |
|
| HTTPHeader 描述了在 HTTP 探测中使用的自定义标头 |
|
| 在 HTTP 服务器上访问的路径。 |
|
| 用于访问容器的端口的名称或编号。number 必须在 1 到 65535 之间。名称必须是 IANA_SVC_NAME。 |
|
| 用于连接到主机的方案。默认为 HTTP。 |
2.1.181. .spec.initContainers[].lifecycle.postStart.httpGet.httpHeaders
- 描述
- 在请求中设置的自定义标头。HTTP 允许重复的标头。
- 类型
-
array
2.1.182. .spec.initContainers[].lifecycle.postStart.httpGet.httpHeaders[]
- 描述
- HTTPHeader 描述了在 HTTP 探测中使用的自定义标头
- 类型
-
object
- 必填
-
name
-
value
-
属性 | 类型 | 描述 |
---|---|---|
|
| 标头字段名称。这将在输出时规范,因此理解 case-variant 名称与相同的标头一样。 |
|
| 标头字段值 |
2.1.183. .spec.initContainers[].lifecycle.postStart.sleep
- 描述
- sleep 代表容器在被终止前应休眠的持续时间。
- 类型
-
object
- 必填
-
SECONDS
-
属性 | 类型 | 描述 |
---|---|---|
|
| seconds 是睡眠的秒数。 |
2.1.184. .spec.initContainers[].lifecycle.postStart.tcpSocket
- 描述
- 已弃用。tcpSocket 不支持作为 LifecycleHandler,并且保持向后兼容性。指定 tcp 处理程序时,没有此字段的验证和生命周期 hook 将在运行时失败。
- 类型
-
object
- 必填
-
port
-
属性 | 类型 | 描述 |
---|---|---|
|
| 可选:要连接到的主机名,默认为 pod IP。 |
|
| 用于访问容器的端口的编号或名称。number 必须在 1 到 65535 之间。名称必须是 IANA_SVC_NAME。 |
2.1.185. .spec.initContainers[].lifecycle.preStop
- 描述
- preStop 在因为 API 请求或管理事件而终止容器前马上调用,如存活度/启动探测失败、抢占、资源争用等。如果容器崩溃或退出,则不会调用处理程序。Pod 的终止宽限期倒计时开始,然后再执行 PreStop hook。无论处理程序的结果是什么,容器最终都会在 Pod 的终止宽限期内终止(除非被终结器造成延迟)。容器的其他管理块直到 hook 完成或直至到达终止宽限期为止。更多信息: https://kubernetes.io/docs/concepts/containers/container-lifecycle-hooks/#container-hooks
- 类型
-
object
属性 | 类型 | 描述 |
---|---|---|
|
| exec 指定要执行的操作。 |
|
| httpGet 指定要执行的 http 请求。 |
|
| sleep 代表容器在被终止前应休眠的持续时间。 |
|
| 已弃用。tcpSocket 不支持作为 LifecycleHandler,并且保持向后兼容性。指定 tcp 处理程序时,没有此字段的验证和生命周期 hook 将在运行时失败。 |
2.1.186. .spec.initContainers[].lifecycle.preStop.exec
- 描述
- exec 指定要执行的操作。
- 类型
-
object
属性 | 类型 | 描述 |
---|---|---|
|
| 命令是在容器内执行的命令行,而 命令的工作目录是容器文件系统中的 root ('/')。命令只是 exec'd,它不会在 shell 中运行,因此传统的 shell 指令('|' 等)将无法工作。要使用 shell,您需要明确调用该 shell。0 的退出状态被视为 live/healthy,非零不健康。 |
2.1.187. .spec.initContainers[].lifecycle.preStop.httpGet
- 描述
- httpGet 指定要执行的 http 请求。
- 类型
-
object
- 必填
-
port
-
属性 | 类型 | 描述 |
---|---|---|
|
| 要连接到的主机名,默认为 pod IP。您可能想在 httpHeaders 中设置"主机"。 |
|
| 在请求中设置的自定义标头。HTTP 允许重复的标头。 |
|
| HTTPHeader 描述了在 HTTP 探测中使用的自定义标头 |
|
| 在 HTTP 服务器上访问的路径。 |
|
| 用于访问容器的端口的名称或编号。number 必须在 1 到 65535 之间。名称必须是 IANA_SVC_NAME。 |
|
| 用于连接到主机的方案。默认为 HTTP。 |
2.1.188. .spec.initContainers[].lifecycle.preStop.httpGet.httpHeaders
- 描述
- 在请求中设置的自定义标头。HTTP 允许重复的标头。
- 类型
-
array
2.1.189. .spec.initContainers[].lifecycle.preStop.httpGet.httpHeaders[]
- 描述
- HTTPHeader 描述了在 HTTP 探测中使用的自定义标头
- 类型
-
object
- 必填
-
name
-
value
-
属性 | 类型 | 描述 |
---|---|---|
|
| 标头字段名称。这将在输出时规范,因此理解 case-variant 名称与相同的标头一样。 |
|
| 标头字段值 |
2.1.190. .spec.initContainers[].lifecycle.preStop.sleep
- 描述
- sleep 代表容器在被终止前应休眠的持续时间。
- 类型
-
object
- 必填
-
SECONDS
-
属性 | 类型 | 描述 |
---|---|---|
|
| seconds 是睡眠的秒数。 |
2.1.191. .spec.initContainers[].lifecycle.preStop.tcpSocket
- 描述
- 已弃用。tcpSocket 不支持作为 LifecycleHandler,并且保持向后兼容性。指定 tcp 处理程序时,没有此字段的验证和生命周期 hook 将在运行时失败。
- 类型
-
object
- 必填
-
port
-
属性 | 类型 | 描述 |
---|---|---|
|
| 可选:要连接到的主机名,默认为 pod IP。 |
|
| 用于访问容器的端口的编号或名称。number 必须在 1 到 65535 之间。名称必须是 IANA_SVC_NAME。 |
2.1.192. .spec.initContainers[].livenessProbe
- 描述
- 容器存活度探测.如果探测失败,容器将重启。无法更新。更多信息: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes
- 类型
-
object
属性 | 类型 | 描述 |
---|---|---|
|
| exec 指定要执行的操作。 |
|
| 在成功后,探测被视为失败的最小连续失败。默认值为 3。最小值为 1。 |
|
| GRPC 指定涉及 GRPC 端口的操作。 |
|
| httpGet 指定要执行的 http 请求。 |
|
| 容器启动存活度探测前的秒数。更多信息: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes |
|
| 执行探测的频率(以秒为单位)。默认值为 10 秒。最小值为 1。 |
|
| 在失败后,探测至少连续成功会被视为成功。默认为 1。对于存活度和启动,必须为 1。最小值为 1。 |
|
| tcpSocket 指定涉及 TCP 端口的操作。 |
|
| pod 在探测失败时安全终止所需的可选持续时间(以秒为单位)。宽限期是 pod 中运行的进程发送终止信号和进程被强制停止使用 kill 信号的时间(以秒为单位)。为您的进程设置这个值超过预期清理时间。如果这个值是 nil,则使用 pod 的 terminationGracePeriodSeconds。否则,这个值会覆盖 pod 规格提供的值。值必须是非负整数。值为零表示立即通过终止信号停止(没有关闭的机会)。这是一个 beta 字段,需要启用 ProbeTerminationGracePeriod 功能门。如果未设置,则使用最小值为 1. spec.terminationGracePeriodSeconds。 |
|
| 探测超时的秒数。默认值为 1 秒。最小值为 1。更多信息: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes |
2.1.193. .spec.initContainers[].livenessProbe.exec
- 描述
- exec 指定要执行的操作。
- 类型
-
object
属性 | 类型 | 描述 |
---|---|---|
|
| 命令是在容器内执行的命令行,而 命令的工作目录是容器文件系统中的 root ('/')。命令只是 exec'd,它不会在 shell 中运行,因此传统的 shell 指令('|' 等)将无法工作。要使用 shell,您需要明确调用该 shell。0 的退出状态被视为 live/healthy,非零不健康。 |
2.1.194. .spec.initContainers[].livenessProbe.grpc
- 描述
- GRPC 指定涉及 GRPC 端口的操作。
- 类型
-
object
- 必填
-
port
-
属性 | 类型 | 描述 |
---|---|---|
|
| gRPC 服务的端口号。number 必须在 1 到 65535 之间。 |
|
| service 是要放入 gRPC HealthCheckRequest 中的服务名称(请参阅 https://github.com/grpc/grpc/blob/master/doc/health-checking.md)。 如果没有指定,则默认行为由 gRPC 定义。 |
2.1.195. .spec.initContainers[].livenessProbe.httpGet
- 描述
- httpGet 指定要执行的 http 请求。
- 类型
-
object
- 必填
-
port
-
属性 | 类型 | 描述 |
---|---|---|
|
| 要连接到的主机名,默认为 pod IP。您可能想在 httpHeaders 中设置"主机"。 |
|
| 在请求中设置的自定义标头。HTTP 允许重复的标头。 |
|
| HTTPHeader 描述了在 HTTP 探测中使用的自定义标头 |
|
| 在 HTTP 服务器上访问的路径。 |
|
| 用于访问容器的端口的名称或编号。number 必须在 1 到 65535 之间。名称必须是 IANA_SVC_NAME。 |
|
| 用于连接到主机的方案。默认为 HTTP。 |
2.1.196. .spec.initContainers[].livenessProbe.httpGet.httpHeaders
- 描述
- 在请求中设置的自定义标头。HTTP 允许重复的标头。
- 类型
-
array
2.1.197. .spec.initContainers[].livenessProbe.httpGet.httpHeaders[]
- 描述
- HTTPHeader 描述了在 HTTP 探测中使用的自定义标头
- 类型
-
object
- 必填
-
name
-
value
-
属性 | 类型 | 描述 |
---|---|---|
|
| 标头字段名称。这将在输出时规范,因此理解 case-variant 名称与相同的标头一样。 |
|
| 标头字段值 |
2.1.198. .spec.initContainers[].livenessProbe.tcpSocket
- 描述
- tcpSocket 指定涉及 TCP 端口的操作。
- 类型
-
object
- 必填
-
port
-
属性 | 类型 | 描述 |
---|---|---|
|
| 可选:要连接到的主机名,默认为 pod IP。 |
|
| 用于访问容器的端口的编号或名称。number 必须在 1 到 65535 之间。名称必须是 IANA_SVC_NAME。 |
2.1.199. .spec.initContainers[].ports
- 描述
- 从容器公开的端口列表。这里没有指定端口不会阻止公开该端口。所有正在侦听容器内默认"0.0.0.0"地址的端口均可从网络访问。使用策略合并补丁修改阵列可能会破坏数据。如需更多信息,请参阅 https://github.com/kubernetes/kubernetes/issues/108255。无法更新。
- 类型
-
array
2.1.200. .spec.initContainers[].ports[]
- 描述
- containerPort 代表单个容器中的网络端口。
- 类型
-
object
- 必填
-
containerPort
-
属性 | 类型 | 描述 |
---|---|---|
|
| pod IP 地址上公开的端口号。这必须是有效的端口号 0 < x < 65536。 |
|
| 将外部端口绑定到的主机 IP。 |
|
| 主机上公开的端口号。如果指定,这必须是有效的端口号 0 < x < 65536。如果指定了 HostNetwork,它必须与 ContainerPort 匹配。大多数容器都不需要这样做。 |
|
| 如果指定,这必须是 IANA_SVC_NAME,在 pod 中唯一。pod 中的每个命名端口都必须具有唯一的名称。服务可以引用的端口的名称。 |
|
| 端口的协议。必须是 UDP、TCP 或 SCTP。默认为 "TCP"。 |
2.1.201. .spec.initContainers[].readinessProbe
- 描述
- 容器服务的定期探测到就绪状态。如果探测失败,容器将从服务端点中删除。无法更新。更多信息: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes
- 类型
-
object
属性 | 类型 | 描述 |
---|---|---|
|
| exec 指定要执行的操作。 |
|
| 在成功后,探测被视为失败的最小连续失败。默认值为 3。最小值为 1。 |
|
| GRPC 指定涉及 GRPC 端口的操作。 |
|
| httpGet 指定要执行的 http 请求。 |
|
| 容器启动存活度探测前的秒数。更多信息: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes |
|
| 执行探测的频率(以秒为单位)。默认值为 10 秒。最小值为 1。 |
|
| 在失败后,探测至少连续成功会被视为成功。默认为 1。对于存活度和启动,必须为 1。最小值为 1。 |
|
| tcpSocket 指定涉及 TCP 端口的操作。 |
|
| pod 在探测失败时安全终止所需的可选持续时间(以秒为单位)。宽限期是 pod 中运行的进程发送终止信号和进程被强制停止使用 kill 信号的时间(以秒为单位)。为您的进程设置这个值超过预期清理时间。如果这个值是 nil,则使用 pod 的 terminationGracePeriodSeconds。否则,这个值会覆盖 pod 规格提供的值。值必须是非负整数。值为零表示立即通过终止信号停止(没有关闭的机会)。这是一个 beta 字段,需要启用 ProbeTerminationGracePeriod 功能门。如果未设置,则使用最小值为 1. spec.terminationGracePeriodSeconds。 |
|
| 探测超时的秒数。默认值为 1 秒。最小值为 1。更多信息: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes |
2.1.202. .spec.initContainers[].readinessProbe.exec
- 描述
- exec 指定要执行的操作。
- 类型
-
object
属性 | 类型 | 描述 |
---|---|---|
|
| 命令是在容器内执行的命令行,而 命令的工作目录是容器文件系统中的 root ('/')。命令只是 exec'd,它不会在 shell 中运行,因此传统的 shell 指令('|' 等)将无法工作。要使用 shell,您需要明确调用该 shell。0 的退出状态被视为 live/healthy,非零不健康。 |
2.1.203. .spec.initContainers[].readinessProbe.grpc
- 描述
- GRPC 指定涉及 GRPC 端口的操作。
- 类型
-
object
- 必填
-
port
-
属性 | 类型 | 描述 |
---|---|---|
|
| gRPC 服务的端口号。number 必须在 1 到 65535 之间。 |
|
| service 是要放入 gRPC HealthCheckRequest 中的服务名称(请参阅 https://github.com/grpc/grpc/blob/master/doc/health-checking.md)。 如果没有指定,则默认行为由 gRPC 定义。 |
2.1.204. .spec.initContainers[].readinessProbe.httpGet
- 描述
- httpGet 指定要执行的 http 请求。
- 类型
-
object
- 必填
-
port
-
属性 | 类型 | 描述 |
---|---|---|
|
| 要连接到的主机名,默认为 pod IP。您可能想在 httpHeaders 中设置"主机"。 |
|
| 在请求中设置的自定义标头。HTTP 允许重复的标头。 |
|
| HTTPHeader 描述了在 HTTP 探测中使用的自定义标头 |
|
| 在 HTTP 服务器上访问的路径。 |
|
| 用于访问容器的端口的名称或编号。number 必须在 1 到 65535 之间。名称必须是 IANA_SVC_NAME。 |
|
| 用于连接到主机的方案。默认为 HTTP。 |
2.1.205. .spec.initContainers[].readinessProbe.httpGet.httpHeaders
- 描述
- 在请求中设置的自定义标头。HTTP 允许重复的标头。
- 类型
-
array
2.1.206. .spec.initContainers[].readinessProbe.httpGet.httpHeaders[]
- 描述
- HTTPHeader 描述了在 HTTP 探测中使用的自定义标头
- 类型
-
object
- 必填
-
name
-
value
-
属性 | 类型 | 描述 |
---|---|---|
|
| 标头字段名称。这将在输出时规范,因此理解 case-variant 名称与相同的标头一样。 |
|
| 标头字段值 |
2.1.207. .spec.initContainers[].readinessProbe.tcpSocket
- 描述
- tcpSocket 指定涉及 TCP 端口的操作。
- 类型
-
object
- 必填
-
port
-
属性 | 类型 | 描述 |
---|---|---|
|
| 可选:要连接到的主机名,默认为 pod IP。 |
|
| 用于访问容器的端口的编号或名称。number 必须在 1 到 65535 之间。名称必须是 IANA_SVC_NAME。 |
2.1.208. .spec.initContainers[].resizePolicy
- 描述
- 容器的资源重新定义策略。
- 类型
-
数组
2.1.209. .spec.initContainers[].resizePolicy[]
- 描述
- ContainerResizePolicy 代表容器的资源重新定义策略。
- 类型
-
object
- 必填
-
resourceName
-
restartPolicy
-
属性 | 类型 | 描述 |
---|---|---|
|
| 此资源重新定义策略应用到的资源的名称。支持的值有:cpu、memory。 |
|
| 在指定资源调整大小时,重启策略会被应用。如果没有指定,则默认为 NotRequired。 |
2.1.210. .spec.initContainers[].resources
- 描述
- 此容器所需的计算资源。无法更新。更多信息: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/
- 类型
-
object
属性 | 类型 | 描述 |
---|---|---|
|
| claim 列出此容器使用的 spec.resourceClaims 中定义的资源名称。 这是一个 alpha 字段,需要启用 DynamicResourceAllocation 功能门。 此字段不可变。它只能为容器设置。 |
|
| ResourceClaim 引用 PodSpec.ResourceClaims 中的一个条目。 |
|
| 限制描述了允许的最大计算资源量。更多信息: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/ |
|
| Requests 描述了所需的最少计算资源。如果容器省略了 Requests,则默认为 Limits (如果明确指定),否则默认为实现定义的值。请求不能超过限值。更多信息: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/ |
2.1.211. .spec.initContainers[].resources.claims
- 描述
claim 列出此容器使用的 spec.resourceClaims 中定义的资源名称。
这是一个 alpha 字段,需要启用 DynamicResourceAllocation 功能门。
此字段不可变。它只能为容器设置。
- 类型
-
数组
2.1.212. .spec.initContainers[].resources.claims[]
- 描述
- ResourceClaim 引用 PodSpec.ResourceClaims 中的一个条目。
- 类型
-
object
- 必填
-
name
-
属性 | 类型 | 描述 |
---|---|---|
|
| name 必须与使用此字段的 Pod 的 pod.spec.resourceClaims 中的一个条目的名称匹配。它允许容器内部使用该资源。 |
2.1.213. .spec.initContainers[].securityContext
- 描述
- securityContext 定义容器应运行的安全选项。如果设置,SecurityContext 的字段会覆盖 PodSecurityContext 的等效字段。更多信息: https://kubernetes.io/docs/tasks/configure-pod-container/security-context/
- 类型
-
object
属性 | 类型 | 描述 |
---|---|---|
|
| allowPrivilegeEscalation 控制进程是否可以比其父进程获得更多特权。此 bool 直接控制容器进程上是否设置了 no_new_privs 标志。当容器是 : 1)作为 CAP_SYS_ADMIN 具有 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 时无法设置此字段。 |
|
| 此容器是否具有只读 root 文件系统。默认为 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 选项。如果 seccomp 选项同时在 pod 和容器级别上提供,则容器选项会覆盖 pod 选项。请注意,当 spec.os.name 是 windows 时无法设置此字段。 |
|
| 应用到所有容器的 Windows 特定设置。如果未指定,则使用 PodSecurityContext 中的选项。如果在 SecurityContext 和 PodSecurityContext 中设置,则 SecurityContext 中指定的值具有优先权。请注意,当 spec.os.name 是 linux 时,不能设置此字段。 |
2.1.214. .spec.initContainers[].securityContext.appArmorProfile
- 描述
- appArmorProfile 是此容器使用的 AppArmor 选项。如果设置,此配置集会覆盖 pod 的 appArmorProfile。请注意,当 spec.os.name 是 windows 时无法设置此字段。
- 类型
-
object
- 必填
-
type
-
属性 | 类型 | 描述 |
---|---|---|
|
| localhostProfile 表示节点上载入的配置集。该配置集必须在节点上预先配置才能正常工作。必须与配置文件的加载名称匹配。只在 type 为 "Localhost" 时,才应设置。 |
|
| Type 表示将应用哪些类型的 AppArmor 配置集。有效选项包括: Localhost - 节点上的配置文件预加载。RuntimeDefault - 容器运行时的默认配置集。unconfined - 无 AppArmor 强制。 |
2.1.215. .spec.initContainers[].securityContext.capabilities
- 描述
- 运行容器时添加/丢弃的功能。默认为容器运行时授予的默认功能集。请注意,当 spec.os.name 是 windows 时无法设置此字段。
- 类型
-
object
属性 | 类型 | 描述 |
---|---|---|
|
| 添加了功能 |
|
| 删除的功能 |
2.1.216. .spec.initContainers[].securityContext.seLinuxOptions
- 描述
- 要应用到容器的 SELinux 上下文。如果未指定,容器运行时将为每个容器分配一个随机 SELinux 上下文。也可以在 PodSecurityContext 中设置。如果在 SecurityContext 和 PodSecurityContext 中设置,则 SecurityContext 中指定的值具有优先权。请注意,当 spec.os.name 是 windows 时无法设置此字段。
- 类型
-
object
属性 | 类型 | 描述 |
---|---|---|
|
| level 是适用于容器的 SELinux 级别标签。 |
|
| role 是适用于容器的 SELinux 角色标签。 |
|
| type 是适用于容器的 SELinux 类型标签。 |
|
| user 是适用于容器的 SELinux 用户标签。 |
2.1.217. .spec.initContainers[].securityContext.seccompProfile
- 描述
- 此容器使用的 seccomp 选项。如果 seccomp 选项同时在 pod 和容器级别上提供,则容器选项会覆盖 pod 选项。请注意,当 spec.os.name 是 windows 时无法设置此字段。
- 类型
-
object
- 必填
-
type
-
属性 | 类型 | 描述 |
---|---|---|
|
| localhostProfile 表示应使用节点上文件中定义的配置集。该配置集必须在节点上预先配置才能正常工作。必须是一个降序路径,相对于 kubelet 配置的 seccomp 配置集位置。如果类型为"Localhost",则必须设置。不得为任何其他类型设置。 |
|
| Type 表示将应用了哪些 seccomp 配置集。有效选项有: localhost - 应该使用节点上文件中定义的配置文件。RuntimeDefault - 应使用容器运行时默认配置集。unconfined - 不应应用配置集。 |
2.1.218. .spec.initContainers[].securityContext.windowsOptions
- 描述
- 应用到所有容器的 Windows 特定设置。如果未指定,则使用 PodSecurityContext 中的选项。如果在 SecurityContext 和 PodSecurityContext 中设置,则 SecurityContext 中指定的值具有优先权。请注意,当 spec.os.name 是 linux 时,不能设置此字段。
- 类型
-
object
属性 | 类型 | 描述 |
---|---|---|
|
| GMSACredentialSpec 是 GMSA 准入 Webhook (https://github.com/kubernetes-sigs/windows-gmsa)内联由 GMSACredentialSpec 命名的 GMSA 凭证规格的内容。 |
|
| GMSACredentialSpecName 是要使用的 GMSA 凭证规格的名称。 |
|
| HostProcess 确定容器是否应作为"主机进程"容器运行。所有 Pod 的容器都必须具有相同的有效的 HostProcess 值(不允许混合 HostProcess 容器和非主机进程容器)。另外,如果 HostProcess 为 true,则 HostNetwork 也必须设置为 true。 |
|
| Windows 中的 UserName,以运行容器进程的入口点。如果未指定,则默认为在镜像元数据中指定的用户。也可以在 PodSecurityContext 中设置。如果在 SecurityContext 和 PodSecurityContext 中设置,则 SecurityContext 中指定的值具有优先权。 |
2.1.219. .spec.initContainers[].startupProbe
- 描述
- startupProbe 表示 Pod 已成功初始化。如果指定,则不会执行其他探测,直到成功完成为止。如果这个探测失败,则 Pod 将重启,就像 livenessProbe 失败一样。这可用于在 Pod 生命周期开始时提供不同的探测参数,当可能需要很长时间才能加载数据或温缓存时,而不是在 steady-state 操作过程中提供不同的探测参数。这不能更新。更多信息: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes
- 类型
-
object
属性 | 类型 | 描述 |
---|---|---|
|
| exec 指定要执行的操作。 |
|
| 在成功后,探测被视为失败的最小连续失败。默认值为 3。最小值为 1。 |
|
| GRPC 指定涉及 GRPC 端口的操作。 |
|
| httpGet 指定要执行的 http 请求。 |
|
| 容器启动存活度探测前的秒数。更多信息: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes |
|
| 执行探测的频率(以秒为单位)。默认值为 10 秒。最小值为 1。 |
|
| 在失败后,探测至少连续成功会被视为成功。默认为 1。对于存活度和启动,必须为 1。最小值为 1。 |
|
| tcpSocket 指定涉及 TCP 端口的操作。 |
|
| pod 在探测失败时安全终止所需的可选持续时间(以秒为单位)。宽限期是 pod 中运行的进程发送终止信号和进程被强制停止使用 kill 信号的时间(以秒为单位)。为您的进程设置这个值超过预期清理时间。如果这个值是 nil,则使用 pod 的 terminationGracePeriodSeconds。否则,这个值会覆盖 pod 规格提供的值。值必须是非负整数。值为零表示立即通过终止信号停止(没有关闭的机会)。这是一个 beta 字段,需要启用 ProbeTerminationGracePeriod 功能门。如果未设置,则使用最小值为 1. spec.terminationGracePeriodSeconds。 |
|
| 探测超时的秒数。默认值为 1 秒。最小值为 1。更多信息: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes |
2.1.220. .spec.initContainers[].startupProbe.exec
- 描述
- exec 指定要执行的操作。
- 类型
-
object
属性 | 类型 | 描述 |
---|---|---|
|
| 命令是在容器内执行的命令行,而 命令的工作目录是容器文件系统中的 root ('/')。命令只是 exec'd,它不会在 shell 中运行,因此传统的 shell 指令('|' 等)将无法工作。要使用 shell,您需要明确调用该 shell。0 的退出状态被视为 live/healthy,非零不健康。 |
2.1.221. .spec.initContainers[].startupProbe.grpc
- 描述
- GRPC 指定涉及 GRPC 端口的操作。
- 类型
-
object
- 必填
-
port
-
属性 | 类型 | 描述 |
---|---|---|
|
| gRPC 服务的端口号。number 必须在 1 到 65535 之间。 |
|
| service 是要放入 gRPC HealthCheckRequest 中的服务名称(请参阅 https://github.com/grpc/grpc/blob/master/doc/health-checking.md)。 如果没有指定,则默认行为由 gRPC 定义。 |
2.1.222. .spec.initContainers[].startupProbe.httpGet
- 描述
- httpGet 指定要执行的 http 请求。
- 类型
-
object
- 必填
-
port
-
属性 | 类型 | 描述 |
---|---|---|
|
| 要连接到的主机名,默认为 pod IP。您可能想在 httpHeaders 中设置"主机"。 |
|
| 在请求中设置的自定义标头。HTTP 允许重复的标头。 |
|
| HTTPHeader 描述了在 HTTP 探测中使用的自定义标头 |
|
| 在 HTTP 服务器上访问的路径。 |
|
| 用于访问容器的端口的名称或编号。number 必须在 1 到 65535 之间。名称必须是 IANA_SVC_NAME。 |
|
| 用于连接到主机的方案。默认为 HTTP。 |
2.1.223. .spec.initContainers[].startupProbe.httpGet.httpHeaders
- 描述
- 在请求中设置的自定义标头。HTTP 允许重复的标头。
- 类型
-
array
2.1.224. .spec.initContainers[].startupProbe.httpGet.httpHeaders[]
- 描述
- HTTPHeader 描述了在 HTTP 探测中使用的自定义标头
- 类型
-
object
- 必填
-
name
-
value
-
属性 | 类型 | 描述 |
---|---|---|
|
| 标头字段名称。这将在输出时规范,因此理解 case-variant 名称与相同的标头一样。 |
|
| 标头字段值 |
2.1.225. .spec.initContainers[].startupProbe.tcpSocket
- 描述
- tcpSocket 指定涉及 TCP 端口的操作。
- 类型
-
object
- 必填
-
port
-
属性 | 类型 | 描述 |
---|---|---|
|
| 可选:要连接到的主机名,默认为 pod IP。 |
|
| 用于访问容器的端口的编号或名称。number 必须在 1 到 65535 之间。名称必须是 IANA_SVC_NAME。 |
2.1.226. .spec.initContainers[].volumeDevices
- 描述
- volumeDevices 是容器要使用的块设备列表。
- 类型
-
array
2.1.227. .spec.initContainers[].volumeDevices[]
- 描述
- volumeDevice 描述了容器中原始块设备的映射。
- 类型
-
object
- 必填
-
devicePath
-
name
-
属性 | 类型 | 描述 |
---|---|---|
|
| DevicePath 是该设备要映射到的容器内的路径。 |
|
| name 必须与 pod 中 persistentVolumeClaim 的名称匹配 |
2.1.228. .spec.initContainers[].volumeMounts
- 描述
- 要挂载到容器文件系统的 Pod 卷。无法更新。
- 类型
-
array
2.1.229. .spec.initContainers[].volumeMounts[]
- 描述
- VolumeMount 描述了容器内卷挂载。
- 类型
-
object
- 必填
-
mountPath
-
name
-
属性 | 类型 | 描述 |
---|---|---|
|
| 应挂载卷的容器中的路径。不得包含 ':'。 |
|
| mountPropagation 决定挂载如何从主机传播到容器以及反向传播。如果没有设置,则使用 MountPropagationNone。此字段在 1.10 中是 beta。当 RecursiveReadOnly 设置为 IfPossible 或 Enabled 时,mountPropagation 必须是 None 或未指定(默认为 None)。 |
|
| 这必须与卷的 Name 匹配。 |
|
| 如果为 true,则以只读方式挂载,否则读写(false 或未指定)。默认为false。 |
|
| RecursiveReadOnly 指定是否应递归处理只读挂载。 如果 ReadOnly 为 false,则此字段没有意义,必须未指定。 如果 ReadOnly 为 true,且此字段设置为 Disabled,则不会递归只读挂载。如果将此字段设置为 IfPossible,则挂载将递归只读(如果容器运行时支持)。如果此字段设置为 Enabled,则挂载将在容器运行时支持时递归只读,否则不会启动 pod,并生成错误来指示原因。 如果将此字段设置为 IfPossible 或 Enabled,则 MountPropagation 必须设为 None (或未指定,默认为 None)。 如果没有指定此字段,它将被视为与 Disabled 的等效值。 |
|
| 应从中挂载容器卷的卷中的路径。默认为 "" (卷的 root)。 |
|
| 在应该挂载容器卷的卷中扩展路径。行为与 SubPath 类似,但环境变量引用 $(VAR_NAME)使用容器的环境扩展。默认为 "" (卷的 root)。SubPathExpr 和 SubPath 是互斥的。 |
2.1.230. .spec.podMetadata
- 描述
podMetadata 配置传播到 Alertmanager pod 的标签和注解。
以下项目会被保留且无法覆盖:* "alertmanager" 标签,设置为 Alertmanager 实例的名称。* "app.kubernetes.io/instance" 标签,设置为 Alertmanager 实例的名称。* "app.kubernetes.io/managed-by" 标签,设置为 "prometheus-operator"。* "app.kubernetes.io/name" label, set to "alertmanager".* "app.kubernetes.io/version" 标签,设置为 Alertmanager 版本。* "kubectl.kubernetes.io/default-container" annotation, set to "alertmanager".
- 类型
-
object
属性 | 类型 | 描述 |
---|---|---|
|
| annotations 是一个无结构的键值映射,它存储有资源,可通过外部工具存储和检索任意元数据。它们不可查询,应在修改对象时保留。更多信息: http://kubernetes.io/docs/user-guide/annotations |
|
| 可用于组织和分类(范围和选择)对象的字符串键和值映射。可能与复制控制器和服务选择器匹配。更多信息: http://kubernetes.io/docs/user-guide/labels |
|
| 名称在命名空间中必须是唯一的。创建资源时需要一些资源,但有些资源可能会允许客户端自动请求生成适当名称。name 主要用于创建 idempotence 和配置定义。无法更新。更多信息: http://kubernetes.io/docs/user-guide/identifiers#names |
2.1.231. .spec.resources
- 描述
- 为单个 Pod 定义资源请求和限值。
- 类型
-
object
属性 | 类型 | 描述 |
---|---|---|
|
| claim 列出此容器使用的 spec.resourceClaims 中定义的资源名称。 这是一个 alpha 字段,需要启用 DynamicResourceAllocation 功能门。 此字段不可变。它只能为容器设置。 |
|
| ResourceClaim 引用 PodSpec.ResourceClaims 中的一个条目。 |
|
| 限制描述了允许的最大计算资源量。更多信息: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/ |
|
| Requests 描述了所需的最少计算资源。如果容器省略了 Requests,则默认为 Limits (如果明确指定),否则默认为实现定义的值。请求不能超过限值。更多信息: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/ |
2.1.232. .spec.resources.claims
- 描述
claim 列出此容器使用的 spec.resourceClaims 中定义的资源名称。
这是一个 alpha 字段,需要启用 DynamicResourceAllocation 功能门。
此字段不可变。它只能为容器设置。
- 类型
-
数组
2.1.233. .spec.resources.claims[]
- 描述
- ResourceClaim 引用 PodSpec.ResourceClaims 中的一个条目。
- 类型
-
object
- 必填
-
name
-
属性 | 类型 | 描述 |
---|---|---|
|
| name 必须与使用此字段的 Pod 的 pod.spec.resourceClaims 中的一个条目的名称匹配。它允许容器内部使用该资源。 |
2.1.234. .spec.securityContext
- 描述
- securityContext 包含 pod 级别的安全属性和通用容器设置。默认为默认的 PodSecurityContext。
- 类型
-
object
属性 | 类型 | 描述 |
---|---|---|
|
| appArmorProfile 是此 pod 中的容器使用的 AppArmor 选项。请注意,当 spec.os.name 是 windows 时无法设置此字段。 |
|
| 适用于 pod 中所有容器的特殊补充组。有些卷类型允许 Kubelet 将该卷的所有权更改为由 pod 所有: 1.拥有的 GID 为 FSGroup 2。设置 setgid 位(卷中创建的新文件将归 FSGroup 所有)3。权限位是 OR'd with rw-rw--- 如果未设置,Kubelet 不会修改任何卷的所有权和权限。请注意,当 spec.os.name 是 windows 时无法设置此字段。 |
|
| fsGroupChangePolicy 定义在 Pod 内公开卷之前更改卷的所有权和权限的行为。此字段将只适用于支持基于 fsGroup 的所有权(和权限)的卷类型。它对临时卷类型没有影响,如 secret、configmap 和 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 时无法设置此字段。 |
|
| sysctl 包含用于 pod 的命名空间 sysctl 列表。带有不支持 sysctl (容器运行时)的 Pod 可能无法启动。请注意,当 spec.os.name 是 windows 时无法设置此字段。 |
|
| sysctl 定义要设置的内核参数 |
|
| 应用到所有容器的 Windows 特定设置。如果未指定,则使用容器的 SecurityContext 中的选项。如果在 SecurityContext 和 PodSecurityContext 中设置,则 SecurityContext 中指定的值具有优先权。请注意,当 spec.os.name 是 linux 时,不能设置此字段。 |
2.1.235. .spec.securityContext.appArmorProfile
- 描述
- appArmorProfile 是此 pod 中的容器使用的 AppArmor 选项。请注意,当 spec.os.name 是 windows 时无法设置此字段。
- 类型
-
object
- 必填
-
type
-
属性 | 类型 | 描述 |
---|---|---|
|
| localhostProfile 表示节点上载入的配置集。该配置集必须在节点上预先配置才能正常工作。必须与配置文件的加载名称匹配。只在 type 为 "Localhost" 时,才应设置。 |
|
| Type 表示将应用哪些类型的 AppArmor 配置集。有效选项包括: Localhost - 节点上的配置文件预加载。RuntimeDefault - 容器运行时的默认配置集。unconfined - 无 AppArmor 强制。 |
2.1.236. .spec.securityContext.seLinuxOptions
- 描述
- 要应用到所有容器的 SELinux 上下文。如果未指定,容器运行时将为每个容器分配一个随机 SELinux 上下文。还可能会在 SecurityContext 中设置。如果在 SecurityContext 和 PodSecurityContext 中设置,则 SecurityContext 中指定的值优先于该容器。请注意,当 spec.os.name 是 windows 时无法设置此字段。
- 类型
-
object
属性 | 类型 | 描述 |
---|---|---|
|
| level 是适用于容器的 SELinux 级别标签。 |
|
| role 是适用于容器的 SELinux 角色标签。 |
|
| type 是适用于容器的 SELinux 类型标签。 |
|
| user 是适用于容器的 SELinux 用户标签。 |
2.1.237. .spec.securityContext.seccompProfile
- 描述
- 此 pod 中容器使用的 seccomp 选项。请注意,当 spec.os.name 是 windows 时无法设置此字段。
- 类型
-
object
- 必填
-
type
-
属性 | 类型 | 描述 |
---|---|---|
|
| localhostProfile 表示应使用节点上文件中定义的配置集。该配置集必须在节点上预先配置才能正常工作。必须是一个降序路径,相对于 kubelet 配置的 seccomp 配置集位置。如果类型为"Localhost",则必须设置。不得为任何其他类型设置。 |
|
| Type 表示将应用了哪些 seccomp 配置集。有效选项有: localhost - 应该使用节点上文件中定义的配置文件。RuntimeDefault - 应使用容器运行时默认配置集。unconfined - 不应应用配置集。 |
2.1.238. .spec.securityContext.sysctls
- 描述
- sysctl 包含用于 pod 的命名空间 sysctl 列表。带有不支持 sysctl (容器运行时)的 Pod 可能无法启动。请注意,当 spec.os.name 是 windows 时无法设置此字段。
- 类型
-
array
2.1.239. .spec.securityContext.sysctls[]
- 描述
- sysctl 定义要设置的内核参数
- 类型
-
object
- 必填
-
name
-
value
-
属性 | 类型 | 描述 |
---|---|---|
|
| 要设置的属性的名称 |
|
| 要设置的属性值 |
2.1.240. .spec.securityContext.windowsOptions
- 描述
- 应用到所有容器的 Windows 特定设置。如果未指定,则使用容器的 SecurityContext 中的选项。如果在 SecurityContext 和 PodSecurityContext 中设置,则 SecurityContext 中指定的值具有优先权。请注意,当 spec.os.name 是 linux 时,不能设置此字段。
- 类型
-
object
属性 | 类型 | 描述 |
---|---|---|
|
| GMSACredentialSpec 是 GMSA 准入 Webhook (https://github.com/kubernetes-sigs/windows-gmsa)内联由 GMSACredentialSpec 命名的 GMSA 凭证规格的内容。 |
|
| GMSACredentialSpecName 是要使用的 GMSA 凭证规格的名称。 |
|
| HostProcess 确定容器是否应作为"主机进程"容器运行。所有 Pod 的容器都必须具有相同的有效的 HostProcess 值(不允许混合 HostProcess 容器和非主机进程容器)。另外,如果 HostProcess 为 true,则 HostNetwork 也必须设置为 true。 |
|
| Windows 中的 UserName,以运行容器进程的入口点。如果未指定,则默认为在镜像元数据中指定的用户。也可以在 PodSecurityContext 中设置。如果在 SecurityContext 和 PodSecurityContext 中设置,则 SecurityContext 中指定的值具有优先权。 |
2.1.241. .spec.storage
- 描述
- 存储是 Alertmanager 实例如何使用存储的定义。
- 类型
-
object
属性 | 类型 | 描述 |
---|---|---|
|
| 弃用: 在以后的发行版本中会删除 subPath 用量。 |
|
|
StatefulSet 使用的 EmptyDirVolumeSource。如果指定,它优先于 |
|
| StatefulSet 使用的 EphemeralVolumeSource。这是 k8s 1.21 和 1.15 中的 beta 字段。对于较低版本,从 k8s 1.19 开始,它需要启用 GenericEphemeralVolume 功能门。更多信息: https://kubernetes.io/docs/concepts/storage/ephemeral-volumes/#generic-ephemeral-volumes |
|
| 定义 Prometheus StatefulSets 使用的 PVC spec。使用无法自动置备的卷的最简单方法是使用带有手动创建的 PersistentVolume 的标签选择器。 |
2.1.242. .spec.storage.emptyDir
- 描述
-
StatefulSet 使用的 EmptyDirVolumeSource。如果指定,它优先于
ephemeral
和volumeClaimTemplate
。更多信息: https://kubernetes.io/docs/concepts/storage/volumes/#emptydir - 类型
-
object
属性 | 类型 | 描述 |
---|---|---|
|
| Medium 代表存储介质类型应支持这个目录。默认值为 "",这意味着使用节点的默认介质。必须是空字符串(默认)或 Memory。更多信息: https://kubernetes.io/docs/concepts/storage/volumes#emptydir |
|
| sizeLimit 是这个 EmptyDir 卷所需的本地存储总量。大小限制也适用于内存介质。内存用量的最大使用量为此处指定的 SizeLimit 和 pod 中所有容器的内存限值总和。默认值为 nil,这意味着限制未定义。更多信息: https://kubernetes.io/docs/concepts/storage/volumes#emptydir |
2.1.243. .spec.storage.ephemeral
- 描述
- StatefulSet 使用的 EphemeralVolumeSource。这是 k8s 1.21 和 1.15 中的 beta 字段。对于较低版本,从 k8s 1.19 开始,它需要启用 GenericEphemeralVolume 功能门。更多信息: https://kubernetes.io/docs/concepts/storage/ephemeral-volumes/#generic-ephemeral-volumes
- 类型
-
object
属性 | 类型 | 描述 |
---|---|---|
|
|
将用于创建独立 PVC 来置备卷。嵌入此 EphemeralVolumeSource 的 pod 将是 PVC 的所有者,即 PVC 将与 pod 一起删除。PVC 的名称将是 < 具有名称不归 pod 所有的现有 PVC 将不会 用于 pod,以避免错误地使用不相关的卷。然后,启动 pod 会被阻断,直到删除不相关的 PVC。如果 pod 使用这样的预先创建的 PVC,则必须在 pod 存在后使用对 pod 的所有者引用来更新 PVC。通常,这应该不需要,但手动重建一个有问题的集群时可能会很有用。 此字段是只读的,Kubernetes 在创建后不会对 PVC 进行任何更改。 必需,不能是 nil。 |
2.1.244. .spec.storage.ephemeral.volumeClaimTemplate
- 描述
将用于创建独立 PVC 来置备卷。嵌入此 EphemeralVolumeSource 的 pod 将是 PVC 的所有者,即 PVC 将与 pod 一起删除。PVC 的名称将是 <
pod name>-<volume name>
,其中<volume
name> 是PodSpec.Volumes
数组条目中的名称。如果串联的名称对 PVC 无效(例如,太长),pod 验证将拒绝 pod。具有名称不归 pod 所有的现有 PVC 将不会 用于 pod,以避免错误地使用不相关的卷。然后,启动 pod 会被阻断,直到删除不相关的 PVC。如果 pod 使用这样的预先创建的 PVC,则必须在 pod 存在后使用对 pod 的所有者引用来更新 PVC。通常,这应该不需要,但手动重建一个有问题的集群时可能会很有用。
此字段是只读的,Kubernetes 在创建后不会对 PVC 进行任何更改。
必需,不能是 nil。
- 类型
-
object
- 必填
-
spec
-
属性 | 类型 | 描述 |
---|---|---|
|
| 可能包含创建 PVC 时将复制到 PVC 的标签和注解。不允许其他字段,并在验证过程中被拒绝。 |
|
| PersistentVolumeClaim 的规格。整个内容保持不变复制到从该模板创建的 PVC 中。PersistentVolumeClaim 中与 相同的字段也有效。 |
2.1.245. .spec.storage.ephemeral.volumeClaimTemplate.metadata
- 描述
- 可能包含创建 PVC 时将复制到 PVC 的标签和注解。不允许其他字段,并在验证过程中被拒绝。
- 类型
-
object
2.1.246. .spec.storage.ephemeral.volumeClaimTemplate.spec
- 描述
- PersistentVolumeClaim 的规格。整个内容保持不变复制到从该模板创建的 PVC 中。PersistentVolumeClaim 中与 相同的字段也有效。
- 类型
-
object
属性 | 类型 | 描述 |
---|---|---|
|
| accessModes 包含卷应具有所需的访问模式。更多信息: https://kubernetes.io/docs/concepts/storage/persistent-volumes#access-modes-1 |
|
| Datasource 字段可以用来指定:* 一个现有的 VolumeSnapshot 对象(snapshot.storage.k8s.io/VolumeSnapshot)* 一个现有的 PVC (PersistentVolumeClaim),如果置备程序或外部控制器可以支持指定的数据源,它将基于指定数据源的内容创建一个新卷。当启用 AnyVolumeDataSource 功能门时,dataSource 内容将复制到 dataSourceRef 中,当未指定 dataSourceRef.namespace 时,dataSourceRef 内容将复制到 dataSource 中。如果指定了 namespace,则不会将 dataSourceRef 复制到 dataSource 中。 |
|
| 如果需要非空卷,则 dataSourceRef 指定要使用数据填充卷的对象。这可以是来自非空 API 组(非核心对象)或 PersistentVolumeClaim 对象的任何对象。当指定对象的类型与某些安装的卷填充或动态置备程序匹配时,卷绑定才会成功。此字段将替换 dataSource 字段的功能,如果两个字段都不是空的,则它们必须具有相同的值。为了向后兼容,当命名空间没有在 dataSourceRef 中指定时,如果其中一个为空,则两个字段(dataSource 和 dataSourceRef)都会自动设置为相同的值,另一个是非空的。当在 dataSourceRef 中指定 namespace 时,dataSource 不设置为相同的值,必须为空。dataSource 和 dataSourceRef 之间有三个重要区别:* While dataSource 只允许两种特定类型的对象,dataSourceRef 允许任何非核心对象,以及 PersistentVolumeClaim 对象。* 虽然 dataSource 忽略了禁止的值(丢弃它们),dataSourceRef 保留所有值,并在指定禁止的值时生成错误。* 虽然 dataSource 只允许本地对象,dataSourceRef 允许任何命名空间中的对象。(beta)使用此字段需要启用 AnyVolumeDataSource 功能门。(alpha)使用 dataSourceRef 的 namespace 字段需要启用 CrossNamespaceVolumeDataSource 功能门。 |
|
| resources 代表卷应具有的最小资源。如果启用了 RecoverVolumeExpansionFailure 功能,用户可以指定小于之前值的资源要求,但仍必须高于声明的 status 字段中记录的容量。更多信息: https://kubernetes.io/docs/concepts/storage/persistent-volumes#resources |
|
| selector 是要考虑绑定的卷的标签查询。 |
|
| storageClassName 是声明所需的 StorageClass 的名称。更多信息: https://kubernetes.io/docs/concepts/storage/persistent-volumes#class-1 |
|
| volumeAttributesClassName 可用于设置此声明使用的 VolumeAttributesClass。如果指定,CSI 驱动程序将使用对应的 VolumeAttributesClass 中定义的属性创建或更新卷。这有一个不同于 storageClassName 的目的,可在创建声明后更改。空字符串表示,不会将 VolumeAttributesClass 应用到声明,但不允许在设置后将此字段重置为空字符串。如果未指定,并且 PersistentVolumeClaim 为 unbound,则 persistentvolume 控制器将设置默认的 VolumeAttributesClass (如果存在)。如果 volumeAttributesClass 引用的资源不存在,则这个 PersistentVolumeClaim 将被设置为 Pending 状态,如 modifyVolumeStatus 字段反映,直到资源存在为止。更多信息: https://kubernetes.io/docs/concepts/storage/volume-attributes-classes/ (Alpha)使用此字段需要启用 VolumeAttributesClass 功能门。 |
|
| volumeMode 定义声明需要哪些卷类型。当未包含在 claim spec 中时,文件系统的值会被表示。 |
|
| volumeName 是对此声明支持的 PersistentVolume 的绑定引用。 |
2.1.247. .spec.storage.ephemeral.volumeClaimTemplate.spec.dataSource
- 描述
- Datasource 字段可以用来指定:* 一个现有的 VolumeSnapshot 对象(snapshot.storage.k8s.io/VolumeSnapshot)* 一个现有的 PVC (PersistentVolumeClaim),如果置备程序或外部控制器可以支持指定的数据源,它将基于指定数据源的内容创建一个新卷。当启用 AnyVolumeDataSource 功能门时,dataSource 内容将复制到 dataSourceRef 中,当未指定 dataSourceRef.namespace 时,dataSourceRef 内容将复制到 dataSource 中。如果指定了 namespace,则不会将 dataSourceRef 复制到 dataSource 中。
- 类型
-
object
- 必填
-
kind
-
name
-
属性 | 类型 | 描述 |
---|---|---|
|
| APIGroup 是所引用资源的组。如果没有指定 APIGroup,则指定的 Kind 必须位于 core API 组中。对于任何其他第三方类型,需要 APIGroup。 |
|
| kind 是被引用的资源类型 |
|
| name 是被引用的资源的名称 |
2.1.248. .spec.storage.ephemeral.volumeClaimTemplate.spec.dataSourceRef
- 描述
- 如果需要非空卷,则 dataSourceRef 指定要使用数据填充卷的对象。这可以是来自非空 API 组(非核心对象)或 PersistentVolumeClaim 对象的任何对象。当指定对象的类型与某些安装的卷填充或动态置备程序匹配时,卷绑定才会成功。此字段将替换 dataSource 字段的功能,如果两个字段都不是空的,则它们必须具有相同的值。为了向后兼容,当命名空间没有在 dataSourceRef 中指定时,如果其中一个为空,则两个字段(dataSource 和 dataSourceRef)都会自动设置为相同的值,另一个是非空的。当在 dataSourceRef 中指定 namespace 时,dataSource 不设置为相同的值,必须为空。dataSource 和 dataSourceRef 之间有三个重要区别:* While dataSource 只允许两种特定类型的对象,dataSourceRef 允许任何非核心对象,以及 PersistentVolumeClaim 对象。* 虽然 dataSource 忽略了禁止的值(丢弃它们),dataSourceRef 保留所有值,并在指定禁止的值时生成错误。* 虽然 dataSource 只允许本地对象,dataSourceRef 允许任何命名空间中的对象。(beta)使用此字段需要启用 AnyVolumeDataSource 功能门。(alpha)使用 dataSourceRef 的 namespace 字段需要启用 CrossNamespaceVolumeDataSource 功能门。
- 类型
-
object
- 必填
-
kind
-
name
-
属性 | 类型 | 描述 |
---|---|---|
|
| APIGroup 是所引用资源的组。如果没有指定 APIGroup,则指定的 Kind 必须位于 core API 组中。对于任何其他第三方类型,需要 APIGroup。 |
|
| kind 是被引用的资源类型 |
|
| name 是被引用的资源的名称 |
|
| 命名空间是被引用的资源的命名空间,请注意,当指定命名空间时,引用命名空间中需要一个 gateway.networking.k8s.io/ReferenceGrant 对象来允许该命名空间的所有者接受引用。详情请查看 ReferenceGrant 文档。(alpha)此字段需要启用 CrossNamespaceVolumeDataSource 功能门。 |
2.1.249. .spec.storage.ephemeral.volumeClaimTemplate.spec.resources
- 描述
- resources 代表卷应具有的最小资源。如果启用了 RecoverVolumeExpansionFailure 功能,用户可以指定小于之前值的资源要求,但仍必须高于声明的 status 字段中记录的容量。更多信息: https://kubernetes.io/docs/concepts/storage/persistent-volumes#resources
- 类型
-
object
属性 | 类型 | 描述 |
---|---|---|
|
| 限制描述了允许的最大计算资源量。更多信息: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/ |
|
| Requests 描述了所需的最少计算资源。如果容器省略了 Requests,则默认为 Limits (如果明确指定),否则默认为实现定义的值。请求不能超过限值。更多信息: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/ |
2.1.250. .spec.storage.ephemeral.volumeClaimTemplate.spec.selector
- 描述
- selector 是要考虑绑定的卷的标签查询。
- 类型
-
object
属性 | 类型 | 描述 |
---|---|---|
|
| matchExpressions 是标签选择器要求列表。要求的逻辑关系是 AND。 |
|
| 标签选择器要求是一个选择器,其中包含与键和值相关的值、键和值。 |
|
| matchLabels 是 {key,value} 对的映射。MatchLabels 映射中的单个 {key,value} 等同于 matchExpressions 的一个元素,其 key 字段是 "key",运算符是 "In",值数组仅包含 "value"。要求的逻辑关系是 AND。 |
2.1.251. .spec.storage.ephemeral.volumeClaimTemplate.spec.selector.matchExpressions
- 描述
- matchExpressions 是标签选择器要求列表。要求的逻辑关系是 AND。
- 类型
-
数组
2.1.252. .spec.storage.ephemeral.volumeClaimTemplate.spec.selector.matchExpressions[]
- 描述
- 标签选择器要求是一个选择器,其中包含与键和值相关的值、键和值。
- 类型
-
object
- 必填
-
key
-
operator
-
属性 | 类型 | 描述 |
---|---|---|
|
| key 是选择器应用到的标签键。 |
|
| 运算符代表一个键与一组值的关系。有效的运算符是 In、NotIn、Exists 和 DoesNotExist。 |
|
| 值是字符串值的数组。如果运算符是 In 或 NotIn,则值数组必须是非空的。如果运算符是 Exists 或 DoesNotExist,则值数组必须为空。这个数组会在策略性合并补丁中被替换。 |
2.1.253. .spec.storage.volumeClaimTemplate
- 描述
- 定义 Prometheus StatefulSets 使用的 PVC spec。使用无法自动置备的卷的最简单方法是使用带有手动创建的 PersistentVolume 的标签选择器。
- 类型
-
object
属性 | 类型 | 描述 |
---|---|---|
|
| APIVersion 定义对象的这个表示法的版本化的 schema。服务器应该将识别的模式转换为最新的内部值,并可拒绝未识别的值。更多信息: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources |
|
| kind 是一个字符串值,代表此对象所代表的 REST 资源。服务器可以从客户端向其提交请求的端点推断。无法更新。采用驼峰拼写法 (CamelCase)。更多信息: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds |
|
| EmbeddedMetadata 包含与 EmbeddedResource 相关的元数据。 |
|
| 定义 Pod 作者请求的卷所需的特征。更多信息: https://kubernetes.io/docs/concepts/storage/persistent-volumes#persistentvolumeclaims |
|
| deprecated: 此字段永不设置。 |
2.1.254. .spec.storage.volumeClaimTemplate.metadata
- 描述
- EmbeddedMetadata 包含与 EmbeddedResource 相关的元数据。
- 类型
-
object
属性 | 类型 | 描述 |
---|---|---|
|
| annotations 是一个无结构的键值映射,它存储有资源,可通过外部工具存储和检索任意元数据。它们不可查询,应在修改对象时保留。更多信息: http://kubernetes.io/docs/user-guide/annotations |
|
| 可用于组织和分类(范围和选择)对象的字符串键和值映射。可能与复制控制器和服务选择器匹配。更多信息: http://kubernetes.io/docs/user-guide/labels |
|
| 名称在命名空间中必须是唯一的。创建资源时需要一些资源,但有些资源可能会允许客户端自动请求生成适当名称。name 主要用于创建 idempotence 和配置定义。无法更新。更多信息: http://kubernetes.io/docs/user-guide/identifiers#names |
2.1.255. .spec.storage.volumeClaimTemplate.spec
- 描述
- 定义 Pod 作者请求的卷所需的特征。更多信息: https://kubernetes.io/docs/concepts/storage/persistent-volumes#persistentvolumeclaims
- 类型
-
object
属性 | 类型 | 描述 |
---|---|---|
|
| accessModes 包含卷应具有所需的访问模式。更多信息: https://kubernetes.io/docs/concepts/storage/persistent-volumes#access-modes-1 |
|
| Datasource 字段可以用来指定:* 一个现有的 VolumeSnapshot 对象(snapshot.storage.k8s.io/VolumeSnapshot)* 一个现有的 PVC (PersistentVolumeClaim),如果置备程序或外部控制器可以支持指定的数据源,它将基于指定数据源的内容创建一个新卷。当启用 AnyVolumeDataSource 功能门时,dataSource 内容将复制到 dataSourceRef 中,当未指定 dataSourceRef.namespace 时,dataSourceRef 内容将复制到 dataSource 中。如果指定了 namespace,则不会将 dataSourceRef 复制到 dataSource 中。 |
|
| 如果需要非空卷,则 dataSourceRef 指定要使用数据填充卷的对象。这可以是来自非空 API 组(非核心对象)或 PersistentVolumeClaim 对象的任何对象。当指定对象的类型与某些安装的卷填充或动态置备程序匹配时,卷绑定才会成功。此字段将替换 dataSource 字段的功能,如果两个字段都不是空的,则它们必须具有相同的值。为了向后兼容,当命名空间没有在 dataSourceRef 中指定时,如果其中一个为空,则两个字段(dataSource 和 dataSourceRef)都会自动设置为相同的值,另一个是非空的。当在 dataSourceRef 中指定 namespace 时,dataSource 不设置为相同的值,必须为空。dataSource 和 dataSourceRef 之间有三个重要区别:* While dataSource 只允许两种特定类型的对象,dataSourceRef 允许任何非核心对象,以及 PersistentVolumeClaim 对象。* 虽然 dataSource 忽略了禁止的值(丢弃它们),dataSourceRef 保留所有值,并在指定禁止的值时生成错误。* 虽然 dataSource 只允许本地对象,dataSourceRef 允许任何命名空间中的对象。(beta)使用此字段需要启用 AnyVolumeDataSource 功能门。(alpha)使用 dataSourceRef 的 namespace 字段需要启用 CrossNamespaceVolumeDataSource 功能门。 |
|
| resources 代表卷应具有的最小资源。如果启用了 RecoverVolumeExpansionFailure 功能,用户可以指定小于之前值的资源要求,但仍必须高于声明的 status 字段中记录的容量。更多信息: https://kubernetes.io/docs/concepts/storage/persistent-volumes#resources |
|
| selector 是要考虑绑定的卷的标签查询。 |
|
| storageClassName 是声明所需的 StorageClass 的名称。更多信息: https://kubernetes.io/docs/concepts/storage/persistent-volumes#class-1 |
|
| volumeAttributesClassName 可用于设置此声明使用的 VolumeAttributesClass。如果指定,CSI 驱动程序将使用对应的 VolumeAttributesClass 中定义的属性创建或更新卷。这有一个不同于 storageClassName 的目的,可在创建声明后更改。空字符串表示,不会将 VolumeAttributesClass 应用到声明,但不允许在设置后将此字段重置为空字符串。如果未指定,并且 PersistentVolumeClaim 为 unbound,则 persistentvolume 控制器将设置默认的 VolumeAttributesClass (如果存在)。如果 volumeAttributesClass 引用的资源不存在,则这个 PersistentVolumeClaim 将被设置为 Pending 状态,如 modifyVolumeStatus 字段反映,直到资源存在为止。更多信息: https://kubernetes.io/docs/concepts/storage/volume-attributes-classes/ (Alpha)使用此字段需要启用 VolumeAttributesClass 功能门。 |
|
| volumeMode 定义声明需要哪些卷类型。当未包含在 claim spec 中时,文件系统的值会被表示。 |
|
| volumeName 是对此声明支持的 PersistentVolume 的绑定引用。 |
2.1.256. .spec.storage.volumeClaimTemplate.spec.dataSource
- 描述
- Datasource 字段可以用来指定:* 一个现有的 VolumeSnapshot 对象(snapshot.storage.k8s.io/VolumeSnapshot)* 一个现有的 PVC (PersistentVolumeClaim),如果置备程序或外部控制器可以支持指定的数据源,它将基于指定数据源的内容创建一个新卷。当启用 AnyVolumeDataSource 功能门时,dataSource 内容将复制到 dataSourceRef 中,当未指定 dataSourceRef.namespace 时,dataSourceRef 内容将复制到 dataSource 中。如果指定了 namespace,则不会将 dataSourceRef 复制到 dataSource 中。
- 类型
-
object
- 必填
-
kind
-
name
-
属性 | 类型 | 描述 |
---|---|---|
|
| APIGroup 是所引用资源的组。如果没有指定 APIGroup,则指定的 Kind 必须位于 core API 组中。对于任何其他第三方类型,需要 APIGroup。 |
|
| kind 是被引用的资源类型 |
|
| name 是被引用的资源的名称 |
2.1.257. .spec.storage.volumeClaimTemplate.spec.dataSourceRef
- 描述
- 如果需要非空卷,则 dataSourceRef 指定要使用数据填充卷的对象。这可以是来自非空 API 组(非核心对象)或 PersistentVolumeClaim 对象的任何对象。当指定对象的类型与某些安装的卷填充或动态置备程序匹配时,卷绑定才会成功。此字段将替换 dataSource 字段的功能,如果两个字段都不是空的,则它们必须具有相同的值。为了向后兼容,当命名空间没有在 dataSourceRef 中指定时,如果其中一个为空,则两个字段(dataSource 和 dataSourceRef)都会自动设置为相同的值,另一个是非空的。当在 dataSourceRef 中指定 namespace 时,dataSource 不设置为相同的值,必须为空。dataSource 和 dataSourceRef 之间有三个重要区别:* While dataSource 只允许两种特定类型的对象,dataSourceRef 允许任何非核心对象,以及 PersistentVolumeClaim 对象。* 虽然 dataSource 忽略了禁止的值(丢弃它们),dataSourceRef 保留所有值,并在指定禁止的值时生成错误。* 虽然 dataSource 只允许本地对象,dataSourceRef 允许任何命名空间中的对象。(beta)使用此字段需要启用 AnyVolumeDataSource 功能门。(alpha)使用 dataSourceRef 的 namespace 字段需要启用 CrossNamespaceVolumeDataSource 功能门。
- 类型
-
object
- 必填
-
kind
-
name
-
属性 | 类型 | 描述 |
---|---|---|
|
| APIGroup 是所引用资源的组。如果没有指定 APIGroup,则指定的 Kind 必须位于 core API 组中。对于任何其他第三方类型,需要 APIGroup。 |
|
| kind 是被引用的资源类型 |
|
| name 是被引用的资源的名称 |
|
| 命名空间是被引用的资源的命名空间,请注意,当指定命名空间时,引用命名空间中需要一个 gateway.networking.k8s.io/ReferenceGrant 对象来允许该命名空间的所有者接受引用。详情请查看 ReferenceGrant 文档。(alpha)此字段需要启用 CrossNamespaceVolumeDataSource 功能门。 |
2.1.258. .spec.storage.volumeClaimTemplate.spec.resources
- 描述
- resources 代表卷应具有的最小资源。如果启用了 RecoverVolumeExpansionFailure 功能,用户可以指定小于之前值的资源要求,但仍必须高于声明的 status 字段中记录的容量。更多信息: https://kubernetes.io/docs/concepts/storage/persistent-volumes#resources
- 类型
-
object
属性 | 类型 | 描述 |
---|---|---|
|
| 限制描述了允许的最大计算资源量。更多信息: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/ |
|
| Requests 描述了所需的最少计算资源。如果容器省略了 Requests,则默认为 Limits (如果明确指定),否则默认为实现定义的值。请求不能超过限值。更多信息: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/ |
2.1.259. .spec.storage.volumeClaimTemplate.spec.selector
- 描述
- selector 是要考虑绑定的卷的标签查询。
- 类型
-
object
属性 | 类型 | 描述 |
---|---|---|
|
| matchExpressions 是标签选择器要求列表。要求的逻辑关系是 AND。 |
|
| 标签选择器要求是一个选择器,其中包含与键和值相关的值、键和值。 |
|
| matchLabels 是 {key,value} 对的映射。MatchLabels 映射中的单个 {key,value} 等同于 matchExpressions 的一个元素,其 key 字段是 "key",运算符是 "In",值数组仅包含 "value"。要求的逻辑关系是 AND。 |
2.1.260. .spec.storage.volumeClaimTemplate.spec.selector.matchExpressions
- 描述
- matchExpressions 是标签选择器要求列表。要求的逻辑关系是 AND。
- 类型
-
array
2.1.261. .spec.storage.volumeClaimTemplate.spec.selector.matchExpressions[]
- 描述
- 标签选择器要求是一个选择器,其中包含与键和值相关的值、键和值。
- 类型
-
object
- 必填
-
key
-
operator
-
属性 | 类型 | 描述 |
---|---|---|
|
| key 是选择器应用到的标签键。 |
|
| 运算符代表一个键与一组值的关系。有效的运算符是 In、NotIn、Exists 和 DoesNotExist。 |
|
| 值是字符串值的数组。如果运算符是 In 或 NotIn,则值数组必须是非空的。如果运算符是 Exists 或 DoesNotExist,则值数组必须为空。这个数组会在策略性合并补丁中被替换。 |
2.1.262. .spec.storage.volumeClaimTemplate.status
- 描述
- deprecated: 此字段永不设置。
- 类型
-
object
属性 | 类型 | 描述 |
---|---|---|
|
| accessModes 包含 PVC 支持的卷的实际访问模式。更多信息: https://kubernetes.io/docs/concepts/storage/persistent-volumes#access-modes-1 |
|
| allocatedResourceStatuses 存储给定 PVC 的大小的资源状态。键名称遵循标准 Kubernetes 标签语法。有效值为:* Un-prefixed 键: - storage - 卷的容量。* 自定义资源必须使用定义实现的前缀前缀名称,如 "example.com/my-custom-resource" 除以上值外 - 未前缀或具有 kubernetes.io 前缀的密钥被视为保留,因此可能无法使用。 ClaimResourceStatus 可以处于以下状态: - ControllerResizeInProgress: 当重新定义 control-plane 大小调整卷大小时 State set。- ControllerResizeFailed: 在重新定义控制器大小失败时,State set 会失败,并显示终端错误。- NodeResizePending: 当重新定义控制器调整卷的大小时 State 设置,但节点上需要进一步重新定义卷大小。- NodeResizeInProgress: 当 kubelet 开始重新定义卷的大小时设置 State。- NodeResizeFailed: 当 kubelet 中调整大小失败并显示终端错误时,State 设置。临时错误没有设置 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" When this field is not set, 这意味着,给定 PVC 没有调整大小的操作。 接收之前未知 resourceName 或 ClaimResourceStatus 的 PVC 更新的控制器应忽略其设计的用途的更新。例如 - 仅负责重新定义卷大小调整容量的控制器,应忽略更改与 PVC 相关的其他有效资源的 PVC 更新。 这是一个 alpha 字段,需要启用 RecoverVolumeExpansionFailure 功能。 |
|
| allocatedResources 跟踪分配给 PVC 的资源,包括其容量。键名称遵循标准 Kubernetes 标签语法。有效值为:* Un-prefixed 键: - storage - 卷的容量。* 自定义资源必须使用定义实现的前缀前缀名称,如 "example.com/my-custom-resource" 除以上值外 - 未前缀或具有 kubernetes.io 前缀的密钥被视为保留,因此可能无法使用。 当请求卷扩展操作时,此处报告的容量可能大于实际容量。对于存储配额,使用来自 allocatedResources 和 PVC.spec.resources 的值。如果没有设置 allocatedResources,则单独使用 PVC.spec.resources 进行配额计算。如果卷扩展容量请求较低,则只有当实际卷容量相等或低于请求的容量时,才会降低 allocatedResources。 接收之前未知 resourceName 的 PVC 更新的控制器应忽略其目的的更新。例如 - 仅负责重新定义卷大小调整容量的控制器,应忽略更改与 PVC 相关的其他有效资源的 PVC 更新。 这是一个 alpha 字段,需要启用 RecoverVolumeExpansionFailure 功能。 |
|
| capacity 代表底层卷的实际资源。 |
|
| 条件是持久性卷声明的当前条件。如果底层持久性卷被调整大小,则条件将设置为 'Resizing'。 |
|
| PersistentVolumeClaimCondition 包含有关 pvc 状态的详细信息 |
|
| currentVolumeAttributesClassName 是 PVC 正在使用的 VolumeAttributesClass 的当前名称。当取消设置时,没有应用到此 PersistentVolumeClaim 的 VolumeAttributeClass。这是一个 alpha 字段,需要启用 VolumeAttributesClass 功能。 |
|
| ModifyVolumeStatus 代表 ControllerModifyVolume 操作的状态对象。当这未设置时,不会尝试 ModifyVolume 操作。这是一个 alpha 字段,需要启用 VolumeAttributesClass 功能。 |
|
| phase 代表 PersistentVolumeClaim 的当前阶段。 |
2.1.263. .spec.storage.volumeClaimTemplate.status.conditions
- 描述
- 条件是持久性卷声明的当前条件。如果底层持久性卷被调整大小,则条件将设置为 'Resizing'。
- 类型
-
array
2.1.264. .spec.storage.volumeClaimTemplate.status.conditions[]
- 描述
- PersistentVolumeClaimCondition 包含有关 pvc 状态的详细信息
- 类型
-
object
- 必填
-
status
-
type
-
属性 | 类型 | 描述 |
---|---|---|
|
| lastProbeTime 是我们探测到条件的时间。 |
|
| lastTransitionTime 是条件从一个状态转换到另一个状态的时间。 |
|
| Message 是人类可读的消息,指示最后一次转换的详细信息。 |
|
| 原因是唯一的,这应该是一个简短的机器理解字符串,给出了条件最后一次转换的原因。如果报告"重新调整",则表示已调整底层持久性卷的大小。 |
|
| |
|
| PersistentVolumeClaimConditionType 是 PersistentVolumeClaimCondition.Type 的有效值 |
2.1.265. .spec.storage.volumeClaimTemplate.status.modifyVolumeStatus
- 描述
- ModifyVolumeStatus 代表 ControllerModifyVolume 操作的状态对象。当这未设置时,不会尝试 ModifyVolume 操作。这是一个 alpha 字段,需要启用 VolumeAttributesClass 功能。
- 类型
-
object
- 必填
-
status
-
属性 | 类型 | 描述 |
---|---|---|
|
| status 是 ControllerModifyVolume 操作的状态。它可以处于以下状态: - Pending Pending 表示因为未处理的要求(如指定的 VolumeAttributesClass 不存在)- InProgress InProgress 表示卷被修改。- 不可联邦表示请求已被修改为无效的 CSI 驱动程序。要解决错误,需要指定一个有效的 VolumeAttributesClass。注: 以后可以添加新状态。消费者应检查未知状态并正确失败。 |
|
| targetVolumeAttributesClassName 是当前被协调的 PVC 的 VolumeAttributesClass 的名称 |
2.1.266. .spec.tolerations
- 描述
- 如果指定,pod 的容限。
- 类型
-
array
2.1.267. .spec.tolerations[]
- 描述
- 此 Toleration 附加到 pod,以使用匹配的 operator <operator> 容许与 triple <key,value,effect> 匹配的任何污点。
- 类型
-
object
属性 | 类型 | 描述 |
---|---|---|
|
| effect 表示要匹配的污点效果。空意味着匹配所有污点效果。指定后,允许的值为 NoSchedule,PreferNoSchedule 和 NoExecute。 |
|
| key 是容限应用到的污点键。empty 表示与所有污点键匹配。如果键为空,则必须存在运算符;组合意味着匹配所有值和所有键。 |
|
| Operator 代表键与值的关系。有效的运算符是 Exists 和 Equal。默认值为 Equal。exists 等同于值的通配符,以便 pod 可以容忍特定类别的所有污点。 |
|
| tolerationSeconds 代表容限的期间(必须生效 NoExecute,否则此字段将被忽略)可以容忍污点。默认情况下,它不会被设置,这意味着容许任何污点(不要驱除)。零值和负值将被视为 0 (立即删除)。 |
|
| value 是容限匹配的污点值。如果运算符是 Exists,则该值应该为空,否则仅是一个常规字符串。 |
2.1.268. .spec.topologySpreadConstraints
- 描述
- 如果指定,pod 的拓扑分布限制。
- 类型
-
array
2.1.269. .spec.topologySpreadConstraints[]
- 描述
- TopologySpreadConstraint 指定如何在给定的拓扑中分布匹配的 pod。
- 类型
-
object
- 必填
-
maxSkew
-
topologyKey
-
whenUnsatisfiable
-
属性 | 类型 | 描述 |
---|---|---|
|
| labelSelector 用于查找匹配的 pod。与此标签选择器匹配的 Pod 被计算,以确定其对应拓扑域中的 pod 数量。 |
|
| matchLabelKeys 是一组 pod 标签键,用于选择要在其中计算分布的 pod。这些键用于从传入的 pod 标签中查找值,这些键值标签由 labelSelector 匹配,以选择现有 pod 的组,用于为传入的 pod 计算。匹配键被禁止在 MatchLabelKeys 和 LabelSelector 中。当 LabelSelector 没有设置时,无法设置 matchLabelKeys。传入的 pod 标签中不存在的键将被忽略。null 或空列表表示仅与 labelSelector 匹配。 这是一个 beta 字段,需要启用 MatchLabelKeysInPodTopologySpread 功能门(默认启用)。 |
|
|
maxSkew 描述了 pod 可能没有被均匀分布的程度。当 |
|
| MinDomains 表示合格的域数量。当具有匹配拓扑键的合格域数量小于 minDomains 时,Pod Topology Spread 会将"global minimum"视为 0,然后执行 Skew 的计算。当匹配拓扑键等于或大于 minDomains 的合格域数量时,这个值不会影响调度。因此,当有资格的域数量小于 minDomains 时,调度程序不会将超过 maxSkew Pod 的调度到这些域。如果值为 nil,则约束的行为就像 MinDomains 等于 1 一样。有效值为大于 0 的整数。如果值不是 nil,WhenUnsatisfiable 必须是 DoNotSchedule。 例如,在一个 3 个区集群中,MaxSkew 设置为 2,MinDomains 被设置为 5,且带有与 2/2/2: | zone1 | zone2 | zone2 | zone2 | zone3 | P P | P | P P | P P | P P | P P | 数量的域的数量小于 5 (MinDomains),因此"global minimum"被视为 0。在这种情况下,如果新 Pod 调度到任何三个区域,则无法调度具有相同 labelSelector 的新 pod,因为 computed skew 将为 3 (3 - 0),它将违反 MaxSkew。 |
|
| NodeAffinityPolicy 表示在计算 pod 拓扑分布偏移时,我们将如何处理 Pod 的 nodeAffinity/nodeSelector。选项为:- Honor:只有与 nodeAffinity/nodeSelector 匹配的节点才会包含在计算中。- Ignore: nodeAffinity/nodeSelector 会被忽略。所有节点都包含在计算中。 如果这个值是 nil,则行为等同于 Honor 策略。这是 NodeInclusionPolicyInPodTopologySpread 功能默认启用的 beta 级别功能。 |
|
| NodeTaintsPolicy 指示在计算 pod 拓扑分布偏移时如何对待节点污点。选项为:- Honor: 没有污点的节点,以及传入的 pod 具有容限的污点节点。- Ignore: node taint are ignored.所有节点都包括在内。 如果这个值是 nil,则行为等同于 Ignore 策略。这是 NodeInclusionPolicyInPodTopologySpread 功能默认启用的 beta 级别功能。 |
|
| topologyKey 是节点标签的密钥。带有具有此键和相同值标签的节点被视为在同一拓扑中。我们把每个 <key, value> 视为 "bucket",并尝试将均衡的 pod 数量放在每个存储桶中。我们将域定义为拓扑的特定实例。另外,我们将一个有资格的域定义为节点满足 nodeAffinityPolicy 和 nodeTaintsPolicy 的要求的域。例如,如果 TopologyKey 为 "kubernetes.io/hostname",则每个节点都是该拓扑的域。如果 TopologyKey 是 "topology.kubernetes.io/zone",每个区都是该拓扑的域。这是必填字段。 |
|
| whenUnsatisfiable 表示如何在不满足分散约束的情况下处理 pod。- DoNotSchedule (default)告知调度程序不调度它。- ScheduleAnyway 告知调度程序将 pod 调度到任何位置,但为拓扑赋予更高优先级,有助于减少偏差。如果每个可能的节点分配都会在某些拓扑上违反"MaxSkew",则约束被视为"不satisfiable"。例如,在一个 3 区集群中,MaxSkew 设置为 1,而具有与 3/1/1: | zone1 | zone2 | zone2 | zone3 | P P | P | P | P | P | P | P | P | P | WhenUnsatisfiable 设置为 DoNotSchedule 的 pod 只能调度到 zone2 (zone3)要成为 3/2/1 (3/1/2),在 zone2 (zone3)中以 ActualSkew (2-1)满足 MaxSkew (1)。换句话说,集群仍然可以实现平衡,但调度程序不会使其更不平衡。这是必填字段。 |
2.1.270. .spec.topologySpreadConstraints[].labelSelector
- 描述
- labelSelector 用于查找匹配的 pod。与此标签选择器匹配的 Pod 被计算,以确定其对应拓扑域中的 pod 数量。
- 类型
-
object
属性 | 类型 | 描述 |
---|---|---|
|
| matchExpressions 是标签选择器要求列表。要求的逻辑关系是 AND。 |
|
| 标签选择器要求是一个选择器,其中包含与键和值相关的值、键和值。 |
|
| matchLabels 是 {key,value} 对的映射。MatchLabels 映射中的单个 {key,value} 等同于 matchExpressions 的一个元素,其 key 字段是 "key",运算符是 "In",值数组仅包含 "value"。要求的逻辑关系是 AND。 |
2.1.271. .spec.topologySpreadConstraints[].labelSelector.matchExpressions
- 描述
- matchExpressions 是标签选择器要求列表。要求的逻辑关系是 AND。
- 类型
-
array
2.1.272. .spec.topologySpreadConstraints[].labelSelector.matchExpressions[]
- 描述
- 标签选择器要求是一个选择器,其中包含与键和值相关的值、键和值。
- 类型
-
object
- 必填
-
key
-
operator
-
属性 | 类型 | 描述 |
---|---|---|
|
| key 是选择器应用到的标签键。 |
|
| 运算符代表一个键与一组值的关系。有效的运算符是 In、NotIn、Exists 和 DoesNotExist。 |
|
| 值是字符串值的数组。如果运算符是 In 或 NotIn,则值数组必须是非空的。如果运算符是 Exists 或 DoesNotExist,则值数组必须为空。这个数组会在策略性合并补丁中被替换。 |
2.1.273. .spec.volumeMounts
- 描述
- volumeMounts 允许在输出 StatefulSet 定义上配置额外的 VolumeMount。指定 volumeMounts 将附加到 alertmanager 容器中的其他 VolumeMount,这些 VolumeMount 会根据 StorageSpec 对象生成的。
- 类型
-
array
2.1.274. .spec.volumeMounts[]
- 描述
- VolumeMount 描述了容器内卷挂载。
- 类型
-
object
- 必填
-
mountPath
-
name
-
属性 | 类型 | 描述 |
---|---|---|
|
| 应挂载卷的容器中的路径。不得包含 ':'。 |
|
| mountPropagation 决定挂载如何从主机传播到容器以及反向传播。如果没有设置,则使用 MountPropagationNone。此字段在 1.10 中是 beta。当 RecursiveReadOnly 设置为 IfPossible 或 Enabled 时,mountPropagation 必须是 None 或未指定(默认为 None)。 |
|
| 这必须与卷的 Name 匹配。 |
|
| 如果为 true,则以只读方式挂载,否则读写(false 或未指定)。默认为false。 |
|
| RecursiveReadOnly 指定是否应递归处理只读挂载。 如果 ReadOnly 为 false,则此字段没有意义,必须未指定。 如果 ReadOnly 为 true,且此字段设置为 Disabled,则不会递归只读挂载。如果将此字段设置为 IfPossible,则挂载将递归只读(如果容器运行时支持)。如果此字段设置为 Enabled,则挂载将在容器运行时支持时递归只读,否则不会启动 pod,并生成错误来指示原因。 如果将此字段设置为 IfPossible 或 Enabled,则 MountPropagation 必须设为 None (或未指定,默认为 None)。 如果没有指定此字段,它将被视为与 Disabled 的等效值。 |
|
| 应从中挂载容器卷的卷中的路径。默认为 "" (卷的 root)。 |
|
| 在应该挂载容器卷的卷中扩展路径。行为与 SubPath 类似,但环境变量引用 $(VAR_NAME)使用容器的环境扩展。默认为 "" (卷的 root)。SubPathExpr 和 SubPath 是互斥的。 |
2.1.275. .spec.volumes
- 描述
- 卷允许在输出 StatefulSet 定义中配置额外的卷。指定的卷将附加到作为 StorageSpec 对象生成的其他卷。
- 类型
-
array
2.1.276. .spec.volumes[]
- 描述
- 卷代表 pod 中的指定卷,可以被 pod 中的任何容器访问。
- 类型
-
object
- 必填
-
name
-
属性 | 类型 | 描述 |
---|---|---|
|
| awsElasticBlockStore 代表一个 AWS Disk 资源,附加到 kubelet 的主机机器,然后公开给 pod。更多信息: https://kubernetes.io/docs/concepts/storage/volumes#awselasticblockstore |
|
| azureDisk 代表主机上的 Azure Data Disk 挂载,并绑定到 pod。 |
|
| azureFile 代表主机上的 Azure File Service 挂载,并绑定到 pod。 |
|
| CephFS 代表共享 pod 生命周期的主机上的 Ceph FS 挂载 |
|
| Cinder 代表附加并挂载到 kubelet 主机机器上的 cinder 卷。更多信息: https://examples.k8s.io/mysql-cinder-pd/README.md |
|
| ConfigMap 代表应填充此卷的 configMap |
|
| CSI (Container Storage Interface)代表由特定外部 CSI 驱动程序(Beta 功能)处理的临时存储。 |
|
| downwardAPI 代表应填充此卷的 pod 的 Downward API |
|
| emptyDir 代表共享 pod 生命周期的临时目录。更多信息: https://kubernetes.io/docs/concepts/storage/volumes#emptydir |
|
| ephemeral 代表由集群存储驱动程序处理的卷。卷的生命周期与定义它的 pod 关联 - 将在 pod 启动前创建,并在 pod 被删除时删除。 如果 pod 运行(如需要从快照或容量跟踪中恢复)正常卷时,才需要这个卷。c)通过存储类指定存储驱动程序,以及 d)存储驱动程序支持通过 PersistentVolumeClaim 进行动态卷置备(请参阅 EphemeralVolumeSource 以了解有关这个卷类型和 PersistentVolumeClaim 间的连接的更多信息。 对于保留的时间超过单个 pod 的生命周期,使用 PersistentVolumeClaim 或特定于供应商的 API 之一。 如果使用 CSI 驱动程序,使用 CSI 驱动程序来轻量级本地临时卷 - 如需更多信息,请参阅驱动程序文档。 pod 可以同时使用两种类型的临时卷和持久性卷。 |
|
| FC 代表附加到 kubelet 主机机器的光纤通道资源,然后公开给 pod。 |
|
| FlexVolume 代表使用基于 exec 的插件置备的/附加的通用卷资源。 |
|
| flocker 代表附加到 kubelet 主机机器的 Flocker 卷。这取决于正在运行的 Flocker 控制服务 |
|
| gcePersistentDisk 代表一个 GCE Disk 资源,该资源附加到 kubelet 的主机机器,然后公开给 pod。更多信息: https://kubernetes.io/docs/concepts/storage/volumes#gcepersistentdisk |
|
| gitRepo 代表特定修订版本中的 git 存储库。DEPRECATED: GitRepo 已被弃用。要使用 git 存储库置备容器,请将 EmptyDir 挂载到使用 git 克隆存储库的 InitContainer 中,然后将 EmptyDir 挂载到 Pod 的容器中。 |
|
| GlusterFS 代表共享 pod 生命周期的主机上的 Glusterfs 挂载。更多信息: https://examples.k8s.io/volumes/glusterfs/README.md |
|
| hostpath 代表主机机器上直接公开给容器的已存在的文件或目录。这通常用于系统代理或其他允许查看主机机器的特权事情。大多数容器都不需要这样做。更多信息: https://kubernetes.io/docs/concepts/storage/volumes#hostpath -- TODO (jonesdl)我们需要限制哪些人可以使用主机目录挂载,以及谁可以/不能将主机目录挂载为读/写。 |
|
| iSCSI 代表附加到 kubelet 主机机器的 ISCSI Disk 资源,然后公开给 pod。更多信息: https://examples.k8s.io/volumes/iscsi/README.md |
|
| 卷的名称。必须是 DNS_LABEL,且必须在 pod 中唯一。更多信息: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names |
|
| NFS 代表共享 pod 生命周期更多信息的主机上 NFS 挂载: https://kubernetes.io/docs/concepts/storage/volumes#nfs |
|
| persistentVolumeClaimVolumeSource 代表对同一命名空间中的 PersistentVolumeClaim 的引用。更多信息: https://kubernetes.io/docs/concepts/storage/persistent-volumes#persistentvolumeclaims |
|
| photonPersistentDisk 代表附加并挂载到 kubelets 主机上的 PhotonController 持久磁盘 |
|
| portworxVolume 代表附加并挂载到 kubelets 主机上的 portworx 卷 |
|
| 一个资源 secret、configmap 和 Downward API 中所有的项目项目 |
|
| quobyte 代表共享 pod 生命周期的主机上执行 Quobyte 挂载 |
|
| RBD 代表共享 pod 生命周期的主机上 Rados 块设备挂载。更多信息: https://examples.k8s.io/volumes/rbd/README.md |
|
| scaleIO 代表附加并挂载到 Kubernetes 节点上的 ScaleIO 持久性卷。 |
|
| Secret 代表应填充此卷的 secret。更多信息: https://kubernetes.io/docs/concepts/storage/volumes#secret |
|
| storageos 代表附加并挂载到 Kubernetes 节点上的 StorageOS 卷。 |
|
| vsphereVolume 代表附加并挂载到 kubelets 主机上的 vSphere 卷 |
2.1.277. .spec.volumes[].awsElasticBlockStore
- 描述
- awsElasticBlockStore 代表一个 AWS Disk 资源,附加到 kubelet 的主机机器,然后公开给 pod。更多信息: https://kubernetes.io/docs/concepts/storage/volumes#awselasticblockstore
- 类型
-
object
- 必填
-
volumeID
-
属性 | 类型 | 描述 |
---|---|---|
|
| fstype 是您要挂载的卷的文件系统类型。提示: 确保主机操作系统支持文件系统类型。示例:"ext4", "xfs", "ntfs"。如果未指定,则隐式推断为 "ext4"。更多信息: https://kubernetes.io/docs/concepts/storage/volumes#awselasticblockstore TODO:如何防止文件系统中的错误影响机器 |
|
| partition 是您要挂载的卷中的分区。如果省略,则默认使用卷名称来挂载。示例: 对于卷 /dev/sda1,您可以将分区指定为 "1"。同样,/dev/sda 的卷分区是"0" (或者您可以将属性留空)。 |
|
| readonly 值 true 将强制 VolumeMount 中的 readOnly 设置。更多信息: https://kubernetes.io/docs/concepts/storage/volumes#awselasticblockstore |
|
| VolumeId 是 AWS (Amazon EBS 卷)中持久磁盘资源的唯一 ID。更多信息: https://kubernetes.io/docs/concepts/storage/volumes#awselasticblockstore |
2.1.278. .spec.volumes[].azureDisk
- 描述
- azureDisk 代表主机上的 Azure Data Disk 挂载,并绑定到 pod。
- 类型
-
object
- 必填
-
diskName
-
diskURI
-
属性 | 类型 | 描述 |
---|---|---|
|
| cachingMode 是主机缓存模式: None、Read Only、Read Write。 |
|
| diskname 是 blob 存储中的数据磁盘的 Name |
|
| diskURI 是 blob 存储中的数据磁盘的 URI |
|
| fstype 是要挂载的 Filesystem 类型。必须是主机操作系统支持的文件系统类型。Ex. "ext4", "xfs", "ntfs".如果未指定,则隐式推断为 "ext4"。 |
|
| kind 预期值为 Shared: 每个存储帐户 Dedicated 有多个 blob 磁盘:每个存储帐户 Managed: azure managed data disk (only on managed availability set). 默认为 shared |
|
| readonly Defaults to false (read/write)。此处的 readonly 将强制 VolumeMount 中的 ReadOnly 设置。 |
2.1.279. .spec.volumes[].azureFile
- 描述
- azureFile 代表主机上的 Azure File Service 挂载,并绑定到 pod。
- 类型
-
object
- 必填
-
secretName
-
shareName
-
属性 | 类型 | 描述 |
---|---|---|
|
| readonly 默认为 false (读/写)。此处的 readonly 将强制 VolumeMount 中的 ReadOnly 设置。 |
|
| secretName 是包含 Azure Storage Account Name 和 Key 的 secret 名称 |
|
| sharename 是 azure 共享名称 |
2.1.280. .spec.volumes[].cephfs
- 描述
- CephFS 代表共享 pod 生命周期的主机上的 Ceph FS 挂载
- 类型
-
object
- 必填
-
monitor
-
属性 | 类型 | 描述 |
---|---|---|
|
| monitor 是必需的: monitor 是 Ceph 监视器更多信息的集合: https://examples.k8s.io/volumes/cephfs/README.md#how-to-use-it |
|
| 路径为可选:作为挂载的 root 使用,而不是完整的 Ceph 树,默认为 / |
|
| readonly 为 Optional: Defaults to false (read/write)。此处的 readonly 将强制 VolumeMount 中的 ReadOnly 设置。更多信息: https://examples.k8s.io/volumes/cephfs/README.md#how-to-use-it |
|
| secretfile 为 Optional: SecretFile 是用户密钥环的路径,默认为 /etc/ceph/user.secret 更多信息 :https://examples.k8s.io/volumes/cephfs/README.md#how-to-use-it |
|
| secretRef 为 Optional: SecretRef 对 User 的身份验证 secret 的引用,默认为空。更多信息: https://examples.k8s.io/volumes/cephfs/README.md#how-to-use-it |
|
| User 是可选的:用户是 rados 用户名,默认为 admin 更多信息: https://examples.k8s.io/volumes/cephfs/README.md#how-to-use-it |
2.1.281. .spec.volumes[].cephfs.secretRef
- 描述
- secretRef 为 Optional: SecretRef 对 User 的身份验证 secret 的引用,默认为空。更多信息: https://examples.k8s.io/volumes/cephfs/README.md#how-to-use-it
- 类型
-
object
属性 | 类型 | 描述 |
---|---|---|
|
|
引用的名称。有效地需要此字段,但因为允许向后兼容为空。这里具有空值的此类实例几乎是错误的。TODO:添加其他有用的字段。apiVersion、kind、uid?更多信息: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names TODO: 当 controller-gen 不需要 https://github.com/kubernetes-sigs/kubebuilder/issues/3896 时,Drop |
2.1.282. .spec.volumes[].cinder
- 描述
- Cinder 代表附加并挂载到 kubelet 主机机器上的 cinder 卷。更多信息: https://examples.k8s.io/mysql-cinder-pd/README.md
- 类型
-
object
- 必填
-
volumeID
-
属性 | 类型 | 描述 |
---|---|---|
|
| fstype 是要挂载的文件系统类型。必须是主机操作系统支持的文件系统类型。示例:"ext4", "xfs", "ntfs"。如果未指定,则隐式推断为 "ext4"。更多信息: https://examples.k8s.io/mysql-cinder-pd/README.md |
|
| readonly 默认为 false (读/写)。此处的 readonly 将强制 VolumeMount 中的 ReadOnly 设置。更多信息: https://examples.k8s.io/mysql-cinder-pd/README.md |
|
| secretRef 是可选的:指向包含用于连接到 OpenStack 的参数的 secret 对象。 |
|
| 用于识别 cinder 中的卷的 VolumeId。更多信息: https://examples.k8s.io/mysql-cinder-pd/README.md |
2.1.283. .spec.volumes[].cinder.secretRef
- 描述
- secretRef 是可选的:指向包含用于连接到 OpenStack 的参数的 secret 对象。
- 类型
-
object
属性 | 类型 | 描述 |
---|---|---|
|
|
引用的名称。有效地需要此字段,但因为允许向后兼容为空。这里具有空值的此类实例几乎是错误的。TODO:添加其他有用的字段。apiVersion、kind、uid?更多信息: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names TODO: 当 controller-gen 不需要 https://github.com/kubernetes-sigs/kubebuilder/issues/3896 时,Drop |
2.1.284. .spec.volumes[].configMap
- 描述
- ConfigMap 代表应填充此卷的 configMap
- 类型
-
object
属性 | 类型 | 描述 |
---|---|---|
|
| defaultMode 是可选的:默认用于在创建的文件上设置权限的模式位。必须是 0000 到 0777 之间的数值,或者 0 到 511 之间的十进制值。YAML 接受八进制和十进制值,JSON 需要模式位的十进制值。默认值为 0644。路径中的目录不受此设置的影响。这可能与影响文件模式的其他选项(如 fsGroup )冲突,结果可以是其他模式位。 |
|
| 如果未指定,则引用的 ConfigMap 的 Data 字段中每个键值对将投射到卷中,其名称是键,内容是值。如果指定,列出的键将投射到指定的路径中,并且不会出现未列出的键。如果指定了没有存在于 ConfigMap 中的键,则卷设置将失败,除非标记为可选。路径必须是相对的,且不能包含 '..' 路径,或者以 '..' 开始。 |
|
| 将字符串键映射到卷中的路径。 |
|
|
引用的名称。有效地需要此字段,但因为允许向后兼容为空。这里具有空值的此类实例几乎是错误的。TODO:添加其他有用的字段。apiVersion、kind、uid?更多信息: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names TODO: 当 controller-gen 不需要 https://github.com/kubernetes-sigs/kubebuilder/issues/3896 时,Drop |
|
| 可选指定是否必须定义 ConfigMap 还是其键 |
2.1.285. .spec.volumes[].configMap.items
- 描述
- 如果未指定,则引用的 ConfigMap 的 Data 字段中每个键值对将投射到卷中,其名称是键,内容是值。如果指定,列出的键将投射到指定的路径中,并且不会出现未列出的键。如果指定了没有存在于 ConfigMap 中的键,则卷设置将失败,除非标记为可选。路径必须是相对的,且不能包含 '..' 路径,或者以 '..' 开始。
- 类型
-
array
2.1.286. .spec.volumes[].configMap.items[]
- 描述
- 将字符串键映射到卷中的路径。
- 类型
-
object
- 必填
-
key
-
path
-
属性 | 类型 | 描述 |
---|---|---|
|
| key 是项目的关键。 |
|
| 模式为可选:用于设置此文件权限的模式位。必须是 0000 到 0777 之间的数值,或者 0 到 511 之间的十进制值。YAML 接受八进制和十进制值,JSON 需要模式位的十进制值。如果没有指定,则使用卷 defaultMode。这可能与影响文件模式的其他选项(如 fsGroup )冲突,结果可以是其他模式位。 |
|
| path 是将键映射到的文件的相对路径。可能不是绝对路径。不得包含路径元素 '..'。不得以字符串 '..' 开头。 |
2.1.287. .spec.volumes[].csi
- 描述
- CSI (Container Storage Interface)代表由特定外部 CSI 驱动程序(Beta 功能)处理的临时存储。
- 类型
-
object
- 必填
-
driver
-
属性 | 类型 | 描述 |
---|---|---|
|
| driver 是处理此卷的 CSI 驱动程序的名称。请参考您的 admin,了解集群中注册的正确名称。 |
|
| 要挂载的 fstype。Ex. "ext4", "xfs", "ntfs".如果没有提供,则会将空值传递给关联的 CSI 驱动程序,该驱动程序将决定要应用的默认文件系统。 |
|
| nodePublishSecretRef 是包含敏感信息的 secret 对象的引用,以传递给 CSI 驱动程序,以完成 CSI NodePublishVolume 和 NodeUnpublishVolume 调用。此字段是可选的,如果不需要 secret,则可能会为空。如果 secret 对象包含多个 secret,则会传递所有 secret 引用。 |
|
| readonly 为卷指定只读配置。默认为 false (读/写)。 |
|
| volumeAttributes 存储传递给 CSI 驱动程序的驱动程序特定属性。有关支持的值,请参阅驱动程序的文档。 |
2.1.288. .spec.volumes[].csi.nodePublishSecretRef
- 描述
- nodePublishSecretRef 是包含敏感信息的 secret 对象的引用,以传递给 CSI 驱动程序,以完成 CSI NodePublishVolume 和 NodeUnpublishVolume 调用。此字段是可选的,如果不需要 secret,则可能会为空。如果 secret 对象包含多个 secret,则会传递所有 secret 引用。
- 类型
-
object
属性 | 类型 | 描述 |
---|---|---|
|
|
引用的名称。有效地需要此字段,但因为允许向后兼容为空。这里具有空值的此类实例几乎是错误的。TODO:添加其他有用的字段。apiVersion、kind、uid?更多信息: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names TODO: 当 controller-gen 不需要 https://github.com/kubernetes-sigs/kubebuilder/issues/3896 时,Drop |
2.1.289. .spec.volumes[].downwardAPI
- 描述
- downwardAPI 代表应填充此卷的 pod 的 Downward API
- 类型
-
object
属性 | 类型 | 描述 |
---|---|---|
|
| 可选:默认在创建的文件上使用模式位。必须是 Optional: 模式位,用于默认对创建的文件设置权限。必须是 0000 到 0777 之间的数值,或者 0 到 511 之间的十进制值。YAML 接受八进制和十进制值,JSON 需要模式位的十进制值。默认值为 0644。路径中的目录不受此设置的影响。这可能与影响文件模式的其他选项(如 fsGroup )冲突,结果可以是其他模式位。 |
|
| items 是 Downward API 卷文件的列表 |
|
| DownwardAPIVolumeFile 代表创建包含 pod 字段的文件的信息 |
2.1.290. .spec.volumes[].downwardAPI.items
- 描述
- items 是 Downward API 卷文件的列表
- 类型
-
array
2.1.291. .spec.volumes[].downwardAPI.items[]
- 描述
- DownwardAPIVolumeFile 代表创建包含 pod 字段的文件的信息
- 类型
-
object
- 必填
-
path
-
属性 | 类型 | 描述 |
---|---|---|
|
| 必需:支持选择 pod 的字段:只支持注解、标签、名称、命名空间和 uid。 |
|
| 可选:用于设置此文件权限的模式位,必须是 0000 到 0777 之间的数值,或 0 到 511 之间的十进制值。YAML 接受八进制和十进制值,JSON 需要模式位的十进制值。如果没有指定,则使用卷 defaultMode。这可能与影响文件模式的其他选项(如 fsGroup )冲突,结果可以是其他模式位。 |
|
| 必需:Path 是要创建的文件的相对路径名称。不能是绝对的,也不能包含 '..' 路径。必须经过 utf-8 编码。相对路径的第一个项不能以 '..' 开头。 |
|
| 选择容器的资源:目前只支持资源限值和请求(limits.cpu、limits.memory、requests.cpu 和 requests.memory)。 |
2.1.292. .spec.volumes[].downwardAPI.items[].fieldRef
- 描述
- 必需:支持选择 pod 的字段:只支持注解、标签、名称、命名空间和 uid。
- 类型
-
object
- 必填
-
fieldPath
-
属性 | 类型 | 描述 |
---|---|---|
|
| 模式的版本是按术语编写的 FieldPath,默认为 "v1"。 |
|
| 在指定 API 版本中选择的字段路径。 |
2.1.293. .spec.volumes[].downwardAPI.items[].resourceFieldRef
- 描述
- 选择容器的资源:目前只支持资源限值和请求(limits.cpu、limits.memory、requests.cpu 和 requests.memory)。
- 类型
-
object
- 必填
-
resource
-
属性 | 类型 | 描述 |
---|---|---|
|
| 容器名称:卷需要,对于 env vars是可选的 |
|
| 指定公开资源的输出格式,默认为 "1" |
|
| 必需:要选择的资源 |
2.1.294. .spec.volumes[].emptyDir
- 描述
- emptyDir 代表共享 pod 生命周期的临时目录。更多信息: https://kubernetes.io/docs/concepts/storage/volumes#emptydir
- 类型
-
object
属性 | 类型 | 描述 |
---|---|---|
|
| Medium 代表存储介质类型应支持这个目录。默认值为 "",这意味着使用节点的默认介质。必须是空字符串(默认)或 Memory。更多信息: https://kubernetes.io/docs/concepts/storage/volumes#emptydir |
|
| sizeLimit 是这个 EmptyDir 卷所需的本地存储总量。大小限制也适用于内存介质。内存用量的最大使用量为此处指定的 SizeLimit 和 pod 中所有容器的内存限值总和。默认值为 nil,这意味着限制未定义。更多信息: https://kubernetes.io/docs/concepts/storage/volumes#emptydir |
2.1.295. .spec.volumes[].ephemeral
- 描述
ephemeral 代表由集群存储驱动程序处理的卷。卷的生命周期与定义它的 pod 关联 - 将在 pod 启动前创建,并在 pod 被删除时删除。
如果 pod 运行(如需要从快照或容量跟踪中恢复)正常卷时,才需要这个卷。c)通过存储类指定存储驱动程序,以及 d)存储驱动程序支持通过 PersistentVolumeClaim 进行动态卷置备(请参阅 EphemeralVolumeSource 以了解有关这个卷类型和 PersistentVolumeClaim 间的连接的更多信息。
对于保留的时间超过单个 pod 的生命周期,使用 PersistentVolumeClaim 或特定于供应商的 API 之一。
如果使用 CSI 驱动程序,使用 CSI 驱动程序来轻量级本地临时卷 - 如需更多信息,请参阅驱动程序文档。
pod 可以同时使用两种类型的临时卷和持久性卷。
- 类型
-
object
属性 | 类型 | 描述 |
---|---|---|
|
|
将用于创建独立 PVC 来置备卷。嵌入此 EphemeralVolumeSource 的 pod 将是 PVC 的所有者,即 PVC 将与 pod 一起删除。PVC 的名称将是 < 具有名称不归 pod 所有的现有 PVC 将不会 用于 pod,以避免错误地使用不相关的卷。然后,启动 pod 会被阻断,直到删除不相关的 PVC。如果 pod 使用这样的预先创建的 PVC,则必须在 pod 存在后使用对 pod 的所有者引用来更新 PVC。通常,这应该不需要,但手动重建一个有问题的集群时可能会很有用。 此字段是只读的,Kubernetes 在创建后不会对 PVC 进行任何更改。 必需,不能是 nil。 |
2.1.296. .spec.volumes[].ephemeral.volumeClaimTemplate
- 描述
将用于创建独立 PVC 来置备卷。嵌入此 EphemeralVolumeSource 的 pod 将是 PVC 的所有者,即 PVC 将与 pod 一起删除。PVC 的名称将是 <
pod name>-<volume name>
,其中<volume
name> 是PodSpec.Volumes
数组条目中的名称。如果串联的名称对 PVC 无效(例如,太长),pod 验证将拒绝 pod。具有名称不归 pod 所有的现有 PVC 将不会 用于 pod,以避免错误地使用不相关的卷。然后,启动 pod 会被阻断,直到删除不相关的 PVC。如果 pod 使用这样的预先创建的 PVC,则必须在 pod 存在后使用对 pod 的所有者引用来更新 PVC。通常,这应该不需要,但手动重建一个有问题的集群时可能会很有用。
此字段是只读的,Kubernetes 在创建后不会对 PVC 进行任何更改。
必需,不能是 nil。
- 类型
-
object
- 必填
-
spec
-
属性 | 类型 | 描述 |
---|---|---|
|
| 可能包含创建 PVC 时将复制到 PVC 的标签和注解。不允许其他字段,并在验证过程中被拒绝。 |
|
| PersistentVolumeClaim 的规格。整个内容保持不变复制到从该模板创建的 PVC 中。PersistentVolumeClaim 中与 相同的字段也有效。 |
2.1.297. .spec.volumes[].ephemeral.volumeClaimTemplate.metadata
- 描述
- 可能包含创建 PVC 时将复制到 PVC 的标签和注解。不允许其他字段,并在验证过程中被拒绝。
- 类型
-
object
2.1.298. .spec.volumes[].ephemeral.volumeClaimTemplate.spec
- 描述
- PersistentVolumeClaim 的规格。整个内容保持不变复制到从该模板创建的 PVC 中。PersistentVolumeClaim 中与 相同的字段也有效。
- 类型
-
object
属性 | 类型 | 描述 |
---|---|---|
|
| accessModes 包含卷应具有所需的访问模式。更多信息: https://kubernetes.io/docs/concepts/storage/persistent-volumes#access-modes-1 |
|
| Datasource 字段可以用来指定:* 一个现有的 VolumeSnapshot 对象(snapshot.storage.k8s.io/VolumeSnapshot)* 一个现有的 PVC (PersistentVolumeClaim),如果置备程序或外部控制器可以支持指定的数据源,它将基于指定数据源的内容创建一个新卷。当启用 AnyVolumeDataSource 功能门时,dataSource 内容将复制到 dataSourceRef 中,当未指定 dataSourceRef.namespace 时,dataSourceRef 内容将复制到 dataSource 中。如果指定了 namespace,则不会将 dataSourceRef 复制到 dataSource 中。 |
|
| 如果需要非空卷,则 dataSourceRef 指定要使用数据填充卷的对象。这可以是来自非空 API 组(非核心对象)或 PersistentVolumeClaim 对象的任何对象。当指定对象的类型与某些安装的卷填充或动态置备程序匹配时,卷绑定才会成功。此字段将替换 dataSource 字段的功能,如果两个字段都不是空的,则它们必须具有相同的值。为了向后兼容,当命名空间没有在 dataSourceRef 中指定时,如果其中一个为空,则两个字段(dataSource 和 dataSourceRef)都会自动设置为相同的值,另一个是非空的。当在 dataSourceRef 中指定 namespace 时,dataSource 不设置为相同的值,必须为空。dataSource 和 dataSourceRef 之间有三个重要区别:* While dataSource 只允许两种特定类型的对象,dataSourceRef 允许任何非核心对象,以及 PersistentVolumeClaim 对象。* 虽然 dataSource 忽略了禁止的值(丢弃它们),dataSourceRef 保留所有值,并在指定禁止的值时生成错误。* 虽然 dataSource 只允许本地对象,dataSourceRef 允许任何命名空间中的对象。(beta)使用此字段需要启用 AnyVolumeDataSource 功能门。(alpha)使用 dataSourceRef 的 namespace 字段需要启用 CrossNamespaceVolumeDataSource 功能门。 |
|
| resources 代表卷应具有的最小资源。如果启用了 RecoverVolumeExpansionFailure 功能,用户可以指定小于之前值的资源要求,但仍必须高于声明的 status 字段中记录的容量。更多信息: https://kubernetes.io/docs/concepts/storage/persistent-volumes#resources |
|
| selector 是要考虑绑定的卷的标签查询。 |
|
| storageClassName 是声明所需的 StorageClass 的名称。更多信息: https://kubernetes.io/docs/concepts/storage/persistent-volumes#class-1 |
|
| volumeAttributesClassName 可用于设置此声明使用的 VolumeAttributesClass。如果指定,CSI 驱动程序将使用对应的 VolumeAttributesClass 中定义的属性创建或更新卷。这有一个不同于 storageClassName 的目的,可在创建声明后更改。空字符串表示,不会将 VolumeAttributesClass 应用到声明,但不允许在设置后将此字段重置为空字符串。如果未指定,并且 PersistentVolumeClaim 为 unbound,则 persistentvolume 控制器将设置默认的 VolumeAttributesClass (如果存在)。如果 volumeAttributesClass 引用的资源不存在,则这个 PersistentVolumeClaim 将被设置为 Pending 状态,如 modifyVolumeStatus 字段反映,直到资源存在为止。更多信息: https://kubernetes.io/docs/concepts/storage/volume-attributes-classes/ (Alpha)使用此字段需要启用 VolumeAttributesClass 功能门。 |
|
| volumeMode 定义声明需要哪些卷类型。当未包含在 claim spec 中时,文件系统的值会被表示。 |
|
| volumeName 是对此声明支持的 PersistentVolume 的绑定引用。 |
2.1.299. .spec.volumes[].ephemeral.volumeClaimTemplate.spec.dataSource
- 描述
- Datasource 字段可以用来指定:* 一个现有的 VolumeSnapshot 对象(snapshot.storage.k8s.io/VolumeSnapshot)* 一个现有的 PVC (PersistentVolumeClaim),如果置备程序或外部控制器可以支持指定的数据源,它将基于指定数据源的内容创建一个新卷。当启用 AnyVolumeDataSource 功能门时,dataSource 内容将复制到 dataSourceRef 中,当未指定 dataSourceRef.namespace 时,dataSourceRef 内容将复制到 dataSource 中。如果指定了 namespace,则不会将 dataSourceRef 复制到 dataSource 中。
- 类型
-
object
- 必填
-
kind
-
name
-
属性 | 类型 | 描述 |
---|---|---|
|
| APIGroup 是所引用资源的组。如果没有指定 APIGroup,则指定的 Kind 必须位于 core API 组中。对于任何其他第三方类型,需要 APIGroup。 |
|
| kind 是被引用的资源类型 |
|
| name 是被引用的资源的名称 |
2.1.300. .spec.volumes[].ephemeral.volumeClaimTemplate.spec.dataSourceRef
- 描述
- 如果需要非空卷,则 dataSourceRef 指定要使用数据填充卷的对象。这可以是来自非空 API 组(非核心对象)或 PersistentVolumeClaim 对象的任何对象。当指定对象的类型与某些安装的卷填充或动态置备程序匹配时,卷绑定才会成功。此字段将替换 dataSource 字段的功能,如果两个字段都不是空的,则它们必须具有相同的值。为了向后兼容,当命名空间没有在 dataSourceRef 中指定时,如果其中一个为空,则两个字段(dataSource 和 dataSourceRef)都会自动设置为相同的值,另一个是非空的。当在 dataSourceRef 中指定 namespace 时,dataSource 不设置为相同的值,必须为空。dataSource 和 dataSourceRef 之间有三个重要区别:* While dataSource 只允许两种特定类型的对象,dataSourceRef 允许任何非核心对象,以及 PersistentVolumeClaim 对象。* 虽然 dataSource 忽略了禁止的值(丢弃它们),dataSourceRef 保留所有值,并在指定禁止的值时生成错误。* 虽然 dataSource 只允许本地对象,dataSourceRef 允许任何命名空间中的对象。(beta)使用此字段需要启用 AnyVolumeDataSource 功能门。(alpha)使用 dataSourceRef 的 namespace 字段需要启用 CrossNamespaceVolumeDataSource 功能门。
- 类型
-
object
- 必填
-
kind
-
name
-
属性 | 类型 | 描述 |
---|---|---|
|
| APIGroup 是所引用资源的组。如果没有指定 APIGroup,则指定的 Kind 必须位于 core API 组中。对于任何其他第三方类型,需要 APIGroup。 |
|
| kind 是被引用的资源类型 |
|
| name 是被引用的资源的名称 |
|
| 命名空间是被引用的资源的命名空间,请注意,当指定命名空间时,引用命名空间中需要一个 gateway.networking.k8s.io/ReferenceGrant 对象来允许该命名空间的所有者接受引用。详情请查看 ReferenceGrant 文档。(alpha)此字段需要启用 CrossNamespaceVolumeDataSource 功能门。 |
2.1.301. .spec.volumes[].ephemeral.volumeClaimTemplate.spec.resources
- 描述
- resources 代表卷应具有的最小资源。如果启用了 RecoverVolumeExpansionFailure 功能,用户可以指定小于之前值的资源要求,但仍必须高于声明的 status 字段中记录的容量。更多信息: https://kubernetes.io/docs/concepts/storage/persistent-volumes#resources
- 类型
-
object
属性 | 类型 | 描述 |
---|---|---|
|
| 限制描述了允许的最大计算资源量。更多信息: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/ |
|
| Requests 描述了所需的最少计算资源。如果容器省略了 Requests,则默认为 Limits (如果明确指定),否则默认为实现定义的值。请求不能超过限值。更多信息: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/ |
2.1.302. .spec.volumes[].ephemeral.volumeClaimTemplate.spec.selector
- 描述
- selector 是要考虑绑定的卷的标签查询。
- 类型
-
object
属性 | 类型 | 描述 |
---|---|---|
|
| matchExpressions 是标签选择器要求列表。要求的逻辑关系是 AND。 |
|
| 标签选择器要求是一个选择器,其中包含与键和值相关的值、键和值。 |
|
| matchLabels 是 {key,value} 对的映射。MatchLabels 映射中的单个 {key,value} 等同于 matchExpressions 的一个元素,其 key 字段是 "key",运算符是 "In",值数组仅包含 "value"。要求的逻辑关系是 AND。 |
2.1.303. .spec.volumes[].ephemeral.volumeClaimTemplate.spec.selector.matchExpressions
- 描述
- matchExpressions 是标签选择器要求列表。要求的逻辑关系是 AND。
- 类型
-
数组
2.1.304. .spec.volumes[].ephemeral.volumeClaimTemplate.spec.selector.matchExpressions[]
- 描述
- 标签选择器要求是一个选择器,其中包含与键和值相关的值、键和值。
- 类型
-
object
- 必填
-
key
-
operator
-
属性 | 类型 | 描述 |
---|---|---|
|
| key 是选择器应用到的标签键。 |
|
| 运算符代表一个键与一组值的关系。有效的运算符是 In、NotIn、Exists 和 DoesNotExist。 |
|
| 值是字符串值的数组。如果运算符是 In 或 NotIn,则值数组必须是非空的。如果运算符是 Exists 或 DoesNotExist,则值数组必须为空。这个数组会在策略性合并补丁中被替换。 |
2.1.305. .spec.volumes[].fc
- 描述
- FC 代表附加到 kubelet 主机机器的光纤通道资源,然后公开给 pod。
- 类型
-
object
属性 | 类型 | 描述 |
---|---|---|
|
| fstype 是要挂载的文件系统类型。必须是主机操作系统支持的文件系统类型。Ex. "ext4", "xfs", "ntfs".如果未指定,则隐式推断为 "ext4"。TODO:如何防止文件系统中的错误破坏计算机 |
|
| LUN 是可选的:FC 目标 lun 号 |
|
| readonly 为 Optional: Defaults to false (read/write)。此处的 readonly 将强制 VolumeMount 中的 ReadOnly 设置。 |
|
| targetWWNs 是可选:FC 目标全球名称(WWN) |
|
| wwids 可选:FC 卷全局范围标识符(wwids) Either wwids 或 targetWWN 和 lun 的组合必须被设置,但不能同时设置。 |
2.1.306. .spec.volumes[].flexVolume
- 描述
- FlexVolume 代表使用基于 exec 的插件置备的/附加的通用卷资源。
- 类型
-
object
- 必填
-
driver
-
属性 | 类型 | 描述 |
---|---|---|
|
| driver 是用于此卷的驱动程序的名称。 |
|
| fstype 是要挂载的文件系统类型。必须是主机操作系统支持的文件系统类型。Ex. "ext4", "xfs", "ntfs".默认文件系统依赖于 FlexVolume 脚本。 |
|
| 选项为 Optional:此字段包含额外的命令选项(若有)。 |
|
| readonly 为 Optional: 默认为 false (读/写)。此处的 readonly 将强制 VolumeMount 中的 ReadOnly 设置。 |
|
| secretRef 是 Optional: secretRef 引用了包含敏感信息的 secret 对象,以传递给插件脚本。如果没有指定 secret 对象,这可能为空。如果 secret 对象包含多个 secret,则所有 secret 都会传递给插件脚本。 |
2.1.307. .spec.volumes[].flexVolume.secretRef
- 描述
- secretRef 是 Optional: secretRef 引用了包含敏感信息的 secret 对象,以传递给插件脚本。如果没有指定 secret 对象,这可能为空。如果 secret 对象包含多个 secret,则所有 secret 都会传递给插件脚本。
- 类型
-
object
属性 | 类型 | 描述 |
---|---|---|
|
|
引用的名称。有效地需要此字段,但因为允许向后兼容为空。这里具有空值的此类实例几乎是错误的。TODO:添加其他有用的字段。apiVersion、kind、uid?更多信息: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names TODO: 当 controller-gen 不需要 https://github.com/kubernetes-sigs/kubebuilder/issues/3896 时,Drop |
2.1.308. .spec.volumes[].flocker
- 描述
- flocker 代表附加到 kubelet 主机机器的 Flocker 卷。这取决于正在运行的 Flocker 控制服务
- 类型
-
object
属性 | 类型 | 描述 |
---|---|---|
|
| datasetName 是数据存储为 Flocker dataset 上的 metadata → name 的 Name,应被视为已弃用 |
|
| datasetUUID 是 dataset 的 UUID。这是 Flocker 数据集的唯一标识符 |
2.1.309. .spec.volumes[].gcePersistentDisk
- 描述
- gcePersistentDisk 代表一个 GCE Disk 资源,该资源附加到 kubelet 的主机机器,然后公开给 pod。更多信息: https://kubernetes.io/docs/concepts/storage/volumes#gcepersistentdisk
- 类型
-
object
- 必填
-
pdName
-
属性 | 类型 | 描述 |
---|---|---|
|
| fstype 是您要挂载的卷的文件系统类型。提示: 确保主机操作系统支持文件系统类型。示例:"ext4", "xfs", "ntfs"。如果未指定,则隐式推断为 "ext4"。更多信息: https://kubernetes.io/docs/concepts/storage/volumes#gcepersistentdisk TODO:如何防止文件系统中的错误影响机器 |
|
| partition 是您要挂载的卷中的分区。如果省略,则默认使用卷名称来挂载。示例: 对于卷 /dev/sda1,您可以将分区指定为 "1"。同样,/dev/sda 的卷分区是"0" (或者您可以将属性留空)。更多信息: https://kubernetes.io/docs/concepts/storage/volumes#gcepersistentdisk |
|
| pdName 是 GCE 中的 PD 资源的唯一名称。用于识别 GCE 中的磁盘。更多信息: https://kubernetes.io/docs/concepts/storage/volumes#gcepersistentdisk |
|
| 此处的 readonly 将强制 VolumeMount 中的 ReadOnly 设置。默认为false。更多信息: https://kubernetes.io/docs/concepts/storage/volumes#gcepersistentdisk |
2.1.310. .spec.volumes[].gitRepo
- 描述
- gitRepo 代表特定修订版本中的 git 存储库。DEPRECATED: GitRepo 已被弃用。要使用 git 存储库置备容器,请将 EmptyDir 挂载到使用 git 克隆存储库的 InitContainer 中,然后将 EmptyDir 挂载到 Pod 的容器中。
- 类型
-
object
- 必填
-
软件仓库
-
属性 | 类型 | 描述 |
---|---|---|
|
| directory 是目标目录名称。不得包含或以 '..' 开头。如果提供了 '.',则卷目录将是 git 存储库。否则,如果指定,卷将在带有给定名称的子目录中包含 git 存储库。 |
|
| repository 是 URL |
|
| revision 是指定修订版本的提交哈希。 |
2.1.311. .spec.volumes[].glusterfs
- 描述
- GlusterFS 代表共享 pod 生命周期的主机上的 Glusterfs 挂载。更多信息: https://examples.k8s.io/volumes/glusterfs/README.md
- 类型
-
object
- 必填
-
端点
-
path
-
属性 | 类型 | 描述 |
---|---|---|
|
| 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 |
2.1.312. .spec.volumes[].hostPath
- 描述
- hostpath 代表主机机器上直接公开给容器的已存在的文件或目录。这通常用于系统代理或其他允许查看主机机器的特权事情。大多数容器都不需要这样做。更多信息: https://kubernetes.io/docs/concepts/storage/volumes#hostpath -- TODO (jonesdl)我们需要限制哪些人可以使用主机目录挂载,以及谁可以/不能将主机目录挂载为读/写。
- 类型
-
object
- 必填
-
path
-
属性 | 类型 | 描述 |
---|---|---|
|
| 主机上目录的路径。如果路径是符号链接,它将遵循指向实际路径的链接。更多信息: https://kubernetes.io/docs/concepts/storage/volumes#hostpath |
|
| HostPath Volume 默认为 "" 更多信息: https://kubernetes.io/docs/concepts/storage/volumes#hostpath |
2.1.313. .spec.volumes[].iscsi
- 描述
- iSCSI 代表附加到 kubelet 主机机器的 ISCSI Disk 资源,然后公开给 pod。更多信息: https://examples.k8s.io/volumes/iscsi/README.md
- 类型
-
object
- 必填
-
iqn
-
lun
-
targetPortal
-
属性 | 类型 | 描述 |
---|---|---|
|
| chapAuthDiscovery 定义是否支持 iSCSI Discovery CHAP 身份验证 |
|
| chapAuthSession 定义是否支持 iSCSI 会话 CHAP 身份验证 |
|
| fstype 是您要挂载的卷的文件系统类型。提示: 确保主机操作系统支持文件系统类型。示例:"ext4", "xfs", "ntfs"。如果未指定,则隐式推断为 "ext4"。更多信息: https://kubernetes.io/docs/concepts/storage/volumes#iscsi TODO:如何防止文件系统中的错误影响机器 |
|
| initiatorname 是自定义 iSCSI 启动器名称。如果同时使用 iscsiInterface 指定 initiatorName,则会为连接创建新的 iSCSI 接口 <target portal>:<volume name>。 |
|
| IQN 是目标 iSCSI 限定名称。 |
|
| iscsiInterface 是使用 iSCSI 传输的接口名称。默认为 'default'(tcp)。 |
|
| LUN 表示 iSCSI 目标 Lun 编号。 |
|
| 门户是 iSCSI 目标门户列表。如果端口不是默认值(通常为 TCP 端口 860 和 3260),则门户是 IP 或 ip_addr:port。 |
|
| 此处的 readonly 将强制 VolumeMount 中的 ReadOnly 设置。默认为false。 |
|
| secretRef 是 iSCSI 目标和发起方身份验证的 CHAP Secret |
|
| targetPortal 是 iSCSI 目标门户。如果端口不是默认值(通常为 TCP 端口 860 和 3260),则门户是 IP 或 ip_addr:port。 |
2.1.314. .spec.volumes[].iscsi.secretRef
- 描述
- secretRef 是 iSCSI 目标和发起方身份验证的 CHAP Secret
- 类型
-
object
属性 | 类型 | 描述 |
---|---|---|
|
|
引用的名称。有效地需要此字段,但因为允许向后兼容为空。这里具有空值的此类实例几乎是错误的。TODO:添加其他有用的字段。apiVersion、kind、uid?更多信息: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names TODO: 当 controller-gen 不需要 https://github.com/kubernetes-sigs/kubebuilder/issues/3896 时,Drop |
2.1.315. .spec.volumes[].nfs
- 描述
- NFS 代表共享 pod 生命周期更多信息的主机上 NFS 挂载: https://kubernetes.io/docs/concepts/storage/volumes#nfs
- 类型
-
object
- 必填
-
path
-
server
-
属性 | 类型 | 描述 |
---|---|---|
|
| NFS 服务器导出的路径。更多信息: https://kubernetes.io/docs/concepts/storage/volumes#nfs |
|
| 此处的只读将强制使用只读权限挂载 NFS 导出。默认为false。更多信息: https://kubernetes.io/docs/concepts/storage/volumes#nfs |
|
| server 是 NFS 服务器的主机名或 IP 地址。更多信息: https://kubernetes.io/docs/concepts/storage/volumes#nfs |
2.1.316. .spec.volumes[].persistentVolumeClaim
- 描述
- persistentVolumeClaimVolumeSource 代表对同一命名空间中的 PersistentVolumeClaim 的引用。更多信息: https://kubernetes.io/docs/concepts/storage/persistent-volumes#persistentvolumeclaims
- 类型
-
object
- 必填
-
claimName
-
属性 | 类型 | 描述 |
---|---|---|
|
| claimName 是与使用这个卷的 pod 相同的命名空间中的 PersistentVolumeClaim 的名称。更多信息: https://kubernetes.io/docs/concepts/storage/persistent-volumes#persistentvolumeclaims |
|
| readonly 将强制 VolumeMount 中的 ReadOnly 设置。默认 false。 |
2.1.317. .spec.volumes[].photonPersistentDisk
- 描述
- photonPersistentDisk 代表附加并挂载到 kubelets 主机上的 PhotonController 持久磁盘
- 类型
-
object
- 必填
-
pdID
-
属性 | 类型 | 描述 |
---|---|---|
|
| fstype 是要挂载的文件系统类型。必须是主机操作系统支持的文件系统类型。Ex. "ext4", "xfs", "ntfs".如果未指定,则隐式推断为 "ext4"。 |
|
| pdID 是标识 Photon Controller 持久磁盘的 ID |
2.1.318. .spec.volumes[].portworxVolume
- 描述
- portworxVolume 代表附加并挂载到 kubelets 主机上的 portworx 卷
- 类型
-
object
- 必填
-
volumeID
-
属性 | 类型 | 描述 |
---|---|---|
|
| fstype 代表要挂载的文件系统类型必须是主机操作系统支持的文件系统类型。Ex. "ext4", "xfs".如果未指定,则隐式推断为 "ext4"。 |
|
| readonly 默认为 false (读/写)。此处的 readonly 将强制 VolumeMount 中的 ReadOnly 设置。 |
|
| VolumeId 唯一标识 Portworx 卷 |
2.1.319. .spec.volumes[].projected
- 描述
- 一个资源 secret、configmap 和 Downward API 中所有的项目项目
- 类型
-
object
属性 | 类型 | 描述 |
---|---|---|
|
| defaultMode 是默认用于在创建的文件上设置权限的模式位。必须是 0000 到 0777 之间的数值,或者 0 到 511 之间的十进制值。YAML 接受八进制和十进制值,JSON 需要模式位的十进制值。路径中的目录不受此设置的影响。这可能与影响文件模式的其他选项(如 fsGroup )冲突,结果可以是其他模式位。 |
|
| sources 是卷投射列表 |
|
| 可投射以及其他支持的卷类型的预测 |
2.1.320. .spec.volumes[].projected.sources
- 描述
- sources 是卷投射列表
- 类型
-
array
2.1.321. .spec.volumes[].projected.sources[]
- 描述
- 可投射以及其他支持的卷类型的预测
- 类型
-
object
属性 | 类型 | 描述 |
---|---|---|
|
|
ClusterTrustBundle 允许 pod 访问自动更新文件中的 ClusterTrustBundle 对象的 alpha,由 ClusterTrustBundleProjection 功能门实现。 ClusterTrustBundle 对象可以按名称选择,或者通过 signer 名称和标签选择器的组合来选择。 kubelet 对写入 pod 文件系统的 PEM 内容进行积极规范化。esoteric PEM 功能(如 inter-block 注释和块标头)将被剥离。证书会被重复数据删除。文件中的证书排序是任意的,Kubelet 可能会随时间更改顺序。 |
|
| 有关项目的 configMap 数据的 ConfigMap 信息 |
|
| downwardAPI 有关项目的 downwardAPI 数据的信息 |
|
| 有关项目的 secret 数据的 secret 信息 |
|
| serviceAccountToken 是与项目的 serviceAccountToken 数据相关的信息 |
2.1.322. .spec.volumes[].projected.sources[].clusterTrustBundle
- 描述
ClusterTrustBundle 允许 pod 访问自动更新文件中的 ClusterTrustBundle 对象的
.spec.trustBundle
字段。alpha,由 ClusterTrustBundleProjection 功能门实现。
ClusterTrustBundle 对象可以按名称选择,或者通过 signer 名称和标签选择器的组合来选择。
kubelet 对写入 pod 文件系统的 PEM 内容进行积极规范化。esoteric PEM 功能(如 inter-block 注释和块标头)将被剥离。证书会被重复数据删除。文件中的证书排序是任意的,Kubelet 可能会随时间更改顺序。
- 类型
-
object
- 必填
-
path
-
属性 | 类型 | 描述 |
---|---|---|
|
| 选择与这个标签选择器匹配的所有 ClusterTrustBundles。仅在设置了 signerName 时生效。使用名称互斥器.如果未设置,则解释为"匹配任何内容"。如果设置但为空,则解释为"匹配所有内容"。 |
|
| 按对象名称选择单个 ClusterTrustBundle。与 signerName 和 labelSelector 相互排斥. |
|
| 如果为 true,如果引用的 ClusterTrustBundle 不可用,则不阻止 pod 启动。如果使用 name,则允许命名 ClusterTrustBundle 不存在。如果使用 signerName,则允许 signerName 和 labelSelector 的组合匹配零 ClusterTrustBundles。 |
|
| 卷根的相对路径以写入捆绑包。 |
|
| 选择与这个签名者名称匹配的所有 ClusterTrustBundles。使用名称互斥器.所有所选 ClusterTrustBundles 的内容将统一并去除重复数据。 |
2.1.323. .spec.volumes[].projected.sources[].clusterTrustBundle.labelSelector
- 描述
- 选择与这个标签选择器匹配的所有 ClusterTrustBundles。仅在设置了 signerName 时生效。使用名称互斥器.如果未设置,则解释为"匹配任何内容"。如果设置但为空,则解释为"匹配所有内容"。
- 类型
-
object
属性 | 类型 | 描述 |
---|---|---|
|
| matchExpressions 是标签选择器要求列表。要求的逻辑关系是 AND。 |
|
| 标签选择器要求是一个选择器,其中包含与键和值相关的值、键和值。 |
|
| matchLabels 是 {key,value} 对的映射。MatchLabels 映射中的单个 {key,value} 等同于 matchExpressions 的一个元素,其 key 字段是 "key",运算符是 "In",值数组仅包含 "value"。要求的逻辑关系是 AND。 |
2.1.324. .spec.volumes[].projected.sources[].clusterTrustBundle.labelSelector.matchExpressions
- 描述
- matchExpressions 是标签选择器要求列表。要求的逻辑关系是 AND。
- 类型
-
数组
2.1.325. .spec.volumes[].projected.sources[].clusterTrustBundle.labelSelector.matchExpressions[]
- 描述
- 标签选择器要求是一个选择器,其中包含与键和值相关的值、键和值。
- 类型
-
object
- 必填
-
key
-
operator
-
属性 | 类型 | 描述 |
---|---|---|
|
| key 是选择器应用到的标签键。 |
|
| 运算符代表一个键与一组值的关系。有效的运算符是 In、NotIn、Exists 和 DoesNotExist。 |
|
| 值是字符串值的数组。如果运算符是 In 或 NotIn,则值数组必须是非空的。如果运算符是 Exists 或 DoesNotExist,则值数组必须为空。这个数组会在策略性合并补丁中被替换。 |
2.1.326. .spec.volumes[].projected.sources[].configMap
- 描述
- 有关项目的 configMap 数据的 ConfigMap 信息
- 类型
-
object
属性 | 类型 | 描述 |
---|---|---|
|
| 如果未指定,则引用的 ConfigMap 的 Data 字段中每个键值对将投射到卷中,其名称是键,内容是值。如果指定,列出的键将投射到指定的路径中,并且不会出现未列出的键。如果指定了没有存在于 ConfigMap 中的键,则卷设置将失败,除非标记为可选。路径必须是相对的,且不能包含 '..' 路径,或者以 '..' 开始。 |
|
| 将字符串键映射到卷中的路径。 |
|
|
引用的名称。有效地需要此字段,但因为允许向后兼容为空。这里具有空值的此类实例几乎是错误的。TODO:添加其他有用的字段。apiVersion、kind、uid?更多信息: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names TODO: 当 controller-gen 不需要 https://github.com/kubernetes-sigs/kubebuilder/issues/3896 时,Drop |
|
| 可选指定是否必须定义 ConfigMap 还是其键 |
2.1.327. .spec.volumes[].projected.sources[].configMap.items
- 描述
- 如果未指定,则引用的 ConfigMap 的 Data 字段中每个键值对将投射到卷中,其名称是键,内容是值。如果指定,列出的键将投射到指定的路径中,并且不会出现未列出的键。如果指定了没有存在于 ConfigMap 中的键,则卷设置将失败,除非标记为可选。路径必须是相对的,且不能包含 '..' 路径,或者以 '..' 开始。
- 类型
-
array
2.1.328. .spec.volumes[].projected.sources[].configMap.items[]
- 描述
- 将字符串键映射到卷中的路径。
- 类型
-
object
- 必填
-
key
-
path
-
属性 | 类型 | 描述 |
---|---|---|
|
| key 是项目的关键。 |
|
| 模式为可选:用于设置此文件权限的模式位。必须是 0000 到 0777 之间的数值,或者 0 到 511 之间的十进制值。YAML 接受八进制和十进制值,JSON 需要模式位的十进制值。如果没有指定,则使用卷 defaultMode。这可能与影响文件模式的其他选项(如 fsGroup )冲突,结果可以是其他模式位。 |
|
| path 是将键映射到的文件的相对路径。可能不是绝对路径。不得包含路径元素 '..'。不得以字符串 '..' 开头。 |
2.1.329. .spec.volumes[].projected.sources[].downwardAPI
- 描述
- downwardAPI 有关项目的 downwardAPI 数据的信息
- 类型
-
object
属性 | 类型 | 描述 |
---|---|---|
|
| items 是 DownwardAPIVolume 文件列表 |
|
| DownwardAPIVolumeFile 代表创建包含 pod 字段的文件的信息 |
2.1.330. .spec.volumes[].projected.sources[].downwardAPI.items
- 描述
- items 是 DownwardAPIVolume 文件列表
- 类型
-
array
2.1.331. .spec.volumes[].projected.sources[].downwardAPI.items[]
- 描述
- DownwardAPIVolumeFile 代表创建包含 pod 字段的文件的信息
- 类型
-
object
- 必填
-
path
-
属性 | 类型 | 描述 |
---|---|---|
|
| 必需:支持选择 pod 的字段:只支持注解、标签、名称、命名空间和 uid。 |
|
| 可选:用于设置此文件权限的模式位,必须是 0000 到 0777 之间的数值,或 0 到 511 之间的十进制值。YAML 接受八进制和十进制值,JSON 需要模式位的十进制值。如果没有指定,则使用卷 defaultMode。这可能与影响文件模式的其他选项(如 fsGroup )冲突,结果可以是其他模式位。 |
|
| 必需:Path 是要创建的文件的相对路径名称。不能是绝对的,也不能包含 '..' 路径。必须经过 utf-8 编码。相对路径的第一个项不能以 '..' 开头。 |
|
| 选择容器的资源:目前只支持资源限值和请求(limits.cpu、limits.memory、requests.cpu 和 requests.memory)。 |
2.1.332. .spec.volumes[].projected.sources[].downwardAPI.items[].fieldRef
- 描述
- 必需:支持选择 pod 的字段:只支持注解、标签、名称、命名空间和 uid。
- 类型
-
object
- 必填
-
fieldPath
-
属性 | 类型 | 描述 |
---|---|---|
|
| 模式的版本是按术语编写的 FieldPath,默认为 "v1"。 |
|
| 在指定 API 版本中选择的字段路径。 |
2.1.333. .spec.volumes[].projected.sources[].downwardAPI.items[].resourceFieldRef
- 描述
- 选择容器的资源:目前只支持资源限值和请求(limits.cpu、limits.memory、requests.cpu 和 requests.memory)。
- 类型
-
object
- 必填
-
resource
-
属性 | 类型 | 描述 |
---|---|---|
|
| 容器名称:卷需要,对于 env vars是可选的 |
|
| 指定公开资源的输出格式,默认为 "1" |
|
| 必需:要选择的资源 |
2.1.334. .spec.volumes[].projected.sources[].secret
- 描述
- 有关项目的 secret 数据的 secret 信息
- 类型
-
object
属性 | 类型 | 描述 |
---|---|---|
|
| 如果未指定,则引用 Secret 的 Data 字段中的每个键值对将投射到卷中,其名称是键,内容是值。如果指定,列出的键将投射到指定的路径中,并且不会出现未列出的键。如果指定了没有存在于 Secret 中的密钥,则卷设置将出错,除非标记为可选。路径必须是相对的,且不能包含 '..' 路径,或者以 '..' 开始。 |
|
| 将字符串键映射到卷中的路径。 |
|
|
引用的名称。有效地需要此字段,但因为允许向后兼容为空。这里具有空值的此类实例几乎是错误的。TODO:添加其他有用的字段。apiVersion、kind、uid?更多信息: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names TODO: 当 controller-gen 不需要 https://github.com/kubernetes-sigs/kubebuilder/issues/3896 时,Drop |
|
| 可选字段指定是否必须定义 Secret 或其密钥 |
2.1.335. .spec.volumes[].projected.sources[].secret.items
- 描述
- 如果未指定,则引用 Secret 的 Data 字段中的每个键值对将投射到卷中,其名称是键,内容是值。如果指定,列出的键将投射到指定的路径中,并且不会出现未列出的键。如果指定了没有存在于 Secret 中的密钥,则卷设置将出错,除非标记为可选。路径必须是相对的,且不能包含 '..' 路径,或者以 '..' 开始。
- 类型
-
array
2.1.336. .spec.volumes[].projected.sources[].secret.items[]
- 描述
- 将字符串键映射到卷中的路径。
- 类型
-
object
- 必填
-
key
-
path
-
属性 | 类型 | 描述 |
---|---|---|
|
| key 是项目的关键。 |
|
| 模式为可选:用于设置此文件权限的模式位。必须是 0000 到 0777 之间的数值,或者 0 到 511 之间的十进制值。YAML 接受八进制和十进制值,JSON 需要模式位的十进制值。如果没有指定,则使用卷 defaultMode。这可能与影响文件模式的其他选项(如 fsGroup )冲突,结果可以是其他模式位。 |
|
| path 是将键映射到的文件的相对路径。可能不是绝对路径。不得包含路径元素 '..'。不得以字符串 '..' 开头。 |
2.1.337. .spec.volumes[].projected.sources[].serviceAccountToken
- 描述
- serviceAccountToken 是与项目的 serviceAccountToken 数据相关的信息
- 类型
-
object
- 必填
-
path
-
属性 | 类型 | 描述 |
---|---|---|
|
| 受众是令牌的预期使用者。令牌的接收者必须使用令牌使用者中指定的标识符来识别其自身,否则应拒绝令牌。受众默认为 apiserver 的标识符。 |
|
| expirationSeconds 是服务帐户令牌的请求的有效期。当令牌接近过期时,kubelet 卷插件会主动轮转服务帐户令牌。如果令牌的时间超过 80%,或者令牌早于 24 小时,则 kubelet 将开始尝试轮转令牌。默认为 1 小时,且必须至少为 10 分钟。 |
|
| path 是与文件挂载点相关的路径,用于将令牌放入其中。 |
2.1.338. .spec.volumes[].quobyte
- 描述
- quobyte 代表共享 pod 生命周期的主机上执行 Quobyte 挂载
- 类型
-
object
- 必填
-
registry
-
卷
-
属性 | 类型 | 描述 |
---|---|---|
|
| 将卷访问映射到 Default 的组没有组 |
|
| 此处的 readonly 将强制使用只读权限挂载 Quobyte 卷。默认为false。 |
|
| registry 代表单个或多个 Quobyte Registry 服务,它指定为 host:port 对(多个条目用逗号分开),它充当卷的中央 registry |
|
| 在带有动态置备 Quobyte 卷的后端使用中拥有给定 Quobyte 卷的租户,由插件设置 |
|
| 用户,将卷访问权限映射到 Defaults 到 serivceaccount 用户 |
|
| volume 是按名称引用已创建 Quobyte 卷的字符串。 |
2.1.339. .spec.volumes[].rbd
- 描述
- RBD 代表共享 pod 生命周期的主机上 Rados 块设备挂载。更多信息: https://examples.k8s.io/volumes/rbd/README.md
- 类型
-
object
- 必填
-
image
-
monitor
-
属性 | 类型 | 描述 |
---|---|---|
|
| fstype 是您要挂载的卷的文件系统类型。提示: 确保主机操作系统支持文件系统类型。示例:"ext4", "xfs", "ntfs"。如果未指定,则隐式推断为 "ext4"。更多信息: https://kubernetes.io/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 |
|
| monitor 是 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 将强制 VolumeMount 中的 ReadOnly 设置。默认为false。更多信息: https://examples.k8s.io/volumes/rbd/README.md#how-to-use-it |
|
| secretRef 是 RBDUser 的身份验证 secret 的名称。如果提供的会覆盖密钥环。默认为 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 |
2.1.340. .spec.volumes[].rbd.secretRef
- 描述
- secretRef 是 RBDUser 的身份验证 secret 的名称。如果提供的会覆盖密钥环。默认为 nil。更多信息: https://examples.k8s.io/volumes/rbd/README.md#how-to-use-it
- 类型
-
object
属性 | 类型 | 描述 |
---|---|---|
|
|
引用的名称。有效地需要此字段,但因为允许向后兼容为空。这里具有空值的此类实例几乎是错误的。TODO:添加其他有用的字段。apiVersion、kind、uid?更多信息: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names TODO: 当 controller-gen 不需要 https://github.com/kubernetes-sigs/kubebuilder/issues/3896 时,Drop |
2.1.341. .spec.volumes[].scaleIO
- 描述
- scaleIO 代表附加并挂载到 Kubernetes 节点上的 ScaleIO 持久性卷。
- 类型
-
object
- 必填
-
gateway
-
secretRef
-
system
-
属性 | 类型 | 描述 |
---|---|---|
|
| fstype 是要挂载的文件系统类型。必须是主机操作系统支持的文件系统类型。Ex. "ext4", "xfs", "ntfs".默认为 "xfs"。 |
|
| gateway 是 ScaleIO API 网关的主机地址。 |
|
| protectionDomain 是配置存储的 ScaleIO 保护域的名称。 |
|
| readonly Defaults to false (read/write)。此处的 readonly 将强制 VolumeMount 中的 ReadOnly 设置。 |
|
| secretRef 引用 ScaleIO 用户和其他敏感信息的 secret。如果没有提供,则登录操作将失败。 |
|
| sslEnabled Flag 启用/禁用与网关的 SSL 通信,默认为 false |
|
| storageMode 指示卷的存储是否应 ThickProvisioned 或 ThinProvisioned。默认为 ThinProvisioned。 |
|
| StoragePool 是与保护域关联的 ScaleIO 存储池。 |
|
| system 是 ScaleIO 中配置的存储系统的名称。 |
|
| volumeName 是在与这个卷源关联的 ScaleIO 系统中创建的卷的名称。 |
2.1.342. .spec.volumes[].scaleIO.secretRef
- 描述
- secretRef 引用 ScaleIO 用户和其他敏感信息的 secret。如果没有提供,则登录操作将失败。
- 类型
-
object
属性 | 类型 | 描述 |
---|---|---|
|
|
引用的名称。有效地需要此字段,但因为允许向后兼容为空。这里具有空值的此类实例几乎是错误的。TODO:添加其他有用的字段。apiVersion、kind、uid?更多信息: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names TODO: 当 controller-gen 不需要 https://github.com/kubernetes-sigs/kubebuilder/issues/3896 时,Drop |
2.1.343. .spec.volumes[].secret
- 描述
- Secret 代表应填充此卷的 secret。更多信息: https://kubernetes.io/docs/concepts/storage/volumes#secret
- 类型
-
object
属性 | 类型 | 描述 |
---|---|---|
|
| defaultMode 是可选:默认用于设置创建文件的权限的模式位。必须是 0000 到 0777 之间的数值,或者 0 到 511 之间的十进制值。YAML 接受八进制和十进制值,JSON 需要模式位的十进制值。默认值为 0644。路径中的目录不受此设置的影响。这可能与影响文件模式的其他选项(如 fsGroup )冲突,结果可以是其他模式位。 |
|
| 如果未指定项目,则引用 Secret 的 Data 字段中的每个键值对将投射到卷中,其名称是键,内容是值。如果指定,列出的键将投射到指定的路径中,并且不会出现未列出的键。如果指定了没有存在于 Secret 中的密钥,则卷设置将出错,除非标记为可选。路径必须是相对的,且不能包含 '..' 路径,或者以 '..' 开始。 |
|
| 将字符串键映射到卷中的路径。 |
|
| 可选字段指定是否必须定义 Secret 或其密钥 |
|
| secretName 是要使用的 pod 命名空间中的 secret 名称。更多信息: https://kubernetes.io/docs/concepts/storage/volumes#secret |
2.1.344. .spec.volumes[].secret.items
- 描述
- 如果未指定项目,则引用 Secret 的 Data 字段中的每个键值对将投射到卷中,其名称是键,内容是值。如果指定,列出的键将投射到指定的路径中,并且不会出现未列出的键。如果指定了没有存在于 Secret 中的密钥,则卷设置将出错,除非标记为可选。路径必须是相对的,且不能包含 '..' 路径,或者以 '..' 开始。
- 类型
-
array
2.1.345. .spec.volumes[].secret.items[]
- 描述
- 将字符串键映射到卷中的路径。
- 类型
-
object
- 必填
-
key
-
path
-
属性 | 类型 | 描述 |
---|---|---|
|
| key 是项目的关键。 |
|
| 模式为可选:用于设置此文件权限的模式位。必须是 0000 到 0777 之间的数值,或者 0 到 511 之间的十进制值。YAML 接受八进制和十进制值,JSON 需要模式位的十进制值。如果没有指定,则使用卷 defaultMode。这可能与影响文件模式的其他选项(如 fsGroup )冲突,结果可以是其他模式位。 |
|
| path 是将键映射到的文件的相对路径。可能不是绝对路径。不得包含路径元素 '..'。不得以字符串 '..' 开头。 |
2.1.346. .spec.volumes[].storageos
- 描述
- storageos 代表附加并挂载到 Kubernetes 节点上的 StorageOS 卷。
- 类型
-
object
属性 | 类型 | 描述 |
---|---|---|
|
| fstype 是要挂载的文件系统类型。必须是主机操作系统支持的文件系统类型。Ex. "ext4", "xfs", "ntfs".如果未指定,则隐式推断为 "ext4"。 |
|
| readonly 默认为 false (读/写)。此处的 readonly 将强制 VolumeMount 中的 ReadOnly 设置。 |
|
| secretRef 指定用于获取 StorageOS API 凭证的 secret。如果没有指定,则会尝试默认值。 |
|
| volumeName 是 StorageOS 卷的人类可读名称。卷名称仅在命名空间中唯一。 |
|
| volumeNamespace 指定 StorageOS 中的卷范围。如果没有指定命名空间,则使用 Pod 的命名空间。这允许在 StorageOS 中镜像 Kubernetes 名称进行更紧密的集成。将 VolumeName 设置为任何名称,以覆盖默认的行为。如果没有在 StorageOS 中使用命名空间,则设置为 "default"。将创建在 StorageOS 中没有预先存在的命名空间。 |
2.1.347. .spec.volumes[].storageos.secretRef
- 描述
- secretRef 指定用于获取 StorageOS API 凭证的 secret。如果没有指定,则会尝试默认值。
- 类型
-
object
属性 | 类型 | 描述 |
---|---|---|
|
|
引用的名称。有效地需要此字段,但因为允许向后兼容为空。这里具有空值的此类实例几乎是错误的。TODO:添加其他有用的字段。apiVersion、kind、uid?更多信息: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names TODO: 当 controller-gen 不需要 https://github.com/kubernetes-sigs/kubebuilder/issues/3896 时,Drop |
2.1.348. .spec.volumes[].vsphereVolume
- 描述
- vsphereVolume 代表附加并挂载到 kubelets 主机上的 vSphere 卷
- 类型
-
object
- 必填
-
volumePath
-
属性 | 类型 | 描述 |
---|---|---|
|
| fstype 是要挂载的文件系统类型。必须是主机操作系统支持的文件系统类型。Ex. "ext4", "xfs", "ntfs".如果未指定,则隐式推断为 "ext4"。 |
|
| storagePolicyID 是与 StoragePolicyName 关联的存储策略 Based Management (SPBM)配置集 ID。 |
|
| StoragePolicyName 是存储基于策略的管理(SPBM)配置集名称。 |
|
| volumePath 是标识 vSphere 卷 vmdk 的路径 |
2.1.349. .spec.web
- 描述
- 定义启动 Alertmanager 时的 Web 命令行标志。
- 类型
-
object
属性 | 类型 | 描述 |
---|---|---|
|
|
同时处理的最大 GET 请求数。这与 Alertmanager 的-- |
|
| 定义 Web 服务器的 HTTP 参数。 |
|
|
HTTP 请求的超时。这与 Alertmanager 的- |
|
| 定义 HTTPS 的 TLS 参数。 |
2.1.350. .spec.web.httpConfig
- 描述
- 定义 Web 服务器的 HTTP 参数。
- 类型
-
object
属性 | 类型 | 描述 |
---|---|---|
|
| 可添加到 HTTP 响应中的标头列表。 |
|
| 启用 HTTP/2 支持。请注意,只有 TLS 支持 HTTP/2。如果没有配置 TLSConfig,则禁用 HTTP/2。每当字段更改时,将触发滚动更新。 |
2.1.351. .spec.web.httpConfig.headers
- 描述
- 可添加到 HTTP 响应中的标头列表。
- 类型
-
object
属性 | 类型 | 描述 |
---|---|---|
|
| 将 Content-Security-Policy 标头设置为 HTTP 响应。如果为空,则取消设置。 |
|
| 将 Strict-Transport-Security 标头设置为 HTTP 响应。如果为空,则取消设置。请确定您谨慎使用此标头,因为这个标头可能会强制浏览器加载 Prometheus,以及通过 HTTPS 在同一域和子域上托管的其他应用程序。https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/Strict-Transport-Security |
|
| 将 X-Content-Type-Options 标头设置为 HTTP 响应。如果为空,则取消设置。接受的值是 nosniff。https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/X-Content-Type-Options |
|
| 将 X-Frame-Options 标头设置为 HTTP 响应。如果为空,则取消设置。接受的值是 deny 和 sameorigin。https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/X-Frame-Options |
|
| 将 X-XSS-Protection 标头设置为所有响应。如果为空,则取消设置。https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/X-XSS-Protection |
2.1.352. .spec.web.tlsConfig
- 描述
- 定义 HTTPS 的 TLS 参数。
- 类型
-
object
- 必填
-
cert
-
keySecret
-
属性 | 类型 | 描述 |
---|---|---|
|
| 包含服务器的 TLS 证书。 |
|
| TLS 版本支持的密码套件列表,最高为 TLS 1.2。如果为空,则使用 Go 默认密码套件。可用的密码套件记录在以下文档 :https://golang.org/pkg/crypto/tls/#pkg-constants |
|
| 用于客户端身份验证的服务器策略。映射到 ClientAuth 策略。有关 clientAuth 选项的详情: https://golang.org/pkg/crypto/tls/#ClientAuthType |
|
| 包含服务器客户端证书身份验证的 CA 证书。 |
|
| 按偏好顺序在 ECDHE 握手中使用的 Elliptic curves。可用的 curves 记录在以下文档 :https://golang.org/pkg/crypto/tls/#CurveID |
|
| 包含服务器的 TLS 密钥的 secret。 |
|
| 可接受的最大 TLS 版本。默认为 TLS13。 |
|
| 可以接受的最低 TLS 版本。默认为 TLS12。 |
|
| 控制服务器是否选择客户端最首选密码套件,或者服务器最首选密码套件。如果为 true,则使用服务器的首选项,如 cipherSuites 中的元素顺序表示。 |
2.1.353. .spec.web.tlsConfig.cert
- 描述
- 包含服务器的 TLS 证书。
- 类型
-
object
属性 | 类型 | 描述 |
---|---|---|
|
| 包含用于目标的数据的 ConfigMap。 |
|
| 包含用于目标的数据的 secret。 |
2.1.354. .spec.web.tlsConfig.cert.configMap
- 描述
- 包含用于目标的数据的 ConfigMap。
- 类型
-
object
- 必填
-
key
-
属性 | 类型 | 描述 |
---|---|---|
|
| 要选择的密钥。 |
|
|
引用的名称。有效地需要此字段,但因为允许向后兼容为空。这里具有空值的此类实例几乎是错误的。TODO:添加其他有用的字段。apiVersion、kind、uid?更多信息: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names TODO: 当 controller-gen 不需要 https://github.com/kubernetes-sigs/kubebuilder/issues/3896 时,Drop |
|
| 指定是否必须定义 ConfigMap 还是其键 |
2.1.355. .spec.web.tlsConfig.cert.secret
- 描述
- 包含用于目标的数据的 secret。
- 类型
-
object
- 必填
-
key
-
属性 | 类型 | 描述 |
---|---|---|
|
| 要从中选择的 secret 的密钥。必须是一个有效的 secret 密钥。 |
|
|
引用的名称。有效地需要此字段,但因为允许向后兼容为空。这里具有空值的此类实例几乎是错误的。TODO:添加其他有用的字段。apiVersion、kind、uid?更多信息: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names TODO: 当 controller-gen 不需要 https://github.com/kubernetes-sigs/kubebuilder/issues/3896 时,Drop |
|
| 指定是否需要定义 Secret 还是其密钥 |
2.1.356. .spec.web.tlsConfig.client_ca
- 描述
- 包含服务器客户端证书身份验证的 CA 证书。
- 类型
-
object
属性 | 类型 | 描述 |
---|---|---|
|
| 包含用于目标的数据的 ConfigMap。 |
|
| 包含用于目标的数据的 secret。 |
2.1.357. .spec.web.tlsConfig.client_ca.configMap
- 描述
- 包含用于目标的数据的 ConfigMap。
- 类型
-
object
- 必填
-
key
-
属性 | 类型 | 描述 |
---|---|---|
|
| 要选择的密钥。 |
|
|
引用的名称。有效地需要此字段,但因为允许向后兼容为空。这里具有空值的此类实例几乎是错误的。TODO:添加其他有用的字段。apiVersion、kind、uid?更多信息: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names TODO: 当 controller-gen 不需要 https://github.com/kubernetes-sigs/kubebuilder/issues/3896 时,Drop |
|
| 指定是否必须定义 ConfigMap 还是其键 |
2.1.358. .spec.web.tlsConfig.client_ca.secret
- 描述
- 包含用于目标的数据的 secret。
- 类型
-
object
- 必填
-
key
-
属性 | 类型 | 描述 |
---|---|---|
|
| 要从中选择的 secret 的密钥。必须是一个有效的 secret 密钥。 |
|
|
引用的名称。有效地需要此字段,但因为允许向后兼容为空。这里具有空值的此类实例几乎是错误的。TODO:添加其他有用的字段。apiVersion、kind、uid?更多信息: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names TODO: 当 controller-gen 不需要 https://github.com/kubernetes-sigs/kubebuilder/issues/3896 时,Drop |
|
| 指定是否需要定义 Secret 还是其密钥 |
2.1.359. .spec.web.tlsConfig.keySecret
- 描述
- 包含服务器的 TLS 密钥的 secret。
- 类型
-
object
- 必填
-
key
-
属性 | 类型 | 描述 |
---|---|---|
|
| 要从中选择的 secret 的密钥。必须是一个有效的 secret 密钥。 |
|
|
引用的名称。有效地需要此字段,但因为允许向后兼容为空。这里具有空值的此类实例几乎是错误的。TODO:添加其他有用的字段。apiVersion、kind、uid?更多信息: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names TODO: 当 controller-gen 不需要 https://github.com/kubernetes-sigs/kubebuilder/issues/3896 时,Drop |
|
| 指定是否需要定义 Secret 还是其密钥 |
2.1.360. .status
- 描述
- Alertmanager 集群的状态最近观察到的状态。只读。更多信息: https://github.com/kubernetes/community/blob/master/contributors/devel/sig-architecture/api-conventions.md#spec-and-status
- 类型
-
object
- 必填
-
availableReplicas
-
paused
-
replicas
-
unavailableReplicas
-
updatedReplicas
-
属性 | 类型 | 描述 |
---|---|---|
|
| 此 Alertmanager 集群的目标可用 pod 的可用 pod 数量(至少为 minReadySeconds)。 |
|
| Alertmanager 对象的当前状态。 |
|
| condition 代表与 Prometheus、Alertmanager 或 ThanosRuler 资源关联的资源的状态。 |
|
| 代表是否在执行底层受管对象的任何操作。只有 delete 操作才会执行。 |
|
| 此 Alertmanager 对象的目标非确定 pod 的总数(标签与选择器匹配)。 |
|
| 此 Alertmanager 对象目标不可用 pod 的总数。 |
|
| 此 Alertmanager 对象的目标非确定 pod 的总数,该对象具有所需版本 spec。 |
2.1.361. .status.conditions
- 描述
- Alertmanager 对象的当前状态。
- 类型
-
array
2.1.362. .status.conditions[]
- 描述
- condition 代表与 Prometheus、Alertmanager 或 ThanosRuler 资源关联的资源的状态。
- 类型
-
object
- 必填
-
lastTransitionTime
-
status
-
type
-
属性 | 类型 | 描述 |
---|---|---|
|
| lastTransitionTime 是当前 status 属性最后一次更新的时间。 |
|
| 人类可读的消息,指示条件最后一次转换的详细信息。 |
|
|
observedGeneration 代表 .metadata.generation,条件基于这个条件。例如,如果 |
|
| 条件最后一次转换的原因。 |
|
| 条件的状态。 |
|
| 所报告条件的类型。 |
2.2. API 端点
可用的 API 端点如下:
/apis/monitoring.coreos.com/v1/alertmanagers
-
GET
: 列出 Alertmanager 类型的对象
-
/apis/monitoring.coreos.com/v1/namespaces/{namespace}/alertmanagers
-
DELETE
:删除 Alertmanager 集合 -
GET
: 列出 Alertmanager 类型的对象 -
POST
:创建 Alertmanager
-
/apis/monitoring.coreos.com/v1/namespaces/{namespace}/alertmanagers/{name}
-
DELETE
:删除 Alertmanager -
GET
:读取指定的 Alertmanager -
PATCH
: 部分更新指定的 Alertmanager -
PUT
:替换指定的 Alertmanager
-
/apis/monitoring.coreos.com/v1/namespaces/{namespace}/alertmanagers/{name}/status
-
GET
:指定 Alertmanager 的读取状态 -
PATCH
: 部分更新指定 Alertmanager 的状态 -
PUT
:替换指定 Alertmanager 的状态
-
2.2.1. /apis/monitoring.coreos.com/v1/alertmanagers
- HTTP 方法
-
GET
- 描述
- 列出 Alertmanager 类型的对象
HTTP 代码 | 响应正文 |
---|---|
200 - OK | |
401 - Unauthorized | 空 |
2.2.2. /apis/monitoring.coreos.com/v1/namespaces/{namespace}/alertmanagers
- HTTP 方法
-
DELETE
- 描述
- 删除 Alertmanager 集合
HTTP 代码 | 响应正文 |
---|---|
200 - OK |
|
401 - Unauthorized | 空 |
- HTTP 方法
-
GET
- 描述
- 列出 Alertmanager 类型的对象
HTTP 代码 | 响应正文 |
---|---|
200 - OK | |
401 - Unauthorized | 空 |
- HTTP 方法
-
POST
- 描述
- 创建 Alertmanager
参数 | 类型 | 描述 |
---|---|---|
|
| 出现时,表示不应保留修改。无效的或未被识别的 dryRun 指令将导致错误响应,且请求不会被进一步处理。有效值为: - All: 所有预演阶段都将被处理 |
|
| fieldValidation 指示服务器如何处理包含了未知或重复字段的请求 (POST/PUT/PATCH) 中的对象。有效值为: - Ignore :忽略从对象中静默丢弃的未知字段,并将忽略所有除最后一个重复字段以外的所有字段。这是 v1.23 版本之前的默认行为- Warn: 这会通过标准的警告响应头为从对象丢弃的每个未知字段以及遇到的每个重复字段,发送警告。如果没有其他错误,请求仍会成功,且只保留重复字段的最后一个。这是 v1.23+ 的的默认行为 - Strict: 如果从对象中删除了任何未知字段,或者存在任何重复字段,请求将失败并带有 BadRequest 错误。从服务器返回的错误将包含遇到的,以及重复的字段。 |
参数 | 类型 | 描述 |
---|---|---|
|
|
HTTP 代码 | 响应正文 |
---|---|
200 - OK |
|
201 - Created |
|
202 - Accepted |
|
401 - Unauthorized | 空 |
2.2.3. /apis/monitoring.coreos.com/v1/namespaces/{namespace}/alertmanagers/{name}
参数 | 类型 | 描述 |
---|---|---|
|
| Alertmanager 的名称 |
- HTTP 方法
-
DELETE
- 描述
- 删除 Alertmanager
参数 | 类型 | 描述 |
---|---|---|
|
| 出现时,表示不应保留修改。无效的或未被识别的 dryRun 指令将导致错误响应,且请求不会被进一步处理。有效值为: - All: 所有预演阶段都将被处理 |
HTTP 代码 | 响应正文 |
---|---|
200 - OK |
|
202 - Accepted |
|
401 - Unauthorized | 空 |
- HTTP 方法
-
GET
- 描述
- 读取指定的 Alertmanager
HTTP 代码 | 响应正文 |
---|---|
200 - OK |
|
401 - Unauthorized | 空 |
- HTTP 方法
-
PATCH
- 描述
- 部分更新指定的 Alertmanager
参数 | 类型 | 描述 |
---|---|---|
|
| 出现时,表示不应保留修改。无效的或未被识别的 dryRun 指令将导致错误响应,且请求不会被进一步处理。有效值为: - All: 所有预演阶段都将被处理 |
|
| fieldValidation 指示服务器如何处理包含了未知或重复字段的请求 (POST/PUT/PATCH) 中的对象。有效值为: - Ignore :忽略从对象中静默丢弃的未知字段,并将忽略所有除最后一个重复字段以外的所有字段。这是 v1.23 版本之前的默认行为- Warn: 这会通过标准的警告响应头为从对象丢弃的每个未知字段以及遇到的每个重复字段,发送警告。如果没有其他错误,请求仍会成功,且只保留重复字段的最后一个。这是 v1.23+ 的的默认行为 - Strict: 如果从对象中删除了任何未知字段,或者存在任何重复字段,请求将失败并带有 BadRequest 错误。从服务器返回的错误将包含遇到的,以及重复的字段。 |
HTTP 代码 | 响应正文 |
---|---|
200 - OK |
|
401 - Unauthorized | 空 |
- HTTP 方法
-
PUT
- 描述
- 替换指定的 Alertmanager
参数 | 类型 | 描述 |
---|---|---|
|
| 出现时,表示不应保留修改。无效的或未被识别的 dryRun 指令将导致错误响应,且请求不会被进一步处理。有效值为: - All: 所有预演阶段都将被处理 |
|
| fieldValidation 指示服务器如何处理包含了未知或重复字段的请求 (POST/PUT/PATCH) 中的对象。有效值为: - Ignore :忽略从对象中静默丢弃的未知字段,并将忽略所有除最后一个重复字段以外的所有字段。这是 v1.23 版本之前的默认行为- Warn: 这会通过标准的警告响应头为从对象丢弃的每个未知字段以及遇到的每个重复字段,发送警告。如果没有其他错误,请求仍会成功,且只保留重复字段的最后一个。这是 v1.23+ 的的默认行为 - Strict: 如果从对象中删除了任何未知字段,或者存在任何重复字段,请求将失败并带有 BadRequest 错误。从服务器返回的错误将包含遇到的,以及重复的字段。 |
参数 | 类型 | 描述 |
---|---|---|
|
|
HTTP 代码 | 响应正文 |
---|---|
200 - OK |
|
201 - Created |
|
401 - Unauthorized | 空 |
2.2.4. /apis/monitoring.coreos.com/v1/namespaces/{namespace}/alertmanagers/{name}/status
参数 | 类型 | 描述 |
---|---|---|
|
| Alertmanager 的名称 |
- HTTP 方法
-
GET
- 描述
- 指定 Alertmanager 的读取状态
HTTP 代码 | 响应正文 |
---|---|
200 - OK |
|
401 - Unauthorized | 空 |
- HTTP 方法
-
PATCH
- 描述
- 部分更新指定 Alertmanager 的状态
参数 | 类型 | 描述 |
---|---|---|
|
| 出现时,表示不应保留修改。无效的或未被识别的 dryRun 指令将导致错误响应,且请求不会被进一步处理。有效值为: - All: 所有预演阶段都将被处理 |
|
| fieldValidation 指示服务器如何处理包含了未知或重复字段的请求 (POST/PUT/PATCH) 中的对象。有效值为: - Ignore :忽略从对象中静默丢弃的未知字段,并将忽略所有除最后一个重复字段以外的所有字段。这是 v1.23 版本之前的默认行为- Warn: 这会通过标准的警告响应头为从对象丢弃的每个未知字段以及遇到的每个重复字段,发送警告。如果没有其他错误,请求仍会成功,且只保留重复字段的最后一个。这是 v1.23+ 的的默认行为 - Strict: 如果从对象中删除了任何未知字段,或者存在任何重复字段,请求将失败并带有 BadRequest 错误。从服务器返回的错误将包含遇到的,以及重复的字段。 |
HTTP 代码 | 响应正文 |
---|---|
200 - OK |
|
401 - Unauthorized | 空 |
- HTTP 方法
-
PUT
- 描述
- 替换指定 Alertmanager 的状态
参数 | 类型 | 描述 |
---|---|---|
|
| 出现时,表示不应保留修改。无效的或未被识别的 dryRun 指令将导致错误响应,且请求不会被进一步处理。有效值为: - All: 所有预演阶段都将被处理 |
|
| fieldValidation 指示服务器如何处理包含了未知或重复字段的请求 (POST/PUT/PATCH) 中的对象。有效值为: - Ignore :忽略从对象中静默丢弃的未知字段,并将忽略所有除最后一个重复字段以外的所有字段。这是 v1.23 版本之前的默认行为- Warn: 这会通过标准的警告响应头为从对象丢弃的每个未知字段以及遇到的每个重复字段,发送警告。如果没有其他错误,请求仍会成功,且只保留重复字段的最后一个。这是 v1.23+ 的的默认行为 - Strict: 如果从对象中删除了任何未知字段,或者存在任何重复字段,请求将失败并带有 BadRequest 错误。从服务器返回的错误将包含遇到的,以及重复的字段。 |
参数 | 类型 | 描述 |
---|---|---|
|
|
HTTP 代码 | 响应正文 |
---|---|
200 - OK |
|
201 - Created |
|
401 - Unauthorized | 空 |
第 3 章 AlertmanagerConfig [monitoring.coreos.com/v1beta1]
- 描述
- AlertmanagerConfig 配置 Prometheus Alertmanager,指定应如何对外部系统分组、禁止和通知警报。
- 类型
-
object
- 必填
-
spec
-
3.1. 规格
属性 | 类型 | 描述 |
---|---|---|
|
| APIVersion 定义对象的这个表示法的版本化的 schema。服务器应该将识别的模式转换为最新的内部值,并可拒绝未识别的值。更多信息: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources |
|
| kind 是一个字符串值,代表此对象所代表的 REST 资源。服务器可以从客户端向其提交请求的端点推断。无法更新。采用驼峰拼写法 (CamelCase)。更多信息: 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 | |
|
|
AlertmanagerConfigSpec 是 Alertmanager 配置所需行为的规格。根据定义,Alertmanager 配置只适用于命名空间标签与 AlertmanagerConfig 资源的命名空间相等的警报。 |
3.1.1. .spec
- 描述
-
AlertmanagerConfigSpec 是 Alertmanager 配置所需行为的规格。根据定义,Alertmanager 配置只适用于命名空间标签与 AlertmanagerConfig 资源的命名空间相等的警报。
- 类型
-
object
属性 | 类型 | 描述 |
---|---|---|
|
| 禁止规则列表。规则将仅适用于与资源的命名空间匹配的警报。 |
|
| InhibitRule 定义了一个禁止规则,允许在其他警报触发时静默警报。请参阅 https://prometheus.io/docs/alerting/latest/configuration/#inhibit_rule |
|
| 接收器列表。 |
|
| 接收器定义一个或多个通知集成。 |
|
| 与资源命名空间匹配的警报的 Alertmanager 路由定义。如果存在,它将作为第一级路由添加到生成的 Alertmanager 配置中。 |
|
| TimeInterval 列表,指定路由应可变或处于活动状态的时间。 |
|
| TimeInterval 指定通知将静默或激活的时间周期。 |
3.1.2. .spec.inhibitRules
- 描述
- 禁止规则列表。规则将仅适用于与资源的命名空间匹配的警报。
- 类型
-
array
3.1.3. .spec.inhibitRules[]
- 描述
- InhibitRule 定义了一个禁止规则,允许在其他警报触发时静默警报。请参阅 https://prometheus.io/docs/alerting/latest/configuration/#inhibit_rule
- 类型
-
object
属性 | 类型 | 描述 |
---|---|---|
|
| 源和目标警报中必须有相等值的标签才能使禁止生效。 |
|
| 存在一个或多个警报的匹配者才能使禁止生效。Operator 强制执行警报与资源的命名空间匹配。 |
|
| Matcher 定义如何在警报的标签上匹配。 |
|
| 在要静默的警报中必须实现的匹配者。Operator 强制执行警报与资源的命名空间匹配。 |
|
| Matcher 定义如何在警报的标签上匹配。 |
3.1.4. .spec.inhibitRules[].sourceMatch
- 描述
- 存在一个或多个警报的匹配者才能使禁止生效。Operator 强制执行警报与资源的命名空间匹配。
- 类型
-
array
3.1.5. .spec.inhibitRules[].sourceMatch[]
- 描述
- Matcher 定义如何在警报的标签上匹配。
- 类型
-
object
- 必填
-
name
-
属性 | 类型 | 描述 |
---|---|---|
|
|
匹配 operator, one of |
|
| 要匹配的标签。 |
|
| 要匹配的标签值。 |
3.1.6. .spec.inhibitRules[].targetMatch
- 描述
- 在要静默的警报中必须实现的匹配者。Operator 强制执行警报与资源的命名空间匹配。
- 类型
-
array
3.1.7. .spec.inhibitRules[].targetMatch[]
- 描述
- Matcher 定义如何在警报的标签上匹配。
- 类型
-
object
- 必填
-
name
-
属性 | 类型 | 描述 |
---|---|---|
|
|
匹配 operator, one of |
|
| 要匹配的标签。 |
|
| 要匹配的标签值。 |
3.1.8. .spec.receivers
- 描述
- 接收器列表。
- 类型
-
array
3.1.9. .spec.receivers[]
- 描述
- 接收器定义一个或多个通知集成。
- 类型
-
object
- 必填
-
name
-
属性 | 类型 | 描述 |
---|---|---|
|
| Slack 配置列表。 |
|
| DiscordConfig 通过 Discord 配置通知。请参阅 https://prometheus.io/docs/alerting/latest/configuration/#discord_config |
|
| 电子邮件配置列表。 |
|
| EmailConfig 通过电子邮件配置通知。 |
|
| MSTeams 配置列表。它需要 Alertmanager >= 0.26.0。 |
|
| MSTeamsConfig 通过 Microsoft Teams 配置通知。它需要 Alertmanager >= 0.26.0。 |
|
| 接收器的名称。列表中所有项目之间必须是唯一的。 |
|
| OpsGenie 配置列表。 |
|
| OpsGenieConfig 通过 OpsGenie 配置通知。See https://prometheus.io/docs/alerting/latest/configuration/#opsgenie_config |
|
| PagerDuty 配置列表。 |
|
| PagerDutyConfig 通过 PagerDuty 配置通知。See https://prometheus.io/docs/alerting/latest/configuration/#pagerduty_config |
|
| 推送配置列表。 |
|
| PushoverConfig 通过 Pushover 配置通知。See https://prometheus.io/docs/alerting/latest/configuration/#pushover_config |
|
| Slack 配置列表。 |
|
| SlackConfig 通过 Slack 配置通知。See https://prometheus.io/docs/alerting/latest/configuration/#slack_config |
|
| SNS 配置列表 |
|
| SNSConfig 通过 AWS SNS 配置通知。请参阅 https://prometheus.io/docs/alerting/latest/configuration/#sns_configs |
|
| Telegram 配置列表。 |
|
| TelegramConfig 通过 Telegram 配置通知。See https://prometheus.io/docs/alerting/latest/configuration/#telegram_config |
|
| VictorOps 配置列表。 |
|
| VictorOpsConfig 通过 VictorOps 配置通知。See https://prometheus.io/docs/alerting/latest/configuration/#victorops_config |
|
| Webex 配置列表。 |
|
| WebexConfig 通过 Cisco Webex 配置通知,请参阅 https://prometheus.io/docs/alerting/latest/configuration/#webex_config |
|
| Webhook 配置列表。 |
|
| WebhookConfig 通过支持 webhook 有效负载的通用接收器配置通知。See https://prometheus.io/docs/alerting/latest/configuration/#webhook_config |
|
| WeChat 配置列表。 |
|
| WeChatConfig 通过 WeChat 配置通知。See https://prometheus.io/docs/alerting/latest/configuration/#wechat_config |
3.1.10. .spec.receivers[].discordConfigs
- 描述
- Slack 配置列表。
- 类型
-
数组
3.1.11. .spec.receivers[].discordConfigs[]
- 描述
- DiscordConfig 通过 Discord 配置通知。请参阅 https://prometheus.io/docs/alerting/latest/configuration/#discord_config
- 类型
-
object
属性 | 类型 | 描述 |
---|---|---|
|
| 包含 Discord webhook URL 的 secret 的密钥。secret 需要与 AlertmanagerConfig 对象位于同一个命名空间中,并可以被 Prometheus Operator 访问。 |
|
| HTTP 客户端配置。 |
|
| 消息正文模板。 |
|
| 是否要通知已解析的警报。 |
|
| 消息标题的模板。 |
3.1.12. .spec.receivers[].discordConfigs[].apiURL
- 描述
- 包含 Discord webhook URL 的 secret 的密钥。secret 需要与 AlertmanagerConfig 对象位于同一个命名空间中,并可以被 Prometheus Operator 访问。
- 类型
-
object
- 必填
-
key
-
属性 | 类型 | 描述 |
---|---|---|
|
| 要从中选择的 secret 的密钥。必须是一个有效的 secret 密钥。 |
|
|
引用的名称。有效地需要此字段,但因为允许向后兼容为空。这里具有空值的此类实例几乎是错误的。TODO:添加其他有用的字段。apiVersion、kind、uid?更多信息: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names TODO: 当 controller-gen 不需要 https://github.com/kubernetes-sigs/kubebuilder/issues/3896 时,Drop |
|
| 指定是否需要定义 Secret 还是其密钥 |
3.1.13. .spec.receivers[].discordConfigs[].httpConfig
- 描述
- HTTP 客户端配置。
- 类型
-
object
属性 | 类型 | 描述 |
---|---|---|
|
| 客户端的授权标头配置。这与 BasicAuth 相互排斥,且只能从 Alertmanager v0.22+ 开始。 |
|
| 客户端的 basicAuth。这是与授权相互排斥的。如果定义了这两者,则 BasicAuth 优先。 |
|
| 包含客户端用于身份验证的 bearer 令牌的机密密钥。secret 需要与 AlertmanagerConfig 对象位于同一个命名空间中,并可以被 Prometheus Operator 访问。 |
|
| FollowRedirects 指定客户端是否应该遵循 HTTP 3xx 重定向。 |
|
| 用于获取目标令牌的 OAuth2 客户端凭据。 |
|
| 可选的代理 URL。 |
|
| 客户端的 TLS 配置。 |
3.1.14. .spec.receivers[].discordConfigs[].httpConfig.authorization
- 描述
- 客户端的授权标头配置。这与 BasicAuth 相互排斥,且只能从 Alertmanager v0.22+ 开始。
- 类型
-
object
属性 | 类型 | 描述 |
---|---|---|
|
| 选择命名空间中包含用于身份验证的凭证的 Secret 的键。 |
|
| 定义身份验证类型。该值不区分大小写。 "basic"不是受支持的值。 默认:"Bearer" |
3.1.15. .spec.receivers[].discordConfigs[].httpConfig.authorization.credentials
- 描述
- 选择命名空间中包含用于身份验证的凭证的 Secret 的键。
- 类型
-
object
- 必填
-
key
-
属性 | 类型 | 描述 |
---|---|---|
|
| 要从中选择的 secret 的密钥。必须是一个有效的 secret 密钥。 |
|
|
引用的名称。有效地需要此字段,但因为允许向后兼容为空。这里具有空值的此类实例几乎是错误的。TODO:添加其他有用的字段。apiVersion、kind、uid?更多信息: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names TODO: 当 controller-gen 不需要 https://github.com/kubernetes-sigs/kubebuilder/issues/3896 时,Drop |
|
| 指定是否需要定义 Secret 还是其密钥 |
3.1.16. .spec.receivers[].discordConfigs[].httpConfig.basicAuth
- 描述
- 客户端的 basicAuth。这是与授权相互排斥的。如果定义了这两者,则 BasicAuth 优先。
- 类型
-
object
属性 | 类型 | 描述 |
---|---|---|
|
|
|
|
|
|
3.1.17. .spec.receivers[].discordConfigs[].httpConfig.basicAuth.password
- 描述
-
password
指定包含用于身份验证的密码的 Secret 的键。 - 类型
-
object
- 必填
-
key
-
属性 | 类型 | 描述 |
---|---|---|
|
| 要从中选择的 secret 的密钥。必须是一个有效的 secret 密钥。 |
|
|
引用的名称。有效地需要此字段,但因为允许向后兼容为空。这里具有空值的此类实例几乎是错误的。TODO:添加其他有用的字段。apiVersion、kind、uid?更多信息: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names TODO: 当 controller-gen 不需要 https://github.com/kubernetes-sigs/kubebuilder/issues/3896 时,Drop |
|
| 指定是否需要定义 Secret 还是其密钥 |
3.1.18. .spec.receivers[].discordConfigs[].httpConfig.basicAuth.username
- 描述
-
username
指定包含用于身份验证的用户名的 Secret 的键。 - 类型
-
object
- 必填
-
key
-
属性 | 类型 | 描述 |
---|---|---|
|
| 要从中选择的 secret 的密钥。必须是一个有效的 secret 密钥。 |
|
|
引用的名称。有效地需要此字段,但因为允许向后兼容为空。这里具有空值的此类实例几乎是错误的。TODO:添加其他有用的字段。apiVersion、kind、uid?更多信息: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names TODO: 当 controller-gen 不需要 https://github.com/kubernetes-sigs/kubebuilder/issues/3896 时,Drop |
|
| 指定是否需要定义 Secret 还是其密钥 |
3.1.19. .spec.receivers[].discordConfigs[].httpConfig.bearerTokenSecret
- 描述
- 包含客户端用于身份验证的 bearer 令牌的机密密钥。secret 需要与 AlertmanagerConfig 对象位于同一个命名空间中,并可以被 Prometheus Operator 访问。
- 类型
-
object
- 必填
-
key
-
名称
-
属性 | 类型 | 描述 |
---|---|---|
|
| 要从中选择的 secret 的密钥。必须是一个有效的 secret 密钥。 |
|
| 要选择的对象命名空间中的 secret 名称。 |
3.1.20. .spec.receivers[].discordConfigs[].httpConfig.oauth2
- 描述
- 用于获取目标令牌的 OAuth2 客户端凭据。
- 类型
-
object
- 必填
-
clientId
-
clientSecret
-
tokenUrl
-
属性 | 类型 | 描述 |
---|---|---|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
3.1.21. .spec.receivers[].discordConfigs[].httpConfig.oauth2.clientId
- 描述
-
clientId
指定包含 OAuth2 客户端 ID 的 Secret 或 ConfigMap 的键。 - 类型
-
object
属性 | 类型 | 描述 |
---|---|---|
|
| 包含用于目标的数据的 ConfigMap。 |
|
| 包含用于目标的数据的 secret。 |
3.1.22. .spec.receivers[].discordConfigs[].httpConfig.oauth2.clientId.configMap
- 描述
- 包含用于目标的数据的 ConfigMap。
- 类型
-
object
- 必填
-
key
-
属性 | 类型 | 描述 |
---|---|---|
|
| 要选择的密钥。 |
|
|
引用的名称。有效地需要此字段,但因为允许向后兼容为空。这里具有空值的此类实例几乎是错误的。TODO:添加其他有用的字段。apiVersion、kind、uid?更多信息: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names TODO: 当 controller-gen 不需要 https://github.com/kubernetes-sigs/kubebuilder/issues/3896 时,Drop |
|
| 指定是否必须定义 ConfigMap 还是其键 |
3.1.23. .spec.receivers[].discordConfigs[].httpConfig.oauth2.clientId.secret
- 描述
- 包含用于目标的数据的 secret。
- 类型
-
object
- 必填
-
key
-
属性 | 类型 | 描述 |
---|---|---|
|
| 要从中选择的 secret 的密钥。必须是一个有效的 secret 密钥。 |
|
|
引用的名称。有效地需要此字段,但因为允许向后兼容为空。这里具有空值的此类实例几乎是错误的。TODO:添加其他有用的字段。apiVersion、kind、uid?更多信息: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names TODO: 当 controller-gen 不需要 https://github.com/kubernetes-sigs/kubebuilder/issues/3896 时,Drop |
|
| 指定是否需要定义 Secret 还是其密钥 |
3.1.24. .spec.receivers[].discordConfigs[].httpConfig.oauth2.clientSecret
- 描述
-
clientSecret
指定包含 OAuth2 客户端 secret 的 Secret 的密钥。 - 类型
-
object
- 必填
-
key
-
属性 | 类型 | 描述 |
---|---|---|
|
| 要从中选择的 secret 的密钥。必须是一个有效的 secret 密钥。 |
|
|
引用的名称。有效地需要此字段,但因为允许向后兼容为空。这里具有空值的此类实例几乎是错误的。TODO:添加其他有用的字段。apiVersion、kind、uid?更多信息: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names TODO: 当 controller-gen 不需要 https://github.com/kubernetes-sigs/kubebuilder/issues/3896 时,Drop |
|
| 指定是否需要定义 Secret 还是其密钥 |
3.1.25. .spec.receivers[].discordConfigs[].httpConfig.tlsConfig
- 描述
- 客户端的 TLS 配置。
- 类型
-
object
属性 | 类型 | 描述 |
---|---|---|
|
| 验证服务器证书时使用的证书颁发机构。 |
|
| 执行 client-authentication 时要出现的客户端证书。 |
|
| 禁用目标证书验证。 |
|
| 包含目标客户端密钥文件的 secret。 |
|
| 用于验证目标的主机名。 |
3.1.26. .spec.receivers[].discordConfigs[].httpConfig.tlsConfig.ca
- 描述
- 验证服务器证书时使用的证书颁发机构。
- 类型
-
object
属性 | 类型 | 描述 |
---|---|---|
|
| 包含用于目标的数据的 ConfigMap。 |
|
| 包含用于目标的数据的 secret。 |
3.1.27. .spec.receivers[].discordConfigs[].httpConfig.tlsConfig.ca.configMap
- 描述
- 包含用于目标的数据的 ConfigMap。
- 类型
-
object
- 必填
-
key
-
属性 | 类型 | 描述 |
---|---|---|
|
| 要选择的密钥。 |
|
|
引用的名称。有效地需要此字段,但因为允许向后兼容为空。这里具有空值的此类实例几乎是错误的。TODO:添加其他有用的字段。apiVersion、kind、uid?更多信息: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names TODO: 当 controller-gen 不需要 https://github.com/kubernetes-sigs/kubebuilder/issues/3896 时,Drop |
|
| 指定是否必须定义 ConfigMap 还是其键 |
3.1.28. .spec.receivers[].discordConfigs[].httpConfig.tlsConfig.ca.secret
- 描述
- 包含用于目标的数据的 secret。
- 类型
-
object
- 必填
-
key
-
属性 | 类型 | 描述 |
---|---|---|
|
| 要从中选择的 secret 的密钥。必须是一个有效的 secret 密钥。 |
|
|
引用的名称。有效地需要此字段,但因为允许向后兼容为空。这里具有空值的此类实例几乎是错误的。TODO:添加其他有用的字段。apiVersion、kind、uid?更多信息: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names TODO: 当 controller-gen 不需要 https://github.com/kubernetes-sigs/kubebuilder/issues/3896 时,Drop |
|
| 指定是否需要定义 Secret 还是其密钥 |
3.1.29. .spec.receivers[].discordConfigs[].httpConfig.tlsConfig.cert
- 描述
- 执行 client-authentication 时要出现的客户端证书。
- 类型
-
object
属性 | 类型 | 描述 |
---|---|---|
|
| 包含用于目标的数据的 ConfigMap。 |
|
| 包含用于目标的数据的 secret。 |
3.1.30. .spec.receivers[].discordConfigs[].httpConfig.tlsConfig.cert.configMap
- 描述
- 包含用于目标的数据的 ConfigMap。
- 类型
-
object
- 必填
-
key
-
属性 | 类型 | 描述 |
---|---|---|
|
| 要选择的密钥。 |
|
|
引用的名称。有效地需要此字段,但因为允许向后兼容为空。这里具有空值的此类实例几乎是错误的。TODO:添加其他有用的字段。apiVersion、kind、uid?更多信息: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names TODO: 当 controller-gen 不需要 https://github.com/kubernetes-sigs/kubebuilder/issues/3896 时,Drop |
|
| 指定是否必须定义 ConfigMap 还是其键 |
3.1.31. .spec.receivers[].discordConfigs[].httpConfig.tlsConfig.cert.secret
- 描述
- 包含用于目标的数据的 secret。
- 类型
-
object
- 必填
-
key
-
属性 | 类型 | 描述 |
---|---|---|
|
| 要从中选择的 secret 的密钥。必须是一个有效的 secret 密钥。 |
|
|
引用的名称。有效地需要此字段,但因为允许向后兼容为空。这里具有空值的此类实例几乎是错误的。TODO:添加其他有用的字段。apiVersion、kind、uid?更多信息: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names TODO: 当 controller-gen 不需要 https://github.com/kubernetes-sigs/kubebuilder/issues/3896 时,Drop |
|
| 指定是否需要定义 Secret 还是其密钥 |
3.1.32. .spec.receivers[].discordConfigs[].httpConfig.tlsConfig.keySecret
- 描述
- 包含目标客户端密钥文件的 secret。
- 类型
-
object
- 必填
-
key
-
属性 | 类型 | 描述 |
---|---|---|
|
| 要从中选择的 secret 的密钥。必须是一个有效的 secret 密钥。 |
|
|
引用的名称。有效地需要此字段,但因为允许向后兼容为空。这里具有空值的此类实例几乎是错误的。TODO:添加其他有用的字段。apiVersion、kind、uid?更多信息: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names TODO: 当 controller-gen 不需要 https://github.com/kubernetes-sigs/kubebuilder/issues/3896 时,Drop |
|
| 指定是否需要定义 Secret 还是其密钥 |
3.1.33. .spec.receivers[].emailConfigs
- 描述
- 电子邮件配置列表。
- 类型
-
array
3.1.34. .spec.receivers[].emailConfigs[]
- 描述
- EmailConfig 通过电子邮件配置通知。
- 类型
-
object
属性 | 类型 | 描述 |
---|---|---|
|
| 用于身份验证的身份。 |
|
| 包含用于身份验证的密码的 secret 密钥。secret 需要与 AlertmanagerConfig 对象位于同一个命名空间中,并可以被 Prometheus Operator 访问。 |
|
| 包含 CRAM-MD5 机密的机密密钥。secret 需要与 AlertmanagerConfig 对象位于同一个命名空间中,并可以被 Prometheus Operator 访问。 |
|
| 用于身份验证的用户名。 |
|
| 发送者地址。 |
|
| 进一步的标头电子邮件键/值对。覆盖之前由通知实现设置的任何标头。 |
|
| KeyValue 定义一个(key, value) tuple。 |
|
| 要标识到 SMTP 服务器的主机名。 |
|
| 电子邮件通知的 HTML 正文。 |
|
| SMTP TLS 要求。请注意,Go 不支持到远程 SMTP 端点的未加密的连接。 |
|
| 是否要通知已解析的警报。 |
|
| 发送电子邮件的 SMTP 主机和端口。E.g. example.com:25 |
|
| 电子邮件通知的文本正文。 |
|
| TLS 配置 |
|
| 发送通知的电子邮件地址。 |
3.1.35. .spec.receivers[].emailConfigs[].authPassword
- 描述
- 包含用于身份验证的密码的 secret 密钥。secret 需要与 AlertmanagerConfig 对象位于同一个命名空间中,并可以被 Prometheus Operator 访问。
- 类型
-
object
- 必填
-
key
-
名称
-
属性 | 类型 | 描述 |
---|---|---|
|
| 要从中选择的 secret 的密钥。必须是一个有效的 secret 密钥。 |
|
| 要选择的对象命名空间中的 secret 名称。 |
3.1.36. .spec.receivers[].emailConfigs[].authSecret
- 描述
- 包含 CRAM-MD5 机密的机密密钥。secret 需要与 AlertmanagerConfig 对象位于同一个命名空间中,并可以被 Prometheus Operator 访问。
- 类型
-
object
- 必填
-
key
-
名称
-
属性 | 类型 | 描述 |
---|---|---|
|
| 要从中选择的 secret 的密钥。必须是一个有效的 secret 密钥。 |
|
| 要选择的对象命名空间中的 secret 名称。 |
3.1.37. .spec.receivers[].emailConfigs[].headers
- 描述
- 进一步的标头电子邮件键/值对。覆盖之前由通知实现设置的任何标头。
- 类型
-
array
3.1.38. .spec.receivers[].emailConfigs[].headers[]
- 描述
- KeyValue 定义一个(key, value) tuple。
- 类型
-
object
- 必填
-
key
-
value
-
属性 | 类型 | 描述 |
---|---|---|
|
| 元组的密钥。 |
|
| 元组的值。 |
3.1.39. .spec.receivers[].emailConfigs[].tlsConfig
- 描述
- TLS 配置
- 类型
-
object
属性 | 类型 | 描述 |
---|---|---|
|
| 验证服务器证书时使用的证书颁发机构。 |
|
| 执行 client-authentication 时要出现的客户端证书。 |
|
| 禁用目标证书验证。 |
|
| 包含目标客户端密钥文件的 secret。 |
|
| 用于验证目标的主机名。 |
3.1.40. .spec.receivers[].emailConfigs[].tlsConfig.ca
- 描述
- 验证服务器证书时使用的证书颁发机构。
- 类型
-
object
属性 | 类型 | 描述 |
---|---|---|
|
| 包含用于目标的数据的 ConfigMap。 |
|
| 包含用于目标的数据的 secret。 |
3.1.41. .spec.receivers[].emailConfigs[].tlsConfig.ca.configMap
- 描述
- 包含用于目标的数据的 ConfigMap。
- 类型
-
object
- 必填
-
key
-
属性 | 类型 | 描述 |
---|---|---|
|
| 要选择的密钥。 |
|
|
引用的名称。有效地需要此字段,但因为允许向后兼容为空。这里具有空值的此类实例几乎是错误的。TODO:添加其他有用的字段。apiVersion、kind、uid?更多信息: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names TODO: 当 controller-gen 不需要 https://github.com/kubernetes-sigs/kubebuilder/issues/3896 时,Drop |
|
| 指定是否必须定义 ConfigMap 还是其键 |
3.1.42. .spec.receivers[].emailConfigs[].tlsConfig.ca.secret
- 描述
- 包含用于目标的数据的 secret。
- 类型
-
object
- 必填
-
key
-
属性 | 类型 | 描述 |
---|---|---|
|
| 要从中选择的 secret 的密钥。必须是一个有效的 secret 密钥。 |
|
|
引用的名称。有效地需要此字段,但因为允许向后兼容为空。这里具有空值的此类实例几乎是错误的。TODO:添加其他有用的字段。apiVersion、kind、uid?更多信息: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names TODO: 当 controller-gen 不需要 https://github.com/kubernetes-sigs/kubebuilder/issues/3896 时,Drop |
|
| 指定是否需要定义 Secret 还是其密钥 |
3.1.43. .spec.receivers[].emailConfigs[].tlsConfig.cert
- 描述
- 执行 client-authentication 时要出现的客户端证书。
- 类型
-
object
属性 | 类型 | 描述 |
---|---|---|
|
| 包含用于目标的数据的 ConfigMap。 |
|
| 包含用于目标的数据的 secret。 |
3.1.44. .spec.receivers[].emailConfigs[].tlsConfig.cert.configMap
- 描述
- 包含用于目标的数据的 ConfigMap。
- 类型
-
object
- 必填
-
key
-
属性 | 类型 | 描述 |
---|---|---|
|
| 要选择的密钥。 |
|
|
引用的名称。有效地需要此字段,但因为允许向后兼容为空。这里具有空值的此类实例几乎是错误的。TODO:添加其他有用的字段。apiVersion、kind、uid?更多信息: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names TODO: 当 controller-gen 不需要 https://github.com/kubernetes-sigs/kubebuilder/issues/3896 时,Drop |
|
| 指定是否必须定义 ConfigMap 还是其键 |
3.1.45. .spec.receivers[].emailConfigs[].tlsConfig.cert.secret
- 描述
- 包含用于目标的数据的 secret。
- 类型
-
object
- 必填
-
key
-
属性 | 类型 | 描述 |
---|---|---|
|
| 要从中选择的 secret 的密钥。必须是一个有效的 secret 密钥。 |
|
|
引用的名称。有效地需要此字段,但因为允许向后兼容为空。这里具有空值的此类实例几乎是错误的。TODO:添加其他有用的字段。apiVersion、kind、uid?更多信息: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names TODO: 当 controller-gen 不需要 https://github.com/kubernetes-sigs/kubebuilder/issues/3896 时,Drop |
|
| 指定是否需要定义 Secret 还是其密钥 |
3.1.46. .spec.receivers[].emailConfigs[].tlsConfig.keySecret
- 描述
- 包含目标客户端密钥文件的 secret。
- 类型
-
object
- 必填
-
key
-
属性 | 类型 | 描述 |
---|---|---|
|
| 要从中选择的 secret 的密钥。必须是一个有效的 secret 密钥。 |
|
|
引用的名称。有效地需要此字段,但因为允许向后兼容为空。这里具有空值的此类实例几乎是错误的。TODO:添加其他有用的字段。apiVersion、kind、uid?更多信息: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names TODO: 当 controller-gen 不需要 https://github.com/kubernetes-sigs/kubebuilder/issues/3896 时,Drop |
|
| 指定是否需要定义 Secret 还是其密钥 |
3.1.47. .spec.receivers[].msteamsConfigs
- 描述
- MSTeams 配置列表。它需要 Alertmanager >= 0.26.0。
- 类型
-
数组
3.1.48. .spec.receivers[].msteamsConfigs[]
- 描述
- MSTeamsConfig 通过 Microsoft Teams 配置通知。它需要 Alertmanager >= 0.26.0。
- 类型
-
object
- 必填
-
webhookUrl
-
属性 | 类型 | 描述 |
---|---|---|
|
| HTTP 客户端配置。 |
|
| 是否通知已解析的警报。 |
|
| 消息摘要模板.它需要 Alertmanager >= 0.27.0。 |
|
| 消息正文模板. |
|
| 消息标题模板. |
|
| MSTeams Webhook URL。 |
3.1.49. .spec.receivers[].msteamsConfigs[].httpConfig
- 描述
- HTTP 客户端配置。
- 类型
-
object
属性 | 类型 | 描述 |
---|---|---|
|
| 客户端的授权标头配置。这与 BasicAuth 相互排斥,且只能从 Alertmanager v0.22+ 开始。 |
|
| 客户端的 basicAuth。这是与授权相互排斥的。如果定义了这两者,则 BasicAuth 优先。 |
|
| 包含客户端用于身份验证的 bearer 令牌的机密密钥。secret 需要与 AlertmanagerConfig 对象位于同一个命名空间中,并可以被 Prometheus Operator 访问。 |
|
| FollowRedirects 指定客户端是否应该遵循 HTTP 3xx 重定向。 |
|
| 用于获取目标令牌的 OAuth2 客户端凭据。 |
|
| 可选的代理 URL。 |
|
| 客户端的 TLS 配置。 |
3.1.50. .spec.receivers[].msteamsConfigs[].httpConfig.authorization
- 描述
- 客户端的授权标头配置。这与 BasicAuth 相互排斥,且只能从 Alertmanager v0.22+ 开始。
- 类型
-
object
属性 | 类型 | 描述 |
---|---|---|
|
| 选择命名空间中包含用于身份验证的凭证的 Secret 的键。 |
|
| 定义身份验证类型。该值不区分大小写。 "basic"不是受支持的值。 默认:"Bearer" |
3.1.51. .spec.receivers[].msteamsConfigs[].httpConfig.authorization.credentials
- 描述
- 选择命名空间中包含用于身份验证的凭证的 Secret 的键。
- 类型
-
object
- 必填
-
key
-
属性 | 类型 | 描述 |
---|---|---|
|
| 要从中选择的 secret 的密钥。必须是一个有效的 secret 密钥。 |
|
|
引用的名称。有效地需要此字段,但因为允许向后兼容为空。这里具有空值的此类实例几乎是错误的。TODO:添加其他有用的字段。apiVersion、kind、uid?更多信息: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names TODO: 当 controller-gen 不需要 https://github.com/kubernetes-sigs/kubebuilder/issues/3896 时,Drop |
|
| 指定是否需要定义 Secret 还是其密钥 |
3.1.52. .spec.receivers[].msteamsConfigs[].httpConfig.basicAuth
- 描述
- 客户端的 basicAuth。这是与授权相互排斥的。如果定义了这两者,则 BasicAuth 优先。
- 类型
-
object
属性 | 类型 | 描述 |
---|---|---|
|
|
|
|
|
|
3.1.53. .spec.receivers[].msteamsConfigs[].httpConfig.basicAuth.password
- 描述
-
password
指定包含用于身份验证的密码的 Secret 的键。 - 类型
-
object
- 必填
-
key
-
属性 | 类型 | 描述 |
---|---|---|
|
| 要从中选择的 secret 的密钥。必须是一个有效的 secret 密钥。 |
|
|
引用的名称。有效地需要此字段,但因为允许向后兼容为空。这里具有空值的此类实例几乎是错误的。TODO:添加其他有用的字段。apiVersion、kind、uid?更多信息: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names TODO: 当 controller-gen 不需要 https://github.com/kubernetes-sigs/kubebuilder/issues/3896 时,Drop |
|
| 指定是否需要定义 Secret 还是其密钥 |
3.1.54. .spec.receivers[].msteamsConfigs[].httpConfig.basicAuth.username
- 描述
-
username
指定包含用于身份验证的用户名的 Secret 的键。 - 类型
-
object
- 必填
-
key
-
属性 | 类型 | 描述 |
---|---|---|
|
| 要从中选择的 secret 的密钥。必须是一个有效的 secret 密钥。 |
|
|
引用的名称。有效地需要此字段,但因为允许向后兼容为空。这里具有空值的此类实例几乎是错误的。TODO:添加其他有用的字段。apiVersion、kind、uid?更多信息: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names TODO: 当 controller-gen 不需要 https://github.com/kubernetes-sigs/kubebuilder/issues/3896 时,Drop |
|
| 指定是否需要定义 Secret 还是其密钥 |
3.1.55. .spec.receivers[].msteamsConfigs[].httpConfig.bearerTokenSecret
- 描述
- 包含客户端用于身份验证的 bearer 令牌的机密密钥。secret 需要与 AlertmanagerConfig 对象位于同一个命名空间中,并可以被 Prometheus Operator 访问。
- 类型
-
object
- 必填
-
key
-
名称
-
属性 | 类型 | 描述 |
---|---|---|
|
| 要从中选择的 secret 的密钥。必须是一个有效的 secret 密钥。 |
|
| 要选择的对象命名空间中的 secret 名称。 |
3.1.56. .spec.receivers[].msteamsConfigs[].httpConfig.oauth2
- 描述
- 用于获取目标令牌的 OAuth2 客户端凭据。
- 类型
-
object
- 必填
-
clientId
-
clientSecret
-
tokenUrl
-
属性 | 类型 | 描述 |
---|---|---|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
3.1.57. .spec.receivers[].msteamsConfigs[].httpConfig.oauth2.clientId
- 描述
-
clientId
指定包含 OAuth2 客户端 ID 的 Secret 或 ConfigMap 的键。 - 类型
-
object
属性 | 类型 | 描述 |
---|---|---|
|
| 包含用于目标的数据的 ConfigMap。 |
|
| 包含用于目标的数据的 secret。 |
3.1.58. .spec.receivers[].msteamsConfigs[].httpConfig.oauth2.clientId.configMap
- 描述
- 包含用于目标的数据的 ConfigMap。
- 类型
-
object
- 必填
-
key
-
属性 | 类型 | 描述 |
---|---|---|
|
| 要选择的密钥。 |
|
|
引用的名称。有效地需要此字段,但因为允许向后兼容为空。这里具有空值的此类实例几乎是错误的。TODO:添加其他有用的字段。apiVersion、kind、uid?更多信息: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names TODO: 当 controller-gen 不需要 https://github.com/kubernetes-sigs/kubebuilder/issues/3896 时,Drop |
|
| 指定是否必须定义 ConfigMap 还是其键 |
3.1.59. .spec.receivers[].msteamsConfigs[].httpConfig.oauth2.clientId.secret
- 描述
- 包含用于目标的数据的 secret。
- 类型
-
object
- 必填
-
key
-
属性 | 类型 | 描述 |
---|---|---|
|
| 要从中选择的 secret 的密钥。必须是一个有效的 secret 密钥。 |
|
|
引用的名称。有效地需要此字段,但因为允许向后兼容为空。这里具有空值的此类实例几乎是错误的。TODO:添加其他有用的字段。apiVersion、kind、uid?更多信息: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names TODO: 当 controller-gen 不需要 https://github.com/kubernetes-sigs/kubebuilder/issues/3896 时,Drop |
|
| 指定是否需要定义 Secret 还是其密钥 |
3.1.60. .spec.receivers[].msteamsConfigs[].httpConfig.oauth2.clientSecret
- 描述
-
clientSecret
指定包含 OAuth2 客户端 secret 的 Secret 的密钥。 - 类型
-
object
- 必填
-
key
-
属性 | 类型 | 描述 |
---|---|---|
|
| 要从中选择的 secret 的密钥。必须是一个有效的 secret 密钥。 |
|
|
引用的名称。有效地需要此字段,但因为允许向后兼容为空。这里具有空值的此类实例几乎是错误的。TODO:添加其他有用的字段。apiVersion、kind、uid?更多信息: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names TODO: 当 controller-gen 不需要 https://github.com/kubernetes-sigs/kubebuilder/issues/3896 时,Drop |
|
| 指定是否需要定义 Secret 还是其密钥 |
3.1.61. .spec.receivers[].msteamsConfigs[].httpConfig.tlsConfig
- 描述
- 客户端的 TLS 配置。
- 类型
-
object
属性 | 类型 | 描述 |
---|---|---|
|
| 验证服务器证书时使用的证书颁发机构。 |
|
| 执行 client-authentication 时要出现的客户端证书。 |
|
| 禁用目标证书验证。 |
|
| 包含目标客户端密钥文件的 secret。 |
|
| 用于验证目标的主机名。 |
3.1.62. .spec.receivers[].msteamsConfigs[].httpConfig.tlsConfig.ca
- 描述
- 验证服务器证书时使用的证书颁发机构。
- 类型
-
object
属性 | 类型 | 描述 |
---|---|---|
|
| 包含用于目标的数据的 ConfigMap。 |
|
| 包含用于目标的数据的 secret。 |
3.1.63. .spec.receivers[].msteamsConfigs[].httpConfig.tlsConfig.ca.configMap
- 描述
- 包含用于目标的数据的 ConfigMap。
- 类型
-
object
- 必填
-
key
-
属性 | 类型 | 描述 |
---|---|---|
|
| 要选择的密钥。 |
|
|
引用的名称。有效地需要此字段,但因为允许向后兼容为空。这里具有空值的此类实例几乎是错误的。TODO:添加其他有用的字段。apiVersion、kind、uid?更多信息: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names TODO: 当 controller-gen 不需要 https://github.com/kubernetes-sigs/kubebuilder/issues/3896 时,Drop |
|
| 指定是否必须定义 ConfigMap 还是其键 |
3.1.64. .spec.receivers[].msteamsConfigs[].httpConfig.tlsConfig.ca.secret
- 描述
- 包含用于目标的数据的 secret。
- 类型
-
object
- 必填
-
key
-
属性 | 类型 | 描述 |
---|---|---|
|
| 要从中选择的 secret 的密钥。必须是一个有效的 secret 密钥。 |
|
|
引用的名称。有效地需要此字段,但因为允许向后兼容为空。这里具有空值的此类实例几乎是错误的。TODO:添加其他有用的字段。apiVersion、kind、uid?更多信息: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names TODO: 当 controller-gen 不需要 https://github.com/kubernetes-sigs/kubebuilder/issues/3896 时,Drop |
|
| 指定是否需要定义 Secret 还是其密钥 |
3.1.65. .spec.receivers[].msteamsConfigs[].httpConfig.tlsConfig.cert
- 描述
- 执行 client-authentication 时要出现的客户端证书。
- 类型
-
object
属性 | 类型 | 描述 |
---|---|---|
|
| 包含用于目标的数据的 ConfigMap。 |
|
| 包含用于目标的数据的 secret。 |
3.1.66. .spec.receivers[].msteamsConfigs[].httpConfig.tlsConfig.cert.configMap
- 描述
- 包含用于目标的数据的 ConfigMap。
- 类型
-
object
- 必填
-
key
-
属性 | 类型 | 描述 |
---|---|---|
|
| 要选择的密钥。 |
|
|
引用的名称。有效地需要此字段,但因为允许向后兼容为空。这里具有空值的此类实例几乎是错误的。TODO:添加其他有用的字段。apiVersion、kind、uid?更多信息: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names TODO: 当 controller-gen 不需要 https://github.com/kubernetes-sigs/kubebuilder/issues/3896 时,Drop |
|
| 指定是否必须定义 ConfigMap 还是其键 |
3.1.67. .spec.receivers[].msteamsConfigs[].httpConfig.tlsConfig.cert.secret
- 描述
- 包含用于目标的数据的 secret。
- 类型
-
object
- 必填
-
key
-
属性 | 类型 | 描述 |
---|---|---|
|
| 要从中选择的 secret 的密钥。必须是一个有效的 secret 密钥。 |
|
|
引用的名称。有效地需要此字段,但因为允许向后兼容为空。这里具有空值的此类实例几乎是错误的。TODO:添加其他有用的字段。apiVersion、kind、uid?更多信息: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names TODO: 当 controller-gen 不需要 https://github.com/kubernetes-sigs/kubebuilder/issues/3896 时,Drop |
|
| 指定是否需要定义 Secret 还是其密钥 |
3.1.68. .spec.receivers[].msteamsConfigs[].httpConfig.tlsConfig.keySecret
- 描述
- 包含目标客户端密钥文件的 secret。
- 类型
-
object
- 必填
-
key
-
属性 | 类型 | 描述 |
---|---|---|
|
| 要从中选择的 secret 的密钥。必须是一个有效的 secret 密钥。 |
|
|
引用的名称。有效地需要此字段,但因为允许向后兼容为空。这里具有空值的此类实例几乎是错误的。TODO:添加其他有用的字段。apiVersion、kind、uid?更多信息: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names TODO: 当 controller-gen 不需要 https://github.com/kubernetes-sigs/kubebuilder/issues/3896 时,Drop |
|
| 指定是否需要定义 Secret 还是其密钥 |
3.1.69. .spec.receivers[].msteamsConfigs[].webhookUrl
- 描述
- MSTeams Webhook URL。
- 类型
-
object
- 必填
-
key
-
属性 | 类型 | 描述 |
---|---|---|
|
| 要从中选择的 secret 的密钥。必须是一个有效的 secret 密钥。 |
|
|
引用的名称。有效地需要此字段,但因为允许向后兼容为空。这里具有空值的此类实例几乎是错误的。TODO:添加其他有用的字段。apiVersion、kind、uid?更多信息: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names TODO: 当 controller-gen 不需要 https://github.com/kubernetes-sigs/kubebuilder/issues/3896 时,Drop |
|
| 指定是否需要定义 Secret 还是其密钥 |
3.1.70. .spec.receivers[].opsgenieConfigs
- 描述
- OpsGenie 配置列表。
- 类型
-
array
3.1.71. .spec.receivers[].opsgenieConfigs[]
- 描述
- OpsGenieConfig 通过 OpsGenie 配置通知。See https://prometheus.io/docs/alerting/latest/configuration/#opsgenie_config
- 类型
-
object
属性 | 类型 | 描述 |
---|---|---|
|
| 为警报可用的以逗号分隔的操作列表。 |
|
| 包含 OpsGenie API 密钥的机密密钥。secret 需要与 AlertmanagerConfig 对象位于同一个命名空间中,并可以被 Prometheus Operator 访问。 |
|
| 将 OpsGenie API 请求发送到的 URL。 |
|
| 事件的描述。 |
|
| 一组任意键/值对,提供了有关该事件的更多详情。 |
|
| KeyValue 定义一个(key, value) tuple。 |
|
| 可以用来指定与哪个域警报相关的可选字段。 |
|
| HTTP 客户端配置。 |
|
| 仅限 130 个字符的警报文本。 |
|
| 其他警报备注。 |
|
| 警报的优先级级别。可能的值有 P1、P2、P3、P4 和 P5。 |
|
| 负责通知的响应者列表。 |
|
|
OpsGenieConfigResponder defines a responder to an incident.必须定义 |
|
| 是否要通知已解析的警报。 |
|
| 回到通知的发送者。 |
|
| 附加到通知的以逗号分隔的标签列表。 |
3.1.72. .spec.receivers[].opsgenieConfigs[].apiKey
- 描述
- 包含 OpsGenie API 密钥的机密密钥。secret 需要与 AlertmanagerConfig 对象位于同一个命名空间中,并可以被 Prometheus Operator 访问。
- 类型
-
object
- 必填
-
key
-
名称
-
属性 | 类型 | 描述 |
---|---|---|
|
| 要从中选择的 secret 的密钥。必须是一个有效的 secret 密钥。 |
|
| 要选择的对象命名空间中的 secret 名称。 |
3.1.73. .spec.receivers[].opsgenieConfigs[].details
- 描述
- 一组任意键/值对,提供了有关该事件的更多详情。
- 类型
-
array
3.1.74. .spec.receivers[].opsgenieConfigs[].details[]
- 描述
- KeyValue 定义一个(key, value) tuple。
- 类型
-
object
- 必填
-
key
-
value
-
属性 | 类型 | 描述 |
---|---|---|
|
| 元组的密钥。 |
|
| 元组的值。 |
3.1.75. .spec.receivers[].opsgenieConfigs[].httpConfig
- 描述
- HTTP 客户端配置。
- 类型
-
object
属性 | 类型 | 描述 |
---|---|---|
|
| 客户端的授权标头配置。这与 BasicAuth 相互排斥,且只能从 Alertmanager v0.22+ 开始。 |
|
| 客户端的 basicAuth。这是与授权相互排斥的。如果定义了这两者,则 BasicAuth 优先。 |
|
| 包含客户端用于身份验证的 bearer 令牌的机密密钥。secret 需要与 AlertmanagerConfig 对象位于同一个命名空间中,并可以被 Prometheus Operator 访问。 |
|
| FollowRedirects 指定客户端是否应该遵循 HTTP 3xx 重定向。 |
|
| 用于获取目标令牌的 OAuth2 客户端凭据。 |
|
| 可选的代理 URL。 |
|
| 客户端的 TLS 配置。 |
3.1.76. .spec.receivers[].opsgenieConfigs[].httpConfig.authorization
- 描述
- 客户端的授权标头配置。这与 BasicAuth 相互排斥,且只能从 Alertmanager v0.22+ 开始。
- 类型
-
object
属性 | 类型 | 描述 |
---|---|---|
|
| 选择命名空间中包含用于身份验证的凭证的 Secret 的键。 |
|
| 定义身份验证类型。该值不区分大小写。 "basic"不是受支持的值。 默认:"Bearer" |
3.1.77. .spec.receivers[].opsgenieConfigs[].httpConfig.authorization.credentials
- 描述
- 选择命名空间中包含用于身份验证的凭证的 Secret 的键。
- 类型
-
object
- 必填
-
key
-
属性 | 类型 | 描述 |
---|---|---|
|
| 要从中选择的 secret 的密钥。必须是一个有效的 secret 密钥。 |
|
|
引用的名称。有效地需要此字段,但因为允许向后兼容为空。这里具有空值的此类实例几乎是错误的。TODO:添加其他有用的字段。apiVersion、kind、uid?更多信息: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names TODO: 当 controller-gen 不需要 https://github.com/kubernetes-sigs/kubebuilder/issues/3896 时,Drop |
|
| 指定是否需要定义 Secret 还是其密钥 |
3.1.78. .spec.receivers[].opsgenieConfigs[].httpConfig.basicAuth
- 描述
- 客户端的 basicAuth。这是与授权相互排斥的。如果定义了这两者,则 BasicAuth 优先。
- 类型
-
object
属性 | 类型 | 描述 |
---|---|---|
|
|
|
|
|
|
3.1.79. .spec.receivers[].opsgenieConfigs[].httpConfig.basicAuth.password
- 描述
-
password
指定包含用于身份验证的密码的 Secret 的键。 - 类型
-
object
- 必填
-
key
-
属性 | 类型 | 描述 |
---|---|---|
|
| 要从中选择的 secret 的密钥。必须是一个有效的 secret 密钥。 |
|
|
引用的名称。有效地需要此字段,但因为允许向后兼容为空。这里具有空值的此类实例几乎是错误的。TODO:添加其他有用的字段。apiVersion、kind、uid?更多信息: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names TODO: 当 controller-gen 不需要 https://github.com/kubernetes-sigs/kubebuilder/issues/3896 时,Drop |
|
| 指定是否需要定义 Secret 还是其密钥 |
3.1.80. .spec.receivers[].opsgenieConfigs[].httpConfig.basicAuth.username
- 描述
-
username
指定包含用于身份验证的用户名的 Secret 的键。 - 类型
-
object
- 必填
-
key
-
属性 | 类型 | 描述 |
---|---|---|
|
| 要从中选择的 secret 的密钥。必须是一个有效的 secret 密钥。 |
|
|
引用的名称。有效地需要此字段,但因为允许向后兼容为空。这里具有空值的此类实例几乎是错误的。TODO:添加其他有用的字段。apiVersion、kind、uid?更多信息: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names TODO: 当 controller-gen 不需要 https://github.com/kubernetes-sigs/kubebuilder/issues/3896 时,Drop |
|
| 指定是否需要定义 Secret 还是其密钥 |
3.1.81. .spec.receivers[].opsgenieConfigs[].httpConfig.bearerTokenSecret
- 描述
- 包含客户端用于身份验证的 bearer 令牌的机密密钥。secret 需要与 AlertmanagerConfig 对象位于同一个命名空间中,并可以被 Prometheus Operator 访问。
- 类型
-
object
- 必填
-
key
-
名称
-
属性 | 类型 | 描述 |
---|---|---|
|
| 要从中选择的 secret 的密钥。必须是一个有效的 secret 密钥。 |
|
| 要选择的对象命名空间中的 secret 名称。 |
3.1.82. .spec.receivers[].opsgenieConfigs[].httpConfig.oauth2
- 描述
- 用于获取目标令牌的 OAuth2 客户端凭据。
- 类型
-
object
- 必填
-
clientId
-
clientSecret
-
tokenUrl
-
属性 | 类型 | 描述 |
---|---|---|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
3.1.83. .spec.receivers[].opsgenieConfigs[].httpConfig.oauth2.clientId
- 描述
-
clientId
指定包含 OAuth2 客户端 ID 的 Secret 或 ConfigMap 的键。 - 类型
-
object
属性 | 类型 | 描述 |
---|---|---|
|
| 包含用于目标的数据的 ConfigMap。 |
|
| 包含用于目标的数据的 secret。 |
3.1.84. .spec.receivers[].opsgenieConfigs[].httpConfig.oauth2.clientId.configMap
- 描述
- 包含用于目标的数据的 ConfigMap。
- 类型
-
object
- 必填
-
key
-
属性 | 类型 | 描述 |
---|---|---|
|
| 要选择的密钥。 |
|
|
引用的名称。有效地需要此字段,但因为允许向后兼容为空。这里具有空值的此类实例几乎是错误的。TODO:添加其他有用的字段。apiVersion、kind、uid?更多信息: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names TODO: 当 controller-gen 不需要 https://github.com/kubernetes-sigs/kubebuilder/issues/3896 时,Drop |
|
| 指定是否必须定义 ConfigMap 还是其键 |
3.1.85. .spec.receivers[].opsgenieConfigs[].httpConfig.oauth2.clientId.secret
- 描述
- 包含用于目标的数据的 secret。
- 类型
-
object
- 必填
-
key
-
属性 | 类型 | 描述 |
---|---|---|
|
| 要从中选择的 secret 的密钥。必须是一个有效的 secret 密钥。 |
|
|
引用的名称。有效地需要此字段,但因为允许向后兼容为空。这里具有空值的此类实例几乎是错误的。TODO:添加其他有用的字段。apiVersion、kind、uid?更多信息: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names TODO: 当 controller-gen 不需要 https://github.com/kubernetes-sigs/kubebuilder/issues/3896 时,Drop |
|
| 指定是否需要定义 Secret 还是其密钥 |
3.1.86. .spec.receivers[].opsgenieConfigs[].httpConfig.oauth2.clientSecret
- 描述
-
clientSecret
指定包含 OAuth2 客户端 secret 的 Secret 的密钥。 - 类型
-
object
- 必填
-
key
-
属性 | 类型 | 描述 |
---|---|---|
|
| 要从中选择的 secret 的密钥。必须是一个有效的 secret 密钥。 |
|
|
引用的名称。有效地需要此字段,但因为允许向后兼容为空。这里具有空值的此类实例几乎是错误的。TODO:添加其他有用的字段。apiVersion、kind、uid?更多信息: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names TODO: 当 controller-gen 不需要 https://github.com/kubernetes-sigs/kubebuilder/issues/3896 时,Drop |
|
| 指定是否需要定义 Secret 还是其密钥 |
3.1.87. .spec.receivers[].opsgenieConfigs[].httpConfig.tlsConfig
- 描述
- 客户端的 TLS 配置。
- 类型
-
object
属性 | 类型 | 描述 |
---|---|---|
|
| 验证服务器证书时使用的证书颁发机构。 |
|
| 执行 client-authentication 时要出现的客户端证书。 |
|
| 禁用目标证书验证。 |
|
| 包含目标客户端密钥文件的 secret。 |
|
| 用于验证目标的主机名。 |
3.1.88. .spec.receivers[].opsgenieConfigs[].httpConfig.tlsConfig.ca
- 描述
- 验证服务器证书时使用的证书颁发机构。
- 类型
-
object
属性 | 类型 | 描述 |
---|---|---|
|
| 包含用于目标的数据的 ConfigMap。 |
|
| 包含用于目标的数据的 secret。 |
3.1.89. .spec.receivers[].opsgenieConfigs[].httpConfig.tlsConfig.ca.configMap
- 描述
- 包含用于目标的数据的 ConfigMap。
- 类型
-
object
- 必填
-
key
-
属性 | 类型 | 描述 |
---|---|---|
|
| 要选择的密钥。 |
|
|
引用的名称。有效地需要此字段,但因为允许向后兼容为空。这里具有空值的此类实例几乎是错误的。TODO:添加其他有用的字段。apiVersion、kind、uid?更多信息: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names TODO: 当 controller-gen 不需要 https://github.com/kubernetes-sigs/kubebuilder/issues/3896 时,Drop |
|
| 指定是否必须定义 ConfigMap 还是其键 |
3.1.90. .spec.receivers[].opsgenieConfigs[].httpConfig.tlsConfig.ca.secret
- 描述
- 包含用于目标的数据的 secret。
- 类型
-
object
- 必填
-
key
-
属性 | 类型 | 描述 |
---|---|---|
|
| 要从中选择的 secret 的密钥。必须是一个有效的 secret 密钥。 |
|
|
引用的名称。有效地需要此字段,但因为允许向后兼容为空。这里具有空值的此类实例几乎是错误的。TODO:添加其他有用的字段。apiVersion、kind、uid?更多信息: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names TODO: 当 controller-gen 不需要 https://github.com/kubernetes-sigs/kubebuilder/issues/3896 时,Drop |
|
| 指定是否需要定义 Secret 还是其密钥 |
3.1.91. .spec.receivers[].opsgenieConfigs[].httpConfig.tlsConfig.cert
- 描述
- 执行 client-authentication 时要出现的客户端证书。
- 类型
-
object
属性 | 类型 | 描述 |
---|---|---|
|
| 包含用于目标的数据的 ConfigMap。 |
|
| 包含用于目标的数据的 secret。 |
3.1.92. .spec.receivers[].opsgenieConfigs[].httpConfig.tlsConfig.cert.configMap
- 描述
- 包含用于目标的数据的 ConfigMap。
- 类型
-
object
- 必填
-
key
-
属性 | 类型 | 描述 |
---|---|---|
|
| 要选择的密钥。 |
|
|
引用的名称。有效地需要此字段,但因为允许向后兼容为空。这里具有空值的此类实例几乎是错误的。TODO:添加其他有用的字段。apiVersion、kind、uid?更多信息: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names TODO: 当 controller-gen 不需要 https://github.com/kubernetes-sigs/kubebuilder/issues/3896 时,Drop |
|
| 指定是否必须定义 ConfigMap 还是其键 |
3.1.93. .spec.receivers[].opsgenieConfigs[].httpConfig.tlsConfig.cert.secret
- 描述
- 包含用于目标的数据的 secret。
- 类型
-
object
- 必填
-
key
-
属性 | 类型 | 描述 |
---|---|---|
|
| 要从中选择的 secret 的密钥。必须是一个有效的 secret 密钥。 |
|
|
引用的名称。有效地需要此字段,但因为允许向后兼容为空。这里具有空值的此类实例几乎是错误的。TODO:添加其他有用的字段。apiVersion、kind、uid?更多信息: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names TODO: 当 controller-gen 不需要 https://github.com/kubernetes-sigs/kubebuilder/issues/3896 时,Drop |
|
| 指定是否需要定义 Secret 还是其密钥 |
3.1.94. .spec.receivers[].opsgenieConfigs[].httpConfig.tlsConfig.keySecret
- 描述
- 包含目标客户端密钥文件的 secret。
- 类型
-
object
- 必填
-
key
-
属性 | 类型 | 描述 |
---|---|---|
|
| 要从中选择的 secret 的密钥。必须是一个有效的 secret 密钥。 |
|
|
引用的名称。有效地需要此字段,但因为允许向后兼容为空。这里具有空值的此类实例几乎是错误的。TODO:添加其他有用的字段。apiVersion、kind、uid?更多信息: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names TODO: 当 controller-gen 不需要 https://github.com/kubernetes-sigs/kubebuilder/issues/3896 时,Drop |
|
| 指定是否需要定义 Secret 还是其密钥 |
3.1.95. .spec.receivers[].opsgenieConfigs[].responders
- 描述
- 负责通知的响应者列表。
- 类型
-
array
3.1.96. .spec.receivers[].opsgenieConfigs[].responders[]
- 描述
-
OpsGenieConfigResponder defines a responder to an incident.必须定义
id
、name
或username
之一。 - 类型
-
object
- 必填
-
type
-
属性 | 类型 | 描述 |
---|---|---|
|
| 响应者 ID。 |
|
| 响应者的名称。 |
|
| 响应者的类型。 |
|
| 响应者的用户名。 |
3.1.97. .spec.receivers[].pagerdutyConfigs
- 描述
- PagerDuty 配置列表。
- 类型
-
array
3.1.98. .spec.receivers[].pagerdutyConfigs[]
- 描述
- PagerDutyConfig 通过 PagerDuty 配置通知。See https://prometheus.io/docs/alerting/latest/configuration/#pagerduty_config
- 类型
-
object
属性 | 类型 | 描述 |
---|---|---|
|
| 事件的 class/type。 |
|
| 客户端识别. |
|
| 返回到通知的发送者。 |
|
| 有问题的受影响系统的部分或组件。 |
|
| 事件的描述。 |
|
| 提供有关事件的更多详情的任意键/值对。 |
|
| KeyValue 定义一个(key, value) tuple。 |
|
| 集群或源分组。 |
|
| HTTP 客户端配置。 |
|
| 要附加的镜像详情列表,提供了有关事件的更多详情。 |
|
| PagerDutyImageConfig 将镜像附加到事件 |
|
| 要附加的链接详情列表,提供了有关事件的更多详情。 |
|
| PagerDutyLinkConfig 会附加一个事件的文本链接 |
|
|
包含 PagerDuty 集成密钥的 secret 密钥(使用 Events API v2 时)。需要定义此字段或 |
|
| 是否要通知已解析的警报。 |
|
|
包含 PagerDuty 服务密钥的 secret 密钥(使用集成类型 "Prometheus" 时)。需要定义此字段或 |
|
| 事件严重性。 |
|
| 受影响系统的唯一位置。 |
|
| 发送请求的 URL。 |
3.1.99. .spec.receivers[].pagerdutyConfigs[].details
- 描述
- 提供有关事件的更多详情的任意键/值对。
- 类型
-
array
3.1.100. .spec.receivers[].pagerdutyConfigs[].details[]
- 描述
- KeyValue 定义一个(key, value) tuple。
- 类型
-
object
- 必填
-
key
-
value
-
属性 | 类型 | 描述 |
---|---|---|
|
| 元组的密钥。 |
|
| 元组的值。 |
3.1.101. .spec.receivers[].pagerdutyConfigs[].httpConfig
- 描述
- HTTP 客户端配置。
- 类型
-
object
属性 | 类型 | 描述 |
---|---|---|
|
| 客户端的授权标头配置。这与 BasicAuth 相互排斥,且只能从 Alertmanager v0.22+ 开始。 |
|
| 客户端的 basicAuth。这是与授权相互排斥的。如果定义了这两者,则 BasicAuth 优先。 |
|
| 包含客户端用于身份验证的 bearer 令牌的机密密钥。secret 需要与 AlertmanagerConfig 对象位于同一个命名空间中,并可以被 Prometheus Operator 访问。 |
|
| FollowRedirects 指定客户端是否应该遵循 HTTP 3xx 重定向。 |
|
| 用于获取目标令牌的 OAuth2 客户端凭据。 |
|
| 可选的代理 URL。 |
|
| 客户端的 TLS 配置。 |
3.1.102. .spec.receivers[].pagerdutyConfigs[].httpConfig.authorization
- 描述
- 客户端的授权标头配置。这与 BasicAuth 相互排斥,且只能从 Alertmanager v0.22+ 开始。
- 类型
-
object
属性 | 类型 | 描述 |
---|---|---|
|
| 选择命名空间中包含用于身份验证的凭证的 Secret 的键。 |
|
| 定义身份验证类型。该值不区分大小写。 "basic"不是受支持的值。 默认:"Bearer" |
3.1.103. .spec.receivers[].pagerdutyConfigs[].httpConfig.authorization.credentials
- 描述
- 选择命名空间中包含用于身份验证的凭证的 Secret 的键。
- 类型
-
object
- 必填
-
key
-
属性 | 类型 | 描述 |
---|---|---|
|
| 要从中选择的 secret 的密钥。必须是一个有效的 secret 密钥。 |
|
|
引用的名称。有效地需要此字段,但因为允许向后兼容为空。这里具有空值的此类实例几乎是错误的。TODO:添加其他有用的字段。apiVersion、kind、uid?更多信息: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names TODO: 当 controller-gen 不需要 https://github.com/kubernetes-sigs/kubebuilder/issues/3896 时,Drop |
|
| 指定是否需要定义 Secret 还是其密钥 |
3.1.104. .spec.receivers[].pagerdutyConfigs[].httpConfig.basicAuth
- 描述
- 客户端的 basicAuth。这是与授权相互排斥的。如果定义了这两者,则 BasicAuth 优先。
- 类型
-
object
属性 | 类型 | 描述 |
---|---|---|
|
|
|
|
|
|
3.1.105. .spec.receivers[].pagerdutyConfigs[].httpConfig.basicAuth.password
- 描述
-
password
指定包含用于身份验证的密码的 Secret 的键。 - 类型
-
object
- 必填
-
key
-
属性 | 类型 | 描述 |
---|---|---|
|
| 要从中选择的 secret 的密钥。必须是一个有效的 secret 密钥。 |
|
|
引用的名称。有效地需要此字段,但因为允许向后兼容为空。这里具有空值的此类实例几乎是错误的。TODO:添加其他有用的字段。apiVersion、kind、uid?更多信息: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names TODO: 当 controller-gen 不需要 https://github.com/kubernetes-sigs/kubebuilder/issues/3896 时,Drop |
|
| 指定是否需要定义 Secret 还是其密钥 |
3.1.106. .spec.receivers[].pagerdutyConfigs[].httpConfig.basicAuth.username
- 描述
-
username
指定包含用于身份验证的用户名的 Secret 的键。 - 类型
-
object
- 必填
-
key
-
属性 | 类型 | 描述 |
---|---|---|
|
| 要从中选择的 secret 的密钥。必须是一个有效的 secret 密钥。 |
|
|
引用的名称。有效地需要此字段,但因为允许向后兼容为空。这里具有空值的此类实例几乎是错误的。TODO:添加其他有用的字段。apiVersion、kind、uid?更多信息: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names TODO: 当 controller-gen 不需要 https://github.com/kubernetes-sigs/kubebuilder/issues/3896 时,Drop |
|
| 指定是否需要定义 Secret 还是其密钥 |
3.1.107. .spec.receivers[].pagerdutyConfigs[].httpConfig.bearerTokenSecret
- 描述
- 包含客户端用于身份验证的 bearer 令牌的机密密钥。secret 需要与 AlertmanagerConfig 对象位于同一个命名空间中,并可以被 Prometheus Operator 访问。
- 类型
-
object
- 必填
-
key
-
名称
-
属性 | 类型 | 描述 |
---|---|---|
|
| 要从中选择的 secret 的密钥。必须是一个有效的 secret 密钥。 |
|
| 要选择的对象命名空间中的 secret 名称。 |
3.1.108. .spec.receivers[].pagerdutyConfigs[].httpConfig.oauth2
- 描述
- 用于获取目标令牌的 OAuth2 客户端凭据。
- 类型
-
object
- 必填
-
clientId
-
clientSecret
-
tokenUrl
-
属性 | 类型 | 描述 |
---|---|---|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
3.1.109. .spec.receivers[].pagerdutyConfigs[].httpConfig.oauth2.clientId
- 描述
-
clientId
指定包含 OAuth2 客户端 ID 的 Secret 或 ConfigMap 的键。 - 类型
-
object
属性 | 类型 | 描述 |
---|---|---|
|
| 包含用于目标的数据的 ConfigMap。 |
|
| 包含用于目标的数据的 secret。 |
3.1.110. .spec.receivers[].pagerdutyConfigs[].httpConfig.oauth2.clientId.configMap
- 描述
- 包含用于目标的数据的 ConfigMap。
- 类型
-
object
- 必填
-
key
-
属性 | 类型 | 描述 |
---|---|---|
|
| 要选择的密钥。 |
|
|
引用的名称。有效地需要此字段,但因为允许向后兼容为空。这里具有空值的此类实例几乎是错误的。TODO:添加其他有用的字段。apiVersion、kind、uid?更多信息: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names TODO: 当 controller-gen 不需要 https://github.com/kubernetes-sigs/kubebuilder/issues/3896 时,Drop |
|
| 指定是否必须定义 ConfigMap 还是其键 |
3.1.111. .spec.receivers[].pagerdutyConfigs[].httpConfig.oauth2.clientId.secret
- 描述
- 包含用于目标的数据的 secret。
- 类型
-
object
- 必填
-
key
-
属性 | 类型 | 描述 |
---|---|---|
|
| 要从中选择的 secret 的密钥。必须是一个有效的 secret 密钥。 |
|
|
引用的名称。有效地需要此字段,但因为允许向后兼容为空。这里具有空值的此类实例几乎是错误的。TODO:添加其他有用的字段。apiVersion、kind、uid?更多信息: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names TODO: 当 controller-gen 不需要 https://github.com/kubernetes-sigs/kubebuilder/issues/3896 时,Drop |
|
| 指定是否需要定义 Secret 还是其密钥 |
3.1.112. .spec.receivers[].pagerdutyConfigs[].httpConfig.oauth2.clientSecret
- 描述
-
clientSecret
指定包含 OAuth2 客户端 secret 的 Secret 的密钥。 - 类型
-
object
- 必填
-
key
-
属性 | 类型 | 描述 |
---|---|---|
|
| 要从中选择的 secret 的密钥。必须是一个有效的 secret 密钥。 |
|
|
引用的名称。有效地需要此字段,但因为允许向后兼容为空。这里具有空值的此类实例几乎是错误的。TODO:添加其他有用的字段。apiVersion、kind、uid?更多信息: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names TODO: 当 controller-gen 不需要 https://github.com/kubernetes-sigs/kubebuilder/issues/3896 时,Drop |
|
| 指定是否需要定义 Secret 还是其密钥 |
3.1.113. .spec.receivers[].pagerdutyConfigs[].httpConfig.tlsConfig
- 描述
- 客户端的 TLS 配置。
- 类型
-
object
属性 | 类型 | 描述 |
---|---|---|
|
| 验证服务器证书时使用的证书颁发机构。 |
|
| 执行 client-authentication 时要出现的客户端证书。 |
|
| 禁用目标证书验证。 |
|
| 包含目标客户端密钥文件的 secret。 |
|
| 用于验证目标的主机名。 |
3.1.114. .spec.receivers[].pagerdutyConfigs[].httpConfig.tlsConfig.ca
- 描述
- 验证服务器证书时使用的证书颁发机构。
- 类型
-
object
属性 | 类型 | 描述 |
---|---|---|
|
| 包含用于目标的数据的 ConfigMap。 |
|
| 包含用于目标的数据的 secret。 |
3.1.115. .spec.receivers[].pagerdutyConfigs[].httpConfig.tlsConfig.ca.configMap
- 描述
- 包含用于目标的数据的 ConfigMap。
- 类型
-
object
- 必填
-
key
-
属性 | 类型 | 描述 |
---|---|---|
|
| 要选择的密钥。 |
|
|
引用的名称。有效地需要此字段,但因为允许向后兼容为空。这里具有空值的此类实例几乎是错误的。TODO:添加其他有用的字段。apiVersion、kind、uid?更多信息: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names TODO: 当 controller-gen 不需要 https://github.com/kubernetes-sigs/kubebuilder/issues/3896 时,Drop |
|
| 指定是否必须定义 ConfigMap 还是其键 |
3.1.116. .spec.receivers[].pagerdutyConfigs[].httpConfig.tlsConfig.ca.secret
- 描述
- 包含用于目标的数据的 secret。
- 类型
-
object
- 必填
-
key
-
属性 | 类型 | 描述 |
---|---|---|
|
| 要从中选择的 secret 的密钥。必须是一个有效的 secret 密钥。 |
|
|
引用的名称。有效地需要此字段,但因为允许向后兼容为空。这里具有空值的此类实例几乎是错误的。TODO:添加其他有用的字段。apiVersion、kind、uid?更多信息: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names TODO: 当 controller-gen 不需要 https://github.com/kubernetes-sigs/kubebuilder/issues/3896 时,Drop |
|
| 指定是否需要定义 Secret 还是其密钥 |
3.1.117. .spec.receivers[].pagerdutyConfigs[].httpConfig.tlsConfig.cert
- 描述
- 执行 client-authentication 时要出现的客户端证书。
- 类型
-
object
属性 | 类型 | 描述 |
---|---|---|
|
| 包含用于目标的数据的 ConfigMap。 |
|
| 包含用于目标的数据的 secret。 |
3.1.118. .spec.receivers[].pagerdutyConfigs[].httpConfig.tlsConfig.cert.configMap
- 描述
- 包含用于目标的数据的 ConfigMap。
- 类型
-
object
- 必填
-
key
-
属性 | 类型 | 描述 |
---|---|---|
|
| 要选择的密钥。 |
|
|
引用的名称。有效地需要此字段,但因为允许向后兼容为空。这里具有空值的此类实例几乎是错误的。TODO:添加其他有用的字段。apiVersion、kind、uid?更多信息: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names TODO: 当 controller-gen 不需要 https://github.com/kubernetes-sigs/kubebuilder/issues/3896 时,Drop |
|
| 指定是否必须定义 ConfigMap 还是其键 |
3.1.119. .spec.receivers[].pagerdutyConfigs[].httpConfig.tlsConfig.cert.secret
- 描述
- 包含用于目标的数据的 secret。
- 类型
-
object
- 必填
-
key
-
属性 | 类型 | 描述 |
---|---|---|
|
| 要从中选择的 secret 的密钥。必须是一个有效的 secret 密钥。 |
|
|
引用的名称。有效地需要此字段,但因为允许向后兼容为空。这里具有空值的此类实例几乎是错误的。TODO:添加其他有用的字段。apiVersion、kind、uid?更多信息: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names TODO: 当 controller-gen 不需要 https://github.com/kubernetes-sigs/kubebuilder/issues/3896 时,Drop |
|
| 指定是否需要定义 Secret 还是其密钥 |
3.1.120. .spec.receivers[].pagerdutyConfigs[].httpConfig.tlsConfig.keySecret
- 描述
- 包含目标客户端密钥文件的 secret。
- 类型
-
object
- 必填
-
key
-
属性 | 类型 | 描述 |
---|---|---|
|
| 要从中选择的 secret 的密钥。必须是一个有效的 secret 密钥。 |
|
|
引用的名称。有效地需要此字段,但因为允许向后兼容为空。这里具有空值的此类实例几乎是错误的。TODO:添加其他有用的字段。apiVersion、kind、uid?更多信息: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names TODO: 当 controller-gen 不需要 https://github.com/kubernetes-sigs/kubebuilder/issues/3896 时,Drop |
|
| 指定是否需要定义 Secret 还是其密钥 |
3.1.121. .spec.receivers[].pagerdutyConfigs[].pagerDutyImageConfigs
- 描述
- 要附加的镜像详情列表,提供了有关事件的更多详情。
- 类型
-
数组
3.1.122. .spec.receivers[].pagerdutyConfigs[].pagerDutyImageConfigs[]
- 描述
- PagerDutyImageConfig 将镜像附加到事件
- 类型
-
object
属性 | 类型 | 描述 |
---|---|---|
|
| Alt 是镜像的可选替代文本。 |
|
| 可选 URL;使镜像变为可点击的链接。 |
|
| 将镜像附加到事件的 src |
3.1.123. .spec.receivers[].pagerdutyConfigs[].pagerDutyLinkConfigs
- 描述
- 要附加的链接详情列表,提供了有关事件的更多详情。
- 类型
-
数组
3.1.124. .spec.receivers[].pagerdutyConfigs[].pagerDutyLinkConfigs[]
- 描述
- PagerDutyLinkConfig 会附加一个事件的文本链接
- 类型
-
object
属性 | 类型 | 描述 |
---|---|---|
|
| 描述链接用途的文本,可用作链接的文本。 |
|
| href 是要附加的链接的 URL |
3.1.125. .spec.receivers[].pagerdutyConfigs[].routingKey
- 描述
-
包含 PagerDuty 集成密钥的 secret 密钥(使用 Events API v2 时)。需要定义此字段或
serviceKey
。secret 需要与 AlertmanagerConfig 对象位于同一个命名空间中,并可以被 Prometheus Operator 访问。 - 类型
-
object
- 必填
-
key
-
名称
-
属性 | 类型 | 描述 |
---|---|---|
|
| 要从中选择的 secret 的密钥。必须是一个有效的 secret 密钥。 |
|
| 要选择的对象命名空间中的 secret 名称。 |
3.1.126. .spec.receivers[].pagerdutyConfigs[].serviceKey
- 描述
-
包含 PagerDuty 服务密钥的 secret 密钥(使用集成类型 "Prometheus" 时)。需要定义此字段或
routingKey
。secret 需要与 AlertmanagerConfig 对象位于同一个命名空间中,并可以被 Prometheus Operator 访问。 - 类型
-
object
- 必填
-
key
-
名称
-
属性 | 类型 | 描述 |
---|---|---|
|
| 要从中选择的 secret 的密钥。必须是一个有效的 secret 密钥。 |
|
| 要选择的对象命名空间中的 secret 名称。 |
3.1.127. .spec.receivers[].pushoverConfigs
- 描述
- 推送配置列表。
- 类型
-
array
3.1.128. .spec.receivers[].pushoverConfigs[]
- 描述
- PushoverConfig 通过 Pushover 配置通知。See https://prometheus.io/docs/alerting/latest/configuration/#pushover_config
- 类型
-
object
属性 | 类型 | 描述 |
---|---|---|
|
| 发送通知的设备的名称 |
|
| 除非用户确认通知,否则您的通知将继续重试。 |
|
| 通知消息是 HTML 或纯文本。 |
|
| HTTP 客户端配置。 |
|
| 通知消息。 |
|
| |
|
| Pushover 服务器会向用户发送相同的通知的频率。必须至少为 30 秒。 |
|
| 是否要通知已解析的警报。 |
|
| 设备客户端支持的一个声音名称,以覆盖用户的默认声音选择 |
|
| 通知标题. |
|
|
包含注册应用程序的 API 令牌的 secret 密钥,请参阅 https://pushover.net/apps。secret 需要与 AlertmanagerConfig 对象位于同一个命名空间中,并可以被 Prometheus Operator 访问。需要 |
|
|
包含注册应用程序的 API 令牌的令牌文件,请参阅 https://pushover.net/apps。需要 |
|
| 警报通知的实时定义时间 |
|
| 与消息一同显示的补充 URL。 |
|
| 此时会显示补充 URL 的标题,否则只会显示 URL |
|
|
包含接收者用户密钥的 secret 的密钥。secret 需要与 AlertmanagerConfig 对象位于同一个命名空间中,并可以被 Prometheus Operator 访问。 |
|
|
包含接收者用户密钥的用户密钥文件。 |
3.1.129. .spec.receivers[].pushoverConfigs[].httpConfig
- 描述
- HTTP 客户端配置。
- 类型
-
object
属性 | 类型 | 描述 |
---|---|---|
|
| 客户端的授权标头配置。这与 BasicAuth 相互排斥,且只能从 Alertmanager v0.22+ 开始。 |
|
| 客户端的 basicAuth。这是与授权相互排斥的。如果定义了这两者,则 BasicAuth 优先。 |
|
| 包含客户端用于身份验证的 bearer 令牌的机密密钥。secret 需要与 AlertmanagerConfig 对象位于同一个命名空间中,并可以被 Prometheus Operator 访问。 |
|
| FollowRedirects 指定客户端是否应该遵循 HTTP 3xx 重定向。 |
|
| 用于获取目标令牌的 OAuth2 客户端凭据。 |
|
| 可选的代理 URL。 |
|
| 客户端的 TLS 配置。 |
3.1.130. .spec.receivers[].pushoverConfigs[].httpConfig.authorization
- 描述
- 客户端的授权标头配置。这与 BasicAuth 相互排斥,且只能从 Alertmanager v0.22+ 开始。
- 类型
-
object
属性 | 类型 | 描述 |
---|---|---|
|
| 选择命名空间中包含用于身份验证的凭证的 Secret 的键。 |
|
| 定义身份验证类型。该值不区分大小写。 "basic"不是受支持的值。 默认:"Bearer" |
3.1.131. .spec.receivers[].pushoverConfigs[].httpConfig.authorization.credentials
- 描述
- 选择命名空间中包含用于身份验证的凭证的 Secret 的键。
- 类型
-
object
- 必填
-
key
-
属性 | 类型 | 描述 |
---|---|---|
|
| 要从中选择的 secret 的密钥。必须是一个有效的 secret 密钥。 |
|
|
引用的名称。有效地需要此字段,但因为允许向后兼容为空。这里具有空值的此类实例几乎是错误的。TODO:添加其他有用的字段。apiVersion、kind、uid?更多信息: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names TODO: 当 controller-gen 不需要 https://github.com/kubernetes-sigs/kubebuilder/issues/3896 时,Drop |
|
| 指定是否需要定义 Secret 还是其密钥 |
3.1.132. .spec.receivers[].pushoverConfigs[].httpConfig.basicAuth
- 描述
- 客户端的 basicAuth。这是与授权相互排斥的。如果定义了这两者,则 BasicAuth 优先。
- 类型
-
object
属性 | 类型 | 描述 |
---|---|---|
|
|
|
|
|
|
3.1.133. .spec.receivers[].pushoverConfigs[].httpConfig.basicAuth.password
- 描述
-
password
指定包含用于身份验证的密码的 Secret 的键。 - 类型
-
object
- 必填
-
key
-
属性 | 类型 | 描述 |
---|---|---|
|
| 要从中选择的 secret 的密钥。必须是一个有效的 secret 密钥。 |
|
|
引用的名称。有效地需要此字段,但因为允许向后兼容为空。这里具有空值的此类实例几乎是错误的。TODO:添加其他有用的字段。apiVersion、kind、uid?更多信息: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names TODO: 当 controller-gen 不需要 https://github.com/kubernetes-sigs/kubebuilder/issues/3896 时,Drop |
|
| 指定是否需要定义 Secret 还是其密钥 |
3.1.134. .spec.receivers[].pushoverConfigs[].httpConfig.basicAuth.username
- 描述
-
username
指定包含用于身份验证的用户名的 Secret 的键。 - 类型
-
object
- 必填
-
key
-
属性 | 类型 | 描述 |
---|---|---|
|
| 要从中选择的 secret 的密钥。必须是一个有效的 secret 密钥。 |
|
|
引用的名称。有效地需要此字段,但因为允许向后兼容为空。这里具有空值的此类实例几乎是错误的。TODO:添加其他有用的字段。apiVersion、kind、uid?更多信息: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names TODO: 当 controller-gen 不需要 https://github.com/kubernetes-sigs/kubebuilder/issues/3896 时,Drop |
|
| 指定是否需要定义 Secret 还是其密钥 |
3.1.135. .spec.receivers[].pushoverConfigs[].httpConfig.bearerTokenSecret
- 描述
- 包含客户端用于身份验证的 bearer 令牌的机密密钥。secret 需要与 AlertmanagerConfig 对象位于同一个命名空间中,并可以被 Prometheus Operator 访问。
- 类型
-
object
- 必填
-
key
-
名称
-
属性 | 类型 | 描述 |
---|---|---|
|
| 要从中选择的 secret 的密钥。必须是一个有效的 secret 密钥。 |
|
| 要选择的对象命名空间中的 secret 名称。 |
3.1.136. .spec.receivers[].pushoverConfigs[].httpConfig.oauth2
- 描述
- 用于获取目标令牌的 OAuth2 客户端凭据。
- 类型
-
object
- 必填
-
clientId
-
clientSecret
-
tokenUrl
-
属性 | 类型 | 描述 |
---|---|---|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
3.1.137. .spec.receivers[].pushoverConfigs[].httpConfig.oauth2.clientId
- 描述
-
clientId
指定包含 OAuth2 客户端 ID 的 Secret 或 ConfigMap 的键。 - 类型
-
object
属性 | 类型 | 描述 |
---|---|---|
|
| 包含用于目标的数据的 ConfigMap。 |
|
| 包含用于目标的数据的 secret。 |
3.1.138. .spec.receivers[].pushoverConfigs[].httpConfig.oauth2.clientId.configMap
- 描述
- 包含用于目标的数据的 ConfigMap。
- 类型
-
object
- 必填
-
key
-
属性 | 类型 | 描述 |
---|---|---|
|
| 要选择的密钥。 |
|
|
引用的名称。有效地需要此字段,但因为允许向后兼容为空。这里具有空值的此类实例几乎是错误的。TODO:添加其他有用的字段。apiVersion、kind、uid?更多信息: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names TODO: 当 controller-gen 不需要 https://github.com/kubernetes-sigs/kubebuilder/issues/3896 时,Drop |
|
| 指定是否必须定义 ConfigMap 还是其键 |
3.1.139. .spec.receivers[].pushoverConfigs[].httpConfig.oauth2.clientId.secret
- 描述
- 包含用于目标的数据的 secret。
- 类型
-
object
- 必填
-
key
-
属性 | 类型 | 描述 |
---|---|---|
|
| 要从中选择的 secret 的密钥。必须是一个有效的 secret 密钥。 |
|
|
引用的名称。有效地需要此字段,但因为允许向后兼容为空。这里具有空值的此类实例几乎是错误的。TODO:添加其他有用的字段。apiVersion、kind、uid?更多信息: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names TODO: 当 controller-gen 不需要 https://github.com/kubernetes-sigs/kubebuilder/issues/3896 时,Drop |
|
| 指定是否需要定义 Secret 还是其密钥 |
3.1.140. .spec.receivers[].pushoverConfigs[].httpConfig.oauth2.clientSecret
- 描述
-
clientSecret
指定包含 OAuth2 客户端 secret 的 Secret 的密钥。 - 类型
-
object
- 必填
-
key
-
属性 | 类型 | 描述 |
---|---|---|
|
| 要从中选择的 secret 的密钥。必须是一个有效的 secret 密钥。 |
|
|
引用的名称。有效地需要此字段,但因为允许向后兼容为空。这里具有空值的此类实例几乎是错误的。TODO:添加其他有用的字段。apiVersion、kind、uid?更多信息: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names TODO: 当 controller-gen 不需要 https://github.com/kubernetes-sigs/kubebuilder/issues/3896 时,Drop |
|
| 指定是否需要定义 Secret 还是其密钥 |
3.1.141. .spec.receivers[].pushoverConfigs[].httpConfig.tlsConfig
- 描述
- 客户端的 TLS 配置。
- 类型
-
object
属性 | 类型 | 描述 |
---|---|---|
|
| 验证服务器证书时使用的证书颁发机构。 |
|
| 执行 client-authentication 时要出现的客户端证书。 |
|
| 禁用目标证书验证。 |
|
| 包含目标客户端密钥文件的 secret。 |
|
| 用于验证目标的主机名。 |
3.1.142. .spec.receivers[].pushoverConfigs[].httpConfig.tlsConfig.ca
- 描述
- 验证服务器证书时使用的证书颁发机构。
- 类型
-
object
属性 | 类型 | 描述 |
---|---|---|
|
| 包含用于目标的数据的 ConfigMap。 |
|
| 包含用于目标的数据的 secret。 |
3.1.143. .spec.receivers[].pushoverConfigs[].httpConfig.tlsConfig.ca.configMap
- 描述
- 包含用于目标的数据的 ConfigMap。
- 类型
-
object
- 必填
-
key
-
属性 | 类型 | 描述 |
---|---|---|
|
| 要选择的密钥。 |
|
|
引用的名称。有效地需要此字段,但因为允许向后兼容为空。这里具有空值的此类实例几乎是错误的。TODO:添加其他有用的字段。apiVersion、kind、uid?更多信息: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names TODO: 当 controller-gen 不需要 https://github.com/kubernetes-sigs/kubebuilder/issues/3896 时,Drop |
|
| 指定是否必须定义 ConfigMap 还是其键 |
3.1.144. .spec.receivers[].pushoverConfigs[].httpConfig.tlsConfig.ca.secret
- 描述
- 包含用于目标的数据的 secret。
- 类型
-
object
- 必填
-
key
-
属性 | 类型 | 描述 |
---|---|---|
|
| 要从中选择的 secret 的密钥。必须是一个有效的 secret 密钥。 |
|
|
引用的名称。有效地需要此字段,但因为允许向后兼容为空。这里具有空值的此类实例几乎是错误的。TODO:添加其他有用的字段。apiVersion、kind、uid?更多信息: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names TODO: 当 controller-gen 不需要 https://github.com/kubernetes-sigs/kubebuilder/issues/3896 时,Drop |
|
| 指定是否需要定义 Secret 还是其密钥 |
3.1.145. .spec.receivers[].pushoverConfigs[].httpConfig.tlsConfig.cert
- 描述
- 执行 client-authentication 时要出现的客户端证书。
- 类型
-
object
属性 | 类型 | 描述 |
---|---|---|
|
| 包含用于目标的数据的 ConfigMap。 |
|
| 包含用于目标的数据的 secret。 |
3.1.146. .spec.receivers[].pushoverConfigs[].httpConfig.tlsConfig.cert.configMap
- 描述
- 包含用于目标的数据的 ConfigMap。
- 类型
-
object
- 必填
-
key
-
属性 | 类型 | 描述 |
---|---|---|
|
| 要选择的密钥。 |
|
|
引用的名称。有效地需要此字段,但因为允许向后兼容为空。这里具有空值的此类实例几乎是错误的。TODO:添加其他有用的字段。apiVersion、kind、uid?更多信息: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names TODO: 当 controller-gen 不需要 https://github.com/kubernetes-sigs/kubebuilder/issues/3896 时,Drop |
|
| 指定是否必须定义 ConfigMap 还是其键 |
3.1.147. .spec.receivers[].pushoverConfigs[].httpConfig.tlsConfig.cert.secret
- 描述
- 包含用于目标的数据的 secret。
- 类型
-
object
- 必填
-
key
-
属性 | 类型 | 描述 |
---|---|---|
|
| 要从中选择的 secret 的密钥。必须是一个有效的 secret 密钥。 |
|
|
引用的名称。有效地需要此字段,但因为允许向后兼容为空。这里具有空值的此类实例几乎是错误的。TODO:添加其他有用的字段。apiVersion、kind、uid?更多信息: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names TODO: 当 controller-gen 不需要 https://github.com/kubernetes-sigs/kubebuilder/issues/3896 时,Drop |
|
| 指定是否需要定义 Secret 还是其密钥 |
3.1.148. .spec.receivers[].pushoverConfigs[].httpConfig.tlsConfig.keySecret
- 描述
- 包含目标客户端密钥文件的 secret。
- 类型
-
object
- 必填
-
key
-
属性 | 类型 | 描述 |
---|---|---|
|
| 要从中选择的 secret 的密钥。必须是一个有效的 secret 密钥。 |
|
|
引用的名称。有效地需要此字段,但因为允许向后兼容为空。这里具有空值的此类实例几乎是错误的。TODO:添加其他有用的字段。apiVersion、kind、uid?更多信息: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names TODO: 当 controller-gen 不需要 https://github.com/kubernetes-sigs/kubebuilder/issues/3896 时,Drop |
|
| 指定是否需要定义 Secret 还是其密钥 |
3.1.149. .spec.receivers[].pushoverConfigs[].token
- 描述
-
包含注册应用程序的 API 令牌的 secret 密钥,请参阅 https://pushover.net/apps。secret 需要与 AlertmanagerConfig 对象位于同一个命名空间中,并可以被 Prometheus Operator 访问。需要
token
或tokenFile
。 - 类型
-
object
- 必填
-
key
-
名称
-
属性 | 类型 | 描述 |
---|---|---|
|
| 要从中选择的 secret 的密钥。必须是一个有效的 secret 密钥。 |
|
| 要选择的对象命名空间中的 secret 名称。 |
3.1.150. .spec.receivers[].pushoverConfigs[].userKey
- 描述
-
包含接收者用户密钥的 secret 的密钥。secret 需要与 AlertmanagerConfig 对象位于同一个命名空间中,并可以被 Prometheus Operator 访问。
userKey
或userKeyFile
是必需的。 - 类型
-
object
- 必填
-
key
-
名称
-
属性 | 类型 | 描述 |
---|---|---|
|
| 要从中选择的 secret 的密钥。必须是一个有效的 secret 密钥。 |
|
| 要选择的对象命名空间中的 secret 名称。 |
3.1.151. .spec.receivers[].slackConfigs
- 描述
- Slack 配置列表。
- 类型
-
array
3.1.152. .spec.receivers[].slackConfigs[]
- 描述
- SlackConfig 通过 Slack 配置通知。See https://prometheus.io/docs/alerting/latest/configuration/#slack_config
- 类型
-
object
属性 | 类型 | 描述 |
---|---|---|
|
| 每个通知发送的 Slack 操作列表。 |
|
| SlackAction 配置随每个通知发送的一个 Slack 操作。如需更多信息,请参阅 https://api.slack.com/docs/message-attachments#action_fields 和 https://api.slack.com/docs/message-buttons。 |
|
| 包含 Slack Webhook URL 的 secret 的密钥。secret 需要与 AlertmanagerConfig 对象位于同一个命名空间中,并可以被 Prometheus Operator 访问。 |
|
| |
|
| 发送通知的频道或用户。 |
|
| |
|
| |
|
| 每个通知发送的 Slack 字段列表。 |
|
| SlackField 配置随每个通知发送的一个 Slack 字段。每个字段都必须包含一个 title、value 和 optionally,用来指示字段是否足够短,以便在指定为短的其他字段旁边显示字段。如需更多信息,请参阅 https://api.slack.com/docs/message-attachments#fields。 |
|
| |
|
| HTTP 客户端配置。 |
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
| 是否要通知已解析的警报。 |
|
| |
|
| |
|
| |
|
| |
|
| |
|
|
3.1.153. .spec.receivers[].slackConfigs[].actions
- 描述
- 每个通知发送的 Slack 操作列表。
- 类型
-
array
3.1.154. .spec.receivers[].slackConfigs[].actions[]
- 描述
- SlackAction 配置随每个通知发送的一个 Slack 操作。如需更多信息,请参阅 https://api.slack.com/docs/message-attachments#action_fields 和 https://api.slack.com/docs/message-buttons。
- 类型
-
object
- 必填
-
text
-
type
-
属性 | 类型 | 描述 |
---|---|---|
|
| SlackConfirmationField 保护用户不受破坏性的操作或特别区分决策,方法是要求用户确认其按钮一次单击一次。如需更多信息,请参阅 https://api.slack.com/docs/interactive-message-field-guide#confirmation_fields。 |
|
| |
|
| |
|
| |
|
| |
|
| |
|
|
3.1.155. .spec.receivers[].slackConfigs[].actions[].confirm
- 描述
- SlackConfirmationField 保护用户不受破坏性的操作或特别区分决策,方法是要求用户确认其按钮一次单击一次。如需更多信息,请参阅 https://api.slack.com/docs/interactive-message-field-guide#confirmation_fields。
- 类型
-
object
- 必填
-
text
-
属性 | 类型 | 描述 |
---|---|---|
|
| |
|
| |
|
| |
|
|
3.1.156. .spec.receivers[].slackConfigs[].apiURL
- 描述
- 包含 Slack Webhook URL 的 secret 的密钥。secret 需要与 AlertmanagerConfig 对象位于同一个命名空间中,并可以被 Prometheus Operator 访问。
- 类型
-
object
- 必填
-
key
-
名称
-
属性 | 类型 | 描述 |
---|---|---|
|
| 要从中选择的 secret 的密钥。必须是一个有效的 secret 密钥。 |
|
| 要选择的对象命名空间中的 secret 名称。 |
3.1.157. .spec.receivers[].slackConfigs[].fields
- 描述
- 每个通知发送的 Slack 字段列表。
- 类型
-
array
3.1.158. .spec.receivers[].slackConfigs[].fields[]
- 描述
- SlackField 配置随每个通知发送的一个 Slack 字段。每个字段都必须包含一个 title、value 和 optionally,用来指示字段是否足够短,以便在指定为短的其他字段旁边显示字段。如需更多信息,请参阅 https://api.slack.com/docs/message-attachments#fields。
- 类型
-
object
- 必填
-
title
-
value
-
属性 | 类型 | 描述 |
---|---|---|
|
| |
|
| |
|
|
3.1.159. .spec.receivers[].slackConfigs[].httpConfig
- 描述
- HTTP 客户端配置。
- 类型
-
object
属性 | 类型 | 描述 |
---|---|---|
|
| 客户端的授权标头配置。这与 BasicAuth 相互排斥,且只能从 Alertmanager v0.22+ 开始。 |
|
| 客户端的 basicAuth。这是与授权相互排斥的。如果定义了这两者,则 BasicAuth 优先。 |
|
| 包含客户端用于身份验证的 bearer 令牌的机密密钥。secret 需要与 AlertmanagerConfig 对象位于同一个命名空间中,并可以被 Prometheus Operator 访问。 |
|
| FollowRedirects 指定客户端是否应该遵循 HTTP 3xx 重定向。 |
|
| 用于获取目标令牌的 OAuth2 客户端凭据。 |
|
| 可选的代理 URL。 |
|
| 客户端的 TLS 配置。 |
3.1.160. .spec.receivers[].slackConfigs[].httpConfig.authorization
- 描述
- 客户端的授权标头配置。这与 BasicAuth 相互排斥,且只能从 Alertmanager v0.22+ 开始。
- 类型
-
object
属性 | 类型 | 描述 |
---|---|---|
|
| 选择命名空间中包含用于身份验证的凭证的 Secret 的键。 |
|
| 定义身份验证类型。该值不区分大小写。 "basic"不是受支持的值。 默认:"Bearer" |
3.1.161. .spec.receivers[].slackConfigs[].httpConfig.authorization.credentials
- 描述
- 选择命名空间中包含用于身份验证的凭证的 Secret 的键。
- 类型
-
object
- 必填
-
key
-
属性 | 类型 | 描述 |
---|---|---|
|
| 要从中选择的 secret 的密钥。必须是一个有效的 secret 密钥。 |
|
|
引用的名称。有效地需要此字段,但因为允许向后兼容为空。这里具有空值的此类实例几乎是错误的。TODO:添加其他有用的字段。apiVersion、kind、uid?更多信息: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names TODO: 当 controller-gen 不需要 https://github.com/kubernetes-sigs/kubebuilder/issues/3896 时,Drop |
|
| 指定是否需要定义 Secret 还是其密钥 |
3.1.162. .spec.receivers[].slackConfigs[].httpConfig.basicAuth
- 描述
- 客户端的 basicAuth。这是与授权相互排斥的。如果定义了这两者,则 BasicAuth 优先。
- 类型
-
object
属性 | 类型 | 描述 |
---|---|---|
|
|
|
|
|
|
3.1.163. .spec.receivers[].slackConfigs[].httpConfig.basicAuth.password
- 描述
-
password
指定包含用于身份验证的密码的 Secret 的键。 - 类型
-
object
- 必填
-
key
-
属性 | 类型 | 描述 |
---|---|---|
|
| 要从中选择的 secret 的密钥。必须是一个有效的 secret 密钥。 |
|
|
引用的名称。有效地需要此字段,但因为允许向后兼容为空。这里具有空值的此类实例几乎是错误的。TODO:添加其他有用的字段。apiVersion、kind、uid?更多信息: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names TODO: 当 controller-gen 不需要 https://github.com/kubernetes-sigs/kubebuilder/issues/3896 时,Drop |
|
| 指定是否需要定义 Secret 还是其密钥 |
3.1.164. .spec.receivers[].slackConfigs[].httpConfig.basicAuth.username
- 描述
-
username
指定包含用于身份验证的用户名的 Secret 的键。 - 类型
-
object
- 必填
-
key
-
属性 | 类型 | 描述 |
---|---|---|
|
| 要从中选择的 secret 的密钥。必须是一个有效的 secret 密钥。 |
|
|
引用的名称。有效地需要此字段,但因为允许向后兼容为空。这里具有空值的此类实例几乎是错误的。TODO:添加其他有用的字段。apiVersion、kind、uid?更多信息: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names TODO: 当 controller-gen 不需要 https://github.com/kubernetes-sigs/kubebuilder/issues/3896 时,Drop |
|
| 指定是否需要定义 Secret 还是其密钥 |
3.1.165. .spec.receivers[].slackConfigs[].httpConfig.bearerTokenSecret
- 描述
- 包含客户端用于身份验证的 bearer 令牌的机密密钥。secret 需要与 AlertmanagerConfig 对象位于同一个命名空间中,并可以被 Prometheus Operator 访问。
- 类型
-
object
- 必填
-
key
-
名称
-
属性 | 类型 | 描述 |
---|---|---|
|
| 要从中选择的 secret 的密钥。必须是一个有效的 secret 密钥。 |
|
| 要选择的对象命名空间中的 secret 名称。 |
3.1.166. .spec.receivers[].slackConfigs[].httpConfig.oauth2
- 描述
- 用于获取目标令牌的 OAuth2 客户端凭据。
- 类型
-
object
- 必填
-
clientId
-
clientSecret
-
tokenUrl
-
属性 | 类型 | 描述 |
---|---|---|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
3.1.167. .spec.receivers[].slackConfigs[].httpConfig.oauth2.clientId
- 描述
-
clientId
指定包含 OAuth2 客户端 ID 的 Secret 或 ConfigMap 的键。 - 类型
-
object
属性 | 类型 | 描述 |
---|---|---|
|
| 包含用于目标的数据的 ConfigMap。 |
|
| 包含用于目标的数据的 secret。 |
3.1.168. .spec.receivers[].slackConfigs[].httpConfig.oauth2.clientId.configMap
- 描述
- 包含用于目标的数据的 ConfigMap。
- 类型
-
object
- 必填
-
key
-
属性 | 类型 | 描述 |
---|---|---|
|
| 要选择的密钥。 |
|
|
引用的名称。有效地需要此字段,但因为允许向后兼容为空。这里具有空值的此类实例几乎是错误的。TODO:添加其他有用的字段。apiVersion、kind、uid?更多信息: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names TODO: 当 controller-gen 不需要 https://github.com/kubernetes-sigs/kubebuilder/issues/3896 时,Drop |
|
| 指定是否必须定义 ConfigMap 还是其键 |
3.1.169. .spec.receivers[].slackConfigs[].httpConfig.oauth2.clientId.secret
- 描述
- 包含用于目标的数据的 secret。
- 类型
-
object
- 必填
-
key
-
属性 | 类型 | 描述 |
---|---|---|
|
| 要从中选择的 secret 的密钥。必须是一个有效的 secret 密钥。 |
|
|
引用的名称。有效地需要此字段,但因为允许向后兼容为空。这里具有空值的此类实例几乎是错误的。TODO:添加其他有用的字段。apiVersion、kind、uid?更多信息: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names TODO: 当 controller-gen 不需要 https://github.com/kubernetes-sigs/kubebuilder/issues/3896 时,Drop |
|
| 指定是否需要定义 Secret 还是其密钥 |
3.1.170. .spec.receivers[].slackConfigs[].httpConfig.oauth2.clientSecret
- 描述
-
clientSecret
指定包含 OAuth2 客户端 secret 的 Secret 的密钥。 - 类型
-
object
- 必填
-
key
-
属性 | 类型 | 描述 |
---|---|---|
|
| 要从中选择的 secret 的密钥。必须是一个有效的 secret 密钥。 |
|
|
引用的名称。有效地需要此字段,但因为允许向后兼容为空。这里具有空值的此类实例几乎是错误的。TODO:添加其他有用的字段。apiVersion、kind、uid?更多信息: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names TODO: 当 controller-gen 不需要 https://github.com/kubernetes-sigs/kubebuilder/issues/3896 时,Drop |
|
| 指定是否需要定义 Secret 还是其密钥 |
3.1.171. .spec.receivers[].slackConfigs[].httpConfig.tlsConfig
- 描述
- 客户端的 TLS 配置。
- 类型
-
object
属性 | 类型 | 描述 |
---|---|---|
|
| 验证服务器证书时使用的证书颁发机构。 |
|
| 执行 client-authentication 时要出现的客户端证书。 |
|
| 禁用目标证书验证。 |
|
| 包含目标客户端密钥文件的 secret。 |
|
| 用于验证目标的主机名。 |
3.1.172. .spec.receivers[].slackConfigs[].httpConfig.tlsConfig.ca
- 描述
- 验证服务器证书时使用的证书颁发机构。
- 类型
-
object
属性 | 类型 | 描述 |
---|---|---|
|
| 包含用于目标的数据的 ConfigMap。 |
|
| 包含用于目标的数据的 secret。 |
3.1.173. .spec.receivers[].slackConfigs[].httpConfig.tlsConfig.ca.configMap
- 描述
- 包含用于目标的数据的 ConfigMap。
- 类型
-
object
- 必填
-
key
-
属性 | 类型 | 描述 |
---|---|---|
|
| 要选择的密钥。 |
|
|
引用的名称。有效地需要此字段,但因为允许向后兼容为空。这里具有空值的此类实例几乎是错误的。TODO:添加其他有用的字段。apiVersion、kind、uid?更多信息: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names TODO: 当 controller-gen 不需要 https://github.com/kubernetes-sigs/kubebuilder/issues/3896 时,Drop |
|
| 指定是否必须定义 ConfigMap 还是其键 |
3.1.174. .spec.receivers[].slackConfigs[].httpConfig.tlsConfig.ca.secret
- 描述
- 包含用于目标的数据的 secret。
- 类型
-
object
- 必填
-
key
-
属性 | 类型 | 描述 |
---|---|---|
|
| 要从中选择的 secret 的密钥。必须是一个有效的 secret 密钥。 |
|
|
引用的名称。有效地需要此字段,但因为允许向后兼容为空。这里具有空值的此类实例几乎是错误的。TODO:添加其他有用的字段。apiVersion、kind、uid?更多信息: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names TODO: 当 controller-gen 不需要 https://github.com/kubernetes-sigs/kubebuilder/issues/3896 时,Drop |
|
| 指定是否需要定义 Secret 还是其密钥 |
3.1.175. .spec.receivers[].slackConfigs[].httpConfig.tlsConfig.cert
- 描述
- 执行 client-authentication 时要出现的客户端证书。
- 类型
-
object
属性 | 类型 | 描述 |
---|---|---|
|
| 包含用于目标的数据的 ConfigMap。 |
|
| 包含用于目标的数据的 secret。 |
3.1.176. .spec.receivers[].slackConfigs[].httpConfig.tlsConfig.cert.configMap
- 描述
- 包含用于目标的数据的 ConfigMap。
- 类型
-
object
- 必填
-
key
-
属性 | 类型 | 描述 |
---|---|---|
|
| 要选择的密钥。 |
|
|
引用的名称。有效地需要此字段,但因为允许向后兼容为空。这里具有空值的此类实例几乎是错误的。TODO:添加其他有用的字段。apiVersion、kind、uid?更多信息: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names TODO: 当 controller-gen 不需要 https://github.com/kubernetes-sigs/kubebuilder/issues/3896 时,Drop |
|
| 指定是否必须定义 ConfigMap 还是其键 |
3.1.177. .spec.receivers[].slackConfigs[].httpConfig.tlsConfig.cert.secret
- 描述
- 包含用于目标的数据的 secret。
- 类型
-
object
- 必填
-
key
-
属性 | 类型 | 描述 |
---|---|---|
|
| 要从中选择的 secret 的密钥。必须是一个有效的 secret 密钥。 |
|
|
引用的名称。有效地需要此字段,但因为允许向后兼容为空。这里具有空值的此类实例几乎是错误的。TODO:添加其他有用的字段。apiVersion、kind、uid?更多信息: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names TODO: 当 controller-gen 不需要 https://github.com/kubernetes-sigs/kubebuilder/issues/3896 时,Drop |
|
| 指定是否需要定义 Secret 还是其密钥 |
3.1.178. .spec.receivers[].slackConfigs[].httpConfig.tlsConfig.keySecret
- 描述
- 包含目标客户端密钥文件的 secret。
- 类型
-
object
- 必填
-
key
-
属性 | 类型 | 描述 |
---|---|---|
|
| 要从中选择的 secret 的密钥。必须是一个有效的 secret 密钥。 |
|
|
引用的名称。有效地需要此字段,但因为允许向后兼容为空。这里具有空值的此类实例几乎是错误的。TODO:添加其他有用的字段。apiVersion、kind、uid?更多信息: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names TODO: 当 controller-gen 不需要 https://github.com/kubernetes-sigs/kubebuilder/issues/3896 时,Drop |
|
| 指定是否需要定义 Secret 还是其密钥 |
3.1.179. .spec.receivers[].snsConfigs
- 描述
- SNS 配置列表
- 类型
-
数组
3.1.180. .spec.receivers[].snsConfigs[]
- 描述
- SNSConfig 通过 AWS SNS 配置通知。请参阅 https://prometheus.io/docs/alerting/latest/configuration/#sns_configs
- 类型
-
object
属性 | 类型 | 描述 |
---|---|---|
|
| SNS API URL,如 https://sns.us-east-2.amazonaws.com。如果没有指定,则使用 SNS SDK 中的 SNS API URL。 |
|
| SNS 消息属性。 |
|
| HTTP 客户端配置。 |
|
| SNS 通知的消息内容。 |
|
| 如果消息以 E.164 格式通过 SMS 提供,则电话号码。如果没有指定这个值,您必须为 TopicARN 或 TargetARN 指定一个值。 |
|
| 是否要通知已解析的警报。 |
|
| 配置 AWS 的签名验证 4 签名过程来签署请求。 |
|
| 当消息发送到电子邮件端点时。 |
|
| 如果通过移动通知发送消息,移动平台端点 ARN。如果没有指定这个值,您必须为 topic_arn 或 PhoneNumber 指定一个值。 |
|
| SNS 主题 ARN,如 arn:aws:sns:us-east-2:698519295917:My-Topic (如果您没有指定这个值),您必须为 PhoneNumber 或 TargetARN 指定一个值。 |
3.1.181. .spec.receivers[].snsConfigs[].httpConfig
- 描述
- HTTP 客户端配置。
- 类型
-
object
属性 | 类型 | 描述 |
---|---|---|
|
| 客户端的授权标头配置。这与 BasicAuth 相互排斥,且只能从 Alertmanager v0.22+ 开始。 |
|
| 客户端的 basicAuth。这是与授权相互排斥的。如果定义了这两者,则 BasicAuth 优先。 |
|
| 包含客户端用于身份验证的 bearer 令牌的机密密钥。secret 需要与 AlertmanagerConfig 对象位于同一个命名空间中,并可以被 Prometheus Operator 访问。 |
|
| FollowRedirects 指定客户端是否应该遵循 HTTP 3xx 重定向。 |
|
| 用于获取目标令牌的 OAuth2 客户端凭据。 |
|
| 可选的代理 URL。 |
|
| 客户端的 TLS 配置。 |
3.1.182. .spec.receivers[].snsConfigs[].httpConfig.authorization
- 描述
- 客户端的授权标头配置。这与 BasicAuth 相互排斥,且只能从 Alertmanager v0.22+ 开始。
- 类型
-
object
属性 | 类型 | 描述 |
---|---|---|
|
| 选择命名空间中包含用于身份验证的凭证的 Secret 的键。 |
|
| 定义身份验证类型。该值不区分大小写。 "basic"不是受支持的值。 默认:"Bearer" |
3.1.183. .spec.receivers[].snsConfigs[].httpConfig.authorization.credentials
- 描述
- 选择命名空间中包含用于身份验证的凭证的 Secret 的键。
- 类型
-
object
- 必填
-
key
-
属性 | 类型 | 描述 |
---|---|---|
|
| 要从中选择的 secret 的密钥。必须是一个有效的 secret 密钥。 |
|
|
引用的名称。有效地需要此字段,但因为允许向后兼容为空。这里具有空值的此类实例几乎是错误的。TODO:添加其他有用的字段。apiVersion、kind、uid?更多信息: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names TODO: 当 controller-gen 不需要 https://github.com/kubernetes-sigs/kubebuilder/issues/3896 时,Drop |
|
| 指定是否需要定义 Secret 还是其密钥 |
3.1.184. .spec.receivers[].snsConfigs[].httpConfig.basicAuth
- 描述
- 客户端的 basicAuth。这是与授权相互排斥的。如果定义了这两者,则 BasicAuth 优先。
- 类型
-
object
属性 | 类型 | 描述 |
---|---|---|
|
|
|
|
|
|
3.1.185. .spec.receivers[].snsConfigs[].httpConfig.basicAuth.password
- 描述
-
password
指定包含用于身份验证的密码的 Secret 的键。 - 类型
-
object
- 必填
-
key
-
属性 | 类型 | 描述 |
---|---|---|
|
| 要从中选择的 secret 的密钥。必须是一个有效的 secret 密钥。 |
|
|
引用的名称。有效地需要此字段,但因为允许向后兼容为空。这里具有空值的此类实例几乎是错误的。TODO:添加其他有用的字段。apiVersion、kind、uid?更多信息: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names TODO: 当 controller-gen 不需要 https://github.com/kubernetes-sigs/kubebuilder/issues/3896 时,Drop |
|
| 指定是否需要定义 Secret 还是其密钥 |
3.1.186. .spec.receivers[].snsConfigs[].httpConfig.basicAuth.username
- 描述
-
username
指定包含用于身份验证的用户名的 Secret 的键。 - 类型
-
object
- 必填
-
key
-
属性 | 类型 | 描述 |
---|---|---|
|
| 要从中选择的 secret 的密钥。必须是一个有效的 secret 密钥。 |
|
|
引用的名称。有效地需要此字段,但因为允许向后兼容为空。这里具有空值的此类实例几乎是错误的。TODO:添加其他有用的字段。apiVersion、kind、uid?更多信息: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names TODO: 当 controller-gen 不需要 https://github.com/kubernetes-sigs/kubebuilder/issues/3896 时,Drop |
|
| 指定是否需要定义 Secret 还是其密钥 |
3.1.187. .spec.receivers[].snsConfigs[].httpConfig.bearerTokenSecret
- 描述
- 包含客户端用于身份验证的 bearer 令牌的机密密钥。secret 需要与 AlertmanagerConfig 对象位于同一个命名空间中,并可以被 Prometheus Operator 访问。
- 类型
-
object
- 必填
-
key
-
名称
-
属性 | 类型 | 描述 |
---|---|---|
|
| 要从中选择的 secret 的密钥。必须是一个有效的 secret 密钥。 |
|
| 要选择的对象命名空间中的 secret 名称。 |
3.1.188. .spec.receivers[].snsConfigs[].httpConfig.oauth2
- 描述
- 用于获取目标令牌的 OAuth2 客户端凭据。
- 类型
-
object
- 必填
-
clientId
-
clientSecret
-
tokenUrl
-
属性 | 类型 | 描述 |
---|---|---|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
3.1.189. .spec.receivers[].snsConfigs[].httpConfig.oauth2.clientId
- 描述
-
clientId
指定包含 OAuth2 客户端 ID 的 Secret 或 ConfigMap 的键。 - 类型
-
object
属性 | 类型 | 描述 |
---|---|---|
|
| 包含用于目标的数据的 ConfigMap。 |
|
| 包含用于目标的数据的 secret。 |
3.1.190. .spec.receivers[].snsConfigs[].httpConfig.oauth2.clientId.configMap
- 描述
- 包含用于目标的数据的 ConfigMap。
- 类型
-
object
- 必填
-
key
-
属性 | 类型 | 描述 |
---|---|---|
|
| 要选择的密钥。 |
|
|
引用的名称。有效地需要此字段,但因为允许向后兼容为空。这里具有空值的此类实例几乎是错误的。TODO:添加其他有用的字段。apiVersion、kind、uid?更多信息: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names TODO: 当 controller-gen 不需要 https://github.com/kubernetes-sigs/kubebuilder/issues/3896 时,Drop |
|
| 指定是否必须定义 ConfigMap 还是其键 |
3.1.191. .spec.receivers[].snsConfigs[].httpConfig.oauth2.clientId.secret
- 描述
- 包含用于目标的数据的 secret。
- 类型
-
object
- 必填
-
key
-
属性 | 类型 | 描述 |
---|---|---|
|
| 要从中选择的 secret 的密钥。必须是一个有效的 secret 密钥。 |
|
|
引用的名称。有效地需要此字段,但因为允许向后兼容为空。这里具有空值的此类实例几乎是错误的。TODO:添加其他有用的字段。apiVersion、kind、uid?更多信息: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names TODO: 当 controller-gen 不需要 https://github.com/kubernetes-sigs/kubebuilder/issues/3896 时,Drop |
|
| 指定是否需要定义 Secret 还是其密钥 |
3.1.192. .spec.receivers[].snsConfigs[].httpConfig.oauth2.clientSecret
- 描述
-
clientSecret
指定包含 OAuth2 客户端 secret 的 Secret 的密钥。 - 类型
-
object
- 必填
-
key
-
属性 | 类型 | 描述 |
---|---|---|
|
| 要从中选择的 secret 的密钥。必须是一个有效的 secret 密钥。 |
|
|
引用的名称。有效地需要此字段,但因为允许向后兼容为空。这里具有空值的此类实例几乎是错误的。TODO:添加其他有用的字段。apiVersion、kind、uid?更多信息: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names TODO: 当 controller-gen 不需要 https://github.com/kubernetes-sigs/kubebuilder/issues/3896 时,Drop |
|
| 指定是否需要定义 Secret 还是其密钥 |
3.1.193. .spec.receivers[].snsConfigs[].httpConfig.tlsConfig
- 描述
- 客户端的 TLS 配置。
- 类型
-
object
属性 | 类型 | 描述 |
---|---|---|
|
| 验证服务器证书时使用的证书颁发机构。 |
|
| 执行 client-authentication 时要出现的客户端证书。 |
|
| 禁用目标证书验证。 |
|
| 包含目标客户端密钥文件的 secret。 |
|
| 用于验证目标的主机名。 |
3.1.194. .spec.receivers[].snsConfigs[].httpConfig.tlsConfig.ca
- 描述
- 验证服务器证书时使用的证书颁发机构。
- 类型
-
object
属性 | 类型 | 描述 |
---|---|---|
|
| 包含用于目标的数据的 ConfigMap。 |
|
| 包含用于目标的数据的 secret。 |
3.1.195. .spec.receivers[].snsConfigs[].httpConfig.tlsConfig.ca.configMap
- 描述
- 包含用于目标的数据的 ConfigMap。
- 类型
-
object
- 必填
-
key
-
属性 | 类型 | 描述 |
---|---|---|
|
| 要选择的密钥。 |
|
|
引用的名称。有效地需要此字段,但因为允许向后兼容为空。这里具有空值的此类实例几乎是错误的。TODO:添加其他有用的字段。apiVersion、kind、uid?更多信息: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names TODO: 当 controller-gen 不需要 https://github.com/kubernetes-sigs/kubebuilder/issues/3896 时,Drop |
|
| 指定是否必须定义 ConfigMap 还是其键 |
3.1.196. .spec.receivers[].snsConfigs[].httpConfig.tlsConfig.ca.secret
- 描述
- 包含用于目标的数据的 secret。
- 类型
-
object
- 必填
-
key
-
属性 | 类型 | 描述 |
---|---|---|
|
| 要从中选择的 secret 的密钥。必须是一个有效的 secret 密钥。 |
|
|
引用的名称。有效地需要此字段,但因为允许向后兼容为空。这里具有空值的此类实例几乎是错误的。TODO:添加其他有用的字段。apiVersion、kind、uid?更多信息: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names TODO: 当 controller-gen 不需要 https://github.com/kubernetes-sigs/kubebuilder/issues/3896 时,Drop |
|
| 指定是否需要定义 Secret 还是其密钥 |
3.1.197. .spec.receivers[].snsConfigs[].httpConfig.tlsConfig.cert
- 描述
- 执行 client-authentication 时要出现的客户端证书。
- 类型
-
object
属性 | 类型 | 描述 |
---|---|---|
|
| 包含用于目标的数据的 ConfigMap。 |
|
| 包含用于目标的数据的 secret。 |
3.1.198. .spec.receivers[].snsConfigs[].httpConfig.tlsConfig.cert.configMap
- 描述
- 包含用于目标的数据的 ConfigMap。
- 类型
-
object
- 必填
-
key
-
属性 | 类型 | 描述 |
---|---|---|
|
| 要选择的密钥。 |
|
|
引用的名称。有效地需要此字段,但因为允许向后兼容为空。这里具有空值的此类实例几乎是错误的。TODO:添加其他有用的字段。apiVersion、kind、uid?更多信息: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names TODO: 当 controller-gen 不需要 https://github.com/kubernetes-sigs/kubebuilder/issues/3896 时,Drop |
|
| 指定是否必须定义 ConfigMap 还是其键 |
3.1.199. .spec.receivers[].snsConfigs[].httpConfig.tlsConfig.cert.secret
- 描述
- 包含用于目标的数据的 secret。
- 类型
-
object
- 必填
-
key
-
属性 | 类型 | 描述 |
---|---|---|
|
| 要从中选择的 secret 的密钥。必须是一个有效的 secret 密钥。 |
|
|
引用的名称。有效地需要此字段,但因为允许向后兼容为空。这里具有空值的此类实例几乎是错误的。TODO:添加其他有用的字段。apiVersion、kind、uid?更多信息: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names TODO: 当 controller-gen 不需要 https://github.com/kubernetes-sigs/kubebuilder/issues/3896 时,Drop |
|
| 指定是否需要定义 Secret 还是其密钥 |
3.1.200. .spec.receivers[].snsConfigs[].httpConfig.tlsConfig.keySecret
- 描述
- 包含目标客户端密钥文件的 secret。
- 类型
-
object
- 必填
-
key
-
属性 | 类型 | 描述 |
---|---|---|
|
| 要从中选择的 secret 的密钥。必须是一个有效的 secret 密钥。 |
|
|
引用的名称。有效地需要此字段,但因为允许向后兼容为空。这里具有空值的此类实例几乎是错误的。TODO:添加其他有用的字段。apiVersion、kind、uid?更多信息: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names TODO: 当 controller-gen 不需要 https://github.com/kubernetes-sigs/kubebuilder/issues/3896 时,Drop |
|
| 指定是否需要定义 Secret 还是其密钥 |
3.1.201. .spec.receivers[].snsConfigs[].sigv4
- 描述
- 配置 AWS 的签名验证 4 签名过程来签署请求。
- 类型
-
object
属性 | 类型 | 描述 |
---|---|---|
|
|
accessKey 是 AWS API 密钥。如果没有指定,则使用环境变量 |
|
| 配置集是用来进行身份验证的命名 AWS 配置集。 |
|
| 区域是 AWS 区域。如果为空,则使用默认凭证链中的区域。 |
|
| RoleArn 是用来进行身份验证的 AWS 配置集。 |
|
|
secretKey 是 AWS API secret。如果没有指定,则使用环境变量 |
3.1.202. .spec.receivers[].snsConfigs[].sigv4.accessKey
- 描述
-
accessKey 是 AWS API 密钥。如果没有指定,则使用环境变量
AWS_ACCESS_KEY_ID
。 - 类型
-
object
- 必填
-
key
-
属性 | 类型 | 描述 |
---|---|---|
|
| 要从中选择的 secret 的密钥。必须是一个有效的 secret 密钥。 |
|
|
引用的名称。有效地需要此字段,但因为允许向后兼容为空。这里具有空值的此类实例几乎是错误的。TODO:添加其他有用的字段。apiVersion、kind、uid?更多信息: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names TODO: 当 controller-gen 不需要 https://github.com/kubernetes-sigs/kubebuilder/issues/3896 时,Drop |
|
| 指定是否需要定义 Secret 还是其密钥 |
3.1.203. .spec.receivers[].snsConfigs[].sigv4.secretKey
- 描述
-
secretKey 是 AWS API secret。如果没有指定,则使用环境变量
AWS_SECRET_ACCESS_KEY
。 - 类型
-
object
- 必填
-
key
-
属性 | 类型 | 描述 |
---|---|---|
|
| 要从中选择的 secret 的密钥。必须是一个有效的 secret 密钥。 |
|
|
引用的名称。有效地需要此字段,但因为允许向后兼容为空。这里具有空值的此类实例几乎是错误的。TODO:添加其他有用的字段。apiVersion、kind、uid?更多信息: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names TODO: 当 controller-gen 不需要 https://github.com/kubernetes-sigs/kubebuilder/issues/3896 时,Drop |
|
| 指定是否需要定义 Secret 还是其密钥 |
3.1.204. .spec.receivers[].telegramConfigs
- 描述
- Telegram 配置列表。
- 类型
-
数组
3.1.205. .spec.receivers[].telegramConfigs[]
- 描述
- TelegramConfig 通过 Telegram 配置通知。See https://prometheus.io/docs/alerting/latest/configuration/#telegram_config
- 类型
-
object
属性 | 类型 | 描述 |
---|---|---|
|
| Telegram API URL,例如 https://api.telegram.org。如果没有指定,则使用默认 API URL。 |
|
|
telegram bot 令牌。它与
|
|
|
从中读取 Telegram bot 令牌的文件。它与 它需要 Alertmanager >= v0.26.0。 |
|
| Telegram chat ID。 |
|
| 禁用电话通知 |
|
| HTTP 客户端配置。 |
|
| 消息模板 |
|
| telegram 消息的解析模式 |
|
| 是否通知已解析的警报。 |
3.1.206. .spec.receivers[].telegramConfigs[].botToken
- 描述
telegram bot 令牌。它与
botTokenFile
相互排斥。secret 需要与 AlertmanagerConfig 对象位于同一个命名空间中,并可以被 Prometheus Operator 访问。botToken
或botTokenFile
是必需的。- 类型
-
object
- 必填
-
key
-
名称
-
属性 | 类型 | 描述 |
---|---|---|
|
| 要从中选择的 secret 的密钥。必须是一个有效的 secret 密钥。 |
|
| 要选择的对象命名空间中的 secret 名称。 |
3.1.207. .spec.receivers[].telegramConfigs[].httpConfig
- 描述
- HTTP 客户端配置。
- 类型
-
object
属性 | 类型 | 描述 |
---|---|---|
|
| 客户端的授权标头配置。这与 BasicAuth 相互排斥,且只能从 Alertmanager v0.22+ 开始。 |
|
| 客户端的 basicAuth。这是与授权相互排斥的。如果定义了这两者,则 BasicAuth 优先。 |
|
| 包含客户端用于身份验证的 bearer 令牌的机密密钥。secret 需要与 AlertmanagerConfig 对象位于同一个命名空间中,并可以被 Prometheus Operator 访问。 |
|
| FollowRedirects 指定客户端是否应该遵循 HTTP 3xx 重定向。 |
|
| 用于获取目标令牌的 OAuth2 客户端凭据。 |
|
| 可选的代理 URL。 |
|
| 客户端的 TLS 配置。 |
3.1.208. .spec.receivers[].telegramConfigs[].httpConfig.authorization
- 描述
- 客户端的授权标头配置。这与 BasicAuth 相互排斥,且只能从 Alertmanager v0.22+ 开始。
- 类型
-
object
属性 | 类型 | 描述 |
---|---|---|
|
| 选择命名空间中包含用于身份验证的凭证的 Secret 的键。 |
|
| 定义身份验证类型。该值不区分大小写。 "basic"不是受支持的值。 默认:"Bearer" |
3.1.209. .spec.receivers[].telegramConfigs[].httpConfig.authorization.credentials
- 描述
- 选择命名空间中包含用于身份验证的凭证的 Secret 的键。
- 类型
-
object
- 必填
-
key
-
属性 | 类型 | 描述 |
---|---|---|
|
| 要从中选择的 secret 的密钥。必须是一个有效的 secret 密钥。 |
|
|
引用的名称。有效地需要此字段,但因为允许向后兼容为空。这里具有空值的此类实例几乎是错误的。TODO:添加其他有用的字段。apiVersion、kind、uid?更多信息: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names TODO: 当 controller-gen 不需要 https://github.com/kubernetes-sigs/kubebuilder/issues/3896 时,Drop |
|
| 指定是否需要定义 Secret 还是其密钥 |
3.1.210. .spec.receivers[].telegramConfigs[].httpConfig.basicAuth
- 描述
- 客户端的 basicAuth。这是与授权相互排斥的。如果定义了这两者,则 BasicAuth 优先。
- 类型
-
object
属性 | 类型 | 描述 |
---|---|---|
|
|
|
|
|
|
3.1.211. .spec.receivers[].telegramConfigs[].httpConfig.basicAuth.password
- 描述
-
password
指定包含用于身份验证的密码的 Secret 的键。 - 类型
-
object
- 必填
-
key
-
属性 | 类型 | 描述 |
---|---|---|
|
| 要从中选择的 secret 的密钥。必须是一个有效的 secret 密钥。 |
|
|
引用的名称。有效地需要此字段,但因为允许向后兼容为空。这里具有空值的此类实例几乎是错误的。TODO:添加其他有用的字段。apiVersion、kind、uid?更多信息: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names TODO: 当 controller-gen 不需要 https://github.com/kubernetes-sigs/kubebuilder/issues/3896 时,Drop |
|
| 指定是否需要定义 Secret 还是其密钥 |
3.1.212. .spec.receivers[].telegramConfigs[].httpConfig.basicAuth.username
- 描述
-
username
指定包含用于身份验证的用户名的 Secret 的键。 - 类型
-
object
- 必填
-
key
-
属性 | 类型 | 描述 |
---|---|---|
|
| 要从中选择的 secret 的密钥。必须是一个有效的 secret 密钥。 |
|
|
引用的名称。有效地需要此字段,但因为允许向后兼容为空。这里具有空值的此类实例几乎是错误的。TODO:添加其他有用的字段。apiVersion、kind、uid?更多信息: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names TODO: 当 controller-gen 不需要 https://github.com/kubernetes-sigs/kubebuilder/issues/3896 时,Drop |
|
| 指定是否需要定义 Secret 还是其密钥 |
3.1.213. .spec.receivers[].telegramConfigs[].httpConfig.bearerTokenSecret
- 描述
- 包含客户端用于身份验证的 bearer 令牌的机密密钥。secret 需要与 AlertmanagerConfig 对象位于同一个命名空间中,并可以被 Prometheus Operator 访问。
- 类型
-
object
- 必填
-
key
-
名称
-
属性 | 类型 | 描述 |
---|---|---|
|
| 要从中选择的 secret 的密钥。必须是一个有效的 secret 密钥。 |
|
| 要选择的对象命名空间中的 secret 名称。 |
3.1.214. .spec.receivers[].telegramConfigs[].httpConfig.oauth2
- 描述
- 用于获取目标令牌的 OAuth2 客户端凭据。
- 类型
-
object
- 必填
-
clientId
-
clientSecret
-
tokenUrl
-
属性 | 类型 | 描述 |
---|---|---|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
3.1.215. .spec.receivers[].telegramConfigs[].httpConfig.oauth2.clientId
- 描述
-
clientId
指定包含 OAuth2 客户端 ID 的 Secret 或 ConfigMap 的键。 - 类型
-
object
属性 | 类型 | 描述 |
---|---|---|
|
| 包含用于目标的数据的 ConfigMap。 |
|
| 包含用于目标的数据的 secret。 |
3.1.216. .spec.receivers[].telegramConfigs[].httpConfig.oauth2.clientId.configMap
- 描述
- 包含用于目标的数据的 ConfigMap。
- 类型
-
object
- 必填
-
key
-
属性 | 类型 | 描述 |
---|---|---|
|
| 要选择的密钥。 |
|
|
引用的名称。有效地需要此字段,但因为允许向后兼容为空。这里具有空值的此类实例几乎是错误的。TODO:添加其他有用的字段。apiVersion、kind、uid?更多信息: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names TODO: 当 controller-gen 不需要 https://github.com/kubernetes-sigs/kubebuilder/issues/3896 时,Drop |
|
| 指定是否必须定义 ConfigMap 还是其键 |
3.1.217. .spec.receivers[].telegramConfigs[].httpConfig.oauth2.clientId.secret
- 描述
- 包含用于目标的数据的 secret。
- 类型
-
object
- 必填
-
key
-
属性 | 类型 | 描述 |
---|---|---|
|
| 要从中选择的 secret 的密钥。必须是一个有效的 secret 密钥。 |
|
|
引用的名称。有效地需要此字段,但因为允许向后兼容为空。这里具有空值的此类实例几乎是错误的。TODO:添加其他有用的字段。apiVersion、kind、uid?更多信息: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names TODO: 当 controller-gen 不需要 https://github.com/kubernetes-sigs/kubebuilder/issues/3896 时,Drop |
|
| 指定是否需要定义 Secret 还是其密钥 |
3.1.218. .spec.receivers[].telegramConfigs[].httpConfig.oauth2.clientSecret
- 描述
-
clientSecret
指定包含 OAuth2 客户端 secret 的 Secret 的密钥。 - 类型
-
object
- 必填
-
key
-
属性 | 类型 | 描述 |
---|---|---|
|
| 要从中选择的 secret 的密钥。必须是一个有效的 secret 密钥。 |
|
|
引用的名称。有效地需要此字段,但因为允许向后兼容为空。这里具有空值的此类实例几乎是错误的。TODO:添加其他有用的字段。apiVersion、kind、uid?更多信息: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names TODO: 当 controller-gen 不需要 https://github.com/kubernetes-sigs/kubebuilder/issues/3896 时,Drop |
|
| 指定是否需要定义 Secret 还是其密钥 |
3.1.219. .spec.receivers[].telegramConfigs[].httpConfig.tlsConfig
- 描述
- 客户端的 TLS 配置。
- 类型
-
object
属性 | 类型 | 描述 |
---|---|---|
|
| 验证服务器证书时使用的证书颁发机构。 |
|
| 执行 client-authentication 时要出现的客户端证书。 |
|
| 禁用目标证书验证。 |
|
| 包含目标客户端密钥文件的 secret。 |
|
| 用于验证目标的主机名。 |
3.1.220. .spec.receivers[].telegramConfigs[].httpConfig.tlsConfig.ca
- 描述
- 验证服务器证书时使用的证书颁发机构。
- 类型
-
object
属性 | 类型 | 描述 |
---|---|---|
|
| 包含用于目标的数据的 ConfigMap。 |
|
| 包含用于目标的数据的 secret。 |
3.1.221. .spec.receivers[].telegramConfigs[].httpConfig.tlsConfig.ca.configMap
- 描述
- 包含用于目标的数据的 ConfigMap。
- 类型
-
object
- 必填
-
key
-
属性 | 类型 | 描述 |
---|---|---|
|
| 要选择的密钥。 |
|
|
引用的名称。有效地需要此字段,但因为允许向后兼容为空。这里具有空值的此类实例几乎是错误的。TODO:添加其他有用的字段。apiVersion、kind、uid?更多信息: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names TODO: 当 controller-gen 不需要 https://github.com/kubernetes-sigs/kubebuilder/issues/3896 时,Drop |
|
| 指定是否必须定义 ConfigMap 还是其键 |
3.1.222. .spec.receivers[].telegramConfigs[].httpConfig.tlsConfig.ca.secret
- 描述
- 包含用于目标的数据的 secret。
- 类型
-
object
- 必填
-
key
-
属性 | 类型 | 描述 |
---|---|---|
|
| 要从中选择的 secret 的密钥。必须是一个有效的 secret 密钥。 |
|
|
引用的名称。有效地需要此字段,但因为允许向后兼容为空。这里具有空值的此类实例几乎是错误的。TODO:添加其他有用的字段。apiVersion、kind、uid?更多信息: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names TODO: 当 controller-gen 不需要 https://github.com/kubernetes-sigs/kubebuilder/issues/3896 时,Drop |
|
| 指定是否需要定义 Secret 还是其密钥 |
3.1.223. .spec.receivers[].telegramConfigs[].httpConfig.tlsConfig.cert
- 描述
- 执行 client-authentication 时要出现的客户端证书。
- 类型
-
object
属性 | 类型 | 描述 |
---|---|---|
|
| 包含用于目标的数据的 ConfigMap。 |
|
| 包含用于目标的数据的 secret。 |
3.1.224. .spec.receivers[].telegramConfigs[].httpConfig.tlsConfig.cert.configMap
- 描述
- 包含用于目标的数据的 ConfigMap。
- 类型
-
object
- 必填
-
key
-
属性 | 类型 | 描述 |
---|---|---|
|
| 要选择的密钥。 |
|
|
引用的名称。有效地需要此字段,但因为允许向后兼容为空。这里具有空值的此类实例几乎是错误的。TODO:添加其他有用的字段。apiVersion、kind、uid?更多信息: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names TODO: 当 controller-gen 不需要 https://github.com/kubernetes-sigs/kubebuilder/issues/3896 时,Drop |
|
| 指定是否必须定义 ConfigMap 还是其键 |
3.1.225. .spec.receivers[].telegramConfigs[].httpConfig.tlsConfig.cert.secret
- 描述
- 包含用于目标的数据的 secret。
- 类型
-
object
- 必填
-
key
-
属性 | 类型 | 描述 |
---|---|---|
|
| 要从中选择的 secret 的密钥。必须是一个有效的 secret 密钥。 |
|
|
引用的名称。有效地需要此字段,但因为允许向后兼容为空。这里具有空值的此类实例几乎是错误的。TODO:添加其他有用的字段。apiVersion、kind、uid?更多信息: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names TODO: 当 controller-gen 不需要 https://github.com/kubernetes-sigs/kubebuilder/issues/3896 时,Drop |
|
| 指定是否需要定义 Secret 还是其密钥 |
3.1.226. .spec.receivers[].telegramConfigs[].httpConfig.tlsConfig.keySecret
- 描述
- 包含目标客户端密钥文件的 secret。
- 类型
-
object
- 必填
-
key
-
属性 | 类型 | 描述 |
---|---|---|
|
| 要从中选择的 secret 的密钥。必须是一个有效的 secret 密钥。 |
|
|
引用的名称。有效地需要此字段,但因为允许向后兼容为空。这里具有空值的此类实例几乎是错误的。TODO:添加其他有用的字段。apiVersion、kind、uid?更多信息: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names TODO: 当 controller-gen 不需要 https://github.com/kubernetes-sigs/kubebuilder/issues/3896 时,Drop |
|
| 指定是否需要定义 Secret 还是其密钥 |
3.1.227. .spec.receivers[].victoropsConfigs
- 描述
- VictorOps 配置列表。
- 类型
-
array
3.1.228. .spec.receivers[].victoropsConfigs[]
- 描述
- VictorOpsConfig 通过 VictorOps 配置通知。See https://prometheus.io/docs/alerting/latest/configuration/#victorops_config
- 类型
-
object
属性 | 类型 | 描述 |
---|---|---|
|
| secret 的密钥包含与 VictorOps API 对话时要使用的 API 密钥。secret 需要与 AlertmanagerConfig 对象位于同一个命名空间中,并可以被 Prometheus Operator 访问。 |
|
| VictorOps API URL。 |
|
| 通知的其他自定义字段。 |
|
| KeyValue 定义一个(key, value) tuple。 |
|
| 包含警报问题的摘要。 |
|
| HTTP 客户端的配置。 |
|
| 描述警报的行为(CRITICAL、WARNING、INFO)。 |
|
| 监控工具,状态消息来自。 |
|
| 用于将警报映射到团队的关键。 |
|
| 是否要通知已解析的警报。 |
|
| 包含警报问题的长解释。 |
3.1.229. .spec.receivers[].victoropsConfigs[].apiKey
- 描述
- secret 的密钥包含与 VictorOps API 对话时要使用的 API 密钥。secret 需要与 AlertmanagerConfig 对象位于同一个命名空间中,并可以被 Prometheus Operator 访问。
- 类型
-
object
- 必填
-
key
-
名称
-
属性 | 类型 | 描述 |
---|---|---|
|
| 要从中选择的 secret 的密钥。必须是一个有效的 secret 密钥。 |
|
| 要选择的对象命名空间中的 secret 名称。 |
3.1.230. .spec.receivers[].victoropsConfigs[].customFields
- 描述
- 通知的其他自定义字段。
- 类型
-
array
3.1.231. .spec.receivers[].victoropsConfigs[].customFields[]
- 描述
- KeyValue 定义一个(key, value) tuple。
- 类型
-
object
- 必填
-
key
-
value
-
属性 | 类型 | 描述 |
---|---|---|
|
| 元组的密钥。 |
|
| 元组的值。 |
3.1.232. .spec.receivers[].victoropsConfigs[].httpConfig
- 描述
- HTTP 客户端的配置。
- 类型
-
object
属性 | 类型 | 描述 |
---|---|---|
|
| 客户端的授权标头配置。这与 BasicAuth 相互排斥,且只能从 Alertmanager v0.22+ 开始。 |
|
| 客户端的 basicAuth。这是与授权相互排斥的。如果定义了这两者,则 BasicAuth 优先。 |
|
| 包含客户端用于身份验证的 bearer 令牌的机密密钥。secret 需要与 AlertmanagerConfig 对象位于同一个命名空间中,并可以被 Prometheus Operator 访问。 |
|
| FollowRedirects 指定客户端是否应该遵循 HTTP 3xx 重定向。 |
|
| 用于获取目标令牌的 OAuth2 客户端凭据。 |
|
| 可选的代理 URL。 |
|
| 客户端的 TLS 配置。 |
3.1.233. .spec.receivers[].victoropsConfigs[].httpConfig.authorization
- 描述
- 客户端的授权标头配置。这与 BasicAuth 相互排斥,且只能从 Alertmanager v0.22+ 开始。
- 类型
-
object
属性 | 类型 | 描述 |
---|---|---|
|
| 选择命名空间中包含用于身份验证的凭证的 Secret 的键。 |
|
| 定义身份验证类型。该值不区分大小写。 "basic"不是受支持的值。 默认:"Bearer" |
3.1.234. .spec.receivers[].victoropsConfigs[].httpConfig.authorization.credentials
- 描述
- 选择命名空间中包含用于身份验证的凭证的 Secret 的键。
- 类型
-
object
- 必填
-
key
-
属性 | 类型 | 描述 |
---|---|---|
|
| 要从中选择的 secret 的密钥。必须是一个有效的 secret 密钥。 |
|
|
引用的名称。有效地需要此字段,但因为允许向后兼容为空。这里具有空值的此类实例几乎是错误的。TODO:添加其他有用的字段。apiVersion、kind、uid?更多信息: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names TODO: 当 controller-gen 不需要 https://github.com/kubernetes-sigs/kubebuilder/issues/3896 时,Drop |
|
| 指定是否需要定义 Secret 还是其密钥 |
3.1.235. .spec.receivers[].victoropsConfigs[].httpConfig.basicAuth
- 描述
- 客户端的 basicAuth。这是与授权相互排斥的。如果定义了这两者,则 BasicAuth 优先。
- 类型
-
object
属性 | 类型 | 描述 |
---|---|---|
|
|
|
|
|
|
3.1.236. .spec.receivers[].victoropsConfigs[].httpConfig.basicAuth.password
- 描述
-
password
指定包含用于身份验证的密码的 Secret 的键。 - 类型
-
object
- 必填
-
key
-
属性 | 类型 | 描述 |
---|---|---|
|
| 要从中选择的 secret 的密钥。必须是一个有效的 secret 密钥。 |
|
|
引用的名称。有效地需要此字段,但因为允许向后兼容为空。这里具有空值的此类实例几乎是错误的。TODO:添加其他有用的字段。apiVersion、kind、uid?更多信息: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names TODO: 当 controller-gen 不需要 https://github.com/kubernetes-sigs/kubebuilder/issues/3896 时,Drop |
|
| 指定是否需要定义 Secret 还是其密钥 |
3.1.237. .spec.receivers[].victoropsConfigs[].httpConfig.basicAuth.username
- 描述
-
username
指定包含用于身份验证的用户名的 Secret 的键。 - 类型
-
object
- 必填
-
key
-
属性 | 类型 | 描述 |
---|---|---|
|
| 要从中选择的 secret 的密钥。必须是一个有效的 secret 密钥。 |
|
|
引用的名称。有效地需要此字段,但因为允许向后兼容为空。这里具有空值的此类实例几乎是错误的。TODO:添加其他有用的字段。apiVersion、kind、uid?更多信息: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names TODO: 当 controller-gen 不需要 https://github.com/kubernetes-sigs/kubebuilder/issues/3896 时,Drop |
|
| 指定是否需要定义 Secret 还是其密钥 |
3.1.238. .spec.receivers[].victoropsConfigs[].httpConfig.bearerTokenSecret
- 描述
- 包含客户端用于身份验证的 bearer 令牌的机密密钥。secret 需要与 AlertmanagerConfig 对象位于同一个命名空间中,并可以被 Prometheus Operator 访问。
- 类型
-
object
- 必填
-
key
-
名称
-
属性 | 类型 | 描述 |
---|---|---|
|
| 要从中选择的 secret 的密钥。必须是一个有效的 secret 密钥。 |
|
| 要选择的对象命名空间中的 secret 名称。 |
3.1.239. .spec.receivers[].victoropsConfigs[].httpConfig.oauth2
- 描述
- 用于获取目标令牌的 OAuth2 客户端凭据。
- 类型
-
object
- 必填
-
clientId
-
clientSecret
-
tokenUrl
-
属性 | 类型 | 描述 |
---|---|---|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
3.1.240. .spec.receivers[].victoropsConfigs[].httpConfig.oauth2.clientId
- 描述
-
clientId
指定包含 OAuth2 客户端 ID 的 Secret 或 ConfigMap 的键。 - 类型
-
object
属性 | 类型 | 描述 |
---|---|---|
|
| 包含用于目标的数据的 ConfigMap。 |
|
| 包含用于目标的数据的 secret。 |
3.1.241. .spec.receivers[].victoropsConfigs[].httpConfig.oauth2.clientId.configMap
- 描述
- 包含用于目标的数据的 ConfigMap。
- 类型
-
object
- 必填
-
key
-
属性 | 类型 | 描述 |
---|---|---|
|
| 要选择的密钥。 |
|
|
引用的名称。有效地需要此字段,但因为允许向后兼容为空。这里具有空值的此类实例几乎是错误的。TODO:添加其他有用的字段。apiVersion、kind、uid?更多信息: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names TODO: 当 controller-gen 不需要 https://github.com/kubernetes-sigs/kubebuilder/issues/3896 时,Drop |
|
| 指定是否必须定义 ConfigMap 还是其键 |
3.1.242. .spec.receivers[].victoropsConfigs[].httpConfig.oauth2.clientId.secret
- 描述
- 包含用于目标的数据的 secret。
- 类型
-
object
- 必填
-
key
-
属性 | 类型 | 描述 |
---|---|---|
|
| 要从中选择的 secret 的密钥。必须是一个有效的 secret 密钥。 |
|
|
引用的名称。有效地需要此字段,但因为允许向后兼容为空。这里具有空值的此类实例几乎是错误的。TODO:添加其他有用的字段。apiVersion、kind、uid?更多信息: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names TODO: 当 controller-gen 不需要 https://github.com/kubernetes-sigs/kubebuilder/issues/3896 时,Drop |
|
| 指定是否需要定义 Secret 还是其密钥 |
3.1.243. .spec.receivers[].victoropsConfigs[].httpConfig.oauth2.clientSecret
- 描述
-
clientSecret
指定包含 OAuth2 客户端 secret 的 Secret 的密钥。 - 类型
-
object
- 必填
-
key
-
属性 | 类型 | 描述 |
---|---|---|
|
| 要从中选择的 secret 的密钥。必须是一个有效的 secret 密钥。 |
|
|
引用的名称。有效地需要此字段,但因为允许向后兼容为空。这里具有空值的此类实例几乎是错误的。TODO:添加其他有用的字段。apiVersion、kind、uid?更多信息: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names TODO: 当 controller-gen 不需要 https://github.com/kubernetes-sigs/kubebuilder/issues/3896 时,Drop |
|
| 指定是否需要定义 Secret 还是其密钥 |
3.1.244. .spec.receivers[].victoropsConfigs[].httpConfig.tlsConfig
- 描述
- 客户端的 TLS 配置。
- 类型
-
object
属性 | 类型 | 描述 |
---|---|---|
|
| 验证服务器证书时使用的证书颁发机构。 |
|
| 执行 client-authentication 时要出现的客户端证书。 |
|
| 禁用目标证书验证。 |
|
| 包含目标客户端密钥文件的 secret。 |
|
| 用于验证目标的主机名。 |
3.1.245. .spec.receivers[].victoropsConfigs[].httpConfig.tlsConfig.ca
- 描述
- 验证服务器证书时使用的证书颁发机构。
- 类型
-
object
属性 | 类型 | 描述 |
---|---|---|
|
| 包含用于目标的数据的 ConfigMap。 |
|
| 包含用于目标的数据的 secret。 |
3.1.246. .spec.receivers[].victoropsConfigs[].httpConfig.tlsConfig.ca.configMap
- 描述
- 包含用于目标的数据的 ConfigMap。
- 类型
-
object
- 必填
-
key
-
属性 | 类型 | 描述 |
---|---|---|
|
| 要选择的密钥。 |
|
|
引用的名称。有效地需要此字段,但因为允许向后兼容为空。这里具有空值的此类实例几乎是错误的。TODO:添加其他有用的字段。apiVersion、kind、uid?更多信息: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names TODO: 当 controller-gen 不需要 https://github.com/kubernetes-sigs/kubebuilder/issues/3896 时,Drop |
|
| 指定是否必须定义 ConfigMap 还是其键 |
3.1.247. .spec.receivers[].victoropsConfigs[].httpConfig.tlsConfig.ca.secret
- 描述
- 包含用于目标的数据的 secret。
- 类型
-
object
- 必填
-
key
-
属性 | 类型 | 描述 |
---|---|---|
|
| 要从中选择的 secret 的密钥。必须是一个有效的 secret 密钥。 |
|
|
引用的名称。有效地需要此字段,但因为允许向后兼容为空。这里具有空值的此类实例几乎是错误的。TODO:添加其他有用的字段。apiVersion、kind、uid?更多信息: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names TODO: 当 controller-gen 不需要 https://github.com/kubernetes-sigs/kubebuilder/issues/3896 时,Drop |
|
| 指定是否需要定义 Secret 还是其密钥 |
3.1.248. .spec.receivers[].victoropsConfigs[].httpConfig.tlsConfig.cert
- 描述
- 执行 client-authentication 时要出现的客户端证书。
- 类型
-
object
属性 | 类型 | 描述 |
---|---|---|
|
| 包含用于目标的数据的 ConfigMap。 |
|
| 包含用于目标的数据的 secret。 |
3.1.249. .spec.receivers[].victoropsConfigs[].httpConfig.tlsConfig.cert.configMap
- 描述
- 包含用于目标的数据的 ConfigMap。
- 类型
-
object
- 必填
-
key
-
属性 | 类型 | 描述 |
---|---|---|
|
| 要选择的密钥。 |
|
|
引用的名称。有效地需要此字段,但因为允许向后兼容为空。这里具有空值的此类实例几乎是错误的。TODO:添加其他有用的字段。apiVersion、kind、uid?更多信息: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names TODO: 当 controller-gen 不需要 https://github.com/kubernetes-sigs/kubebuilder/issues/3896 时,Drop |
|
| 指定是否必须定义 ConfigMap 还是其键 |
3.1.250. .spec.receivers[].victoropsConfigs[].httpConfig.tlsConfig.cert.secret
- 描述
- 包含用于目标的数据的 secret。
- 类型
-
object
- 必填
-
key
-
属性 | 类型 | 描述 |
---|---|---|
|
| 要从中选择的 secret 的密钥。必须是一个有效的 secret 密钥。 |
|
|
引用的名称。有效地需要此字段,但因为允许向后兼容为空。这里具有空值的此类实例几乎是错误的。TODO:添加其他有用的字段。apiVersion、kind、uid?更多信息: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names TODO: 当 controller-gen 不需要 https://github.com/kubernetes-sigs/kubebuilder/issues/3896 时,Drop |
|
| 指定是否需要定义 Secret 还是其密钥 |
3.1.251. .spec.receivers[].victoropsConfigs[].httpConfig.tlsConfig.keySecret
- 描述
- 包含目标客户端密钥文件的 secret。
- 类型
-
object
- 必填
-
key
-
属性 | 类型 | 描述 |
---|---|---|
|
| 要从中选择的 secret 的密钥。必须是一个有效的 secret 密钥。 |
|
|
引用的名称。有效地需要此字段,但因为允许向后兼容为空。这里具有空值的此类实例几乎是错误的。TODO:添加其他有用的字段。apiVersion、kind、uid?更多信息: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names TODO: 当 controller-gen 不需要 https://github.com/kubernetes-sigs/kubebuilder/issues/3896 时,Drop |
|
| 指定是否需要定义 Secret 还是其密钥 |
3.1.252. .spec.receivers[].webexConfigs
- 描述
- Webex 配置列表。
- 类型
-
数组
3.1.253. .spec.receivers[].webexConfigs[]
- 描述
- WebexConfig 通过 Cisco Webex 配置通知,请参阅 https://prometheus.io/docs/alerting/latest/configuration/#webex_config
- 类型
-
object
- 必填
-
roomID
-
属性 | 类型 | 描述 |
---|---|---|
|
| Webex Teams API URL,例如 https://webexapis.com/v1/messages |
|
|
HTTP 客户端的配置。您必须使用此配置来提供 bot 令牌作为 HTTP |
|
| 消息模板 |
|
| Webex 团队在其中发送消息的 ID。 |
|
| 是否通知已解析的警报。 |
3.1.254. .spec.receivers[].webexConfigs[].httpConfig
- 描述
-
HTTP 客户端的配置。您必须使用此配置来提供 bot 令牌作为 HTTP
Authorization
标头的一部分。 - 类型
-
object
属性 | 类型 | 描述 |
---|---|---|
|
| 客户端的授权标头配置。这与 BasicAuth 相互排斥,且只能从 Alertmanager v0.22+ 开始。 |
|
| 客户端的 basicAuth。这是与授权相互排斥的。如果定义了这两者,则 BasicAuth 优先。 |
|
| 包含客户端用于身份验证的 bearer 令牌的机密密钥。secret 需要与 AlertmanagerConfig 对象位于同一个命名空间中,并可以被 Prometheus Operator 访问。 |
|
| FollowRedirects 指定客户端是否应该遵循 HTTP 3xx 重定向。 |
|
| 用于获取目标令牌的 OAuth2 客户端凭据。 |
|
| 可选的代理 URL。 |
|
| 客户端的 TLS 配置。 |
3.1.255. .spec.receivers[].webexConfigs[].httpConfig.authorization
- 描述
- 客户端的授权标头配置。这与 BasicAuth 相互排斥,且只能从 Alertmanager v0.22+ 开始。
- 类型
-
object
属性 | 类型 | 描述 |
---|---|---|
|
| 选择命名空间中包含用于身份验证的凭证的 Secret 的键。 |
|
| 定义身份验证类型。该值不区分大小写。 "basic"不是受支持的值。 默认:"Bearer" |
3.1.256. .spec.receivers[].webexConfigs[].httpConfig.authorization.credentials
- 描述
- 选择命名空间中包含用于身份验证的凭证的 Secret 的键。
- 类型
-
object
- 必填
-
key
-
属性 | 类型 | 描述 |
---|---|---|
|
| 要从中选择的 secret 的密钥。必须是一个有效的 secret 密钥。 |
|
|
引用的名称。有效地需要此字段,但因为允许向后兼容为空。这里具有空值的此类实例几乎是错误的。TODO:添加其他有用的字段。apiVersion、kind、uid?更多信息: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names TODO: 当 controller-gen 不需要 https://github.com/kubernetes-sigs/kubebuilder/issues/3896 时,Drop |
|
| 指定是否需要定义 Secret 还是其密钥 |
3.1.257. .spec.receivers[].webexConfigs[].httpConfig.basicAuth
- 描述
- 客户端的 basicAuth。这是与授权相互排斥的。如果定义了这两者,则 BasicAuth 优先。
- 类型
-
object
属性 | 类型 | 描述 |
---|---|---|
|
|
|
|
|
|
3.1.258. .spec.receivers[].webexConfigs[].httpConfig.basicAuth.password
- 描述
-
password
指定包含用于身份验证的密码的 Secret 的键。 - 类型
-
object
- 必填
-
key
-
属性 | 类型 | 描述 |
---|---|---|
|
| 要从中选择的 secret 的密钥。必须是一个有效的 secret 密钥。 |
|
|
引用的名称。有效地需要此字段,但因为允许向后兼容为空。这里具有空值的此类实例几乎是错误的。TODO:添加其他有用的字段。apiVersion、kind、uid?更多信息: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names TODO: 当 controller-gen 不需要 https://github.com/kubernetes-sigs/kubebuilder/issues/3896 时,Drop |
|
| 指定是否需要定义 Secret 还是其密钥 |
3.1.259. .spec.receivers[].webexConfigs[].httpConfig.basicAuth.username
- 描述
-
username
指定包含用于身份验证的用户名的 Secret 的键。 - 类型
-
object
- 必填
-
key
-
属性 | 类型 | 描述 |
---|---|---|
|
| 要从中选择的 secret 的密钥。必须是一个有效的 secret 密钥。 |
|
|
引用的名称。有效地需要此字段,但因为允许向后兼容为空。这里具有空值的此类实例几乎是错误的。TODO:添加其他有用的字段。apiVersion、kind、uid?更多信息: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names TODO: 当 controller-gen 不需要 https://github.com/kubernetes-sigs/kubebuilder/issues/3896 时,Drop |
|
| 指定是否需要定义 Secret 还是其密钥 |
3.1.260. .spec.receivers[].webexConfigs[].httpConfig.bearerTokenSecret
- 描述
- 包含客户端用于身份验证的 bearer 令牌的机密密钥。secret 需要与 AlertmanagerConfig 对象位于同一个命名空间中,并可以被 Prometheus Operator 访问。
- 类型
-
object
- 必填
-
key
-
名称
-
属性 | 类型 | 描述 |
---|---|---|
|
| 要从中选择的 secret 的密钥。必须是一个有效的 secret 密钥。 |
|
| 要选择的对象命名空间中的 secret 名称。 |
3.1.261. .spec.receivers[].webexConfigs[].httpConfig.oauth2
- 描述
- 用于获取目标令牌的 OAuth2 客户端凭据。
- 类型
-
object
- 必填
-
clientId
-
clientSecret
-
tokenUrl
-
属性 | 类型 | 描述 |
---|---|---|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
3.1.262. .spec.receivers[].webexConfigs[].httpConfig.oauth2.clientId
- 描述
-
clientId
指定包含 OAuth2 客户端 ID 的 Secret 或 ConfigMap 的键。 - 类型
-
object
属性 | 类型 | 描述 |
---|---|---|
|
| 包含用于目标的数据的 ConfigMap。 |
|
| 包含用于目标的数据的 secret。 |
3.1.263. .spec.receivers[].webexConfigs[].httpConfig.oauth2.clientId.configMap
- 描述
- 包含用于目标的数据的 ConfigMap。
- 类型
-
object
- 必填
-
key
-
属性 | 类型 | 描述 |
---|---|---|
|
| 要选择的密钥。 |
|
|
引用的名称。有效地需要此字段,但因为允许向后兼容为空。这里具有空值的此类实例几乎是错误的。TODO:添加其他有用的字段。apiVersion、kind、uid?更多信息: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names TODO: 当 controller-gen 不需要 https://github.com/kubernetes-sigs/kubebuilder/issues/3896 时,Drop |
|
| 指定是否必须定义 ConfigMap 还是其键 |
3.1.264. .spec.receivers[].webexConfigs[].httpConfig.oauth2.clientId.secret
- 描述
- 包含用于目标的数据的 secret。
- 类型
-
object
- 必填
-
key
-
属性 | 类型 | 描述 |
---|---|---|
|
| 要从中选择的 secret 的密钥。必须是一个有效的 secret 密钥。 |
|
|
引用的名称。有效地需要此字段,但因为允许向后兼容为空。这里具有空值的此类实例几乎是错误的。TODO:添加其他有用的字段。apiVersion、kind、uid?更多信息: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names TODO: 当 controller-gen 不需要 https://github.com/kubernetes-sigs/kubebuilder/issues/3896 时,Drop |
|
| 指定是否需要定义 Secret 还是其密钥 |
3.1.265. .spec.receivers[].webexConfigs[].httpConfig.oauth2.clientSecret
- 描述
-
clientSecret
指定包含 OAuth2 客户端 secret 的 Secret 的密钥。 - 类型
-
object
- 必填
-
key
-
属性 | 类型 | 描述 |
---|---|---|
|
| 要从中选择的 secret 的密钥。必须是一个有效的 secret 密钥。 |
|
|
引用的名称。有效地需要此字段,但因为允许向后兼容为空。这里具有空值的此类实例几乎是错误的。TODO:添加其他有用的字段。apiVersion、kind、uid?更多信息: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names TODO: 当 controller-gen 不需要 https://github.com/kubernetes-sigs/kubebuilder/issues/3896 时,Drop |
|
| 指定是否需要定义 Secret 还是其密钥 |
3.1.266. .spec.receivers[].webexConfigs[].httpConfig.tlsConfig
- 描述
- 客户端的 TLS 配置。
- 类型
-
object
属性 | 类型 | 描述 |
---|---|---|
|
| 验证服务器证书时使用的证书颁发机构。 |
|
| 执行 client-authentication 时要出现的客户端证书。 |
|
| 禁用目标证书验证。 |
|
| 包含目标客户端密钥文件的 secret。 |
|
| 用于验证目标的主机名。 |
3.1.267. .spec.receivers[].webexConfigs[].httpConfig.tlsConfig.ca
- 描述
- 验证服务器证书时使用的证书颁发机构。
- 类型
-
object
属性 | 类型 | 描述 |
---|---|---|
|
| 包含用于目标的数据的 ConfigMap。 |
|
| 包含用于目标的数据的 secret。 |
3.1.268. .spec.receivers[].webexConfigs[].httpConfig.tlsConfig.ca.configMap
- 描述
- 包含用于目标的数据的 ConfigMap。
- 类型
-
object
- 必填
-
key
-
属性 | 类型 | 描述 |
---|---|---|
|
| 要选择的密钥。 |
|
|
引用的名称。有效地需要此字段,但因为允许向后兼容为空。这里具有空值的此类实例几乎是错误的。TODO:添加其他有用的字段。apiVersion、kind、uid?更多信息: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names TODO: 当 controller-gen 不需要 https://github.com/kubernetes-sigs/kubebuilder/issues/3896 时,Drop |
|
| 指定是否必须定义 ConfigMap 还是其键 |
3.1.269. .spec.receivers[].webexConfigs[].httpConfig.tlsConfig.ca.secret
- 描述
- 包含用于目标的数据的 secret。
- 类型
-
object
- 必填
-
key
-
属性 | 类型 | 描述 |
---|---|---|
|
| 要从中选择的 secret 的密钥。必须是一个有效的 secret 密钥。 |
|
|
引用的名称。有效地需要此字段,但因为允许向后兼容为空。这里具有空值的此类实例几乎是错误的。TODO:添加其他有用的字段。apiVersion、kind、uid?更多信息: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names TODO: 当 controller-gen 不需要 https://github.com/kubernetes-sigs/kubebuilder/issues/3896 时,Drop |
|
| 指定是否需要定义 Secret 还是其密钥 |
3.1.270. .spec.receivers[].webexConfigs[].httpConfig.tlsConfig.cert
- 描述
- 执行 client-authentication 时要出现的客户端证书。
- 类型
-
object
属性 | 类型 | 描述 |
---|---|---|
|
| 包含用于目标的数据的 ConfigMap。 |
|
| 包含用于目标的数据的 secret。 |
3.1.271. .spec.receivers[].webexConfigs[].httpConfig.tlsConfig.cert.configMap
- 描述
- 包含用于目标的数据的 ConfigMap。
- 类型
-
object
- 必填
-
key
-
属性 | 类型 | 描述 |
---|---|---|
|
| 要选择的密钥。 |
|
|
引用的名称。有效地需要此字段,但因为允许向后兼容为空。这里具有空值的此类实例几乎是错误的。TODO:添加其他有用的字段。apiVersion、kind、uid?更多信息: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names TODO: 当 controller-gen 不需要 https://github.com/kubernetes-sigs/kubebuilder/issues/3896 时,Drop |
|
| 指定是否必须定义 ConfigMap 还是其键 |
3.1.272. .spec.receivers[].webexConfigs[].httpConfig.tlsConfig.cert.secret
- 描述
- 包含用于目标的数据的 secret。
- 类型
-
object
- 必填
-
key
-
属性 | 类型 | 描述 |
---|---|---|
|
| 要从中选择的 secret 的密钥。必须是一个有效的 secret 密钥。 |
|
|
引用的名称。有效地需要此字段,但因为允许向后兼容为空。这里具有空值的此类实例几乎是错误的。TODO:添加其他有用的字段。apiVersion、kind、uid?更多信息: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names TODO: 当 controller-gen 不需要 https://github.com/kubernetes-sigs/kubebuilder/issues/3896 时,Drop |
|
| 指定是否需要定义 Secret 还是其密钥 |
3.1.273. .spec.receivers[].webexConfigs[].httpConfig.tlsConfig.keySecret
- 描述
- 包含目标客户端密钥文件的 secret。
- 类型
-
object
- 必填
-
key
-
属性 | 类型 | 描述 |
---|---|---|
|
| 要从中选择的 secret 的密钥。必须是一个有效的 secret 密钥。 |
|
|
引用的名称。有效地需要此字段,但因为允许向后兼容为空。这里具有空值的此类实例几乎是错误的。TODO:添加其他有用的字段。apiVersion、kind、uid?更多信息: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names TODO: 当 controller-gen 不需要 https://github.com/kubernetes-sigs/kubebuilder/issues/3896 时,Drop |
|
| 指定是否需要定义 Secret 还是其密钥 |
3.1.274. .spec.receivers[].webhookConfigs
- 描述
- Webhook 配置列表。
- 类型
-
array
3.1.275. .spec.receivers[].webhookConfigs[]
- 描述
- WebhookConfig 通过支持 webhook 有效负载的通用接收器配置通知。See https://prometheus.io/docs/alerting/latest/configuration/#webhook_config
- 类型
-
object
属性 | 类型 | 描述 |
---|---|---|
|
| HTTP 客户端配置。 |
|
| 每个 Webhook 消息发送的最大警报数。当 0 时,所有警报都会被包含。 |
|
| 是否要通知已解析的警报。 |
|
|
将 HTTP POST 请求发送到的 URL。 |
|
|
包含向发送 HTTP 请求的 webhook URL 的 secret 的密钥。 |
3.1.276. .spec.receivers[].webhookConfigs[].httpConfig
- 描述
- HTTP 客户端配置。
- 类型
-
object
属性 | 类型 | 描述 |
---|---|---|
|
| 客户端的授权标头配置。这与 BasicAuth 相互排斥,且只能从 Alertmanager v0.22+ 开始。 |
|
| 客户端的 basicAuth。这是与授权相互排斥的。如果定义了这两者,则 BasicAuth 优先。 |
|
| 包含客户端用于身份验证的 bearer 令牌的机密密钥。secret 需要与 AlertmanagerConfig 对象位于同一个命名空间中,并可以被 Prometheus Operator 访问。 |
|
| FollowRedirects 指定客户端是否应该遵循 HTTP 3xx 重定向。 |
|
| 用于获取目标令牌的 OAuth2 客户端凭据。 |
|
| 可选的代理 URL。 |
|
| 客户端的 TLS 配置。 |
3.1.277. .spec.receivers[].webhookConfigs[].httpConfig.authorization
- 描述
- 客户端的授权标头配置。这与 BasicAuth 相互排斥,且只能从 Alertmanager v0.22+ 开始。
- 类型
-
object
属性 | 类型 | 描述 |
---|---|---|
|
| 选择命名空间中包含用于身份验证的凭证的 Secret 的键。 |
|
| 定义身份验证类型。该值不区分大小写。 "basic"不是受支持的值。 默认:"Bearer" |
3.1.278. .spec.receivers[].webhookConfigs[].httpConfig.authorization.credentials
- 描述
- 选择命名空间中包含用于身份验证的凭证的 Secret 的键。
- 类型
-
object
- 必填
-
key
-
属性 | 类型 | 描述 |
---|---|---|
|
| 要从中选择的 secret 的密钥。必须是一个有效的 secret 密钥。 |
|
|
引用的名称。有效地需要此字段,但因为允许向后兼容为空。这里具有空值的此类实例几乎是错误的。TODO:添加其他有用的字段。apiVersion、kind、uid?更多信息: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names TODO: 当 controller-gen 不需要 https://github.com/kubernetes-sigs/kubebuilder/issues/3896 时,Drop |
|
| 指定是否需要定义 Secret 还是其密钥 |
3.1.279. .spec.receivers[].webhookConfigs[].httpConfig.basicAuth
- 描述
- 客户端的 basicAuth。这是与授权相互排斥的。如果定义了这两者,则 BasicAuth 优先。
- 类型
-
object
属性 | 类型 | 描述 |
---|---|---|
|
|
|
|
|
|
3.1.280. .spec.receivers[].webhookConfigs[].httpConfig.basicAuth.password
- 描述
-
password
指定包含用于身份验证的密码的 Secret 的键。 - 类型
-
object
- 必填
-
key
-
属性 | 类型 | 描述 |
---|---|---|
|
| 要从中选择的 secret 的密钥。必须是一个有效的 secret 密钥。 |
|
|
引用的名称。有效地需要此字段,但因为允许向后兼容为空。这里具有空值的此类实例几乎是错误的。TODO:添加其他有用的字段。apiVersion、kind、uid?更多信息: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names TODO: 当 controller-gen 不需要 https://github.com/kubernetes-sigs/kubebuilder/issues/3896 时,Drop |
|
| 指定是否需要定义 Secret 还是其密钥 |
3.1.281. .spec.receivers[].webhookConfigs[].httpConfig.basicAuth.username
- 描述
-
username
指定包含用于身份验证的用户名的 Secret 的键。 - 类型
-
object
- 必填
-
key
-
属性 | 类型 | 描述 |
---|---|---|
|
| 要从中选择的 secret 的密钥。必须是一个有效的 secret 密钥。 |
|
|
引用的名称。有效地需要此字段,但因为允许向后兼容为空。这里具有空值的此类实例几乎是错误的。TODO:添加其他有用的字段。apiVersion、kind、uid?更多信息: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names TODO: 当 controller-gen 不需要 https://github.com/kubernetes-sigs/kubebuilder/issues/3896 时,Drop |
|
| 指定是否需要定义 Secret 还是其密钥 |
3.1.282. .spec.receivers[].webhookConfigs[].httpConfig.bearerTokenSecret
- 描述
- 包含客户端用于身份验证的 bearer 令牌的机密密钥。secret 需要与 AlertmanagerConfig 对象位于同一个命名空间中,并可以被 Prometheus Operator 访问。
- 类型
-
object
- 必填
-
key
-
名称
-
属性 | 类型 | 描述 |
---|---|---|
|
| 要从中选择的 secret 的密钥。必须是一个有效的 secret 密钥。 |
|
| 要选择的对象命名空间中的 secret 名称。 |
3.1.283. .spec.receivers[].webhookConfigs[].httpConfig.oauth2
- 描述
- 用于获取目标令牌的 OAuth2 客户端凭据。
- 类型
-
object
- 必填
-
clientId
-
clientSecret
-
tokenUrl
-
属性 | 类型 | 描述 |
---|---|---|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
3.1.284. .spec.receivers[].webhookConfigs[].httpConfig.oauth2.clientId
- 描述
-
clientId
指定包含 OAuth2 客户端 ID 的 Secret 或 ConfigMap 的键。 - 类型
-
object
属性 | 类型 | 描述 |
---|---|---|
|
| 包含用于目标的数据的 ConfigMap。 |
|
| 包含用于目标的数据的 secret。 |
3.1.285. .spec.receivers[].webhookConfigs[].httpConfig.oauth2.clientId.configMap
- 描述
- 包含用于目标的数据的 ConfigMap。
- 类型
-
object
- 必填
-
key
-
属性 | 类型 | 描述 |
---|---|---|
|
| 要选择的密钥。 |
|
|
引用的名称。有效地需要此字段,但因为允许向后兼容为空。这里具有空值的此类实例几乎是错误的。TODO:添加其他有用的字段。apiVersion、kind、uid?更多信息: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names TODO: 当 controller-gen 不需要 https://github.com/kubernetes-sigs/kubebuilder/issues/3896 时,Drop |
|
| 指定是否必须定义 ConfigMap 还是其键 |
3.1.286. .spec.receivers[].webhookConfigs[].httpConfig.oauth2.clientId.secret
- 描述
- 包含用于目标的数据的 secret。
- 类型
-
object
- 必填
-
key
-
属性 | 类型 | 描述 |
---|---|---|
|
| 要从中选择的 secret 的密钥。必须是一个有效的 secret 密钥。 |
|
|
引用的名称。有效地需要此字段,但因为允许向后兼容为空。这里具有空值的此类实例几乎是错误的。TODO:添加其他有用的字段。apiVersion、kind、uid?更多信息: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names TODO: 当 controller-gen 不需要 https://github.com/kubernetes-sigs/kubebuilder/issues/3896 时,Drop |
|
| 指定是否需要定义 Secret 还是其密钥 |
3.1.287. .spec.receivers[].webhookConfigs[].httpConfig.oauth2.clientSecret
- 描述
-
clientSecret
指定包含 OAuth2 客户端 secret 的 Secret 的密钥。 - 类型
-
object
- 必填
-
key
-
属性 | 类型 | 描述 |
---|---|---|
|
| 要从中选择的 secret 的密钥。必须是一个有效的 secret 密钥。 |
|
|
引用的名称。有效地需要此字段,但因为允许向后兼容为空。这里具有空值的此类实例几乎是错误的。TODO:添加其他有用的字段。apiVersion、kind、uid?更多信息: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names TODO: 当 controller-gen 不需要 https://github.com/kubernetes-sigs/kubebuilder/issues/3896 时,Drop |
|
| 指定是否需要定义 Secret 还是其密钥 |
3.1.288. .spec.receivers[].webhookConfigs[].httpConfig.tlsConfig
- 描述
- 客户端的 TLS 配置。
- 类型
-
object
属性 | 类型 | 描述 |
---|---|---|
|
| 验证服务器证书时使用的证书颁发机构。 |
|
| 执行 client-authentication 时要出现的客户端证书。 |
|
| 禁用目标证书验证。 |
|
| 包含目标客户端密钥文件的 secret。 |
|
| 用于验证目标的主机名。 |
3.1.289. .spec.receivers[].webhookConfigs[].httpConfig.tlsConfig.ca
- 描述
- 验证服务器证书时使用的证书颁发机构。
- 类型
-
object
属性 | 类型 | 描述 |
---|---|---|
|
| 包含用于目标的数据的 ConfigMap。 |
|
| 包含用于目标的数据的 secret。 |
3.1.290. .spec.receivers[].webhookConfigs[].httpConfig.tlsConfig.ca.configMap
- 描述
- 包含用于目标的数据的 ConfigMap。
- 类型
-
object
- 必填
-
key
-
属性 | 类型 | 描述 |
---|---|---|
|
| 要选择的密钥。 |
|
|
引用的名称。有效地需要此字段,但因为允许向后兼容为空。这里具有空值的此类实例几乎是错误的。TODO:添加其他有用的字段。apiVersion、kind、uid?更多信息: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names TODO: 当 controller-gen 不需要 https://github.com/kubernetes-sigs/kubebuilder/issues/3896 时,Drop |
|
| 指定是否必须定义 ConfigMap 还是其键 |
3.1.291. .spec.receivers[].webhookConfigs[].httpConfig.tlsConfig.ca.secret
- 描述
- 包含用于目标的数据的 secret。
- 类型
-
object
- 必填
-
key
-
属性 | 类型 | 描述 |
---|---|---|
|
| 要从中选择的 secret 的密钥。必须是一个有效的 secret 密钥。 |
|
|
引用的名称。有效地需要此字段,但因为允许向后兼容为空。这里具有空值的此类实例几乎是错误的。TODO:添加其他有用的字段。apiVersion、kind、uid?更多信息: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names TODO: 当 controller-gen 不需要 https://github.com/kubernetes-sigs/kubebuilder/issues/3896 时,Drop |
|
| 指定是否需要定义 Secret 还是其密钥 |
3.1.292. .spec.receivers[].webhookConfigs[].httpConfig.tlsConfig.cert
- 描述
- 执行 client-authentication 时要出现的客户端证书。
- 类型
-
object
属性 | 类型 | 描述 |
---|---|---|
|
| 包含用于目标的数据的 ConfigMap。 |
|
| 包含用于目标的数据的 secret。 |
3.1.293. .spec.receivers[].webhookConfigs[].httpConfig.tlsConfig.cert.configMap
- 描述
- 包含用于目标的数据的 ConfigMap。
- 类型
-
object
- 必填
-
key
-
属性 | 类型 | 描述 |
---|---|---|
|
| 要选择的密钥。 |
|
|
引用的名称。有效地需要此字段,但因为允许向后兼容为空。这里具有空值的此类实例几乎是错误的。TODO:添加其他有用的字段。apiVersion、kind、uid?更多信息: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names TODO: 当 controller-gen 不需要 https://github.com/kubernetes-sigs/kubebuilder/issues/3896 时,Drop |
|
| 指定是否必须定义 ConfigMap 还是其键 |
3.1.294. .spec.receivers[].webhookConfigs[].httpConfig.tlsConfig.cert.secret
- 描述
- 包含用于目标的数据的 secret。
- 类型
-
object
- 必填
-
key
-
属性 | 类型 | 描述 |
---|---|---|
|
| 要从中选择的 secret 的密钥。必须是一个有效的 secret 密钥。 |
|
|
引用的名称。有效地需要此字段,但因为允许向后兼容为空。这里具有空值的此类实例几乎是错误的。TODO:添加其他有用的字段。apiVersion、kind、uid?更多信息: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names TODO: 当 controller-gen 不需要 https://github.com/kubernetes-sigs/kubebuilder/issues/3896 时,Drop |
|
| 指定是否需要定义 Secret 还是其密钥 |
3.1.295. .spec.receivers[].webhookConfigs[].httpConfig.tlsConfig.keySecret
- 描述
- 包含目标客户端密钥文件的 secret。
- 类型
-
object
- 必填
-
key
-
属性 | 类型 | 描述 |
---|---|---|
|
| 要从中选择的 secret 的密钥。必须是一个有效的 secret 密钥。 |
|
|
引用的名称。有效地需要此字段,但因为允许向后兼容为空。这里具有空值的此类实例几乎是错误的。TODO:添加其他有用的字段。apiVersion、kind、uid?更多信息: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names TODO: 当 controller-gen 不需要 https://github.com/kubernetes-sigs/kubebuilder/issues/3896 时,Drop |
|
| 指定是否需要定义 Secret 还是其密钥 |
3.1.296. .spec.receivers[].webhookConfigs[].urlSecret
- 描述
-
包含向发送 HTTP 请求的 webhook URL 的 secret 的密钥。
urlSecret
优先于url
。应该定义urlSecret
和url
中的一个。secret 需要与 AlertmanagerConfig 对象位于同一个命名空间中,并可以被 Prometheus Operator 访问。 - 类型
-
object
- 必填
-
key
-
名称
-
属性 | 类型 | 描述 |
---|---|---|
|
| 要从中选择的 secret 的密钥。必须是一个有效的 secret 密钥。 |
|
| 要选择的对象命名空间中的 secret 名称。 |
3.1.297. .spec.receivers[].wechatConfigs
- 描述
- WeChat 配置列表。
- 类型
-
array
3.1.298. .spec.receivers[].wechatConfigs[]
- 描述
- WeChatConfig 通过 WeChat 配置通知。See https://prometheus.io/docs/alerting/latest/configuration/#wechat_config
- 类型
-
object
属性 | 类型 | 描述 |
---|---|---|
|
| |
|
| 包含 WeChat API 密钥的机密密钥。secret 需要与 AlertmanagerConfig 对象位于同一个命名空间中,并可以被 Prometheus Operator 访问。 |
|
| WeChat API URL。 |
|
| 用于身份验证的 corp id。 |
|
| HTTP 客户端配置。 |
|
| API 请求数据由 WeChat API 定义。 |
|
| |
|
| 是否要通知已解析的警报。 |
|
| |
|
| |
|
|
3.1.299. .spec.receivers[].wechatConfigs[].apiSecret
- 描述
- 包含 WeChat API 密钥的机密密钥。secret 需要与 AlertmanagerConfig 对象位于同一个命名空间中,并可以被 Prometheus Operator 访问。
- 类型
-
object
- 必填
-
key
-
名称
-
属性 | 类型 | 描述 |
---|---|---|
|
| 要从中选择的 secret 的密钥。必须是一个有效的 secret 密钥。 |
|
| 要选择的对象命名空间中的 secret 名称。 |
3.1.300. .spec.receivers[].wechatConfigs[].httpConfig
- 描述
- HTTP 客户端配置。
- 类型
-
object
属性 | 类型 | 描述 |
---|---|---|
|
| 客户端的授权标头配置。这与 BasicAuth 相互排斥,且只能从 Alertmanager v0.22+ 开始。 |
|
| 客户端的 basicAuth。这是与授权相互排斥的。如果定义了这两者,则 BasicAuth 优先。 |
|
| 包含客户端用于身份验证的 bearer 令牌的机密密钥。secret 需要与 AlertmanagerConfig 对象位于同一个命名空间中,并可以被 Prometheus Operator 访问。 |
|
| FollowRedirects 指定客户端是否应该遵循 HTTP 3xx 重定向。 |
|
| 用于获取目标令牌的 OAuth2 客户端凭据。 |
|
| 可选的代理 URL。 |
|
| 客户端的 TLS 配置。 |
3.1.301. .spec.receivers[].wechatConfigs[].httpConfig.authorization
- 描述
- 客户端的授权标头配置。这与 BasicAuth 相互排斥,且只能从 Alertmanager v0.22+ 开始。
- 类型
-
object
属性 | 类型 | 描述 |
---|---|---|
|
| 选择命名空间中包含用于身份验证的凭证的 Secret 的键。 |
|
| 定义身份验证类型。该值不区分大小写。 "basic"不是受支持的值。 默认:"Bearer" |
3.1.302. .spec.receivers[].wechatConfigs[].httpConfig.authorization.credentials
- 描述
- 选择命名空间中包含用于身份验证的凭证的 Secret 的键。
- 类型
-
object
- 必填
-
key
-
属性 | 类型 | 描述 |
---|---|---|
|
| 要从中选择的 secret 的密钥。必须是一个有效的 secret 密钥。 |
|
|
引用的名称。有效地需要此字段,但因为允许向后兼容为空。这里具有空值的此类实例几乎是错误的。TODO:添加其他有用的字段。apiVersion、kind、uid?更多信息: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names TODO: 当 controller-gen 不需要 https://github.com/kubernetes-sigs/kubebuilder/issues/3896 时,Drop |
|
| 指定是否需要定义 Secret 还是其密钥 |
3.1.303. .spec.receivers[].wechatConfigs[].httpConfig.basicAuth
- 描述
- 客户端的 basicAuth。这是与授权相互排斥的。如果定义了这两者,则 BasicAuth 优先。
- 类型
-
object
属性 | 类型 | 描述 |
---|---|---|
|
|
|
|
|
|
3.1.304. .spec.receivers[].wechatConfigs[].httpConfig.basicAuth.password
- 描述
-
password
指定包含用于身份验证的密码的 Secret 的键。 - 类型
-
object
- 必填
-
key
-
属性 | 类型 | 描述 |
---|---|---|
|
| 要从中选择的 secret 的密钥。必须是一个有效的 secret 密钥。 |
|
|
引用的名称。有效地需要此字段,但因为允许向后兼容为空。这里具有空值的此类实例几乎是错误的。TODO:添加其他有用的字段。apiVersion、kind、uid?更多信息: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names TODO: 当 controller-gen 不需要 https://github.com/kubernetes-sigs/kubebuilder/issues/3896 时,Drop |
|
| 指定是否需要定义 Secret 还是其密钥 |
3.1.305. .spec.receivers[].wechatConfigs[].httpConfig.basicAuth.username
- 描述
-
username
指定包含用于身份验证的用户名的 Secret 的键。 - 类型
-
object
- 必填
-
key
-
属性 | 类型 | 描述 |
---|---|---|
|
| 要从中选择的 secret 的密钥。必须是一个有效的 secret 密钥。 |
|
|
引用的名称。有效地需要此字段,但因为允许向后兼容为空。这里具有空值的此类实例几乎是错误的。TODO:添加其他有用的字段。apiVersion、kind、uid?更多信息: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names TODO: 当 controller-gen 不需要 https://github.com/kubernetes-sigs/kubebuilder/issues/3896 时,Drop |
|
| 指定是否需要定义 Secret 还是其密钥 |
3.1.306. .spec.receivers[].wechatConfigs[].httpConfig.bearerTokenSecret
- 描述
- 包含客户端用于身份验证的 bearer 令牌的机密密钥。secret 需要与 AlertmanagerConfig 对象位于同一个命名空间中,并可以被 Prometheus Operator 访问。
- 类型
-
object
- 必填
-
key
-
名称
-
属性 | 类型 | 描述 |
---|---|---|
|
| 要从中选择的 secret 的密钥。必须是一个有效的 secret 密钥。 |
|
| 要选择的对象命名空间中的 secret 名称。 |
3.1.307. .spec.receivers[].wechatConfigs[].httpConfig.oauth2
- 描述
- 用于获取目标令牌的 OAuth2 客户端凭据。
- 类型
-
object
- 必填
-
clientId
-
clientSecret
-
tokenUrl
-
属性 | 类型 | 描述 |
---|---|---|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
3.1.308. .spec.receivers[].wechatConfigs[].httpConfig.oauth2.clientId
- 描述
-
clientId
指定包含 OAuth2 客户端 ID 的 Secret 或 ConfigMap 的键。 - 类型
-
object
属性 | 类型 | 描述 |
---|---|---|
|
| 包含用于目标的数据的 ConfigMap。 |
|
| 包含用于目标的数据的 secret。 |
3.1.309. .spec.receivers[].wechatConfigs[].httpConfig.oauth2.clientId.configMap
- 描述
- 包含用于目标的数据的 ConfigMap。
- 类型
-
object
- 必填
-
key
-
属性 | 类型 | 描述 |
---|---|---|
|
| 要选择的密钥。 |
|
|
引用的名称。有效地需要此字段,但因为允许向后兼容为空。这里具有空值的此类实例几乎是错误的。TODO:添加其他有用的字段。apiVersion、kind、uid?更多信息: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names TODO: 当 controller-gen 不需要 https://github.com/kubernetes-sigs/kubebuilder/issues/3896 时,Drop |
|
| 指定是否必须定义 ConfigMap 还是其键 |
3.1.310. .spec.receivers[].wechatConfigs[].httpConfig.oauth2.clientId.secret
- 描述
- 包含用于目标的数据的 secret。
- 类型
-
object
- 必填
-
key
-
属性 | 类型 | 描述 |
---|---|---|
|
| 要从中选择的 secret 的密钥。必须是一个有效的 secret 密钥。 |
|
|
引用的名称。有效地需要此字段,但因为允许向后兼容为空。这里具有空值的此类实例几乎是错误的。TODO:添加其他有用的字段。apiVersion、kind、uid?更多信息: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names TODO: 当 controller-gen 不需要 https://github.com/kubernetes-sigs/kubebuilder/issues/3896 时,Drop |
|
| 指定是否需要定义 Secret 还是其密钥 |
3.1.311. .spec.receivers[].wechatConfigs[].httpConfig.oauth2.clientSecret
- 描述
-
clientSecret
指定包含 OAuth2 客户端 secret 的 Secret 的密钥。 - 类型
-
object
- 必填
-
key
-
属性 | 类型 | 描述 |
---|---|---|
|
| 要从中选择的 secret 的密钥。必须是一个有效的 secret 密钥。 |
|
|
引用的名称。有效地需要此字段,但因为允许向后兼容为空。这里具有空值的此类实例几乎是错误的。TODO:添加其他有用的字段。apiVersion、kind、uid?更多信息: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names TODO: 当 controller-gen 不需要 https://github.com/kubernetes-sigs/kubebuilder/issues/3896 时,Drop |
|
| 指定是否需要定义 Secret 还是其密钥 |
3.1.312. .spec.receivers[].wechatConfigs[].httpConfig.tlsConfig
- 描述
- 客户端的 TLS 配置。
- 类型
-
object
属性 | 类型 | 描述 |
---|---|---|
|
| 验证服务器证书时使用的证书颁发机构。 |
|
| 执行 client-authentication 时要出现的客户端证书。 |
|
| 禁用目标证书验证。 |
|
| 包含目标客户端密钥文件的 secret。 |
|
| 用于验证目标的主机名。 |
3.1.313. .spec.receivers[].wechatConfigs[].httpConfig.tlsConfig.ca
- 描述
- 验证服务器证书时使用的证书颁发机构。
- 类型
-
object
属性 | 类型 | 描述 |
---|---|---|
|
| 包含用于目标的数据的 ConfigMap。 |
|
| 包含用于目标的数据的 secret。 |
3.1.314. .spec.receivers[].wechatConfigs[].httpConfig.tlsConfig.ca.configMap
- 描述
- 包含用于目标的数据的 ConfigMap。
- 类型
-
object
- 必填
-
key
-
属性 | 类型 | 描述 |
---|---|---|
|
| 要选择的密钥。 |
|
|
引用的名称。有效地需要此字段,但因为允许向后兼容为空。这里具有空值的此类实例几乎是错误的。TODO:添加其他有用的字段。apiVersion、kind、uid?更多信息: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names TODO: 当 controller-gen 不需要 https://github.com/kubernetes-sigs/kubebuilder/issues/3896 时,Drop |
|
| 指定是否必须定义 ConfigMap 还是其键 |
3.1.315. .spec.receivers[].wechatConfigs[].httpConfig.tlsConfig.ca.secret
- 描述
- 包含用于目标的数据的 secret。
- 类型
-
object
- 必填
-
key
-
属性 | 类型 | 描述 |
---|---|---|
|
| 要从中选择的 secret 的密钥。必须是一个有效的 secret 密钥。 |
|
|
引用的名称。有效地需要此字段,但因为允许向后兼容为空。这里具有空值的此类实例几乎是错误的。TODO:添加其他有用的字段。apiVersion、kind、uid?更多信息: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names TODO: 当 controller-gen 不需要 https://github.com/kubernetes-sigs/kubebuilder/issues/3896 时,Drop |
|
| 指定是否需要定义 Secret 还是其密钥 |
3.1.316. .spec.receivers[].wechatConfigs[].httpConfig.tlsConfig.cert
- 描述
- 执行 client-authentication 时要出现的客户端证书。
- 类型
-
object
属性 | 类型 | 描述 |
---|---|---|
|
| 包含用于目标的数据的 ConfigMap。 |
|
| 包含用于目标的数据的 secret。 |
3.1.317. .spec.receivers[].wechatConfigs[].httpConfig.tlsConfig.cert.configMap
- 描述
- 包含用于目标的数据的 ConfigMap。
- 类型
-
object
- 必填
-
key
-
属性 | 类型 | 描述 |
---|---|---|
|
| 要选择的密钥。 |
|
|
引用的名称。有效地需要此字段,但因为允许向后兼容为空。这里具有空值的此类实例几乎是错误的。TODO:添加其他有用的字段。apiVersion、kind、uid?更多信息: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names TODO: 当 controller-gen 不需要 https://github.com/kubernetes-sigs/kubebuilder/issues/3896 时,Drop |
|
| 指定是否必须定义 ConfigMap 还是其键 |
3.1.318. .spec.receivers[].wechatConfigs[].httpConfig.tlsConfig.cert.secret
- 描述
- 包含用于目标的数据的 secret。
- 类型
-
object
- 必填
-
key
-
属性 | 类型 | 描述 |
---|---|---|
|
| 要从中选择的 secret 的密钥。必须是一个有效的 secret 密钥。 |
|
|
引用的名称。有效地需要此字段,但因为允许向后兼容为空。这里具有空值的此类实例几乎是错误的。TODO:添加其他有用的字段。apiVersion、kind、uid?更多信息: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names TODO: 当 controller-gen 不需要 https://github.com/kubernetes-sigs/kubebuilder/issues/3896 时,Drop |
|
| 指定是否需要定义 Secret 还是其密钥 |
3.1.319. .spec.receivers[].wechatConfigs[].httpConfig.tlsConfig.keySecret
- 描述
- 包含目标客户端密钥文件的 secret。
- 类型
-
object
- 必填
-
key
-
属性 | 类型 | 描述 |
---|---|---|
|
| 要从中选择的 secret 的密钥。必须是一个有效的 secret 密钥。 |
|
|
引用的名称。有效地需要此字段,但因为允许向后兼容为空。这里具有空值的此类实例几乎是错误的。TODO:添加其他有用的字段。apiVersion、kind、uid?更多信息: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names TODO: 当 controller-gen 不需要 https://github.com/kubernetes-sigs/kubebuilder/issues/3896 时,Drop |
|
| 指定是否需要定义 Secret 还是其密钥 |
3.1.320. .spec.route
- 描述
- 与资源命名空间匹配的警报的 Alertmanager 路由定义。如果存在,它将作为第一级路由添加到生成的 Alertmanager 配置中。
- 类型
-
object
属性 | 类型 | 描述 |
---|---|---|
|
| ActiveTimeIntervals 是此路由应处于活跃状态时的 TimeInterval 名称列表。 |
|
| 指明警报是否应该继续与后续同级节点匹配的布尔值。对于 Prometheus Operator 的第一级路由,它将始终被覆盖。 |
|
| 要组的标签列表,如下所示:标签不能重复(唯一列表)。如果提供,特殊标签 "…" (由所有可能的标签(如果提供)必须是列表中的唯一元素。 |
|
| 发送更新通知前等待多久。必须匹配正则表达式'^(()? (([0-9]) w)? (() d)? ([0-9]) h)? (() m)? ([0-9]) s)? ([0-9]+) ms)?$' Example: "5m" |
|
| 发送初始通知前等待多久。必须匹配正则表达式'^(()? (([0-9]) w)? (() d)? ([0-9]) h)? (() m)? ([0-9]) s)? ([0-9]+) ms)?$' Example: "30s" |
|
|
警报标签应匹配的匹配者列表。对于第一个级别路由,Operator 会删除命名空间标签上的任何现有相等性和 regexp matcher,并添加 |
|
| Matcher 定义如何在警报的标签上匹配。 |
|
| 注:此注释适用于上面的字段定义,但显示在下面,否则它将包含在生成的清单中。CRD 模式目前不支持自我引用类型(请参阅 https://github.com/kubernetes/kubernetes/issues/62872)。我们必须使用替代类型来绕过限制。缺点是 Kube API 无法验证其是有效的 JSON 表示法之外的数据。MuteTimeIntervals 是一个 TimeInterval 名称列表,在匹配时将静默此路由。 |
|
|
此路由的接收器名称。如果没有为空,它应该列在 |
|
| 重复最后通知前等待多久。必须匹配正则表达式'^(()? (([0-9]) w)? (() d)? ([0-9]) h)? (() m)? ([0-9]) s)? ([0-9]+) ms)?$' Example: "4h" |
|
| 子路由. |
3.1.321. .spec.route.matchers
- 描述
-
警报标签应匹配的匹配者列表。对于第一个级别路由,Operator 会删除命名空间标签上的任何现有相等性和 regexp matcher,并添加
namespace
: <object namespace>
matcher。 - 类型
-
array
3.1.322. .spec.route.matchers[]
- 描述
- Matcher 定义如何在警报的标签上匹配。
- 类型
-
object
- 必填
-
name
-
属性 | 类型 | 描述 |
---|---|---|
|
|
匹配 operator, one of |
|
| 要匹配的标签。 |
|
| 要匹配的标签值。 |
3.1.323. .spec.timeIntervals
- 描述
- TimeInterval 列表,指定路由应可变或处于活动状态的时间。
- 类型
-
数组
3.1.324. .spec.timeIntervals[]
- 描述
- TimeInterval 指定通知将静默或激活的时间周期。
- 类型
-
object
属性 | 类型 | 描述 |
---|---|---|
|
| 时间间隔的名称。 |
|
| TimeIntervals 是 TimePeriods 列表。 |
|
| TimePeriod 描述了时间段。 |
3.1.325. .spec.timeIntervals[].timeIntervals
- 描述
- TimeIntervals 是 TimePeriods 列表。
- 类型
-
数组
3.1.326. .spec.timeIntervals[].timeIntervals[]
- 描述
- TimePeriod 描述了时间段。
- 类型
-
object
属性 | 类型 | 描述 |
---|---|---|
|
| DaysOfMonth 是 DayOfMonthRange 列表 |
|
| DayOfMonthRange 是自 1 开始的月的天数 |
|
| months 是 MonthRange 列表 |
|
| times 是 TimeRange 列表 |
|
| TimeRange 以 24hr 格式定义开始和结束时间 |
|
| weekdays 是 WeekdayRange 列表 |
|
| years 是 YearRange 的列表。 |
3.1.327. .spec.timeIntervals[].timeIntervals[].daysOfMonth
- 描述
- DaysOfMonth 是 DayOfMonthRange 列表
- 类型
-
数组
3.1.328. .spec.timeIntervals[].timeIntervals[].daysOfMonth[]
- 描述
- DayOfMonthRange 是自 1 开始的月的天数
- 类型
-
object
属性 | 类型 | 描述 |
---|---|---|
|
| 包含范围的末尾 |
|
| 从包含范围开始 |
3.1.329. .spec.timeIntervals[].timeIntervals[].times
- 描述
- times 是 TimeRange 列表
- 类型
-
数组
3.1.330. .spec.timeIntervals[].timeIntervals[].times[]
- 描述
- TimeRange 以 24hr 格式定义开始和结束时间
- 类型
-
object
属性 | 类型 | 描述 |
---|---|---|
|
| ENDTIME 是 24hr 格式的结束时间。 |
|
| startTime 是 24hr 格式的开始时间。 |
3.2. API 端点
可用的 API 端点如下:
/apis/monitoring.coreos.com/v1beta1/alertmanagerconfigs
-
GET
: 列出类型为 AlertmanagerConfig 的对象
-
/apis/monitoring.coreos.com/v1beta1/namespaces/{namespace}/alertmanagerconfigs
-
DELETE
:删除 AlertmanagerConfig 集合 -
GET
: 列出类型为 AlertmanagerConfig 的对象 -
POST
:创建 AlertmanagerConfig
-
/apis/monitoring.coreos.com/v1beta1/namespaces/{namespace}/alertmanagerconfigs/{name}
-
DELETE
:删除 AlertmanagerConfig -
GET
:读取指定的 AlertmanagerConfig -
PATCH
: 部分更新指定的 AlertmanagerConfig -
PUT
:替换指定的 AlertmanagerConfig
-
3.2.1. /apis/monitoring.coreos.com/v1beta1/alertmanagerconfigs
- HTTP 方法
-
GET
- 描述
- 列出 AlertmanagerConfig 类型的对象
HTTP 代码 | 响应正文 |
---|---|
200 - OK | |
401 - Unauthorized | 空 |
3.2.2. /apis/monitoring.coreos.com/v1beta1/namespaces/{namespace}/alertmanagerconfigs
- HTTP 方法
-
DELETE
- 描述
- 删除 AlertmanagerConfig 集合
HTTP 代码 | 响应正文 |
---|---|
200 - OK |
|
401 - Unauthorized | 空 |
- HTTP 方法
-
GET
- 描述
- 列出 AlertmanagerConfig 类型的对象
HTTP 代码 | 响应正文 |
---|---|
200 - OK | |
401 - Unauthorized | 空 |
- HTTP 方法
-
POST
- 描述
- 创建 AlertmanagerConfig
参数 | 类型 | 描述 |
---|---|---|
|
| 出现时,表示不应保留修改。无效的或未被识别的 dryRun 指令将导致错误响应,且请求不会被进一步处理。有效值为: - All: 所有预演阶段都将被处理 |
|
| fieldValidation 指示服务器如何处理包含了未知或重复字段的请求 (POST/PUT/PATCH) 中的对象。有效值为: - Ignore :忽略从对象中静默丢弃的未知字段,并将忽略所有除最后一个重复字段以外的所有字段。这是 v1.23 版本之前的默认行为- Warn: 这会通过标准的警告响应头为从对象丢弃的每个未知字段以及遇到的每个重复字段,发送警告。如果没有其他错误,请求仍会成功,且只保留重复字段的最后一个。这是 v1.23+ 的的默认行为 - Strict: 如果从对象中删除了任何未知字段,或者存在任何重复字段,请求将失败并带有 BadRequest 错误。从服务器返回的错误将包含遇到的,以及重复的字段。 |
参数 | 类型 | 描述 |
---|---|---|
|
HTTP 代码 | 响应正文 |
---|---|
200 - OK | |
201 - Created | |
202 - Accepted | |
401 - Unauthorized | 空 |
3.2.3. /apis/monitoring.coreos.com/v1beta1/namespaces/{namespace}/alertmanagerconfigs/{name}
参数 | 类型 | 描述 |
---|---|---|
|
| AlertmanagerConfig 的名称 |
- HTTP 方法
-
DELETE
- 描述
- delete an AlertmanagerConfig
参数 | 类型 | 描述 |
---|---|---|
|
| 出现时,表示不应保留修改。无效的或未被识别的 dryRun 指令将导致错误响应,且请求不会被进一步处理。有效值为: - All: 所有预演阶段都将被处理 |
HTTP 代码 | 响应正文 |
---|---|
200 - OK |
|
202 - Accepted |
|
401 - Unauthorized | 空 |
- HTTP 方法
-
GET
- 描述
- 读取指定的 AlertmanagerConfig
HTTP 代码 | 响应正文 |
---|---|
200 - OK | |
401 - Unauthorized | 空 |
- HTTP 方法
-
PATCH
- 描述
- 部分更新指定的 AlertmanagerConfig
参数 | 类型 | 描述 |
---|---|---|
|
| 出现时,表示不应保留修改。无效的或未被识别的 dryRun 指令将导致错误响应,且请求不会被进一步处理。有效值为: - All: 所有预演阶段都将被处理 |
|
| fieldValidation 指示服务器如何处理包含了未知或重复字段的请求 (POST/PUT/PATCH) 中的对象。有效值为: - Ignore :忽略从对象中静默丢弃的未知字段,并将忽略所有除最后一个重复字段以外的所有字段。这是 v1.23 版本之前的默认行为- Warn: 这会通过标准的警告响应头为从对象丢弃的每个未知字段以及遇到的每个重复字段,发送警告。如果没有其他错误,请求仍会成功,且只保留重复字段的最后一个。这是 v1.23+ 的的默认行为 - Strict: 如果从对象中删除了任何未知字段,或者存在任何重复字段,请求将失败并带有 BadRequest 错误。从服务器返回的错误将包含遇到的,以及重复的字段。 |
HTTP 代码 | 响应正文 |
---|---|
200 - OK | |
401 - Unauthorized | 空 |
- HTTP 方法
-
PUT
- 描述
- 替换指定的 AlertmanagerConfig
参数 | 类型 | 描述 |
---|---|---|
|
| 出现时,表示不应保留修改。无效的或未被识别的 dryRun 指令将导致错误响应,且请求不会被进一步处理。有效值为: - All: 所有预演阶段都将被处理 |
|
| fieldValidation 指示服务器如何处理包含了未知或重复字段的请求 (POST/PUT/PATCH) 中的对象。有效值为: - Ignore :忽略从对象中静默丢弃的未知字段,并将忽略所有除最后一个重复字段以外的所有字段。这是 v1.23 版本之前的默认行为- Warn: 这会通过标准的警告响应头为从对象丢弃的每个未知字段以及遇到的每个重复字段,发送警告。如果没有其他错误,请求仍会成功,且只保留重复字段的最后一个。这是 v1.23+ 的的默认行为 - Strict: 如果从对象中删除了任何未知字段,或者存在任何重复字段,请求将失败并带有 BadRequest 错误。从服务器返回的错误将包含遇到的,以及重复的字段。 |
参数 | 类型 | 描述 |
---|---|---|
|
HTTP 代码 | 响应正文 |
---|---|
200 - OK | |
201 - Created | |
401 - Unauthorized | 空 |
第 4 章 AlertRelabelConfig [monitoring.openshift.io/v1]
- 描述
- AlertRelabelConfig 为警报定义一组重新标记配置。兼容性级别 1:在主发行版本中至少提供 12 个月或 3 个次版本(以更长的时间为准)。
- 类型
-
object
- 必填
-
spec
-
4.1. 规格
属性 | 类型 | 描述 |
---|---|---|
|
| APIVersion 定义对象的这个表示法的版本化的 schema。服务器应该将识别的模式转换为最新的内部值,并可拒绝未识别的值。更多信息: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources |
|
| kind 是一个字符串值,代表此对象所代表的 REST 资源。服务器可以从客户端向其提交请求的端点推断。无法更新。采用驼峰拼写法 (CamelCase)。更多信息: 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 | |
|
| spec 描述此 AlertRelabelConfig 对象的所需状态。 |
|
| status 描述了此 AlertRelabelConfig 对象的当前状态。 |
4.1.1. .spec
- 描述
- spec 描述此 AlertRelabelConfig 对象的所需状态。
- 类型
-
object
- 必填
-
配置
-
属性 | 类型 | 描述 |
---|---|---|
|
| 配置是按顺序评估的警报重新标记配置的列表。 |
|
| RelabelConfig 允许为警报动态重写标签集。请参阅 Prometheus 文档: - https://prometheus.io/docs/prometheus/latest/configuration/configuration/#alert_relabel_configs - https://prometheus.io/docs/prometheus/latest/configuration/configuration/#relabel_config |
4.1.2. .spec.configs
- 描述
- 配置是按顺序评估的警报重新标记配置的列表。
- 类型
-
数组
4.1.3. .spec.configs[]
- 描述
- RelabelConfig 允许为警报动态重写标签集。请参阅 Prometheus 文档: - https://prometheus.io/docs/prometheus/latest/configuration/configuration/#alert_relabel_configs - https://prometheus.io/docs/prometheus/latest/configuration/configuration/#relabel_config
- 类型
-
object
属性 | 类型 | 描述 |
---|---|---|
|
| 根据正则表达式匹配要执行的操作。必须是: 'Replace', 'Keep', 'Drop', 'HashMod', 'LabelMap', 'LabelDrop', 或 'LabelKeep' 之一。默认为: 'Replace' |
|
| modulus 采用 source 标签值的哈希。这可以与 'HashMod' 操作结合使用,将 'target_label' 设置为串联的 'source_labels' 哈希的 'modulus'。这只有在 sourceLabels 不是空的,且 action 不是 'LabelKeep' 或 'LabelDrop' 时才有效。 |
|
| 匹配提取的值的正则表达式。默认为:除 'HashMod' 以外的所有操作都需要 '(configured)' regex |
|
| 如果正则表达式匹配,则执行 regex 替换的替换值。如果操作为 'Replace' 或 'LabelMap',并且禁止操作 'LabelKeep' 和 'LabelDrop',则需要此项。正则表达式捕获组可用。默认为: '$1' |
|
| 在串联的源标签值之间放置分隔符。如果省略,Prometheus 将使用其默认值 ';'。 |
|
| sourceLabels 从现有标签中选择值。其内容使用配置的分隔符连接,并与配置的 'Replace'、'Keep' 和 'Drop' 操作匹配。不允许操作 'LabelKeep' 和 'LabelDrop'。 |
|
| targetLabel,生成的值以 'Replace' 操作写入。'Replace' 和 'HashMod' 操作需要,并禁止操作 'LabelKeep' 和 'LabelDrop'。正则表达式捕获组可用。 |
4.1.4. .status
- 描述
- status 描述了此 AlertRelabelConfig 对象的当前状态。
- 类型
-
object
属性 | 类型 | 描述 |
---|---|---|
|
| conditions 包含 AlertRelabelConfig 状态的详细信息,可能为空。 |
|
|
条件包含此 API 资源当前状态的一个方面的详情。--- 这个结构旨在直接用作字段路径 .status.conditions 中的数组。例如,输入 FooStatus struct{ // Represents the observations of a foo’s current state. // Known .status.conditions.type are: "Available", "Progressing", and "Degraded" // +patchMergeKey=type // +patchStrategy=merge // +listType=map // +listMapKey=type Conditions []metav1.Condition |
4.1.5. .status.conditions
- 描述
- conditions 包含 AlertRelabelConfig 状态的详细信息,可能为空。
- 类型
-
array
4.1.6. .status.conditions[]
- 描述
-
条件包含此 API 资源当前状态的一个方面的详情。--- 这个结构旨在直接用作字段路径 .status.conditions 中的数组。例如,输入 FooStatus struct{ // Represents the observations of a foo’s current state. // Known .status.conditions.type are: "Available", "Progressing", and "Degraded" // +patchMergeKey=type // +patchStrategy=merge // +listType=map // +listMapKey=type Conditions []metav1.Condition
json:"conditions,omitempty" patchStrategy:"merge" patchMergeKey:"type" protobuf:"bytes,1,rep,name=conditions"
// other fields } - 类型
-
object
- 必填
-
lastTransitionTime
-
message
-
reason
-
status
-
type
-
属性 | 类型 | 描述 |
---|---|---|
|
| lastTransitionTime 是条件从一个状态转换到另一个状态最后一次的时间。这应该是底层条件变化的时间。如果为未知,则使用 API 字段更改的时间是可以接受的。 |
|
| Message 是人类可读的消息,指示有关转换的详细信息。这可能是一个空字符串。 |
|
| observedGeneration 代表 .metadata.generation,这是条件设置所基于的条件。例如,如果 .metadata.generation 目前为 12,但 .status.conditions[x].observedGeneration 是 9,则代表条件与实例的当前状态已不匹配。 |
|
| reason 包含程序标识符,指示条件最后一次转换的原因。特定条件类型的制作者可能会定义预期的值和此字段的含义,以及这些值是否被视为有保证的 API。该值应该是 CamelCase 字符串。此字段可能不是空的。 |
|
| 条件的状态,True, False, Unknown 之一。 |
|
| CamelCase 或 foo.example.com/CamelCase 中的条件类型。-- Many .condition.type 值在资源间是一致的,但因为任意条件可能很有用(请参阅 .node.status.conditions),deconflict 的能力非常重要。它匹配的正则表达式是 (dns1123SubdomainFmt/)? (qualifiedNameFmt) |
4.2. API 端点
可用的 API 端点如下:
/apis/monitoring.openshift.io/v1/alertrelabelconfigs
-
GET
: 列出类型为 AlertRelabelConfig 的对象
-
/apis/monitoring.openshift.io/v1/namespaces/{namespace}/alertrelabelconfigs
-
DELETE
: delete collection of AlertRelabelConfig -
GET
: 列出类型为 AlertRelabelConfig 的对象 -
POST
:创建 AlertRelabelConfig
-
/apis/monitoring.openshift.io/v1/namespaces/{namespace}/alertrelabelconfigs/{name}
-
DELETE
: delete an AlertRelabelConfig -
GET
:读取指定的 AlertRelabelConfig -
PATCH
: 部分更新指定的 AlertRelabelConfig -
PUT
:替换指定的 AlertRelabelConfig
-
/apis/monitoring.openshift.io/v1/namespaces/{namespace}/alertrelabelconfigs/{name}/status
-
GET
:指定 AlertRelabelConfig 的读取状态 -
PATCH
: 部分更新指定 AlertRelabelConfig 的状态 -
PUT
:替换指定 AlertRelabelConfig 的状态
-
4.2.1. /apis/monitoring.openshift.io/v1/alertrelabelconfigs
- HTTP 方法
-
GET
- 描述
- 列出 kind AlertRelabelConfig 的对象
HTTP 代码 | 响应正文 |
---|---|
200 - OK |
|
401 - Unauthorized | 空 |
4.2.2. /apis/monitoring.openshift.io/v1/namespaces/{namespace}/alertrelabelconfigs
- HTTP 方法
-
DELETE
- 描述
- delete collection of AlertRelabelConfig
HTTP 代码 | 响应正文 |
---|---|
200 - OK |
|
401 - Unauthorized | 空 |
- HTTP 方法
-
GET
- 描述
- 列出 kind AlertRelabelConfig 的对象
HTTP 代码 | 响应正文 |
---|---|
200 - OK |
|
401 - Unauthorized | 空 |
- HTTP 方法
-
POST
- 描述
- create an AlertRelabelConfig
参数 | 类型 | 描述 |
---|---|---|
|
| 出现时,表示不应保留修改。无效的或未被识别的 dryRun 指令将导致错误响应,且请求不会被进一步处理。有效值为: - All: 所有预演阶段都将被处理 |
|
| fieldValidation 指示服务器如何处理包含了未知或重复字段的请求 (POST/PUT/PATCH) 中的对象。有效值为: - Ignore :忽略从对象中静默丢弃的未知字段,并将忽略所有除最后一个重复字段以外的所有字段。这是 v1.23 版本之前的默认行为- Warn: 这会通过标准的警告响应头为从对象丢弃的每个未知字段以及遇到的每个重复字段,发送警告。如果没有其他错误,请求仍会成功,且只保留重复字段的最后一个。这是 v1.23+ 的的默认行为 - Strict: 如果从对象中删除了任何未知字段,或者存在任何重复字段,请求将失败并带有 BadRequest 错误。从服务器返回的错误将包含遇到的,以及重复的字段。 |
参数 | 类型 | 描述 |
---|---|---|
|
|
HTTP 代码 | 响应正文 |
---|---|
200 - OK |
|
201 - Created |
|
202 - Accepted |
|
401 - Unauthorized | 空 |
4.2.3. /apis/monitoring.openshift.io/v1/namespaces/{namespace}/alertrelabelconfigs/{name}
参数 | 类型 | 描述 |
---|---|---|
|
| AlertRelabelConfig 的名称 |
- HTTP 方法
-
DELETE
- 描述
- delete an AlertRelabelConfig
参数 | 类型 | 描述 |
---|---|---|
|
| 出现时,表示不应保留修改。无效的或未被识别的 dryRun 指令将导致错误响应,且请求不会被进一步处理。有效值为: - All: 所有预演阶段都将被处理 |
HTTP 代码 | 响应正文 |
---|---|
200 - OK |
|
202 - Accepted |
|
401 - Unauthorized | 空 |
- HTTP 方法
-
GET
- 描述
- 阅读指定的 AlertRelabelConfig
HTTP 代码 | 响应正文 |
---|---|
200 - OK |
|
401 - Unauthorized | 空 |
- HTTP 方法
-
PATCH
- 描述
- 部分更新指定的 AlertRelabelConfig
参数 | 类型 | 描述 |
---|---|---|
|
| 出现时,表示不应保留修改。无效的或未被识别的 dryRun 指令将导致错误响应,且请求不会被进一步处理。有效值为: - All: 所有预演阶段都将被处理 |
|
| fieldValidation 指示服务器如何处理包含了未知或重复字段的请求 (POST/PUT/PATCH) 中的对象。有效值为: - Ignore :忽略从对象中静默丢弃的未知字段,并将忽略所有除最后一个重复字段以外的所有字段。这是 v1.23 版本之前的默认行为- Warn: 这会通过标准的警告响应头为从对象丢弃的每个未知字段以及遇到的每个重复字段,发送警告。如果没有其他错误,请求仍会成功,且只保留重复字段的最后一个。这是 v1.23+ 的的默认行为 - Strict: 如果从对象中删除了任何未知字段,或者存在任何重复字段,请求将失败并带有 BadRequest 错误。从服务器返回的错误将包含遇到的,以及重复的字段。 |
HTTP 代码 | 响应正文 |
---|---|
200 - OK |
|
401 - Unauthorized | 空 |
- HTTP 方法
-
PUT
- 描述
- 替换指定的 AlertRelabelConfig
参数 | 类型 | 描述 |
---|---|---|
|
| 出现时,表示不应保留修改。无效的或未被识别的 dryRun 指令将导致错误响应,且请求不会被进一步处理。有效值为: - All: 所有预演阶段都将被处理 |
|
| fieldValidation 指示服务器如何处理包含了未知或重复字段的请求 (POST/PUT/PATCH) 中的对象。有效值为: - Ignore :忽略从对象中静默丢弃的未知字段,并将忽略所有除最后一个重复字段以外的所有字段。这是 v1.23 版本之前的默认行为- Warn: 这会通过标准的警告响应头为从对象丢弃的每个未知字段以及遇到的每个重复字段,发送警告。如果没有其他错误,请求仍会成功,且只保留重复字段的最后一个。这是 v1.23+ 的的默认行为 - Strict: 如果从对象中删除了任何未知字段,或者存在任何重复字段,请求将失败并带有 BadRequest 错误。从服务器返回的错误将包含遇到的,以及重复的字段。 |
参数 | 类型 | 描述 |
---|---|---|
|
|
HTTP 代码 | 响应正文 |
---|---|
200 - OK |
|
201 - Created |
|
401 - Unauthorized | 空 |
4.2.4. /apis/monitoring.openshift.io/v1/namespaces/{namespace}/alertrelabelconfigs/{name}/status
参数 | 类型 | 描述 |
---|---|---|
|
| AlertRelabelConfig 的名称 |
- HTTP 方法
-
GET
- 描述
- 指定 AlertRelabelConfig 的读取状态
HTTP 代码 | 响应正文 |
---|---|
200 - OK |
|
401 - Unauthorized | 空 |
- HTTP 方法
-
PATCH
- 描述
- 部分更新指定 AlertRelabelConfig 的状态
参数 | 类型 | 描述 |
---|---|---|
|
| 出现时,表示不应保留修改。无效的或未被识别的 dryRun 指令将导致错误响应,且请求不会被进一步处理。有效值为: - All: 所有预演阶段都将被处理 |
|
| fieldValidation 指示服务器如何处理包含了未知或重复字段的请求 (POST/PUT/PATCH) 中的对象。有效值为: - Ignore :忽略从对象中静默丢弃的未知字段,并将忽略所有除最后一个重复字段以外的所有字段。这是 v1.23 版本之前的默认行为- Warn: 这会通过标准的警告响应头为从对象丢弃的每个未知字段以及遇到的每个重复字段,发送警告。如果没有其他错误,请求仍会成功,且只保留重复字段的最后一个。这是 v1.23+ 的的默认行为 - Strict: 如果从对象中删除了任何未知字段,或者存在任何重复字段,请求将失败并带有 BadRequest 错误。从服务器返回的错误将包含遇到的,以及重复的字段。 |
HTTP 代码 | 响应正文 |
---|---|
200 - OK |
|
401 - Unauthorized | 空 |
- HTTP 方法
-
PUT
- 描述
- 替换指定 AlertRelabelConfig 的状态
参数 | 类型 | 描述 |
---|---|---|
|
| 出现时,表示不应保留修改。无效的或未被识别的 dryRun 指令将导致错误响应,且请求不会被进一步处理。有效值为: - All: 所有预演阶段都将被处理 |
|
| fieldValidation 指示服务器如何处理包含了未知或重复字段的请求 (POST/PUT/PATCH) 中的对象。有效值为: - Ignore :忽略从对象中静默丢弃的未知字段,并将忽略所有除最后一个重复字段以外的所有字段。这是 v1.23 版本之前的默认行为- Warn: 这会通过标准的警告响应头为从对象丢弃的每个未知字段以及遇到的每个重复字段,发送警告。如果没有其他错误,请求仍会成功,且只保留重复字段的最后一个。这是 v1.23+ 的的默认行为 - Strict: 如果从对象中删除了任何未知字段,或者存在任何重复字段,请求将失败并带有 BadRequest 错误。从服务器返回的错误将包含遇到的,以及重复的字段。 |
参数 | 类型 | 描述 |
---|---|---|
|
|
HTTP 代码 | 响应正文 |
---|---|
200 - OK |
|
201 - Created |
|
401 - Unauthorized | 空 |
第 5 章 AlertingRule [monitoring.openshift.io/v1]
- 描述
- AlertingRule 代表一组用户定义的 Prometheus 规则组,其中包含警报规则。此资源是集群管理员根据 OpenShift 中平台监控堆栈记录的指标创建警报的方法,如部署到 openshift-monitoring 命名空间中的 Prometheus 实例。您可以使用它来根据组件(如 node_exporter)中的指标创建没有 OpenShift 附带的自定义警报规则,它提供机器级别的指标,如 CPU 使用量或 kube-state-metrics,它提供了有关 Kubernetes 使用量的指标。API 与来自 prometheus-operator 的上游 PrometheusRule 类型兼容。这里不允许记录规则的主要区别。对于创建的每个 AlertingRule 资源,将在 openshift-monitoring 命名空间中创建对应的 PrometheusRule。OpenShift 要求管理员使用 AlertingRule 资源而不是上游类型,以允许更好的 OpenShift 默认和验证,而不直接修改上游 API。您可以在此处找到 PrometheusRule 资源的上游 API 文档 :https://github.com/prometheus-operator/prometheus-operator/blob/main/Documentation/api.md 兼容性级别 1: 可在主发行版本中至少提供 12 个月或 3 个次版本(以更长的时间为准)。
- 类型
-
object
- 必填
-
spec
-
5.1. 规格
属性 | 类型 | 描述 |
---|---|---|
|
| APIVersion 定义对象的这个表示法的版本化的 schema。服务器应该将识别的模式转换为最新的内部值,并可拒绝未识别的值。更多信息: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources |
|
| kind 是一个字符串值,代表此对象所代表的 REST 资源。服务器可以从客户端向其提交请求的端点推断。无法更新。采用驼峰拼写法 (CamelCase)。更多信息: 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 | |
|
| spec 描述此 AlertingRule 对象的所需状态。 |
|
| status 描述了此 AlertOverrides 对象的当前状态。 |
5.1.1. .spec
- 描述
- spec 描述此 AlertingRule 对象的所需状态。
- 类型
-
object
- 必填
-
groups
-
属性 | 类型 | 描述 |
---|---|---|
|
| 组是分组警报规则的列表。规则组是 Prometheus 并行处理规则的单元。单个组中的所有规则共享配置的评估间隔。组中的所有规则将在此间隔、顺序上处理,并将处理所有规则。通常,将相关的警报规则分组到单个 AlertingRule 资源中,并在该资源中、紧密相关的警报或只是具有相同间隔的警报到单个组中。您还可以自由使用单个规则组创建 AlertingRule 资源,但请注意,如果组非常大或具有非常复杂的查询表达式来评估,这可能会对 Prometheus 产生性能影响。在多个组中分散非常复杂的规则,允许并行处理它们,也是常见的用例。 |
|
| RuleGroup 是按顺序评估的警报规则的列表。 |
5.1.2. .spec.groups
- 描述
- 组是分组警报规则的列表。规则组是 Prometheus 并行处理规则的单元。单个组中的所有规则共享配置的评估间隔。组中的所有规则将在此间隔、顺序上处理,并将处理所有规则。通常,将相关的警报规则分组到单个 AlertingRule 资源中,并在该资源中、紧密相关的警报或只是具有相同间隔的警报到单个组中。您还可以自由使用单个规则组创建 AlertingRule 资源,但请注意,如果组非常大或具有非常复杂的查询表达式来评估,这可能会对 Prometheus 产生性能影响。在多个组中分散非常复杂的规则,允许并行处理它们,也是常见的用例。
- 类型
-
array
5.1.3. .spec.groups[]
- 描述
- RuleGroup 是按顺序评估的警报规则的列表。
- 类型
-
object
- 必填
-
name
-
rules
-
属性 | 类型 | 描述 |
---|---|---|
|
| 间隔是评估组中的规则的频率。如果没有指定,则默认为 Prometheus 中配置的 global.evaluation_interval,其本身默认为 30 秒。您可以通过检查平台 Prometheus 配置来检查此值是否已从集群上的默认值修改:该资源中的相关字段是 spec.evaluationInterval |
|
| name 是组的名称。 |
|
| rules 是按顺序评估的警报规则的列表。Prometheus 可以并行处理规则组,但单个组中的规则始终按顺序处理,并且处理所有规则。 |
|
| 规则描述了警报规则。请参阅 Prometheus 文档: - https://www.prometheus.io/docs/prometheus/latest/configuration/alerting_rules |
5.1.4. .spec.groups[].rules
- 描述
- rules 是按顺序评估的警报规则的列表。Prometheus 可以并行处理规则组,但单个组中的规则始终按顺序处理,并且处理所有规则。
- 类型
-
array
5.1.5. .spec.groups[].rules[]
- 描述
- 规则描述了警报规则。请参阅 Prometheus 文档: - https://www.prometheus.io/docs/prometheus/latest/configuration/alerting_rules
- 类型
-
object
- 必填
-
alert
-
expr
-
属性 | 类型 | 描述 |
---|---|---|
|
| alert 是警报的名称。必须是有效的标签值,即可以包含任何 Unicode 字符。 |
|
| 要添加到每个警报的注解。这些是可用于存储您不会查询较长的额外信息的值,如警报描述或 runbook 链接。 |
|
| EXPR 是要评估的 PromQL 表达式。每个评估周期都会在当前时间评估,所有结果时间序列都会变为待处理或触发警报。这通常是代表 PromQL 表达式的字符串,例如: mapi_current_pending_csr > mapi_max_pending_csr > mapi_max_pending_csr,这可能是一个简单的整数,例如,如果目的是创建始终触发的警报。这有时用于创建 always-firing "Watchdog" 警报,以确保警报管道正常工作。 |
|
| 对于,在首次返回结果后,警报被视为触发的时间。尚未触发过长的警报将被视为待处理。 |
|
|
为每个警报添加或覆盖的标签。警报的 PromQL 表达式的结果会在评估表达式后为警报产生一组现有标签,这里指定的任何标签都与这个设置中的标签相同,此处的 wins 标签并覆盖前面的值。通常,这些值应该比较短,对于查询非常有用。一个常见示例是警报的严重性,其中一个在 |
5.1.6. .status
- 描述
- status 描述了此 AlertOverrides 对象的当前状态。
- 类型
-
object
属性 | 类型 | 描述 |
---|---|---|
|
| observedGeneration 是您处理的最后生成更改。 |
|
| PrometheusRule 是此 AlertingRule 生成的 PrometheusRule。每个 AlertingRule 实例都会在同一命名空间中生成 PrometheusRule 对象,该对象始终是 openshift-monitoring 命名空间。 |
5.1.7. .status.prometheusRule
- 描述
- PrometheusRule 是此 AlertingRule 生成的 PrometheusRule。每个 AlertingRule 实例都会在同一命名空间中生成 PrometheusRule 对象,该对象始终是 openshift-monitoring 命名空间。
- 类型
-
object
- 必填
-
name
-
属性 | 类型 | 描述 |
---|---|---|
|
| 所引用的 PrometheusRule 的名称。 |
5.2. API 端点
可用的 API 端点如下:
/apis/monitoring.openshift.io/v1/alertingrules
-
GET
: 列出类型为 AlertingRule 的对象
-
/apis/monitoring.openshift.io/v1/namespaces/{namespace}/alertingrules
-
DELETE
:删除 AlertingRule 集合 -
GET
: 列出类型为 AlertingRule 的对象 -
POST
:创建 AlertingRule
-
/apis/monitoring.openshift.io/v1/namespaces/{namespace}/alertingrules/{name}
-
DELETE
:删除 AlertingRule -
GET
:读取指定的 AlertingRule -
PATCH
: 部分更新指定的 AlertingRule -
PUT
:替换指定的 AlertingRule
-
/apis/monitoring.openshift.io/v1/namespaces/{namespace}/alertingrules/{name}/status
-
GET
:指定 AlertingRule 的读取状态 -
PATCH
: 部分更新指定 AlertingRule 的状态 -
PUT
:替换指定 AlertingRule 的状态
-
5.2.1. /apis/monitoring.openshift.io/v1/alertingrules
- HTTP 方法
-
GET
- 描述
- 列出 AlertingRule 类型的对象
HTTP 代码 | 响应正文 |
---|---|
200 - OK | |
401 - Unauthorized | 空 |
5.2.2. /apis/monitoring.openshift.io/v1/namespaces/{namespace}/alertingrules
- HTTP 方法
-
DELETE
- 描述
- 删除 AlertingRule 集合
HTTP 代码 | 响应正文 |
---|---|
200 - OK |
|
401 - Unauthorized | 空 |
- HTTP 方法
-
GET
- 描述
- 列出 AlertingRule 类型的对象
HTTP 代码 | 响应正文 |
---|---|
200 - OK | |
401 - Unauthorized | 空 |
- HTTP 方法
-
POST
- 描述
- 创建 AlertingRule
参数 | 类型 | 描述 |
---|---|---|
|
| 出现时,表示不应保留修改。无效的或未被识别的 dryRun 指令将导致错误响应,且请求不会被进一步处理。有效值为: - All: 所有预演阶段都将被处理 |
|
| fieldValidation 指示服务器如何处理包含了未知或重复字段的请求 (POST/PUT/PATCH) 中的对象。有效值为: - Ignore :忽略从对象中静默丢弃的未知字段,并将忽略所有除最后一个重复字段以外的所有字段。这是 v1.23 版本之前的默认行为- Warn: 这会通过标准的警告响应头为从对象丢弃的每个未知字段以及遇到的每个重复字段,发送警告。如果没有其他错误,请求仍会成功,且只保留重复字段的最后一个。这是 v1.23+ 的的默认行为 - Strict: 如果从对象中删除了任何未知字段,或者存在任何重复字段,请求将失败并带有 BadRequest 错误。从服务器返回的错误将包含遇到的,以及重复的字段。 |
参数 | 类型 | 描述 |
---|---|---|
|
|
HTTP 代码 | 响应正文 |
---|---|
200 - OK |
|
201 - Created |
|
202 - Accepted |
|
401 - Unauthorized | 空 |
5.2.3. /apis/monitoring.openshift.io/v1/namespaces/{namespace}/alertingrules/{name}
参数 | 类型 | 描述 |
---|---|---|
|
| AlertingRule 的名称 |
- HTTP 方法
-
DELETE
- 描述
- 删除 AlertingRule
参数 | 类型 | 描述 |
---|---|---|
|
| 出现时,表示不应保留修改。无效的或未被识别的 dryRun 指令将导致错误响应,且请求不会被进一步处理。有效值为: - All: 所有预演阶段都将被处理 |
HTTP 代码 | 响应正文 |
---|---|
200 - OK |
|
202 - Accepted |
|
401 - Unauthorized | 空 |
- HTTP 方法
-
GET
- 描述
- 读取指定的 AlertingRule
HTTP 代码 | 响应正文 |
---|---|
200 - OK |
|
401 - Unauthorized | 空 |
- HTTP 方法
-
PATCH
- 描述
- 部分更新指定的 AlertingRule
参数 | 类型 | 描述 |
---|---|---|
|
| 出现时,表示不应保留修改。无效的或未被识别的 dryRun 指令将导致错误响应,且请求不会被进一步处理。有效值为: - All: 所有预演阶段都将被处理 |
|
| fieldValidation 指示服务器如何处理包含了未知或重复字段的请求 (POST/PUT/PATCH) 中的对象。有效值为: - Ignore :忽略从对象中静默丢弃的未知字段,并将忽略所有除最后一个重复字段以外的所有字段。这是 v1.23 版本之前的默认行为- Warn: 这会通过标准的警告响应头为从对象丢弃的每个未知字段以及遇到的每个重复字段,发送警告。如果没有其他错误,请求仍会成功,且只保留重复字段的最后一个。这是 v1.23+ 的的默认行为 - Strict: 如果从对象中删除了任何未知字段,或者存在任何重复字段,请求将失败并带有 BadRequest 错误。从服务器返回的错误将包含遇到的,以及重复的字段。 |
HTTP 代码 | 响应正文 |
---|---|
200 - OK |
|
401 - Unauthorized | 空 |
- HTTP 方法
-
PUT
- 描述
- 替换指定的 AlertingRule
参数 | 类型 | 描述 |
---|---|---|
|
| 出现时,表示不应保留修改。无效的或未被识别的 dryRun 指令将导致错误响应,且请求不会被进一步处理。有效值为: - All: 所有预演阶段都将被处理 |
|
| fieldValidation 指示服务器如何处理包含了未知或重复字段的请求 (POST/PUT/PATCH) 中的对象。有效值为: - Ignore :忽略从对象中静默丢弃的未知字段,并将忽略所有除最后一个重复字段以外的所有字段。这是 v1.23 版本之前的默认行为- Warn: 这会通过标准的警告响应头为从对象丢弃的每个未知字段以及遇到的每个重复字段,发送警告。如果没有其他错误,请求仍会成功,且只保留重复字段的最后一个。这是 v1.23+ 的的默认行为 - Strict: 如果从对象中删除了任何未知字段,或者存在任何重复字段,请求将失败并带有 BadRequest 错误。从服务器返回的错误将包含遇到的,以及重复的字段。 |
参数 | 类型 | 描述 |
---|---|---|
|
|
HTTP 代码 | 响应正文 |
---|---|
200 - OK |
|
201 - Created |
|
401 - Unauthorized | 空 |
5.2.4. /apis/monitoring.openshift.io/v1/namespaces/{namespace}/alertingrules/{name}/status
参数 | 类型 | 描述 |
---|---|---|
|
| AlertingRule 的名称 |
- HTTP 方法
-
GET
- 描述
- 指定 AlertingRule 的读取状态
HTTP 代码 | 响应正文 |
---|---|
200 - OK |
|
401 - Unauthorized | 空 |
- HTTP 方法
-
PATCH
- 描述
- 部分更新指定 AlertingRule 的状态
参数 | 类型 | 描述 |
---|---|---|
|
| 出现时,表示不应保留修改。无效的或未被识别的 dryRun 指令将导致错误响应,且请求不会被进一步处理。有效值为: - All: 所有预演阶段都将被处理 |
|
| fieldValidation 指示服务器如何处理包含了未知或重复字段的请求 (POST/PUT/PATCH) 中的对象。有效值为: - Ignore :忽略从对象中静默丢弃的未知字段,并将忽略所有除最后一个重复字段以外的所有字段。这是 v1.23 版本之前的默认行为- Warn: 这会通过标准的警告响应头为从对象丢弃的每个未知字段以及遇到的每个重复字段,发送警告。如果没有其他错误,请求仍会成功,且只保留重复字段的最后一个。这是 v1.23+ 的的默认行为 - Strict: 如果从对象中删除了任何未知字段,或者存在任何重复字段,请求将失败并带有 BadRequest 错误。从服务器返回的错误将包含遇到的,以及重复的字段。 |
HTTP 代码 | 响应正文 |
---|---|
200 - OK |
|
401 - Unauthorized | 空 |
- HTTP 方法
-
PUT
- 描述
- 替换指定 AlertingRule 的状态
参数 | 类型 | 描述 |
---|---|---|
|
| 出现时,表示不应保留修改。无效的或未被识别的 dryRun 指令将导致错误响应,且请求不会被进一步处理。有效值为: - All: 所有预演阶段都将被处理 |
|
| fieldValidation 指示服务器如何处理包含了未知或重复字段的请求 (POST/PUT/PATCH) 中的对象。有效值为: - Ignore :忽略从对象中静默丢弃的未知字段,并将忽略所有除最后一个重复字段以外的所有字段。这是 v1.23 版本之前的默认行为- Warn: 这会通过标准的警告响应头为从对象丢弃的每个未知字段以及遇到的每个重复字段,发送警告。如果没有其他错误,请求仍会成功,且只保留重复字段的最后一个。这是 v1.23+ 的的默认行为 - Strict: 如果从对象中删除了任何未知字段,或者存在任何重复字段,请求将失败并带有 BadRequest 错误。从服务器返回的错误将包含遇到的,以及重复的字段。 |
参数 | 类型 | 描述 |
---|---|---|
|
|
HTTP 代码 | 响应正文 |
---|---|
200 - OK |
|
201 - Created |
|
401 - Unauthorized | 空 |
第 6 章 PodMonitor [monitoring.coreos.com/v1]
- 描述
- PodMonitor 为一组 pod 定义监控。
- 类型
-
object
- 必填
-
spec
-
6.1. 规格
属性 | 类型 | 描述 |
---|---|---|
|
| APIVersion 定义对象的这个表示法的版本化的 schema。服务器应该将识别的模式转换为最新的内部值,并可拒绝未识别的值。更多信息: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources |
|
| kind 是一个字符串值,代表此对象所代表的 REST 资源。服务器可以从客户端向其提交请求的端点推断。无法更新。采用驼峰拼写法 (CamelCase)。更多信息: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds |
| 标准对象元数据。更多信息: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#metadata | |
|
| Prometheus 的目标发现所需的 Pod 选择规格。 |
6.1.1. .spec
- 描述
- Prometheus 的目标发现所需的 Pod 选择规格。
- 类型
-
object
- 必填
-
selector
-
属性 | 类型 | 描述 |
---|---|---|
|
|
它需要 Prometheus >= v2.37.0。 |
|
| 定义后,bodySizeLimit 指定 Prometheus 接受的未压缩响应正文大小的作业级别限制。 它需要 Prometheus >= v2.28.0。 |
|
|
用于从中检索作业名称的标签。
例如,如果
如果此字段的值为空,则指标 |
|
| 通过重新标记将在内存中保留的目标数量来按scrape 限制。0 表示没有限制。 它需要 Prometheus >= v2.47.0。 |
|
| 对示例接受的标签数的 per-scrape 限制。 它需要 Prometheus >= v2.27.0。 |
|
| 对示例接受的标签名称长度的 per-scrape 限制。 它需要 Prometheus >= v2.27.0。 |
|
| 对示例接受的标签值长度的 per-scrape 限制。 它需要 Prometheus >= v2.27.0。 |
|
|
从中发现 Kubernetes |
|
| 此 PodMonitor 的端点部分列表。 |
|
| PodMetricsEndpoint 定义了一个端点,供 Prometheus 提取 Prometheus 指标。 |
|
|
|
|
|
|
|
| 要应用的提取类。 |
|
|
如果未设置,Prometheus 将使用其默认值。 它需要 Prometheus >= v2.49.0。 |
|
|
选择 Kubernetes |
|
|
|
6.1.2. .spec.attachMetadata
- 描述
attachMetadata
定义添加到发现的目标中的其他元数据。它需要 Prometheus >= v2.37.0。
- 类型
-
object
属性 | 类型 | 描述 |
---|---|---|
|
|
当设置为 true 时,Prometheus 必须具有 |
6.1.3. .spec.namespaceSelector
- 描述
-
从中发现 Kubernetes
Pod
对象的命名空间的选择器。 - 类型
-
object
属性 | 类型 | 描述 |
---|---|---|
|
| 布尔值描述是否都选择了所有命名空间,而不是列表限制它们。 |
|
| 要从中选择的命名空间名称列表。 |
6.1.4. .spec.podMetricsEndpoints
- 描述
- 此 PodMonitor 的端点部分列表。
- 类型
-
array
6.1.5. .spec.podMetricsEndpoints[]
- 描述
- PodMetricsEndpoint 定义了一个端点,供 Prometheus 提取 Prometheus 指标。
- 类型
-
object
属性 | 类型 | 描述 |
---|---|---|
|
|
不可与 |
|
|
不可 |
|
|
deprecated: 使用 |
|
|
|
|
| 为 true 时,在目标发现过程中丢弃没有运行(如 Failed 或 Succeeded 状态)的 pod。 如果未设置,则启用过滤。 更多信息: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle/#pod-phase |
|
|
|
|
|
为 true 时,当指标标签与目标标签冲突时, |
|
|
|
|
| Prometheus 从目标中提取指标的间隔。 如果为空,Prometheus 将使用全局提取间隔。 |
|
|
|
|
| RelabelConfig 允许为目标、警报、提取示例和远程写入示例动态重写标签。 更多信息: https://prometheus.io/docs/prometheus/latest/configuration/configuration/#relabel_config |
|
|
它需要 Prometheus >= 2.27.0。
不可与授权同时设置,或者 |
|
|
|
|
| |
|
| 从中提取指标的 HTTP 路径。
如果为空,Prometheus 将使用默认值(如 |
|
| 此端点引用的 Pod 端口的名称。
它优先于 |
|
|
|
|
|
Operator 会自动为几个标准 Kubernetes 字段添加重新标记。
原始提取作业的名称可以通过 更多信息: https://prometheus.io/docs/prometheus/latest/configuration/configuration/#relabel_config |
|
| RelabelConfig 允许为目标、警报、提取示例和远程写入示例动态重写标签。 更多信息: https://prometheus.io/docs/prometheus/latest/configuration/configuration/#relabel_config |
|
| 用于提取的 HTTP 方案。
如果为空,Prometheus 将使用默认值 |
|
| Prometheus 将提取视为失败超时。 如果为空,Prometheus 将使用全局提取超时,除非它小于使用后者的目标提取间隔值。 |
|
|
在 Service 后面的 deprecated: 使用 'port' 替代。 |
|
| 提取目标时使用的 TLS 配置。 |
|
|
它需要 Prometheus >= v2.48.0。 |
6.1.6. .spec.podMetricsEndpoints[].authorization
- 描述
授权
将 Authorization 标头凭据配置为在提取目标时使用。不可与
basicAuth
或oauth2
同时设置。- 类型
-
object
属性 | 类型 | 描述 |
---|---|---|
|
| 选择命名空间中包含用于身份验证的凭证的 Secret 的键。 |
|
| 定义身份验证类型。该值不区分大小写。 "basic"不是受支持的值。 默认:"Bearer" |
6.1.7. .spec.podMetricsEndpoints[].authorization.credentials
- 描述
- 选择命名空间中包含用于身份验证的凭证的 Secret 的键。
- 类型
-
object
- 必填
-
key
-
属性 | 类型 | 描述 |
---|---|---|
|
| 要从中选择的 secret 的密钥。必须是一个有效的 secret 密钥。 |
|
|
引用的名称。有效地需要此字段,但因为允许向后兼容为空。这里具有空值的此类实例几乎是错误的。TODO:添加其他有用的字段。apiVersion、kind、uid?更多信息: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names TODO: 当 controller-gen 不需要 https://github.com/kubernetes-sigs/kubebuilder/issues/3896 时,Drop |
|
| 指定是否需要定义 Secret 还是其密钥 |
6.1.8. .spec.podMetricsEndpoints[].basicAuth
- 描述
basicAuth
将基本身份验证凭据配置为在提取目标时使用。不可
与授权
(或oauth2)
同时设置。- 类型
-
object
属性 | 类型 | 描述 |
---|---|---|
|
|
|
|
|
|
6.1.9. .spec.podMetricsEndpoints[].basicAuth.password
- 描述
-
password
指定包含用于身份验证的密码的 Secret 的键。 - 类型
-
object
- 必填
-
key
-
属性 | 类型 | 描述 |
---|---|---|
|
| 要从中选择的 secret 的密钥。必须是一个有效的 secret 密钥。 |
|
|
引用的名称。有效地需要此字段,但因为允许向后兼容为空。这里具有空值的此类实例几乎是错误的。TODO:添加其他有用的字段。apiVersion、kind、uid?更多信息: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names TODO: 当 controller-gen 不需要 https://github.com/kubernetes-sigs/kubebuilder/issues/3896 时,Drop |
|
| 指定是否需要定义 Secret 还是其密钥 |
6.1.10. .spec.podMetricsEndpoints[].basicAuth.username
- 描述
-
username
指定包含用于身份验证的用户名的 Secret 的键。 - 类型
-
object
- 必填
-
key
-
属性 | 类型 | 描述 |
---|---|---|
|
| 要从中选择的 secret 的密钥。必须是一个有效的 secret 密钥。 |
|
|
引用的名称。有效地需要此字段,但因为允许向后兼容为空。这里具有空值的此类实例几乎是错误的。TODO:添加其他有用的字段。apiVersion、kind、uid?更多信息: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names TODO: 当 controller-gen 不需要 https://github.com/kubernetes-sigs/kubebuilder/issues/3896 时,Drop |
|
| 指定是否需要定义 Secret 还是其密钥 |
6.1.11. .spec.podMetricsEndpoints[].bearerTokenSecret
- 描述
bearerTokenSecret
指定包含用于提取目标的 bearer 令牌的 Secret 的密钥。secret 需要与 PodMonitor 对象位于同一个命名空间中,并可由 Prometheus Operator 读取。deprecated: 使用
authorization
替代。- 类型
-
object
- 必填
-
key
-
属性 | 类型 | 描述 |
---|---|---|
|
| 要从中选择的 secret 的密钥。必须是一个有效的 secret 密钥。 |
|
|
引用的名称。有效地需要此字段,但因为允许向后兼容为空。这里具有空值的此类实例几乎是错误的。TODO:添加其他有用的字段。apiVersion、kind、uid?更多信息: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names TODO: 当 controller-gen 不需要 https://github.com/kubernetes-sigs/kubebuilder/issues/3896 时,Drop |
|
| 指定是否需要定义 Secret 还是其密钥 |
6.1.12. .spec.podMetricsEndpoints[].metricRelabelings
- 描述
-
metricRelabelings
配置重新标记规则,以便在 ingestion 前应用到示例。 - 类型
-
array
6.1.13. .spec.podMetricsEndpoints[].metricRelabelings[]
- 描述
RelabelConfig 允许为目标、警报、提取示例和远程写入示例动态重写标签。
更多信息: https://prometheus.io/docs/prometheus/latest/configuration/configuration/#relabel_config
- 类型
-
object
属性 | 类型 | 描述 |
---|---|---|
|
| 根据正则表达式匹配要执行的操作。
默认:"Replace" |
|
| modulus 采用 source 标签值的哈希。
仅在操作为 |
|
| 匹配提取值的正则表达式。 |
|
| 如果正则表达式匹配,则执行 replace 操作的替换值。 正则表达式捕获组可用。 |
|
| 分隔符是串联的 SourceLabels 之间的字符串。 |
|
| source 标签从现有标签中选择值。其内容使用配置的 Separator 连接,并与配置的正则表达式匹配。 |
|
| 生成的字符串写入替换标签。
对于 正则表达式捕获组可用。 |
6.1.14. .spec.podMetricsEndpoints[].oauth2
- 描述
oauth2
将 OAuth2 设置配置为在提取目标时使用。它需要 Prometheus >= 2.27.0。
不可与授权同时设置,或者
basicAuth
。- 类型
-
object
- 必填
-
clientId
-
clientSecret
-
tokenUrl
-
属性 | 类型 | 描述 |
---|---|---|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
6.1.15. .spec.podMetricsEndpoints[].oauth2.clientId
- 描述
-
clientId
指定包含 OAuth2 客户端 ID 的 Secret 或 ConfigMap 的键。 - 类型
-
object
属性 | 类型 | 描述 |
---|---|---|
|
| 包含用于目标的数据的 ConfigMap。 |
|
| 包含用于目标的数据的 secret。 |
6.1.16. .spec.podMetricsEndpoints[].oauth2.clientId.configMap
- 描述
- 包含用于目标的数据的 ConfigMap。
- 类型
-
object
- 必填
-
key
-
属性 | 类型 | 描述 |
---|---|---|
|
| 要选择的密钥。 |
|
|
引用的名称。有效地需要此字段,但因为允许向后兼容为空。这里具有空值的此类实例几乎是错误的。TODO:添加其他有用的字段。apiVersion、kind、uid?更多信息: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names TODO: 当 controller-gen 不需要 https://github.com/kubernetes-sigs/kubebuilder/issues/3896 时,Drop |
|
| 指定是否必须定义 ConfigMap 还是其键 |
6.1.17. .spec.podMetricsEndpoints[].oauth2.clientId.secret
- 描述
- 包含用于目标的数据的 secret。
- 类型
-
object
- 必填
-
key
-
属性 | 类型 | 描述 |
---|---|---|
|
| 要从中选择的 secret 的密钥。必须是一个有效的 secret 密钥。 |
|
|
引用的名称。有效地需要此字段,但因为允许向后兼容为空。这里具有空值的此类实例几乎是错误的。TODO:添加其他有用的字段。apiVersion、kind、uid?更多信息: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names TODO: 当 controller-gen 不需要 https://github.com/kubernetes-sigs/kubebuilder/issues/3896 时,Drop |
|
| 指定是否需要定义 Secret 还是其密钥 |
6.1.18. .spec.podMetricsEndpoints[].oauth2.clientSecret
- 描述
-
clientSecret
指定包含 OAuth2 客户端 secret 的 Secret 的密钥。 - 类型
-
object
- 必填
-
key
-
属性 | 类型 | 描述 |
---|---|---|
|
| 要从中选择的 secret 的密钥。必须是一个有效的 secret 密钥。 |
|
|
引用的名称。有效地需要此字段,但因为允许向后兼容为空。这里具有空值的此类实例几乎是错误的。TODO:添加其他有用的字段。apiVersion、kind、uid?更多信息: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names TODO: 当 controller-gen 不需要 https://github.com/kubernetes-sigs/kubebuilder/issues/3896 时,Drop |
|
| 指定是否需要定义 Secret 还是其密钥 |
6.1.19. .spec.podMetricsEndpoints[].params
- 描述
-
参数定义
可选的 HTTP URL 参数。 - 类型
-
对象
6.1.20. .spec.podMetricsEndpoints[].relabelings
- 描述
重新标记
配置重新标记规则以应用目标的元数据标签。Operator 会自动为几个标准 Kubernetes 字段添加重新标记。
原始提取作业的名称可以通过
\__tmp_prometheus_job_name
标签获得。更多信息: https://prometheus.io/docs/prometheus/latest/configuration/configuration/#relabel_config
- 类型
-
array
6.1.21. .spec.podMetricsEndpoints[].relabelings[]
- 描述
RelabelConfig 允许为目标、警报、提取示例和远程写入示例动态重写标签。
更多信息: https://prometheus.io/docs/prometheus/latest/configuration/configuration/#relabel_config
- 类型
-
object
属性 | 类型 | 描述 |
---|---|---|
|
| 根据正则表达式匹配要执行的操作。
默认:"Replace" |
|
| modulus 采用 source 标签值的哈希。
仅在操作为 |
|
| 匹配提取值的正则表达式。 |
|
| 如果正则表达式匹配,则执行 replace 操作的替换值。 正则表达式捕获组可用。 |
|
| 分隔符是串联的 SourceLabels 之间的字符串。 |
|
| source 标签从现有标签中选择值。其内容使用配置的 Separator 连接,并与配置的正则表达式匹配。 |
|
| 生成的字符串写入替换标签。
对于 正则表达式捕获组可用。 |
6.1.22. .spec.podMetricsEndpoints[].tlsConfig
- 描述
- 提取目标时使用的 TLS 配置。
- 类型
-
object
属性 | 类型 | 描述 |
---|---|---|
|
| 验证服务器证书时使用的证书颁发机构。 |
|
| 执行 client-authentication 时要出现的客户端证书。 |
|
| 禁用目标证书验证。 |
|
| 包含目标客户端密钥文件的 secret。 |
|
| 用于验证目标的主机名。 |
6.1.23. .spec.podMetricsEndpoints[].tlsConfig.ca
- 描述
- 验证服务器证书时使用的证书颁发机构。
- 类型
-
object
属性 | 类型 | 描述 |
---|---|---|
|
| 包含用于目标的数据的 ConfigMap。 |
|
| 包含用于目标的数据的 secret。 |
6.1.24. .spec.podMetricsEndpoints[].tlsConfig.ca.configMap
- 描述
- 包含用于目标的数据的 ConfigMap。
- 类型
-
object
- 必填
-
key
-
属性 | 类型 | 描述 |
---|---|---|
|
| 要选择的密钥。 |
|
|
引用的名称。有效地需要此字段,但因为允许向后兼容为空。这里具有空值的此类实例几乎是错误的。TODO:添加其他有用的字段。apiVersion、kind、uid?更多信息: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names TODO: 当 controller-gen 不需要 https://github.com/kubernetes-sigs/kubebuilder/issues/3896 时,Drop |
|
| 指定是否必须定义 ConfigMap 还是其键 |
6.1.25. .spec.podMetricsEndpoints[].tlsConfig.ca.secret
- 描述
- 包含用于目标的数据的 secret。
- 类型
-
object
- 必填
-
key
-
属性 | 类型 | 描述 |
---|---|---|
|
| 要从中选择的 secret 的密钥。必须是一个有效的 secret 密钥。 |
|
|
引用的名称。有效地需要此字段,但因为允许向后兼容为空。这里具有空值的此类实例几乎是错误的。TODO:添加其他有用的字段。apiVersion、kind、uid?更多信息: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names TODO: 当 controller-gen 不需要 https://github.com/kubernetes-sigs/kubebuilder/issues/3896 时,Drop |
|
| 指定是否需要定义 Secret 还是其密钥 |
6.1.26. .spec.podMetricsEndpoints[].tlsConfig.cert
- 描述
- 执行 client-authentication 时要出现的客户端证书。
- 类型
-
object
属性 | 类型 | 描述 |
---|---|---|
|
| 包含用于目标的数据的 ConfigMap。 |
|
| 包含用于目标的数据的 secret。 |
6.1.27. .spec.podMetricsEndpoints[].tlsConfig.cert.configMap
- 描述
- 包含用于目标的数据的 ConfigMap。
- 类型
-
object
- 必填
-
key
-
属性 | 类型 | 描述 |
---|---|---|
|
| 要选择的密钥。 |
|
|
引用的名称。有效地需要此字段,但因为允许向后兼容为空。这里具有空值的此类实例几乎是错误的。TODO:添加其他有用的字段。apiVersion、kind、uid?更多信息: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names TODO: 当 controller-gen 不需要 https://github.com/kubernetes-sigs/kubebuilder/issues/3896 时,Drop |
|
| 指定是否必须定义 ConfigMap 还是其键 |
6.1.28. .spec.podMetricsEndpoints[].tlsConfig.cert.secret
- 描述
- 包含用于目标的数据的 secret。
- 类型
-
object
- 必填
-
key
-
属性 | 类型 | 描述 |
---|---|---|
|
| 要从中选择的 secret 的密钥。必须是一个有效的 secret 密钥。 |
|
|
引用的名称。有效地需要此字段,但因为允许向后兼容为空。这里具有空值的此类实例几乎是错误的。TODO:添加其他有用的字段。apiVersion、kind、uid?更多信息: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names TODO: 当 controller-gen 不需要 https://github.com/kubernetes-sigs/kubebuilder/issues/3896 时,Drop |
|
| 指定是否需要定义 Secret 还是其密钥 |
6.1.29. .spec.podMetricsEndpoints[].tlsConfig.keySecret
- 描述
- 包含目标客户端密钥文件的 secret。
- 类型
-
object
- 必填
-
key
-
属性 | 类型 | 描述 |
---|---|---|
|
| 要从中选择的 secret 的密钥。必须是一个有效的 secret 密钥。 |
|
|
引用的名称。有效地需要此字段,但因为允许向后兼容为空。这里具有空值的此类实例几乎是错误的。TODO:添加其他有用的字段。apiVersion、kind、uid?更多信息: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names TODO: 当 controller-gen 不需要 https://github.com/kubernetes-sigs/kubebuilder/issues/3896 时,Drop |
|
| 指定是否需要定义 Secret 还是其密钥 |
6.1.30. .spec.selector
- 描述
-
选择 Kubernetes
Pod
对象的标签选择器。 - 类型
-
object
属性 | 类型 | 描述 |
---|---|---|
|
| matchExpressions 是标签选择器要求列表。要求的逻辑关系是 AND。 |
|
| 标签选择器要求是一个选择器,其中包含与键和值相关的值、键和值。 |
|
| matchLabels 是 {key,value} 对的映射。MatchLabels 映射中的单个 {key,value} 等同于 matchExpressions 的一个元素,其 key 字段是 "key",运算符是 "In",值数组仅包含 "value"。要求的逻辑关系是 AND。 |
6.1.31. .spec.selector.matchExpressions
- 描述
- matchExpressions 是标签选择器要求列表。要求的逻辑关系是 AND。
- 类型
-
array
6.1.32. .spec.selector.matchExpressions[]
- 描述
- 标签选择器要求是一个选择器,其中包含与键和值相关的值、键和值。
- 类型
-
object
- 必填
-
key
-
operator
-
属性 | 类型 | 描述 |
---|---|---|
|
| key 是选择器应用到的标签键。 |
|
| 运算符代表一个键与一组值的关系。有效的运算符是 In、NotIn、Exists 和 DoesNotExist。 |
|
| 值是字符串值的数组。如果运算符是 In 或 NotIn,则值数组必须是非空的。如果运算符是 Exists 或 DoesNotExist,则值数组必须为空。这个数组会在策略性合并补丁中被替换。 |
6.2. API 端点
可用的 API 端点如下:
/apis/monitoring.coreos.com/v1/podmonitors
-
GET
: 列出 PodMonitor 类型的对象
-
/apis/monitoring.coreos.com/v1/namespaces/{namespace}/podmonitors
-
DELETE
: 删除 PodMonitor 集合 -
GET
: 列出 PodMonitor 类型的对象 -
POST
:创建 PodMonitor
-
/apis/monitoring.coreos.com/v1/namespaces/{namespace}/podmonitors/{name}
-
DELETE
:删除 PodMonitor -
GET
:读取指定的 PodMonitor -
PATCH
: 部分更新指定的 PodMonitor -
PUT
:替换指定的 PodMonitor
-
6.2.1. /apis/monitoring.coreos.com/v1/podmonitors
- HTTP 方法
-
GET
- 描述
- 列出 PodMonitor 类型的对象
HTTP 代码 | 响应正文 |
---|---|
200 - OK | |
401 - Unauthorized | 空 |
6.2.2. /apis/monitoring.coreos.com/v1/namespaces/{namespace}/podmonitors
- HTTP 方法
-
DELETE
- 描述
- 删除 PodMonitor 集合
HTTP 代码 | 响应正文 |
---|---|
200 - OK |
|
401 - Unauthorized | 空 |
- HTTP 方法
-
GET
- 描述
- 列出 PodMonitor 类型的对象
HTTP 代码 | 响应正文 |
---|---|
200 - OK | |
401 - Unauthorized | 空 |
- HTTP 方法
-
POST
- 描述
- 创建 PodMonitor
参数 | 类型 | 描述 |
---|---|---|
|
| 出现时,表示不应保留修改。无效的或未被识别的 dryRun 指令将导致错误响应,且请求不会被进一步处理。有效值为: - All: 所有预演阶段都将被处理 |
|
| fieldValidation 指示服务器如何处理包含了未知或重复字段的请求 (POST/PUT/PATCH) 中的对象。有效值为: - Ignore :忽略从对象中静默丢弃的未知字段,并将忽略所有除最后一个重复字段以外的所有字段。这是 v1.23 版本之前的默认行为- Warn: 这会通过标准的警告响应头为从对象丢弃的每个未知字段以及遇到的每个重复字段,发送警告。如果没有其他错误,请求仍会成功,且只保留重复字段的最后一个。这是 v1.23+ 的的默认行为 - Strict: 如果从对象中删除了任何未知字段,或者存在任何重复字段,请求将失败并带有 BadRequest 错误。从服务器返回的错误将包含遇到的,以及重复的字段。 |
参数 | 类型 | 描述 |
---|---|---|
|
|
HTTP 代码 | 响应正文 |
---|---|
200 - OK |
|
201 - Created |
|
202 - Accepted |
|
401 - Unauthorized | 空 |
6.2.3. /apis/monitoring.coreos.com/v1/namespaces/{namespace}/podmonitors/{name}
参数 | 类型 | 描述 |
---|---|---|
|
| PodMonitor 的名称 |
- HTTP 方法
-
DELETE
- 描述
- 删除 PodMonitor
参数 | 类型 | 描述 |
---|---|---|
|
| 出现时,表示不应保留修改。无效的或未被识别的 dryRun 指令将导致错误响应,且请求不会被进一步处理。有效值为: - All: 所有预演阶段都将被处理 |
HTTP 代码 | 响应正文 |
---|---|
200 - OK |
|
202 - Accepted |
|
401 - Unauthorized | 空 |
- HTTP 方法
-
GET
- 描述
- 读取指定的 PodMonitor
HTTP 代码 | 响应正文 |
---|---|
200 - OK |
|
401 - Unauthorized | 空 |
- HTTP 方法
-
PATCH
- 描述
- 部分更新指定的 PodMonitor
参数 | 类型 | 描述 |
---|---|---|
|
| 出现时,表示不应保留修改。无效的或未被识别的 dryRun 指令将导致错误响应,且请求不会被进一步处理。有效值为: - All: 所有预演阶段都将被处理 |
|
| fieldValidation 指示服务器如何处理包含了未知或重复字段的请求 (POST/PUT/PATCH) 中的对象。有效值为: - Ignore :忽略从对象中静默丢弃的未知字段,并将忽略所有除最后一个重复字段以外的所有字段。这是 v1.23 版本之前的默认行为- Warn: 这会通过标准的警告响应头为从对象丢弃的每个未知字段以及遇到的每个重复字段,发送警告。如果没有其他错误,请求仍会成功,且只保留重复字段的最后一个。这是 v1.23+ 的的默认行为 - Strict: 如果从对象中删除了任何未知字段,或者存在任何重复字段,请求将失败并带有 BadRequest 错误。从服务器返回的错误将包含遇到的,以及重复的字段。 |
HTTP 代码 | 响应正文 |
---|---|
200 - OK |
|
401 - Unauthorized | 空 |
- HTTP 方法
-
PUT
- 描述
- 替换指定的 PodMonitor
参数 | 类型 | 描述 |
---|---|---|
|
| 出现时,表示不应保留修改。无效的或未被识别的 dryRun 指令将导致错误响应,且请求不会被进一步处理。有效值为: - All: 所有预演阶段都将被处理 |
|
| fieldValidation 指示服务器如何处理包含了未知或重复字段的请求 (POST/PUT/PATCH) 中的对象。有效值为: - Ignore :忽略从对象中静默丢弃的未知字段,并将忽略所有除最后一个重复字段以外的所有字段。这是 v1.23 版本之前的默认行为- Warn: 这会通过标准的警告响应头为从对象丢弃的每个未知字段以及遇到的每个重复字段,发送警告。如果没有其他错误,请求仍会成功,且只保留重复字段的最后一个。这是 v1.23+ 的的默认行为 - Strict: 如果从对象中删除了任何未知字段,或者存在任何重复字段,请求将失败并带有 BadRequest 错误。从服务器返回的错误将包含遇到的,以及重复的字段。 |
参数 | 类型 | 描述 |
---|---|---|
|
|
HTTP 代码 | 响应正文 |
---|---|
200 - OK |
|
201 - Created |
|
401 - Unauthorized | 空 |
第 7 章 Probe [monitoring.coreos.com/v1]
- 描述
- 探测为一组静态目标或入口定义监控。
- 类型
-
object
- 必填
-
spec
-
7.1. 规格
属性 | 类型 | 描述 |
---|---|---|
|
| APIVersion 定义对象的这个表示法的版本化的 schema。服务器应该将识别的模式转换为最新的内部值,并可拒绝未识别的值。更多信息: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources |
|
| kind 是一个字符串值,代表此对象所代表的 REST 资源。服务器可以从客户端向其提交请求的端点推断。无法更新。采用驼峰拼写法 (CamelCase)。更多信息: 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 的目标发现所需的 Ingress 选择规格。 |
7.1.1. .spec
- 描述
- Prometheus 的目标发现所需的 Ingress 选择规格。
- 类型
-
object
属性 | 类型 | 描述 |
---|---|---|
|
| 此端点的授权部分 |
|
| basicAuth 允许端点通过基本身份验证进行身份验证。更多信息: https://prometheus.io/docs/operating/configuration/#endpoint |
|
| 要挂载以读取用于提取目标的 bearer 令牌的机密。secret 需要与探测位于同一个命名空间中,并可以被 Prometheus Operator 访问。 |
|
| 使用配置的探测器探测目标的时间间隔。如果没有指定 Prometheus 的全局提取间隔。 |
|
| 默认分配给提取指标的作业名称。 |
|
| 通过重新标记将在内存中保留的目标数量来按scrape 限制。0 表示没有限制。 它需要 Prometheus >= v2.47.0。 |
|
| 对示例接受的标签数的 per-scrape 限制。仅在 Prometheus 版本 2.27.0 及更新版本中有效。 |
|
| 对示例接受的标签名称长度的 per-scrape 限制。仅在 Prometheus 版本 2.27.0 及更新版本中有效。 |
|
| 对示例接受的标签值长度的 per-scrape 限制。仅在 Prometheus 版本 2.27.0 及更新版本中有效。 |
|
| MetricRelabelConfigs 在 ingestion 前应用到示例。 |
|
| RelabelConfig 允许为目标、警报、提取示例和远程写入示例动态重写标签。 更多信息: https://prometheus.io/docs/prometheus/latest/configuration/configuration/#relabel_config |
|
| 用于探测到目标的模块。在 blackbox 导出器中配置的模块示例: https://github.com/prometheus/blackbox_exporter/blob/master/example.yml |
|
| URL 的 OAuth2。仅在 Prometheus 版本 2.27.0 及更新版本中有效。 |
|
| 用于探测目标的探测器规格。prober.URL 参数是必需的。如果留空,则无法探测目标。 |
|
| SampleLimit 对将接受的提取示例数量定义 per-scrape 限制。 |
|
| 要应用的提取类。 |
|
|
如果未设置,Prometheus 将使用其默认值。 它需要 Prometheus >= v2.49.0。 |
|
| 从 Prometheus exporter 提取指标的超时。如果没有指定,则使用 Prometheus 全局提取超时。 |
|
| TargetLimit 定义了接受的提取目标数量的限制。 |
|
| 目标定义一组静态或动态发现的目标来探测。 |
|
| 提取端点时使用的 TLS 配置。 |
7.1.2. .spec.authorization
- 描述
- 此端点的授权部分
- 类型
-
object
属性 | 类型 | 描述 |
---|---|---|
|
| 选择命名空间中包含用于身份验证的凭证的 Secret 的键。 |
|
| 定义身份验证类型。该值不区分大小写。 "basic"不是受支持的值。 默认:"Bearer" |
7.1.3. .spec.authorization.credentials
- 描述
- 选择命名空间中包含用于身份验证的凭证的 Secret 的键。
- 类型
-
object
- 必填
-
key
-
属性 | 类型 | 描述 |
---|---|---|
|
| 要从中选择的 secret 的密钥。必须是一个有效的 secret 密钥。 |
|
|
引用的名称。有效地需要此字段,但因为允许向后兼容为空。这里具有空值的此类实例几乎是错误的。TODO:添加其他有用的字段。apiVersion、kind、uid?更多信息: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names TODO: 当 controller-gen 不需要 https://github.com/kubernetes-sigs/kubebuilder/issues/3896 时,Drop |
|
| 指定是否需要定义 Secret 还是其密钥 |
7.1.4. .spec.basicAuth
- 描述
- basicAuth 允许端点通过基本身份验证进行身份验证。更多信息: https://prometheus.io/docs/operating/configuration/#endpoint
- 类型
-
object
属性 | 类型 | 描述 |
---|---|---|
|
|
|
|
|
|
7.1.5. .spec.basicAuth.password
- 描述
-
password
指定包含用于身份验证的密码的 Secret 的键。 - 类型
-
object
- 必填
-
key
-
属性 | 类型 | 描述 |
---|---|---|
|
| 要从中选择的 secret 的密钥。必须是一个有效的 secret 密钥。 |
|
|
引用的名称。有效地需要此字段,但因为允许向后兼容为空。这里具有空值的此类实例几乎是错误的。TODO:添加其他有用的字段。apiVersion、kind、uid?更多信息: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names TODO: 当 controller-gen 不需要 https://github.com/kubernetes-sigs/kubebuilder/issues/3896 时,Drop |
|
| 指定是否需要定义 Secret 还是其密钥 |
7.1.6. .spec.basicAuth.username
- 描述
-
username
指定包含用于身份验证的用户名的 Secret 的键。 - 类型
-
object
- 必填
-
key
-
属性 | 类型 | 描述 |
---|---|---|
|
| 要从中选择的 secret 的密钥。必须是一个有效的 secret 密钥。 |
|
|
引用的名称。有效地需要此字段,但因为允许向后兼容为空。这里具有空值的此类实例几乎是错误的。TODO:添加其他有用的字段。apiVersion、kind、uid?更多信息: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names TODO: 当 controller-gen 不需要 https://github.com/kubernetes-sigs/kubebuilder/issues/3896 时,Drop |
|
| 指定是否需要定义 Secret 还是其密钥 |
7.1.7. .spec.bearerTokenSecret
- 描述
- 要挂载以读取用于提取目标的 bearer 令牌的机密。secret 需要与探测位于同一个命名空间中,并可以被 Prometheus Operator 访问。
- 类型
-
object
- 必填
-
key
-
属性 | 类型 | 描述 |
---|---|---|
|
| 要从中选择的 secret 的密钥。必须是一个有效的 secret 密钥。 |
|
|
引用的名称。有效地需要此字段,但因为允许向后兼容为空。这里具有空值的此类实例几乎是错误的。TODO:添加其他有用的字段。apiVersion、kind、uid?更多信息: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names TODO: 当 controller-gen 不需要 https://github.com/kubernetes-sigs/kubebuilder/issues/3896 时,Drop |
|
| 指定是否需要定义 Secret 还是其密钥 |
7.1.8. .spec.metricRelabelings
- 描述
- MetricRelabelConfigs 在 ingestion 前应用到示例。
- 类型
-
array
7.1.9. .spec.metricRelabelings[]
- 描述
RelabelConfig 允许为目标、警报、提取示例和远程写入示例动态重写标签。
更多信息: https://prometheus.io/docs/prometheus/latest/configuration/configuration/#relabel_config
- 类型
-
object
属性 | 类型 | 描述 |
---|---|---|
|
| 根据正则表达式匹配要执行的操作。
默认:"Replace" |
|
| modulus 采用 source 标签值的哈希。
仅在操作为 |
|
| 匹配提取值的正则表达式。 |
|
| 如果正则表达式匹配,则执行 replace 操作的替换值。 正则表达式捕获组可用。 |
|
| 分隔符是串联的 SourceLabels 之间的字符串。 |
|
| source 标签从现有标签中选择值。其内容使用配置的 Separator 连接,并与配置的正则表达式匹配。 |
|
| 生成的字符串写入替换标签。
对于 正则表达式捕获组可用。 |
7.1.10. .spec.oauth2
- 描述
- URL 的 OAuth2。仅在 Prometheus 版本 2.27.0 及更新版本中有效。
- 类型
-
object
- 必填
-
clientId
-
clientSecret
-
tokenUrl
-
属性 | 类型 | 描述 |
---|---|---|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
7.1.11. .spec.oauth2.clientId
- 描述
-
clientId
指定包含 OAuth2 客户端 ID 的 Secret 或 ConfigMap 的键。 - 类型
-
object
属性 | 类型 | 描述 |
---|---|---|
|
| 包含用于目标的数据的 ConfigMap。 |
|
| 包含用于目标的数据的 secret。 |
7.1.12. .spec.oauth2.clientId.configMap
- 描述
- 包含用于目标的数据的 ConfigMap。
- 类型
-
object
- 必填
-
key
-
属性 | 类型 | 描述 |
---|---|---|
|
| 要选择的密钥。 |
|
|
引用的名称。有效地需要此字段,但因为允许向后兼容为空。这里具有空值的此类实例几乎是错误的。TODO:添加其他有用的字段。apiVersion、kind、uid?更多信息: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names TODO: 当 controller-gen 不需要 https://github.com/kubernetes-sigs/kubebuilder/issues/3896 时,Drop |
|
| 指定是否必须定义 ConfigMap 还是其键 |
7.1.13. .spec.oauth2.clientId.secret
- 描述
- 包含用于目标的数据的 secret。
- 类型
-
object
- 必填
-
key
-
属性 | 类型 | 描述 |
---|---|---|
|
| 要从中选择的 secret 的密钥。必须是一个有效的 secret 密钥。 |
|
|
引用的名称。有效地需要此字段,但因为允许向后兼容为空。这里具有空值的此类实例几乎是错误的。TODO:添加其他有用的字段。apiVersion、kind、uid?更多信息: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names TODO: 当 controller-gen 不需要 https://github.com/kubernetes-sigs/kubebuilder/issues/3896 时,Drop |
|
| 指定是否需要定义 Secret 还是其密钥 |
7.1.14. .spec.oauth2.clientSecret
- 描述
-
clientSecret
指定包含 OAuth2 客户端 secret 的 Secret 的密钥。 - 类型
-
object
- 必填
-
key
-
属性 | 类型 | 描述 |
---|---|---|
|
| 要从中选择的 secret 的密钥。必须是一个有效的 secret 密钥。 |
|
|
引用的名称。有效地需要此字段,但因为允许向后兼容为空。这里具有空值的此类实例几乎是错误的。TODO:添加其他有用的字段。apiVersion、kind、uid?更多信息: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names TODO: 当 controller-gen 不需要 https://github.com/kubernetes-sigs/kubebuilder/issues/3896 时,Drop |
|
| 指定是否需要定义 Secret 还是其密钥 |
7.1.15. .spec.prober
- 描述
- 用于探测目标的探测器规格。prober.URL 参数是必需的。如果留空,则无法探测目标。
- 类型
-
object
- 必填
-
url
-
属性 | 类型 | 描述 |
---|---|---|
|
|
从中收集指标的路径。默认为 |
|
| 可选 ProxyURL。 |
|
|
用于提取的 HTTP 方案。 |
|
| 探测器的强制 URL。 |
7.1.16. .spec.targets
- 描述
- 目标定义一组静态或动态发现的目标来探测。
- 类型
-
object
属性 | 类型 | 描述 |
---|---|---|
|
|
Ingress 定义要探测和重新标记配置的 Ingress 对象。如果也定义了 |
|
|
staticConfig 定义要探测和重新标记配置的静态列表。如果也定义了 |
7.1.17. .spec.targets.ingress
- 描述
-
Ingress 定义要探测和重新标记配置的 Ingress 对象。如果也定义了
staticConfig
,staticConfig
将具有优先权。 - 类型
-
object
属性 | 类型 | 描述 |
---|---|---|
|
| 从哪些命名空间中选择 Ingress 对象。 |
|
|
在提取前,重新labelConfigs 应用到目标的标签集合。原始入口地址可以通过 |
|
| RelabelConfig 允许为目标、警报、提取示例和远程写入示例动态重写标签。 更多信息: https://prometheus.io/docs/prometheus/latest/configuration/configuration/#relabel_config |
|
| 选择 Ingress 对象的选择器。 |
7.1.18. .spec.targets.ingress.namespaceSelector
- 描述
- 从哪些命名空间中选择 Ingress 对象。
- 类型
-
object
属性 | 类型 | 描述 |
---|---|---|
|
| 布尔值描述是否都选择了所有命名空间,而不是列表限制它们。 |
|
| 要从中选择的命名空间名称列表。 |
7.1.19. .spec.targets.ingress.relabelingConfigs
- 描述
-
在提取前,重新labelConfigs 应用到目标的标签集合。原始入口地址可以通过
__tmp_prometheus_ingress_address
标签获得。它可用于自定义探测的 URL。原始提取作业的名称可以通过\__tmp_prometheus_job_name
标签获得。更多信息: https://prometheus.io/docs/prometheus/latest/configuration/configuration/#relabel_config - 类型
-
array
7.1.20. .spec.targets.ingress.relabelingConfigs[]
- 描述
RelabelConfig 允许为目标、警报、提取示例和远程写入示例动态重写标签。
更多信息: https://prometheus.io/docs/prometheus/latest/configuration/configuration/#relabel_config
- 类型
-
object
属性 | 类型 | 描述 |
---|---|---|
|
| 根据正则表达式匹配要执行的操作。
默认:"Replace" |
|
| modulus 采用 source 标签值的哈希。
仅在操作为 |
|
| 匹配提取值的正则表达式。 |
|
| 如果正则表达式匹配,则执行 replace 操作的替换值。 正则表达式捕获组可用。 |
|
| 分隔符是串联的 SourceLabels 之间的字符串。 |
|
| source 标签从现有标签中选择值。其内容使用配置的 Separator 连接,并与配置的正则表达式匹配。 |
|
| 生成的字符串写入替换标签。
对于 正则表达式捕获组可用。 |
7.1.21. .spec.targets.ingress.selector
- 描述
- 选择 Ingress 对象的选择器。
- 类型
-
object
属性 | 类型 | 描述 |
---|---|---|
|
| matchExpressions 是标签选择器要求列表。要求的逻辑关系是 AND。 |
|
| 标签选择器要求是一个选择器,其中包含与键和值相关的值、键和值。 |
|
| matchLabels 是 {key,value} 对的映射。MatchLabels 映射中的单个 {key,value} 等同于 matchExpressions 的一个元素,其 key 字段是 "key",运算符是 "In",值数组仅包含 "value"。要求的逻辑关系是 AND。 |
7.1.22. .spec.targets.ingress.selector.matchExpressions
- 描述
- matchExpressions 是标签选择器要求列表。要求的逻辑关系是 AND。
- 类型
-
array
7.1.23. .spec.targets.ingress.selector.matchExpressions[]
- 描述
- 标签选择器要求是一个选择器,其中包含与键和值相关的值、键和值。
- 类型
-
object
- 必填
-
key
-
operator
-
属性 | 类型 | 描述 |
---|---|---|
|
| key 是选择器应用到的标签键。 |
|
| 运算符代表一个键与一组值的关系。有效的运算符是 In、NotIn、Exists 和 DoesNotExist。 |
|
| 值是字符串值的数组。如果运算符是 In 或 NotIn,则值数组必须是非空的。如果运算符是 Exists 或 DoesNotExist,则值数组必须为空。这个数组会在策略性合并补丁中被替换。 |
7.1.24. .spec.targets.staticConfig
- 描述
-
staticConfig 定义要探测和重新标记配置的静态列表。如果也定义了
ingress
,staticConfig
将具有优先权。更多信息: https://prometheus.io/docs/prometheus/latest/configuration/configuration/#static_config。 - 类型
-
object
属性 | 类型 | 描述 |
---|---|---|
|
| 分配给从目标中提取的所有指标的标签。 |
|
| 在提取前,重新labelConfigs 应用到目标的标签集合。更多信息: https://prometheus.io/docs/prometheus/latest/configuration/configuration/#relabel_config |
|
| RelabelConfig 允许为目标、警报、提取示例和远程写入示例动态重写标签。 更多信息: https://prometheus.io/docs/prometheus/latest/configuration/configuration/#relabel_config |
|
| 要探测的主机列表。 |
7.1.25. .spec.targets.staticConfig.relabelingConfigs
- 描述
- 在提取前,重新labelConfigs 应用到目标的标签集合。更多信息: https://prometheus.io/docs/prometheus/latest/configuration/configuration/#relabel_config
- 类型
-
array
7.1.26. .spec.targets.staticConfig.relabelingConfigs[]
- 描述
RelabelConfig 允许为目标、警报、提取示例和远程写入示例动态重写标签。
更多信息: https://prometheus.io/docs/prometheus/latest/configuration/configuration/#relabel_config
- 类型
-
object
属性 | 类型 | 描述 |
---|---|---|
|
| 根据正则表达式匹配要执行的操作。
默认:"Replace" |
|
| modulus 采用 source 标签值的哈希。
仅在操作为 |
|
| 匹配提取值的正则表达式。 |
|
| 如果正则表达式匹配,则执行 replace 操作的替换值。 正则表达式捕获组可用。 |
|
| 分隔符是串联的 SourceLabels 之间的字符串。 |
|
| source 标签从现有标签中选择值。其内容使用配置的 Separator 连接,并与配置的正则表达式匹配。 |
|
| 生成的字符串写入替换标签。
对于 正则表达式捕获组可用。 |
7.1.27. .spec.tlsConfig
- 描述
- 提取端点时使用的 TLS 配置。
- 类型
-
object
属性 | 类型 | 描述 |
---|---|---|
|
| 验证服务器证书时使用的证书颁发机构。 |
|
| 执行 client-authentication 时要出现的客户端证书。 |
|
| 禁用目标证书验证。 |
|
| 包含目标客户端密钥文件的 secret。 |
|
| 用于验证目标的主机名。 |
7.1.28. .spec.tlsConfig.ca
- 描述
- 验证服务器证书时使用的证书颁发机构。
- 类型
-
object
属性 | 类型 | 描述 |
---|---|---|
|
| 包含用于目标的数据的 ConfigMap。 |
|
| 包含用于目标的数据的 secret。 |
7.1.29. .spec.tlsConfig.ca.configMap
- 描述
- 包含用于目标的数据的 ConfigMap。
- 类型
-
object
- 必填
-
key
-
属性 | 类型 | 描述 |
---|---|---|
|
| 要选择的密钥。 |
|
|
引用的名称。有效地需要此字段,但因为允许向后兼容为空。这里具有空值的此类实例几乎是错误的。TODO:添加其他有用的字段。apiVersion、kind、uid?更多信息: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names TODO: 当 controller-gen 不需要 https://github.com/kubernetes-sigs/kubebuilder/issues/3896 时,Drop |
|
| 指定是否必须定义 ConfigMap 还是其键 |
7.1.30. .spec.tlsConfig.ca.secret
- 描述
- 包含用于目标的数据的 secret。
- 类型
-
object
- 必填
-
key
-
属性 | 类型 | 描述 |
---|---|---|
|
| 要从中选择的 secret 的密钥。必须是一个有效的 secret 密钥。 |
|
|
引用的名称。有效地需要此字段,但因为允许向后兼容为空。这里具有空值的此类实例几乎是错误的。TODO:添加其他有用的字段。apiVersion、kind、uid?更多信息: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names TODO: 当 controller-gen 不需要 https://github.com/kubernetes-sigs/kubebuilder/issues/3896 时,Drop |
|
| 指定是否需要定义 Secret 还是其密钥 |
7.1.31. .spec.tlsConfig.cert
- 描述
- 执行 client-authentication 时要出现的客户端证书。
- 类型
-
object
属性 | 类型 | 描述 |
---|---|---|
|
| 包含用于目标的数据的 ConfigMap。 |
|
| 包含用于目标的数据的 secret。 |
7.1.32. .spec.tlsConfig.cert.configMap
- 描述
- 包含用于目标的数据的 ConfigMap。
- 类型
-
object
- 必填
-
key
-
属性 | 类型 | 描述 |
---|---|---|
|
| 要选择的密钥。 |
|
|
引用的名称。有效地需要此字段,但因为允许向后兼容为空。这里具有空值的此类实例几乎是错误的。TODO:添加其他有用的字段。apiVersion、kind、uid?更多信息: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names TODO: 当 controller-gen 不需要 https://github.com/kubernetes-sigs/kubebuilder/issues/3896 时,Drop |
|
| 指定是否必须定义 ConfigMap 还是其键 |
7.1.33. .spec.tlsConfig.cert.secret
- 描述
- 包含用于目标的数据的 secret。
- 类型
-
object
- 必填
-
key
-
属性 | 类型 | 描述 |
---|---|---|
|
| 要从中选择的 secret 的密钥。必须是一个有效的 secret 密钥。 |
|
|
引用的名称。有效地需要此字段,但因为允许向后兼容为空。这里具有空值的此类实例几乎是错误的。TODO:添加其他有用的字段。apiVersion、kind、uid?更多信息: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names TODO: 当 controller-gen 不需要 https://github.com/kubernetes-sigs/kubebuilder/issues/3896 时,Drop |
|
| 指定是否需要定义 Secret 还是其密钥 |
7.1.34. .spec.tlsConfig.keySecret
- 描述
- 包含目标客户端密钥文件的 secret。
- 类型
-
object
- 必填
-
key
-
属性 | 类型 | 描述 |
---|---|---|
|
| 要从中选择的 secret 的密钥。必须是一个有效的 secret 密钥。 |
|
|
引用的名称。有效地需要此字段,但因为允许向后兼容为空。这里具有空值的此类实例几乎是错误的。TODO:添加其他有用的字段。apiVersion、kind、uid?更多信息: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names TODO: 当 controller-gen 不需要 https://github.com/kubernetes-sigs/kubebuilder/issues/3896 时,Drop |
|
| 指定是否需要定义 Secret 还是其密钥 |
7.2. API 端点
可用的 API 端点如下:
/apis/monitoring.coreos.com/v1/probes
-
GET
: 列出类型为探测的对象
-
/apis/monitoring.coreos.com/v1/namespaces/{namespace}/probes
-
DELETE
:删除探测的集合 -
GET
: 列出类型为探测的对象 -
POST
:创建一个探测
-
/apis/monitoring.coreos.com/v1/namespaces/{namespace}/probes/{name}
-
DELETE
:删除探测 -
GET
:读取指定的探测 -
PATCH
: 部分更新指定的探测 -
PUT
:替换指定的探测
-
7.2.1. /apis/monitoring.coreos.com/v1/probes
- HTTP 方法
-
GET
- 描述
- 列出探测的对象
HTTP 代码 | 响应正文 |
---|---|
200 - OK |
|
401 - Unauthorized | 空 |
7.2.2. /apis/monitoring.coreos.com/v1/namespaces/{namespace}/probes
- HTTP 方法
-
DELETE
- 描述
- 删除探测集合
HTTP 代码 | 响应正文 |
---|---|
200 - OK |
|
401 - Unauthorized | 空 |
- HTTP 方法
-
GET
- 描述
- 列出探测的对象
HTTP 代码 | 响应正文 |
---|---|
200 - OK |
|
401 - Unauthorized | 空 |
- HTTP 方法
-
POST
- 描述
- 创建探测
参数 | 类型 | 描述 |
---|---|---|
|
| 出现时,表示不应保留修改。无效的或未被识别的 dryRun 指令将导致错误响应,且请求不会被进一步处理。有效值为: - All: 所有预演阶段都将被处理 |
|
| fieldValidation 指示服务器如何处理包含了未知或重复字段的请求 (POST/PUT/PATCH) 中的对象。有效值为: - Ignore :忽略从对象中静默丢弃的未知字段,并将忽略所有除最后一个重复字段以外的所有字段。这是 v1.23 版本之前的默认行为- Warn: 这会通过标准的警告响应头为从对象丢弃的每个未知字段以及遇到的每个重复字段,发送警告。如果没有其他错误,请求仍会成功,且只保留重复字段的最后一个。这是 v1.23+ 的的默认行为 - Strict: 如果从对象中删除了任何未知字段,或者存在任何重复字段,请求将失败并带有 BadRequest 错误。从服务器返回的错误将包含遇到的,以及重复的字段。 |
参数 | 类型 | 描述 |
---|---|---|
|
|
HTTP 代码 | 响应正文 |
---|---|
200 - OK |
|
201 - Created |
|
202 - Accepted |
|
401 - Unauthorized | 空 |
7.2.3. /apis/monitoring.coreos.com/v1/namespaces/{namespace}/probes/{name}
参数 | 类型 | 描述 |
---|---|---|
|
| 探测的名称 |
- HTTP 方法
-
DELETE
- 描述
- 删除探测
参数 | 类型 | 描述 |
---|---|---|
|
| 出现时,表示不应保留修改。无效的或未被识别的 dryRun 指令将导致错误响应,且请求不会被进一步处理。有效值为: - All: 所有预演阶段都将被处理 |
HTTP 代码 | 响应正文 |
---|---|
200 - OK |
|
202 - Accepted |
|
401 - Unauthorized | 空 |
- HTTP 方法
-
GET
- 描述
- 读取指定的探测
HTTP 代码 | 响应正文 |
---|---|
200 - OK |
|
401 - Unauthorized | 空 |
- HTTP 方法
-
PATCH
- 描述
- 部分更新指定的探测
参数 | 类型 | 描述 |
---|---|---|
|
| 出现时,表示不应保留修改。无效的或未被识别的 dryRun 指令将导致错误响应,且请求不会被进一步处理。有效值为: - All: 所有预演阶段都将被处理 |
|
| fieldValidation 指示服务器如何处理包含了未知或重复字段的请求 (POST/PUT/PATCH) 中的对象。有效值为: - Ignore :忽略从对象中静默丢弃的未知字段,并将忽略所有除最后一个重复字段以外的所有字段。这是 v1.23 版本之前的默认行为- Warn: 这会通过标准的警告响应头为从对象丢弃的每个未知字段以及遇到的每个重复字段,发送警告。如果没有其他错误,请求仍会成功,且只保留重复字段的最后一个。这是 v1.23+ 的的默认行为 - Strict: 如果从对象中删除了任何未知字段,或者存在任何重复字段,请求将失败并带有 BadRequest 错误。从服务器返回的错误将包含遇到的,以及重复的字段。 |
HTTP 代码 | 响应正文 |
---|---|
200 - OK |
|
401 - Unauthorized | 空 |
- HTTP 方法
-
PUT
- 描述
- 替换指定的探测
参数 | 类型 | 描述 |
---|---|---|
|
| 出现时,表示不应保留修改。无效的或未被识别的 dryRun 指令将导致错误响应,且请求不会被进一步处理。有效值为: - All: 所有预演阶段都将被处理 |
|
| fieldValidation 指示服务器如何处理包含了未知或重复字段的请求 (POST/PUT/PATCH) 中的对象。有效值为: - Ignore :忽略从对象中静默丢弃的未知字段,并将忽略所有除最后一个重复字段以外的所有字段。这是 v1.23 版本之前的默认行为- Warn: 这会通过标准的警告响应头为从对象丢弃的每个未知字段以及遇到的每个重复字段,发送警告。如果没有其他错误,请求仍会成功,且只保留重复字段的最后一个。这是 v1.23+ 的的默认行为 - Strict: 如果从对象中删除了任何未知字段,或者存在任何重复字段,请求将失败并带有 BadRequest 错误。从服务器返回的错误将包含遇到的,以及重复的字段。 |
参数 | 类型 | 描述 |
---|---|---|
|
|
HTTP 代码 | 响应正文 |
---|---|
200 - OK |
|
201 - Created |
|
401 - Unauthorized | 空 |
第 8 章 Prometheus [monitoring.coreos.com/v1]
- 描述
- Prometheus 定义 Prometheus 部署。
- 类型
-
object
- 必填
-
spec
-
8.1. 规格
属性 | 类型 | 描述 |
---|---|---|
|
| APIVersion 定义对象的这个表示法的版本化的 schema。服务器应该将识别的模式转换为最新的内部值,并可拒绝未识别的值。更多信息: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources |
|
| kind 是一个字符串值,代表此对象所代表的 REST 资源。服务器可以从客户端向其提交请求的端点推断。无法更新。采用驼峰拼写法 (CamelCase)。更多信息: 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 |
8.1.1. .spec
- 描述
- Prometheus 集群所需行为的规格。更多信息: https://github.com/kubernetes/community/blob/master/contributors/devel/sig-architecture/api-conventions.md#spec-and-status
- 类型
-
object
属性 | 类型 | 描述 |
---|---|---|
|
| additionalAlertmanagerConfigs 指定包含额外 Prometheus Alertmanager 配置的 Secret 的密钥。Alertmanager 配置附加到 Prometheus Operator 生成的配置中。它们必须根据官方 Prometheus 文档进行格式化: https://prometheus.io/docs/prometheus/latest/configuration/configuration/#alertmanager_config 用户负责确保配置有效 请注意,使用此功能可能会公开可能会破坏 Prometheus 的升级。建议查看 Prometheus 发行注记,以确保升级后没有不兼容的 AlertManager 配置会破坏 Prometheus。 |
|
| additionalAlertRelabelConfigs 指定包含额外 Prometheus 警报重新标记配置的 Secret 的键。警报重新标记配置附加到 Prometheus Operator 生成的配置中。它们必须根据官方 Prometheus 文档进行格式化: https://prometheus.io/docs/prometheus/latest/configuration/configuration/#alert_relabel_configs 用户负责确保配置有效 请注意,使用此功能可能会公开可能会破坏 Prometheus 的升级。建议查看 Prometheus 发行注记,以确保升级后没有不兼容的警报重新标记配置中断 Prometheus。 |
|
| AdditionalArgs 允许为 'prometheus' 容器设置额外的参数。 它旨在激活被专用配置选项不支持的隐藏标志。参数按原样传递给 Prometheus 容器,如果给定 Prometheus 版本无效或不支持它们,则可能会导致问题。 如果参数冲突(例如,已由 Operator 本身设置的参数)或在提供无效参数时,协调将失败,并会记录错误。 |
|
| 参数作为 AdditionalArgs 列表的一部分。 |
|
| additionalScrapeConfigs 允许指定包含额外 Prometheus scrape 配置的 Secret 的密钥。指定的提取配置附加到 Prometheus Operator 生成的配置中。指定的作业配置必须具有官方 Prometheus 文档中指定的表单: https://prometheus.io/docs/prometheus/latest/configuration/configuration/#scrape_config。附加提取配置后,用户负责确保它有效。请注意,使用此功能可能会公开可能会破坏 Prometheus 的升级。建议查看 Prometheus 发行注记,以确保升级后没有不兼容的提取配置中断 Prometheus。 |
|
| 如果指定,定义 Pod 的关联性调度规则。 |
|
| 定义与 Alertmanager 相关的设置。 |
|
| AllowOverlappingBlocks 在 Prometheus 中启用垂直压缩和垂直查询合并。 弃用:此标志对 Prometheus >= 2.39.0 没有作用,其中默认启用重叠块。 |
|
| apiserverConfig 允许指定主机和 auth 方法来访问 Kuberntees API 服务器。如果为 null,Prometheus 被认为在集群内运行:它将自动发现 API 服务器,并在 /var/run/secrets/kubernetes.io/serviceaccount/ 中使用 Pod 的 CA 证书和 bearer 令牌文件。 |
|
|
为 true、ServiceMonitor、PodMonitor 和 Probe 对象被禁止引用"prometheus"容器文件系统上的任意文件。当 ServiceMonitor 的端点指定了 |
|
| AutomountServiceAccountToken 表示服务帐户令牌是否应该自动挂载到 pod 中。如果没有设置字段,Operator 默认挂载服务帐户令牌。 警告: 请注意,默认情况下,Prometheus 需要 Kubernetes 服务发现的服务帐户令牌。可以使用策略合并补丁将服务帐户令牌项目到 'prometheus' 容器中。 |
|
| deprecated: 使用 'spec.image' 替代。 |
|
| BodySizeLimit 对响应正文大小定义 per-scrape。仅在 Prometheus 版本 2.45.0 及更新版本中有效。 请注意,全局限制仅适用于没有指定显式限制值的提取对象。如果要为所有提取对象强制实施最大限制,请参阅 enforcedBodySizeLimit。 |
|
|
ConfigMap 是与 Prometheus 对象相同的命名空间中的 ConfigMap 列表,它应该被挂载到 Prometheus Pod 中。每个 ConfigMap 都作为名为 |
|
| 容器允许注入其他容器或修改操作器生成的容器。这可用于允许向 Pod 添加身份验证代理或更改 Operator 生成的容器的行为。这里描述的容器如果操作器共享相同的名称和修改,则修改通过战略合并补丁来完成。
由 Operator 管理的容器的名称有:* 覆盖容器完全超出维护人员将支持什么范围,通过这样做,您可以接受这种行为,而无需通知。 |
|
| 要在 pod 中运行的单一应用程序容器。 |
|
| 为 true 时,Prometheus 压缩会被禁用。 |
|
| 启用对 Prometheus web admin API 的访问。 警告:启用管理 API 可启用变异端点,以删除数据、关闭 Prometheus 等。应谨慎启用此功能,并且建议用户通过代理添加额外的身份验证授权,以确保只有授权执行这些操作的客户端可以这样做。 更多信息: https://prometheus.io/docs/prometheus/latest/querying/api/#tsdb-admin-apis |
|
| 启用对 Prometheus 功能标记的访问。默认情况下,不启用任何功能。 启用默认情况下禁用的功能完全超出了维护人员将支持什么范围,通过这样做,您接受的行为可能随时中断,而无需通知。 更多信息请参阅 https://prometheus.io/docs/prometheus/latest/feature_flags/ |
|
| 启用 Prometheus 作为 Prometheus 远程写入协议的接收器。 警告:这不被视为嵌套示例的有效方法。对于特定的低卷用例,请谨慎使用。它不适用于通过提取替换 ingestion,并将 Prometheus 转换成基于推送的指标集合系统。更多信息请参阅 https://prometheus.io/docs/prometheus/latest/querying/api/#remote-write-receiver 它需要 Prometheus >= v2.33.0。 |
|
| 定义后,EnforceBodySizeLimit 指定 Prometheus 接受的未压缩响应正文大小的全局限制。使用大于这个字节的正文响应的目标会导致提取失败。 它需要 Prometheus >= v2.28.0。
当 |
|
|
定义后,EnforceKeepDroppedTargets 指定通过重新标记在内存中所丢弃的目标数量的全局限制。该值覆盖由 ServiceMonitor、PodMonitor 和 Probe 对象设置的任何 它需要 Prometheus >= v2.47.0。
当 |
|
|
定义后,enforcedLabelLimit 为所有示例的标签数指定一个全局限制。该值覆盖由 ServiceMonitor, PodMonitor, Probe 对象设置的任何 它需要 Prometheus >= v2.27.0。
当 |
|
|
定义后,EnforceLabelNameLengthLimit 指定每个示例标签名称长度的全局限制。该值覆盖由 ServiceMonitor, PodMonitor, Probe 对象设置的 它需要 Prometheus >= v2.27.0。
当 |
|
|
如果没有 null,则 enforcedLabelValueLengthLimit 会为每个示例定义标签值长度的全局限制。该值覆盖由 ServiceMonitor, PodMonitor, Probe 对象设置的 它需要 Prometheus >= v2.27.0。
当 |
|
| 如果没有为空,则会将标签添加到:
1.所有从
该标签不会为
标签的名称是此字段的值。标签的值是 |
|
|
定义后,EnforcedSampleLimit 指定提取示例数量的全局限制。这会覆盖由 ServiceMonitor, PodMonitorLimit 设置的任何 管理员用来保持在所需限制下的样本/系列总数。
当 |
|
|
定义后,EnforcedTargetLimit 指定提取目标数量的全局限制。该值覆盖由 ServiceMonitor, PodMonitor, Probe 对象设置的任何 管理员用来使目标总数保持在所需限制下。
当 |
|
| 规则评估之间的间隔。默认:"30s" |
|
| 对 PodMonitor、ServiceMonitor、Probe 和 PrometheusRule 对象的引用列表,以便从强制空间标签 origin 中排除。
只有在 |
|
| ObjectReference 引用 PodMonitor、ServiceMonitor、Probe 或 PrometheusRule 对象。 |
|
|
Exemplars 相关设置可重新加载。它需要启用 |
|
|
与外部系统通信时要添加到任何时间序列或警报的标签(federation、remote storage、Alertmanager)。 |
|
| Prometheus 服务外部可用的外部 URL。这是生成正确 URL 所必需的(例如,如果 Prometheus 可在 Ingress 资源后面访问)。 |
|
| 可选的主机和 IP 列表,如果指定,将注入到 Pod 的主机文件中。 |
|
| HostAlias 包含 IP 和主机名之间的映射,这些映射将作为 pod 的主机文件中的条目注入。 |
|
| 如果为 true,请使用主机的网络命名空间。 如果要启用它,请确保了解安全隐患(https://kubernetes.io/docs/concepts/configuration/overview/)。
启用 hostNetwork 时,这将自动将 DNS 策略设置为 |
|
|
为 true 时,所有 PodMonitor 的 |
|
|
Prometheus 的容器镜像名称。如果指定,它优先于
仍然需要指定
如果没有定义 |
|
| 'prometheus'、'init-config-reloader' 和 'config-reloader' 容器的镜像拉取策略。详情请查看 https://kubernetes.io/docs/concepts/containers/images/#image-pull-policy。 |
|
| 可选引用同一命名空间中的 Secret 列表,用于从 registry 中拉取镜像。See http://kubernetes.io/docs/user-guide/images#specifying-imagepullsecrets-on-a-pod |
|
| LocalObjectReference 包含足够信息,供您在同一命名空间中找到引用的对象。 |
|
| initContainers 允许将 initContainers 注入 Pod 定义。它们可用于从外部来源获取用于注入 Prometheus 配置的 secret。执行 initContainer 期间的任何错误将导致重启 Pod。更多信息: https://kubernetes.io/docs/concepts/workloads/pods/init-containers/ InitContainers如果操作器共享相同的名称和修改,则修改 Operator 生成的 init 容器(如果它们通过策略合并补丁完成)。
由 Operator 管理的 init 容器名称的名称有:* 覆盖 init 容器完全超出维护人员将支持什么范围,通过这样做,您接受的行为可能随时中断,而无需通知。 |
|
| 要在 pod 中运行的单一应用程序容器。 |
|
| 通过重新标记将在内存中保留的目标数量来按scrape 限制。0 表示没有限制。 它需要 Prometheus >= v2.47.0。 请注意,全局限制仅适用于没有指定显式限制值的提取对象。如果要为所有提取对象强制实施最大限制,请参阅 enforcedKeepDroppedTargets。 |
|
| 对示例接受的标签数的 per-scrape 限制。仅在 Prometheus 版本 2.45.0 及更新版本中有效。 请注意,全局限制仅适用于没有指定显式限制值的提取对象。如果要为所有提取对象强制实施最大限制,请参阅 enforcedLabelLimit。 |
|
| 对示例接受的标签名称长度的 per-scrape 限制。仅在 Prometheus 版本 2.45.0 及更新版本中有效。 请注意,全局限制仅适用于没有指定显式限制值的提取对象。如果要为所有提取对象强制实施最大限制,请参阅 enforcedLabelNameLengthLimit。 |
|
| 对示例接受的标签值长度的 per-scrape 限制。仅在 Prometheus 版本 2.45.0 及更新版本中有效。 请注意,全局限制仅适用于没有指定显式限制值的提取对象。如果要为所有提取对象强制实施最大限制,请参阅 enforcedLabelValueLengthLimit。 |
|
| 为 true 时,Prometheus 服务器侦听回环地址,而不是 Pod IP 地址。 |
|
| Prometheus 和 config-reloader sidecar 的日志级别的日志格式。 |
|
| Prometheus 和 config-reloader sidecar 的日志级别。 |
|
|
定义 |
|
| 新创建的 Pod 应该在不出现任何容器崩溃的情况下变为可用状态的最小秒数。默认为 0 (pod 一旦就绪就会被视为可用) 这是 kubernetes 1.22 的一个 alpha 字段,直到 1.24,它需要启用 StatefulSetMinReadySeconds 功能门。 |
|
| 定义 Pod 调度到哪些节点上。 |
|
|
为 true 时,Prometheus 通过将提取数据中的标签重命名为从 ServiceMonitor、PodMonitor 和 ScrapeConfig 对象创建的所有目标,从而解析标签冲突。否则,会应用服务或 pod 监视器的 HonorLabels 字段。在实践中, |
|
| 为 true 时,Prometheus 会忽略从服务和 pod 监视器创建的所有目标的时间戳。否则,应用服务或 pod 监视器的 HonorTimestamps 字段。 |
|
| 当 Prometheus 部署暂停时,不会对底层对象执行除删除外的操作。 |
|
| 字段控制 StatefulSet 生命周期中是否和如何删除 PVC。所有 PVC 的默认行为都会被保留。这是 kubernetes 1.23 的 alpha 字段,直到 1.26 和来自 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" annotation, set to "prometheus". |
|
| 用于与 PodMonitor 发现匹配的命名空间。空标签选择器与所有命名空间匹配。null 标签选择器(默认值)仅与当前命名空间匹配。 |
|
| 为目标发现选择 PodMonitor。空标签选择器匹配所有对象。null 标签选择器不匹配任何对象。
如果 |
|
|
PodTargetLabels 会附加到所有 PodMonitor 和 ServiceMonitor 对象的 |
|
| 用于 pod 和监管服务的端口名称。默认:"web" |
|
| 分配给 Pod 的优先级类。 |
|
| 要与探测发现匹配的命名空间。空标签选择器与所有命名空间匹配。null 标签选择器仅与当前命名空间匹配。 |
|
| 为目标发现选择的探测。空标签选择器匹配所有对象。null 标签选择器不匹配任何对象。
如果 |
|
|
用于表示 Prometheus 实例名称的 Prometheus 外部标签名称。当字段设置为空字符串时,不会添加 external 标签( 默认:"prometheus" |
|
|
定义命名空间标签强制不应用到的 PrometheusRule 对象列表。这只有在 |
|
| PrometheusRuleExcludeConfig 允许用户配置排除的 PrometheusRule 名称及其命名空间,同时为警报和指标强制执行命名空间标签。 |
|
| QuerySpec 定义 Promethus 查询服务的配置。 |
|
| queryLogFile 指定 PromQL 查询要记录到的文件。
如果文件名有空路径,如 'query.log',Prometheus Pod 会将该文件挂载到位于 |
|
| 定义重新加载 Prometheus 配置的策略。如果没有指定,则使用 /-/reload HTTP 端点重新载入配置。 |
|
| 定义远程读取配置的列表。 |
|
| RemoteReadSpec 定义 Prometheus 的配置,以从远程端点读取后端示例。 |
|
| 定义远程写入配置的列表。 |
|
| RemoteWriteSpec 定义将示例从 Prometheus 写入远程端点的配置。 |
|
|
用于表示副本名称的 Prometheus 外部标签的名称。当字段设置为空字符串时,不会添加 external 标签( 默认:"prometheus_replica" |
|
|
为 Prometheus 部署部署的每个分片的副本数。 默认: 1 |
|
| 定义 'prometheus' 容器的资源请求和限值。 |
|
| 保留 Prometheus 数据的时长。
默认:"24h"如果 |
|
| Prometheus 数据使用的最大字节数。 |
|
| Prometheus 注册 HTTP 处理程序的路由前缀。
这在使用 |
|
| 用于与 PrometheusRule 发现匹配的命名空间。空标签选择器与所有命名空间匹配。null 标签选择器仅与当前命名空间匹配。 |
|
| 为规则评估选择的 PrometheusRule 对象。空标签选择器匹配所有对象。null 标签选择器不匹配任何对象。 |
|
| 定义 Prometheus 规则引擎的配置。 |
|
| SampleLimit 对将接受的提取示例数量定义 per-scrape 限制。仅在 Prometheus 版本 2.45.0 及更新版本中有效。 请注意,全局限制仅适用于没有指定显式限制值的提取对象。如果要为所有提取对象强制实施最大限制,请参阅 enforcedSampleLimit。 |
|
| 要公开的提取类列表,以提取对象,如 PodMonitor、ServiceMonitor、Probes 和 ScrapeConfigs。 这是一个 实验性功能,它可能会以中断的方式改变任何即将推出的版本。 |
|
| |
|
| 命名空间以匹配 ScrapeConfig 发现。空标签选择器与所有命名空间匹配。null 标签选择器仅与当前命名空间匹配。 请注意,ScrapeConfig 自定义资源定义目前在 Alpha 级别上。 |
|
| 为目标发现选择 ScrapeConfigs。空标签选择器匹配所有对象。null 标签选择器不匹配任何对象。
如果 请注意,ScrapeConfig 自定义资源定义目前在 Alpha 级别上。 |
|
| 连续提取之间的间隔。 默认:"30s" |
|
| 提取期间要协商的协议。它根据首选顺序告知客户端 Prometheus 支持的协议(从最先到最首选)。 如果未设置,Prometheus 将使用其默认值。 它需要 Prometheus >= v2.49.0。 |
|
| 等待提取请求超时的秒数。 |
|
|
secret 是与 Prometheus 对象相同的命名空间中的 Secret 列表,它应该被挂载到 Prometheus Pod 中。每个 Secret 都作为名为 |
|
| securityContext 包含 pod 级别的安全属性和通用容器设置。默认为默认的 PodSecurityContext。 |
|
| serviceAccountName 是用于运行 Prometheus Pod 的 ServiceAccount 的名称。 |
|
| 用于与 ServicedMonitors 发现匹配的命名空间。空标签选择器与所有命名空间匹配。null 标签选择器(默认值)仅与当前命名空间匹配。 |
|
| 为目标发现选择的 ServiceMonitor。空标签选择器匹配所有对象。null 标签选择器不匹配任何对象。
如果 |
|
| deprecated: 使用 'spec.image' 替代。镜像摘要可以指定为镜像名称的一部分。 |
|
|
分发目标的分片数量。 请注意,缩减分片不会在剩余的实例上重新划分数据,必须手动移动。增加分片不会重新划分数据,但将继续从同一实例获得。要全局查询,请使用 Thanos sidecar 和 Thanos querier 或远程写入数据到中央位置。
分片在 PodMonitors 和 ServiceMonitors 和 默认: 1 |
|
| Storage 定义 Prometheus 使用的存储。 |
|
| deprecated: 使用 'spec.image' 替代。镜像标签可以指定为镜像名称的一部分。 |
|
| TargetLimit 定义了接受的提取目标数量的限制。仅在 Prometheus 版本 2.45.0 及更新版本中有效。 请注意,全局限制仅适用于没有指定显式限制值的提取对象。如果要为所有提取对象强制实施最大限制,请参阅 enforcedTargetLimit。 |
|
| 定义可选 Thanos sidecar 的配置。 |
|
| 如果指定,定义 Pod 的容限。 |
|
| 此 Toleration 附加到 pod,以使用匹配的 operator <operator> 容许与 triple <key,value,effect> 匹配的任何污点。 |
|
| 如果指定,定义 pod 的拓扑分布约束。 |
|
| |
|
| tracingConfig 在 Prometheus 中配置追踪。 这是一个 实验性功能,它可能会以中断的方式改变任何即将推出的版本。 |
|
| 定义时间序列数据库(TSDB)的运行时重新加载配置。 |
|
| 正在部署的 Prometheus 版本。Operator 使用此信息来生成 Prometheus StatefulSet + 配置文件。 如果没有指定,Operator 会假定发布 Operator 版本时可用的 Prometheus 的最新上游版本。 |
|
| volumeMounts 允许配置额外的 VolumeMount。 volumeMounts 将附加到"prometheus"容器中的其他 VolumeMount 中,这些 VolumeMount 因 StorageSpec 对象而生成。 |
|
| VolumeMount 描述了容器内卷挂载。 |
|
| 卷允许在输出 StatefulSet 定义中配置额外的卷。指定的卷将附加到作为 StorageSpec 对象生成的其他卷。 |
|
| 卷代表 pod 中的指定卷,可以被 pod 中的任何容器访问。 |
|
| 使用 Snappy 配置 write-ahead 日志(WAL)的压缩。 Prometheus >= 2.20.0 默认启用 WAL 压缩 需要 Prometheus v2.11.0 及更高版本。 |
|
| 定义 Prometheus web 服务器的配置。 |
8.1.2. .spec.additionalAlertManagerConfigs
- 描述
additionalAlertmanagerConfigs 指定包含额外 Prometheus Alertmanager 配置的 Secret 的密钥。Alertmanager 配置附加到 Prometheus Operator 生成的配置中。它们必须根据官方 Prometheus 文档进行格式化:
https://prometheus.io/docs/prometheus/latest/configuration/configuration/#alertmanager_config
用户负责确保配置有效
请注意,使用此功能可能会公开可能会破坏 Prometheus 的升级。建议查看 Prometheus 发行注记,以确保升级后没有不兼容的 AlertManager 配置会破坏 Prometheus。
- 类型
-
object
- 必填
-
key
-
属性 | 类型 | 描述 |
---|---|---|
|
| 要从中选择的 secret 的密钥。必须是一个有效的 secret 密钥。 |
|
|
引用的名称。有效地需要此字段,但因为允许向后兼容为空。这里具有空值的此类实例几乎是错误的。TODO:添加其他有用的字段。apiVersion、kind、uid?更多信息: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names TODO: 当 controller-gen 不需要 https://github.com/kubernetes-sigs/kubebuilder/issues/3896 时,Drop |
|
| 指定是否需要定义 Secret 还是其密钥 |
8.1.3. .spec.additionalAlertRelabelConfigs
- 描述
additionalAlertRelabelConfigs 指定包含额外 Prometheus 警报重新标记配置的 Secret 的键。警报重新标记配置附加到 Prometheus Operator 生成的配置中。它们必须根据官方 Prometheus 文档进行格式化:
https://prometheus.io/docs/prometheus/latest/configuration/configuration/#alert_relabel_configs
用户负责确保配置有效
请注意,使用此功能可能会公开可能会破坏 Prometheus 的升级。建议查看 Prometheus 发行注记,以确保升级后没有不兼容的警报重新标记配置中断 Prometheus。
- 类型
-
object
- 必填
-
key
-
属性 | 类型 | 描述 |
---|---|---|
|
| 要从中选择的 secret 的密钥。必须是一个有效的 secret 密钥。 |
|
|
引用的名称。有效地需要此字段,但因为允许向后兼容为空。这里具有空值的此类实例几乎是错误的。TODO:添加其他有用的字段。apiVersion、kind、uid?更多信息: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names TODO: 当 controller-gen 不需要 https://github.com/kubernetes-sigs/kubebuilder/issues/3896 时,Drop |
|
| 指定是否需要定义 Secret 还是其密钥 |
8.1.4. .spec.additionalArgs
- 描述
AdditionalArgs 允许为 'prometheus' 容器设置额外的参数。
它旨在激活被专用配置选项不支持的隐藏标志。参数按原样传递给 Prometheus 容器,如果给定 Prometheus 版本无效或不支持它们,则可能会导致问题。
如果参数冲突(例如,已由 Operator 本身设置的参数)或在提供无效参数时,协调将失败,并会记录错误。
- 类型
-
数组
8.1.5. .spec.additionalArgs[]
- 描述
- 参数作为 AdditionalArgs 列表的一部分。
- 类型
-
object
- 必填
-
name
-
属性 | 类型 | 描述 |
---|---|---|
|
| 参数的名称,如 "scrape.discovery-reload-interval"。 |
|
| 参数值,如 30s。对于仅限名称的参数(如 --storage.tsdb.no-lockfile)可以为空。 |
8.1.6. .spec.additionalScrapeConfigs
- 描述
- additionalScrapeConfigs 允许指定包含额外 Prometheus scrape 配置的 Secret 的密钥。指定的提取配置附加到 Prometheus Operator 生成的配置中。指定的作业配置必须具有官方 Prometheus 文档中指定的表单: https://prometheus.io/docs/prometheus/latest/configuration/configuration/#scrape_config。附加提取配置后,用户负责确保它有效。请注意,使用此功能可能会公开可能会破坏 Prometheus 的升级。建议查看 Prometheus 发行注记,以确保升级后没有不兼容的提取配置中断 Prometheus。
- 类型
-
object
- 必填
-
key
-
属性 | 类型 | 描述 |
---|---|---|
|
| 要从中选择的 secret 的密钥。必须是一个有效的 secret 密钥。 |
|
|
引用的名称。有效地需要此字段,但因为允许向后兼容为空。这里具有空值的此类实例几乎是错误的。TODO:添加其他有用的字段。apiVersion、kind、uid?更多信息: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names TODO: 当 controller-gen 不需要 https://github.com/kubernetes-sigs/kubebuilder/issues/3896 时,Drop |
|
| 指定是否需要定义 Secret 还是其密钥 |
8.1.7. .spec.affinity
- 描述
- 如果指定,定义 Pod 的关联性调度规则。
- 类型
-
object
属性 | 类型 | 描述 |
---|---|---|
|
| 描述 pod 的节点关联性调度规则。 |
|
| 描述 pod 关联性调度规则(例如,将这个 pod 位于同一个节点、区等)中。 |
|
| 描述 pod 反关联性调度规则(例如,避免将此 pod 放置到同一个节点、区等)。 |
8.1.8. .spec.affinity.nodeAffinity
- 描述
- 描述 pod 的节点关联性调度规则。
- 类型
-
object
属性 | 类型 | 描述 |
---|---|---|
|
| 调度程序更喜欢将 pod 调度到满足此字段指定的关联性表达式的节点,但可能会选择违反一个或多个表达式的节点。最首选节点是具有最大权重总和的节点,即对于满足所有调度要求(资源请求、必需关联表达式等)的每个节点,计算出一个总和总和总和总和(如果节点与相应的 matchExpressions 匹配),则计算总和最高的节点是最首选的。 |
|
| 空白的首选调度术语与带有隐式权重 0 (例如,它的一个 no-op)的所有对象匹配。空首选调度术语不匹配任何对象(例如,也是 no-op)。 |
|
| 如果在调度时没有满足此字段指定的关联性要求,则 pod 不会被调度到该节点上。如果此字段指定的关联性要求在 pod 执行期间某一点满足(例如,由于更新),则系统可能或可能无法最终从其节点驱除 pod。 |
8.1.9. .spec.affinity.nodeAffinity.preferredDuringSchedulingIgnoredDuringExecution
- 描述
- 调度程序更喜欢将 pod 调度到满足此字段指定的关联性表达式的节点,但可能会选择违反一个或多个表达式的节点。最首选节点是具有最大权重总和的节点,即对于满足所有调度要求(资源请求、必需关联表达式等)的每个节点,计算出一个总和总和总和总和(如果节点与相应的 matchExpressions 匹配),则计算总和最高的节点是最首选的。
- 类型
-
array
8.1.10. .spec.affinity.nodeAffinity.preferredDuringSchedulingIgnoredDuringExecution[]
- 描述
- 空白的首选调度术语与带有隐式权重 0 (例如,它的一个 no-op)的所有对象匹配。空首选调度术语不匹配任何对象(例如,也是 no-op)。
- 类型
-
object
- 必填
-
preference
-
weight
-
属性 | 类型 | 描述 |
---|---|---|
|
| 与对应权重关联的节点选择器术语。 |
|
| 与对应 nodeSelectorTerm 关联的权重,范围为 1-100。 |
8.1.11. .spec.affinity.nodeAffinity.preferredDuringSchedulingIgnoredDuringExecution[].preference
- 描述
- 与对应权重关联的节点选择器术语。
- 类型
-
object
属性 | 类型 | 描述 |
---|---|---|
|
| 按节点标签划分的节点选择器要求列表。 |
|
| 节点选择器要求是一个选择器,其中包含与键和值相关的值、键和值。 |
|
| 按节点字段划分的节点选择器要求列表。 |
|
| 节点选择器要求是一个选择器,其中包含与键和值相关的值、键和值。 |
8.1.12. .spec.affinity.nodeAffinity.preferredDuringSchedulingIgnoredDuringExecution[].preference.matchExpressions
- 描述
- 按节点标签划分的节点选择器要求列表。
- 类型
-
array
8.1.13. .spec.affinity.nodeAffinity.preferredDuringSchedulingIgnoredDuringExecution[].preference.matchExpressions[]
- 描述
- 节点选择器要求是一个选择器,其中包含与键和值相关的值、键和值。
- 类型
-
object
- 必填
-
key
-
operator
-
属性 | 类型 | 描述 |
---|---|---|
|
| 选择器应用到的标签键。 |
|
| 代表键与一组值的关系。有效的运算符为 In、NotIn、Exists、DoesNotExist。gt 和 Lt. |
|
| 字符串值数组。如果运算符是 In 或 NotIn,则值数组必须是非空的。如果运算符是 Exists 或 DoesNotExist,则值数组必须为空。如果运算符是 Gt 或 Lt,则值数组必须具有单个元素,它将解释为整数。这个数组会在策略性合并补丁中被替换。 |
8.1.14. .spec.affinity.nodeAffinity.preferredDuringSchedulingIgnoredDuringExecution[].preference.matchFields
- 描述
- 按节点字段划分的节点选择器要求列表。
- 类型
-
array
8.1.15. .spec.affinity.nodeAffinity.preferredDuringSchedulingIgnoredDuringExecution[].preference.matchFields[]
- 描述
- 节点选择器要求是一个选择器,其中包含与键和值相关的值、键和值。
- 类型
-
object
- 必填
-
key
-
operator
-
属性 | 类型 | 描述 |
---|---|---|
|
| 选择器应用到的标签键。 |
|
| 代表键与一组值的关系。有效的运算符为 In、NotIn、Exists、DoesNotExist。gt 和 Lt. |
|
| 字符串值数组。如果运算符是 In 或 NotIn,则值数组必须是非空的。如果运算符是 Exists 或 DoesNotExist,则值数组必须为空。如果运算符是 Gt 或 Lt,则值数组必须具有单个元素,它将解释为整数。这个数组会在策略性合并补丁中被替换。 |
8.1.16. .spec.affinity.nodeAffinity.requiredDuringSchedulingIgnoredDuringExecution
- 描述
- 如果在调度时没有满足此字段指定的关联性要求,则 pod 不会被调度到该节点上。如果此字段指定的关联性要求在 pod 执行期间某一点满足(例如,由于更新),则系统可能或可能无法最终从其节点驱除 pod。
- 类型
-
object
- 必填
-
nodeSelectorTerms
-
属性 | 类型 | 描述 |
---|---|---|
|
| 必需。节点选择器术语列表。术语为 ORed。 |
|
| null 或空节点选择器术语不匹配任何对象。它们的要求是 AND。TopologySelectorTerm 类型实现 NodeSelectorTerm 的子集。 |
8.1.17. .spec.affinity.nodeAffinity.requiredDuringSchedulingIgnoredDuringExecution.nodeSelectorTerms
- 描述
- 必需。节点选择器术语列表。术语为 ORed。
- 类型
-
array
8.1.18. .spec.affinity.nodeAffinity.requiredDuringSchedulingIgnoredDuringExecution.nodeSelectorTerms[]
- 描述
- null 或空节点选择器术语不匹配任何对象。它们的要求是 AND。TopologySelectorTerm 类型实现 NodeSelectorTerm 的子集。
- 类型
-
object
属性 | 类型 | 描述 |
---|---|---|
|
| 按节点标签划分的节点选择器要求列表。 |
|
| 节点选择器要求是一个选择器,其中包含与键和值相关的值、键和值。 |
|
| 按节点字段划分的节点选择器要求列表。 |
|
| 节点选择器要求是一个选择器,其中包含与键和值相关的值、键和值。 |
8.1.19. .spec.affinity.nodeAffinity.requiredDuringSchedulingIgnoredDuringExecution.nodeSelectorTerms[].matchExpressions
- 描述
- 按节点标签划分的节点选择器要求列表。
- 类型
-
array
8.1.20. .spec.affinity.nodeAffinity.requiredDuringSchedulingIgnoredDuringExecution.nodeSelectorTerms[].matchExpressions[]
- 描述
- 节点选择器要求是一个选择器,其中包含与键和值相关的值、键和值。
- 类型
-
object
- 必填
-
key
-
operator
-
属性 | 类型 | 描述 |
---|---|---|
|
| 选择器应用到的标签键。 |
|
| 代表键与一组值的关系。有效的运算符为 In、NotIn、Exists、DoesNotExist。gt 和 Lt. |
|
| 字符串值数组。如果运算符是 In 或 NotIn,则值数组必须是非空的。如果运算符是 Exists 或 DoesNotExist,则值数组必须为空。如果运算符是 Gt 或 Lt,则值数组必须具有单个元素,它将解释为整数。这个数组会在策略性合并补丁中被替换。 |
8.1.21. .spec.affinity.nodeAffinity.requiredDuringSchedulingIgnoredDuringExecution.nodeSelectorTerms[].matchFields
- 描述
- 按节点字段划分的节点选择器要求列表。
- 类型
-
array
8.1.22. .spec.affinity.nodeAffinity.requiredDuringSchedulingIgnoredDuringExecution.nodeSelectorTerms[].matchFields[]
- 描述
- 节点选择器要求是一个选择器,其中包含与键和值相关的值、键和值。
- 类型
-
object
- 必填
-
key
-
operator
-
属性 | 类型 | 描述 |
---|---|---|
|
| 选择器应用到的标签键。 |
|
| 代表键与一组值的关系。有效的运算符为 In、NotIn、Exists、DoesNotExist。gt 和 Lt. |
|
| 字符串值数组。如果运算符是 In 或 NotIn,则值数组必须是非空的。如果运算符是 Exists 或 DoesNotExist,则值数组必须为空。如果运算符是 Gt 或 Lt,则值数组必须具有单个元素,它将解释为整数。这个数组会在策略性合并补丁中被替换。 |
8.1.23. .spec.affinity.podAffinity
- 描述
- 描述 pod 关联性调度规则(例如,将这个 pod 位于同一个节点、区等)中。
- 类型
-
object
属性 | 类型 | 描述 |
---|---|---|
|
| 调度程序更喜欢将 pod 调度到满足此字段指定的关联性表达式的节点,但可能会选择违反一个或多个表达式的节点。最首选的节点是具有最大权重总和的节点(即,对于满足所有调度要求的节点(resource request、requiredDuringScheduling 关联性表达式等)的每个节点,计算并迭代此字段元素,并在节点具有与对应 podAffinityTerm 匹配的 pod 时,将"weight"添加到总和(如果节点具有最高 podAffinityTerm)、具有最高总和最高的节点是首选。 |
|
| 所有匹配的 WeightedPodAffinityTerm 字段的权重添加到每个节点,以查找最首选节点。 |
|
| 如果在调度时没有满足此字段指定的关联性要求,则 pod 不会被调度到该节点上。如果此字段指定的关联性要求在 pod 执行期间某一点满足(例如,由于 pod 标签更新),则系统可能或可能无法最终从其节点驱除 pod。当有多个元素时,与每个 podAffinityTerm 对应的节点列表都会被交集,例如必须满足所有术语。 |
|
| 定义一组 pod (即,与给定命名空间相对 labelSelector 匹配的 labelSelector ),该 pod 应该与 pod 共同定位(反关联性)或没有共同定位(反关联性)的节点上运行,其中 co-located 在具有键 <topologyKey> 标签的节点上运行,它与其上运行一组 pod 的 pod 匹配。 |
8.1.24. .spec.affinity.podAffinity.preferredDuringSchedulingIgnoredDuringExecution
- 描述
- 调度程序更喜欢将 pod 调度到满足此字段指定的关联性表达式的节点,但可能会选择违反一个或多个表达式的节点。最首选的节点是具有最大权重总和的节点(即,对于满足所有调度要求的节点(resource request、requiredDuringScheduling 关联性表达式等)的每个节点,计算并迭代此字段元素,并在节点具有与对应 podAffinityTerm 匹配的 pod 时,将"weight"添加到总和(如果节点具有最高 podAffinityTerm)、具有最高总和最高的节点是首选。
- 类型
-
array
8.1.25. .spec.affinity.podAffinity.preferredDuringSchedulingIgnoredDuringExecution[]
- 描述
- 所有匹配的 WeightedPodAffinityTerm 字段的权重添加到每个节点,以查找最首选节点。
- 类型
-
object
- 必填
-
podAffinityTerm
-
weight
-
属性 | 类型 | 描述 |
---|---|---|
|
| 必需。与对应权重关联的 pod 关联性术语。 |
|
| 与对应的 podAffinityTerm 关联的权重,范围为 1-100。 |
8.1.26. .spec.affinity.podAffinity.preferredDuringSchedulingIgnoredDuringExecution[].podAffinityTerm
- 描述
- 必需。与对应权重关联的 pod 关联性术语。
- 类型
-
object
- 必填
-
topologyKey
-
属性 | 类型 | 描述 |
---|---|---|
|
| 对一组资源进行标签查询,本例中为 pod。如果为空,则此 PodAffinityTerm 与任何 Pod 匹配。 |
|
|
matchLabelKeys 是一组 pod 标签键,用于选择要考虑哪些 pod。键用于从传入的 pod 标签中查找值,这些键值标签与 |
|
|
MismatchLabelKeys 是一组 pod 标签键,用于选择要考虑哪些 pod。键用于从传入的 pod 标签中查找值,这些键值标签与 |
|
| 术语适用的命名空间集合上的标签查询。术语应用于此字段选定的命名空间的 union,以及 namespaces 字段中列出的命名空间。null selector 和 null 或空命名空间列表表示"此 pod 的命名空间"。空选择器({})匹配所有命名空间。 |
|
| namespaces 指定术语应用到的命名空间名称的静态列表。术语应用到此字段中列出的命名空间的 union,namespaceSelector 选择的命名空间列表和 null namespaceSelector 表示 " this pod 的命名空间"。 |
|
| 此 pod 应该在指定命名空间中与 labelSelector 匹配的 pod 共存(反关联性),其中 co-located 定义为在运行所选 pod 的节点的值为 running 的节点上运行。不允许为空 topologyKey。 |
8.1.27. .spec.affinity.podAffinity.preferredDuringSchedulingIgnoredDuringExecution[].podAffinityTerm.labelSelector
- 描述
- 对一组资源进行标签查询,本例中为 pod。如果为空,则此 PodAffinityTerm 与任何 Pod 匹配。
- 类型
-
object
属性 | 类型 | 描述 |
---|---|---|
|
| matchExpressions 是标签选择器要求列表。要求的逻辑关系是 AND。 |
|
| 标签选择器要求是一个选择器,其中包含与键和值相关的值、键和值。 |
|
| matchLabels 是 {key,value} 对的映射。MatchLabels 映射中的单个 {key,value} 等同于 matchExpressions 的一个元素,其 key 字段是 "key",运算符是 "In",值数组仅包含 "value"。要求的逻辑关系是 AND。 |
8.1.28. .spec.affinity.podAffinity.preferredDuringSchedulingIgnoredDuringExecution[].podAffinityTerm.labelSelector.matchExpressions
- 描述
- matchExpressions 是标签选择器要求列表。要求的逻辑关系是 AND。
- 类型
-
array
8.1.29. .spec.affinity.podAffinity.preferredDuringSchedulingIgnoredDuringExecution[].podAffinityTerm.labelSelector.matchExpressions[]
- 描述
- 标签选择器要求是一个选择器,其中包含与键和值相关的值、键和值。
- 类型
-
object
- 必填
-
key
-
operator
-
属性 | 类型 | 描述 |
---|---|---|
|
| key 是选择器应用到的标签键。 |
|
| 运算符代表一个键与一组值的关系。有效的运算符是 In、NotIn、Exists 和 DoesNotExist。 |
|
| 值是字符串值的数组。如果运算符是 In 或 NotIn,则值数组必须是非空的。如果运算符是 Exists 或 DoesNotExist,则值数组必须为空。这个数组会在策略性合并补丁中被替换。 |
8.1.30. .spec.affinity.podAffinity.preferredDuringSchedulingIgnoredDuringExecution[].podAffinityTerm.namespaceSelector
- 描述
- 术语适用的命名空间集合上的标签查询。术语应用于此字段选定的命名空间的 union,以及 namespaces 字段中列出的命名空间。null selector 和 null 或空命名空间列表表示"此 pod 的命名空间"。空选择器({})匹配所有命名空间。
- 类型
-
object
属性 | 类型 | 描述 |
---|---|---|
|
| matchExpressions 是标签选择器要求列表。要求的逻辑关系是 AND。 |
|
| 标签选择器要求是一个选择器,其中包含与键和值相关的值、键和值。 |
|
| matchLabels 是 {key,value} 对的映射。MatchLabels 映射中的单个 {key,value} 等同于 matchExpressions 的一个元素,其 key 字段是 "key",运算符是 "In",值数组仅包含 "value"。要求的逻辑关系是 AND。 |
8.1.31. .spec.affinity.podAffinity.preferredDuringSchedulingIgnoredDuringExecution[].podAffinityTerm.namespaceSelector.matchExpressions
- 描述
- matchExpressions 是标签选择器要求列表。要求的逻辑关系是 AND。
- 类型
-
array
8.1.32. .spec.affinity.podAffinity.preferredDuringSchedulingIgnoredDuringExecution[].podAffinityTerm.namespaceSelector.matchExpressions[]
- 描述
- 标签选择器要求是一个选择器,其中包含与键和值相关的值、键和值。
- 类型
-
object
- 必填
-
key
-
operator
-
属性 | 类型 | 描述 |
---|---|---|
|
| key 是选择器应用到的标签键。 |
|
| 运算符代表一个键与一组值的关系。有效的运算符是 In、NotIn、Exists 和 DoesNotExist。 |
|
| 值是字符串值的数组。如果运算符是 In 或 NotIn,则值数组必须是非空的。如果运算符是 Exists 或 DoesNotExist,则值数组必须为空。这个数组会在策略性合并补丁中被替换。 |
8.1.33. .spec.affinity.podAffinity.requiredDuringSchedulingIgnoredDuringExecution
- 描述
- 如果在调度时没有满足此字段指定的关联性要求,则 pod 不会被调度到该节点上。如果此字段指定的关联性要求在 pod 执行期间某一点满足(例如,由于 pod 标签更新),则系统可能或可能无法最终从其节点驱除 pod。当有多个元素时,与每个 podAffinityTerm 对应的节点列表都会被交集,例如必须满足所有术语。
- 类型
-
array
8.1.34. .spec.affinity.podAffinity.requiredDuringSchedulingIgnoredDuringExecution[]
- 描述
- 定义一组 pod (即,与给定命名空间相对 labelSelector 匹配的 labelSelector ),该 pod 应该与 pod 共同定位(反关联性)或没有共同定位(反关联性)的节点上运行,其中 co-located 在具有键 <topologyKey> 标签的节点上运行,它与其上运行一组 pod 的 pod 匹配。
- 类型
-
object
- 必填
-
topologyKey
-
属性 | 类型 | 描述 |
---|---|---|
|
| 对一组资源进行标签查询,本例中为 pod。如果为空,则此 PodAffinityTerm 与任何 Pod 匹配。 |
|
|
matchLabelKeys 是一组 pod 标签键,用于选择要考虑哪些 pod。键用于从传入的 pod 标签中查找值,这些键值标签与 |
|
|
MismatchLabelKeys 是一组 pod 标签键,用于选择要考虑哪些 pod。键用于从传入的 pod 标签中查找值,这些键值标签与 |
|
| 术语适用的命名空间集合上的标签查询。术语应用于此字段选定的命名空间的 union,以及 namespaces 字段中列出的命名空间。null selector 和 null 或空命名空间列表表示"此 pod 的命名空间"。空选择器({})匹配所有命名空间。 |
|
| namespaces 指定术语应用到的命名空间名称的静态列表。术语应用到此字段中列出的命名空间的 union,namespaceSelector 选择的命名空间列表和 null namespaceSelector 表示 " this pod 的命名空间"。 |
|
| 此 pod 应该在指定命名空间中与 labelSelector 匹配的 pod 共存(反关联性),其中 co-located 定义为在运行所选 pod 的节点的值为 running 的节点上运行。不允许为空 topologyKey。 |
8.1.35. .spec.affinity.podAffinity.requiredDuringSchedulingIgnoredDuringExecution[].labelSelector
- 描述
- 对一组资源进行标签查询,本例中为 pod。如果为空,则此 PodAffinityTerm 与任何 Pod 匹配。
- 类型
-
object
属性 | 类型 | 描述 |
---|---|---|
|
| matchExpressions 是标签选择器要求列表。要求的逻辑关系是 AND。 |
|
| 标签选择器要求是一个选择器,其中包含与键和值相关的值、键和值。 |
|
| matchLabels 是 {key,value} 对的映射。MatchLabels 映射中的单个 {key,value} 等同于 matchExpressions 的一个元素,其 key 字段是 "key",运算符是 "In",值数组仅包含 "value"。要求的逻辑关系是 AND。 |
8.1.36. .spec.affinity.podAffinity.requiredDuringSchedulingIgnoredDuringExecution[].labelSelector.matchExpressions
- 描述
- matchExpressions 是标签选择器要求列表。要求的逻辑关系是 AND。
- 类型
-
array
8.1.37. .spec.affinity.podAffinity.requiredDuringSchedulingIgnoredDuringExecution[].labelSelector.matchExpressions[]
- 描述
- 标签选择器要求是一个选择器,其中包含与键和值相关的值、键和值。
- 类型
-
object
- 必填
-
key
-
operator
-
属性 | 类型 | 描述 |
---|---|---|
|
| key 是选择器应用到的标签键。 |
|
| 运算符代表一个键与一组值的关系。有效的运算符是 In、NotIn、Exists 和 DoesNotExist。 |
|
| 值是字符串值的数组。如果运算符是 In 或 NotIn,则值数组必须是非空的。如果运算符是 Exists 或 DoesNotExist,则值数组必须为空。这个数组会在策略性合并补丁中被替换。 |
8.1.38. .spec.affinity.podAffinity.requiredDuringSchedulingIgnoredDuringExecution[].namespaceSelector
- 描述
- 术语适用的命名空间集合上的标签查询。术语应用于此字段选定的命名空间的 union,以及 namespaces 字段中列出的命名空间。null selector 和 null 或空命名空间列表表示"此 pod 的命名空间"。空选择器({})匹配所有命名空间。
- 类型
-
object
属性 | 类型 | 描述 |
---|---|---|
|
| matchExpressions 是标签选择器要求列表。要求的逻辑关系是 AND。 |
|
| 标签选择器要求是一个选择器,其中包含与键和值相关的值、键和值。 |
|
| matchLabels 是 {key,value} 对的映射。MatchLabels 映射中的单个 {key,value} 等同于 matchExpressions 的一个元素,其 key 字段是 "key",运算符是 "In",值数组仅包含 "value"。要求的逻辑关系是 AND。 |
8.1.39. .spec.affinity.podAffinity.requiredDuringSchedulingIgnoredDuringExecution[].namespaceSelector.matchExpressions
- 描述
- matchExpressions 是标签选择器要求列表。要求的逻辑关系是 AND。
- 类型
-
array
8.1.40. .spec.affinity.podAffinity.requiredDuringSchedulingIgnoredDuringExecution[].namespaceSelector.matchExpressions[]
- 描述
- 标签选择器要求是一个选择器,其中包含与键和值相关的值、键和值。
- 类型
-
object
- 必填
-
key
-
operator
-
属性 | 类型 | 描述 |
---|---|---|
|
| key 是选择器应用到的标签键。 |
|
| 运算符代表一个键与一组值的关系。有效的运算符是 In、NotIn、Exists 和 DoesNotExist。 |
|
| 值是字符串值的数组。如果运算符是 In 或 NotIn,则值数组必须是非空的。如果运算符是 Exists 或 DoesNotExist,则值数组必须为空。这个数组会在策略性合并补丁中被替换。 |
8.1.41. .spec.affinity.podAntiAffinity
- 描述
- 描述 pod 反关联性调度规则(例如,避免将此 pod 放置到同一个节点、区等)。
- 类型
-
object
属性 | 类型 | 描述 |
---|---|---|
|
| 调度程序更喜欢将 pod 调度到满足此字段指定的反关联性表达式的节点,但可能会选择违反一个或多个表达式的节点。最首选的节点是具有最大权重总和的节点,即对于满足所有调度要求(资源请求、requiredDuringScheduling 反关联性表达式等)的每个节点,计算通过此字段元素来计算总和总和(如果节点具有与对应的 podAffinityTerm 匹配的 pod)的总和。 |
|
| 所有匹配的 WeightedPodAffinityTerm 字段的权重添加到每个节点,以查找最首选节点。 |
|
| 如果在调度时没有满足此字段指定的反关联性要求,则 pod 不会被调度到该节点上。如果此字段指定的反关联性要求在 Pod 执行期间某一点满足(例如,由于 pod 标签更新),则系统可能或可能无法最终从其节点驱除 pod。当有多个元素时,与每个 podAffinityTerm 对应的节点列表都会被交集,例如必须满足所有术语。 |
|
| 定义一组 pod (即,与给定命名空间相对 labelSelector 匹配的 labelSelector ),该 pod 应该与 pod 共同定位(反关联性)或没有共同定位(反关联性)的节点上运行,其中 co-located 在具有键 <topologyKey> 标签的节点上运行,它与其上运行一组 pod 的 pod 匹配。 |
8.1.42. .spec.affinity.podAntiAffinity.preferredDuringSchedulingIgnoredDuringExecution
- 描述
- 调度程序更喜欢将 pod 调度到满足此字段指定的反关联性表达式的节点,但可能会选择违反一个或多个表达式的节点。最首选的节点是具有最大权重总和的节点,即对于满足所有调度要求(资源请求、requiredDuringScheduling 反关联性表达式等)的每个节点,计算通过此字段元素来计算总和总和(如果节点具有与对应的 podAffinityTerm 匹配的 pod)的总和。
- 类型
-
array
8.1.43. .spec.affinity.podAntiAffinity.preferredDuringSchedulingIgnoredDuringExecution[]
- 描述
- 所有匹配的 WeightedPodAffinityTerm 字段的权重添加到每个节点,以查找最首选节点。
- 类型
-
object
- 必填
-
podAffinityTerm
-
weight
-
属性 | 类型 | 描述 |
---|---|---|
|
| 必需。与对应权重关联的 pod 关联性术语。 |
|
| 与对应的 podAffinityTerm 关联的权重,范围为 1-100。 |
8.1.44. .spec.affinity.podAntiAffinity.preferredDuringSchedulingIgnoredDuringExecution[].podAffinityTerm
- 描述
- 必需。与对应权重关联的 pod 关联性术语。
- 类型
-
object
- 必填
-
topologyKey
-
属性 | 类型 | 描述 |
---|---|---|
|
| 对一组资源进行标签查询,本例中为 pod。如果为空,则此 PodAffinityTerm 与任何 Pod 匹配。 |
|
|
matchLabelKeys 是一组 pod 标签键,用于选择要考虑哪些 pod。键用于从传入的 pod 标签中查找值,这些键值标签与 |
|
|
MismatchLabelKeys 是一组 pod 标签键,用于选择要考虑哪些 pod。键用于从传入的 pod 标签中查找值,这些键值标签与 |
|
| 术语适用的命名空间集合上的标签查询。术语应用于此字段选定的命名空间的 union,以及 namespaces 字段中列出的命名空间。null selector 和 null 或空命名空间列表表示"此 pod 的命名空间"。空选择器({})匹配所有命名空间。 |
|
| namespaces 指定术语应用到的命名空间名称的静态列表。术语应用到此字段中列出的命名空间的 union,namespaceSelector 选择的命名空间列表和 null namespaceSelector 表示 " this pod 的命名空间"。 |
|
| 此 pod 应该在指定命名空间中与 labelSelector 匹配的 pod 共存(反关联性),其中 co-located 定义为在运行所选 pod 的节点的值为 running 的节点上运行。不允许为空 topologyKey。 |
8.1.45. .spec.affinity.podAntiAffinity.preferredDuringSchedulingIgnoredDuringExecution[].podAffinityTerm.labelSelector
- 描述
- 对一组资源进行标签查询,本例中为 pod。如果为空,则此 PodAffinityTerm 与任何 Pod 匹配。
- 类型
-
object
属性 | 类型 | 描述 |
---|---|---|
|
| matchExpressions 是标签选择器要求列表。要求的逻辑关系是 AND。 |
|
| 标签选择器要求是一个选择器,其中包含与键和值相关的值、键和值。 |
|
| matchLabels 是 {key,value} 对的映射。MatchLabels 映射中的单个 {key,value} 等同于 matchExpressions 的一个元素,其 key 字段是 "key",运算符是 "In",值数组仅包含 "value"。要求的逻辑关系是 AND。 |
8.1.46. .spec.affinity.podAntiAffinity.preferredDuringSchedulingIgnoredDuringExecution[].podAffinityTerm.labelSelector.matchExpressions
- 描述
- matchExpressions 是标签选择器要求列表。要求的逻辑关系是 AND。
- 类型
-
array
8.1.47. .spec.affinity.podAntiAffinity.preferredDuringSchedulingIgnoredDuringExecution[].podAffinityTerm.labelSelector.matchExpressions[]
- 描述
- 标签选择器要求是一个选择器,其中包含与键和值相关的值、键和值。
- 类型
-
object
- 必填
-
key
-
operator
-
属性 | 类型 | 描述 |
---|---|---|
|
| key 是选择器应用到的标签键。 |
|
| 运算符代表一个键与一组值的关系。有效的运算符是 In、NotIn、Exists 和 DoesNotExist。 |
|
| 值是字符串值的数组。如果运算符是 In 或 NotIn,则值数组必须是非空的。如果运算符是 Exists 或 DoesNotExist,则值数组必须为空。这个数组会在策略性合并补丁中被替换。 |
8.1.48. .spec.affinity.podAntiAffinity.preferredDuringSchedulingIgnoredDuringExecution[].podAffinityTerm.namespaceSelector
- 描述
- 术语适用的命名空间集合上的标签查询。术语应用于此字段选定的命名空间的 union,以及 namespaces 字段中列出的命名空间。null selector 和 null 或空命名空间列表表示"此 pod 的命名空间"。空选择器({})匹配所有命名空间。
- 类型
-
object
属性 | 类型 | 描述 |
---|---|---|
|
| matchExpressions 是标签选择器要求列表。要求的逻辑关系是 AND。 |
|
| 标签选择器要求是一个选择器,其中包含与键和值相关的值、键和值。 |
|
| matchLabels 是 {key,value} 对的映射。MatchLabels 映射中的单个 {key,value} 等同于 matchExpressions 的一个元素,其 key 字段是 "key",运算符是 "In",值数组仅包含 "value"。要求的逻辑关系是 AND。 |
8.1.49. .spec.affinity.podAntiAffinity.preferredDuringSchedulingIgnoredDuringExecution[].podAffinityTerm.namespaceSelector.matchExpressions
- 描述
- matchExpressions 是标签选择器要求列表。要求的逻辑关系是 AND。
- 类型
-
array
8.1.50. .spec.affinity.podAntiAffinity.preferredDuringSchedulingIgnoredDuringExecution[].podAffinityTerm.namespaceSelector.matchExpressions[]
- 描述
- 标签选择器要求是一个选择器,其中包含与键和值相关的值、键和值。
- 类型
-
object
- 必填
-
key
-
operator
-
属性 | 类型 | 描述 |
---|---|---|
|
| key 是选择器应用到的标签键。 |
|
| 运算符代表一个键与一组值的关系。有效的运算符是 In、NotIn、Exists 和 DoesNotExist。 |
|
| 值是字符串值的数组。如果运算符是 In 或 NotIn,则值数组必须是非空的。如果运算符是 Exists 或 DoesNotExist,则值数组必须为空。这个数组会在策略性合并补丁中被替换。 |
8.1.51. .spec.affinity.podAntiAffinity.requiredDuringSchedulingIgnoredDuringExecution
- 描述
- 如果在调度时没有满足此字段指定的反关联性要求,则 pod 不会被调度到该节点上。如果此字段指定的反关联性要求在 Pod 执行期间某一点满足(例如,由于 pod 标签更新),则系统可能或可能无法最终从其节点驱除 pod。当有多个元素时,与每个 podAffinityTerm 对应的节点列表都会被交集,例如必须满足所有术语。
- 类型
-
array
8.1.52. .spec.affinity.podAntiAffinity.requiredDuringSchedulingIgnoredDuringExecution[]
- 描述
- 定义一组 pod (即,与给定命名空间相对 labelSelector 匹配的 labelSelector ),该 pod 应该与 pod 共同定位(反关联性)或没有共同定位(反关联性)的节点上运行,其中 co-located 在具有键 <topologyKey> 标签的节点上运行,它与其上运行一组 pod 的 pod 匹配。
- 类型
-
object
- 必填
-
topologyKey
-
属性 | 类型 | 描述 |
---|---|---|
|
| 对一组资源进行标签查询,本例中为 pod。如果为空,则此 PodAffinityTerm 与任何 Pod 匹配。 |
|
|
matchLabelKeys 是一组 pod 标签键,用于选择要考虑哪些 pod。键用于从传入的 pod 标签中查找值,这些键值标签与 |
|
|
MismatchLabelKeys 是一组 pod 标签键,用于选择要考虑哪些 pod。键用于从传入的 pod 标签中查找值,这些键值标签与 |
|
| 术语适用的命名空间集合上的标签查询。术语应用于此字段选定的命名空间的 union,以及 namespaces 字段中列出的命名空间。null selector 和 null 或空命名空间列表表示"此 pod 的命名空间"。空选择器({})匹配所有命名空间。 |
|
| namespaces 指定术语应用到的命名空间名称的静态列表。术语应用到此字段中列出的命名空间的 union,namespaceSelector 选择的命名空间列表和 null namespaceSelector 表示 " this pod 的命名空间"。 |
|
| 此 pod 应该在指定命名空间中与 labelSelector 匹配的 pod 共存(反关联性),其中 co-located 定义为在运行所选 pod 的节点的值为 running 的节点上运行。不允许为空 topologyKey。 |
8.1.53. .spec.affinity.podAntiAffinity.requiredDuringSchedulingIgnoredDuringExecution[].labelSelector
- 描述
- 对一组资源进行标签查询,本例中为 pod。如果为空,则此 PodAffinityTerm 与任何 Pod 匹配。
- 类型
-
object
属性 | 类型 | 描述 |
---|---|---|
|
| matchExpressions 是标签选择器要求列表。要求的逻辑关系是 AND。 |
|
| 标签选择器要求是一个选择器,其中包含与键和值相关的值、键和值。 |
|
| matchLabels 是 {key,value} 对的映射。MatchLabels 映射中的单个 {key,value} 等同于 matchExpressions 的一个元素,其 key 字段是 "key",运算符是 "In",值数组仅包含 "value"。要求的逻辑关系是 AND。 |
8.1.54. .spec.affinity.podAntiAffinity.requiredDuringSchedulingIgnoredDuringExecution[].labelSelector.matchExpressions
- 描述
- matchExpressions 是标签选择器要求列表。要求的逻辑关系是 AND。
- 类型
-
array
8.1.55. .spec.affinity.podAntiAffinity.requiredDuringSchedulingIgnoredDuringExecution[].labelSelector.matchExpressions[]
- 描述
- 标签选择器要求是一个选择器,其中包含与键和值相关的值、键和值。
- 类型
-
object
- 必填
-
key
-
operator
-
属性 | 类型 | 描述 |
---|---|---|
|
| key 是选择器应用到的标签键。 |
|
| 运算符代表一个键与一组值的关系。有效的运算符是 In、NotIn、Exists 和 DoesNotExist。 |
|
| 值是字符串值的数组。如果运算符是 In 或 NotIn,则值数组必须是非空的。如果运算符是 Exists 或 DoesNotExist,则值数组必须为空。这个数组会在策略性合并补丁中被替换。 |
8.1.56. .spec.affinity.podAntiAffinity.requiredDuringSchedulingIgnoredDuringExecution[].namespaceSelector
- 描述
- 术语适用的命名空间集合上的标签查询。术语应用于此字段选定的命名空间的 union,以及 namespaces 字段中列出的命名空间。null selector 和 null 或空命名空间列表表示"此 pod 的命名空间"。空选择器({})匹配所有命名空间。
- 类型
-
object
属性 | 类型 | 描述 |
---|---|---|
|
| matchExpressions 是标签选择器要求列表。要求的逻辑关系是 AND。 |
|
| 标签选择器要求是一个选择器,其中包含与键和值相关的值、键和值。 |
|
| matchLabels 是 {key,value} 对的映射。MatchLabels 映射中的单个 {key,value} 等同于 matchExpressions 的一个元素,其 key 字段是 "key",运算符是 "In",值数组仅包含 "value"。要求的逻辑关系是 AND。 |
8.1.57. .spec.affinity.podAntiAffinity.requiredDuringSchedulingIgnoredDuringExecution[].namespaceSelector.matchExpressions
- 描述
- matchExpressions 是标签选择器要求列表。要求的逻辑关系是 AND。
- 类型
-
array
8.1.58. .spec.affinity.podAntiAffinity.requiredDuringSchedulingIgnoredDuringExecution[].namespaceSelector.matchExpressions[]
- 描述
- 标签选择器要求是一个选择器,其中包含与键和值相关的值、键和值。
- 类型
-
object
- 必填
-
key
-
operator
-
属性 | 类型 | 描述 |
---|---|---|
|
| key 是选择器应用到的标签键。 |
|
| 运算符代表一个键与一组值的关系。有效的运算符是 In、NotIn、Exists 和 DoesNotExist。 |
|
| 值是字符串值的数组。如果运算符是 In 或 NotIn,则值数组必须是非空的。如果运算符是 Exists 或 DoesNotExist,则值数组必须为空。这个数组会在策略性合并补丁中被替换。 |
8.1.59. .spec.alerting
- 描述
- 定义与 Alertmanager 相关的设置。
- 类型
-
object
- 必填
-
alertmanagers
-
属性 | 类型 | 描述 |
---|---|---|
|
| AlertmanagerEndpoints Prometheus 应触发警报。 |
|
| AlertmanagerEndpoints 定义单个 Endpoints 对象,其中包含 Alertmanager IP 以触发警报。 |
8.1.60. .spec.alerting.alertmanagers
- 描述
- AlertmanagerEndpoints Prometheus 应触发警报。
- 类型
-
array
8.1.61. .spec.alerting.alertmanagers[]
- 描述
- AlertmanagerEndpoints 定义单个 Endpoints 对象,其中包含 Alertmanager IP 以触发警报。
- 类型
-
object
- 必填
-
name
-
namespace
-
port
-
属性 | 类型 | 描述 |
---|---|---|
|
| 在将警报发送到特定 Alertmanager 之前应用的重新标记配置。它需要 Prometheus >= v2.51.0。 |
|
| RelabelConfig 允许为目标、警报、提取示例和远程写入示例动态重写标签。 更多信息: https://prometheus.io/docs/prometheus/latest/configuration/configuration/#relabel_config |
|
| Prometheus 用来发送警报的 Alertmanager API 版本。它可以是 "v1" 或 "v2"。 |
|
| Alertmanager 的授权部分。
无法同时设置 |
|
| Alertmanager 的 basicAuth 配置。
不可与 |
|
| 用于读取 Alertmanager 的 bearer 令牌的文件。
不可与
弃用:这会在以后的版本中删除。首选使用 |
|
| 是否启用 HTTP2。 |
|
| 命名空间中的 Endpoints 对象的名称。 |
|
| Endpoints 对象的命名空间。 |
|
| HTTP 路径警报的前缀被推送到。 |
|
| 公开 Alertmanager API 的端口。 |
|
| 应用到发现的 Alertmanager 的重新标记配置。 |
|
| RelabelConfig 允许为目标、警报、提取示例和远程写入示例动态重写标签。 更多信息: https://prometheus.io/docs/prometheus/latest/configuration/configuration/#relabel_config |
|
| 触发警报时要使用的方案。 |
|
| Sigv4 允许为 URL 配置 AWS 的签名验证 4。 它需要 Prometheus >= v2.48.0。
不可与 |
|
| timeout 是推送警报时每个目标 Alertmanager 超时。 |
|
| 用于 Alertmanager 的 TLS Config。 |
8.1.62. .spec.alerting.alertmanagers[].alertRelabelings
- 描述
- 在将警报发送到特定 Alertmanager 之前应用的重新标记配置。它需要 Prometheus >= v2.51.0。
- 类型
-
数组
8.1.63. .spec.alerting.alertmanagers[].alertRelabelings[]
- 描述
RelabelConfig 允许为目标、警报、提取示例和远程写入示例动态重写标签。
更多信息: https://prometheus.io/docs/prometheus/latest/configuration/configuration/#relabel_config
- 类型
-
object
属性 | 类型 | 描述 |
---|---|---|
|
| 根据正则表达式匹配要执行的操作。
默认:"Replace" |
|
| modulus 采用 source 标签值的哈希。
仅在操作为 |
|
| 匹配提取值的正则表达式。 |
|
| 如果正则表达式匹配,则执行 replace 操作的替换值。 正则表达式捕获组可用。 |
|
| 分隔符是串联的 SourceLabels 之间的字符串。 |
|
| source 标签从现有标签中选择值。其内容使用配置的 Separator 连接,并与配置的正则表达式匹配。 |
|
| 生成的字符串写入替换标签。
对于 正则表达式捕获组可用。 |
8.1.64. .spec.alerting.alertmanagers[].authorization
- 描述
Alertmanager 的授权部分。
无法同时设置
basicAuth
、bearerTokenFile
或sigv4
。- 类型
-
object
属性 | 类型 | 描述 |
---|---|---|
|
| 选择命名空间中包含用于身份验证的凭证的 Secret 的键。 |
|
| 定义身份验证类型。该值不区分大小写。 "basic"不是受支持的值。 默认:"Bearer" |
8.1.65. .spec.alerting.alertmanagers[].authorization.credentials
- 描述
- 选择命名空间中包含用于身份验证的凭证的 Secret 的键。
- 类型
-
object
- 必填
-
key
-
属性 | 类型 | 描述 |
---|---|---|
|
| 要从中选择的 secret 的密钥。必须是一个有效的 secret 密钥。 |
|
|
引用的名称。有效地需要此字段,但因为允许向后兼容为空。这里具有空值的此类实例几乎是错误的。TODO:添加其他有用的字段。apiVersion、kind、uid?更多信息: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names TODO: 当 controller-gen 不需要 https://github.com/kubernetes-sigs/kubebuilder/issues/3896 时,Drop |
|
| 指定是否需要定义 Secret 还是其密钥 |
8.1.66. .spec.alerting.alertmanagers[].basicAuth
- 描述
Alertmanager 的 basicAuth 配置。
不可与
bearerTokenFile
、授权
或sigv4
同时设置。- 类型
-
object
属性 | 类型 | 描述 |
---|---|---|
|
|
|
|
|
|
8.1.67. .spec.alerting.alertmanagers[].basicAuth.password
- 描述
-
password
指定包含用于身份验证的密码的 Secret 的键。 - 类型
-
object
- 必填
-
key
-
属性 | 类型 | 描述 |
---|---|---|
|
| 要从中选择的 secret 的密钥。必须是一个有效的 secret 密钥。 |
|
|
引用的名称。有效地需要此字段,但因为允许向后兼容为空。这里具有空值的此类实例几乎是错误的。TODO:添加其他有用的字段。apiVersion、kind、uid?更多信息: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names TODO: 当 controller-gen 不需要 https://github.com/kubernetes-sigs/kubebuilder/issues/3896 时,Drop |
|
| 指定是否需要定义 Secret 还是其密钥 |
8.1.68. .spec.alerting.alertmanagers[].basicAuth.username
- 描述
-
username
指定包含用于身份验证的用户名的 Secret 的键。 - 类型
-
object
- 必填
-
key
-
属性 | 类型 | 描述 |
---|---|---|
|
| 要从中选择的 secret 的密钥。必须是一个有效的 secret 密钥。 |
|
|
引用的名称。有效地需要此字段,但因为允许向后兼容为空。这里具有空值的此类实例几乎是错误的。TODO:添加其他有用的字段。apiVersion、kind、uid?更多信息: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names TODO: 当 controller-gen 不需要 https://github.com/kubernetes-sigs/kubebuilder/issues/3896 时,Drop |
|
| 指定是否需要定义 Secret 还是其密钥 |
8.1.69. .spec.alerting.alertmanagers[].relabelings
- 描述
- 应用到发现的 Alertmanager 的重新标记配置。
- 类型
-
数组
8.1.70. .spec.alerting.alertmanagers[].relabelings[]
- 描述
RelabelConfig 允许为目标、警报、提取示例和远程写入示例动态重写标签。
更多信息: https://prometheus.io/docs/prometheus/latest/configuration/configuration/#relabel_config
- 类型
-
object
属性 | 类型 | 描述 |
---|---|---|
|
| 根据正则表达式匹配要执行的操作。
默认:"Replace" |
|
| modulus 采用 source 标签值的哈希。
仅在操作为 |
|
| 匹配提取值的正则表达式。 |
|
| 如果正则表达式匹配,则执行 replace 操作的替换值。 正则表达式捕获组可用。 |
|
| 分隔符是串联的 SourceLabels 之间的字符串。 |
|
| source 标签从现有标签中选择值。其内容使用配置的 Separator 连接,并与配置的正则表达式匹配。 |
|
| 生成的字符串写入替换标签。
对于 正则表达式捕获组可用。 |
8.1.71. .spec.alerting.alertmanagers[].sigv4
- 描述
Sigv4 允许为 URL 配置 AWS 的签名验证 4。
它需要 Prometheus >= v2.48.0。
不可与
basicAuth
、bearerTokenFile
或授权
同时设置。- 类型
-
object
属性 | 类型 | 描述 |
---|---|---|
|
|
accessKey 是 AWS API 密钥。如果没有指定,则使用环境变量 |
|
| 配置集是用来进行身份验证的命名 AWS 配置集。 |
|
| 区域是 AWS 区域。如果为空,则使用默认凭证链中的区域。 |
|
| RoleArn 是用来进行身份验证的 AWS 配置集。 |
|
|
secretKey 是 AWS API secret。如果没有指定,则使用环境变量 |
8.1.72. .spec.alerting.alertmanagers[].sigv4.accessKey
- 描述
-
accessKey 是 AWS API 密钥。如果没有指定,则使用环境变量
AWS_ACCESS_KEY_ID
。 - 类型
-
object
- 必填
-
key
-
属性 | 类型 | 描述 |
---|---|---|
|
| 要从中选择的 secret 的密钥。必须是一个有效的 secret 密钥。 |
|
|
引用的名称。有效地需要此字段,但因为允许向后兼容为空。这里具有空值的此类实例几乎是错误的。TODO:添加其他有用的字段。apiVersion、kind、uid?更多信息: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names TODO: 当 controller-gen 不需要 https://github.com/kubernetes-sigs/kubebuilder/issues/3896 时,Drop |
|
| 指定是否需要定义 Secret 还是其密钥 |
8.1.73. .spec.alerting.alertmanagers[].sigv4.secretKey
- 描述
-
secretKey 是 AWS API secret。如果没有指定,则使用环境变量
AWS_SECRET_ACCESS_KEY
。 - 类型
-
object
- 必填
-
key
-
属性 | 类型 | 描述 |
---|---|---|
|
| 要从中选择的 secret 的密钥。必须是一个有效的 secret 密钥。 |
|
|
引用的名称。有效地需要此字段,但因为允许向后兼容为空。这里具有空值的此类实例几乎是错误的。TODO:添加其他有用的字段。apiVersion、kind、uid?更多信息: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names TODO: 当 controller-gen 不需要 https://github.com/kubernetes-sigs/kubebuilder/issues/3896 时,Drop |
|
| 指定是否需要定义 Secret 还是其密钥 |
8.1.74. .spec.alerting.alertmanagers[].tlsConfig
- 描述
- 用于 Alertmanager 的 TLS Config。
- 类型
-
object
属性 | 类型 | 描述 |
---|---|---|
|
| 验证服务器证书时使用的证书颁发机构。 |
|
| Prometheus 容器中用于目标的 CA 证书的路径。 |
|
| 执行 client-authentication 时要出现的客户端证书。 |
|
| 目标的 Prometheus 容器中客户端证书文件的路径。 |
|
| 禁用目标证书验证。 |
|
| 目标的 Prometheus 容器中客户端密钥文件的路径。 |
|
| 包含目标客户端密钥文件的 secret。 |
|
| 用于验证目标的主机名。 |
8.1.75. .spec.alerting.alertmanagers[].tlsConfig.ca
- 描述
- 验证服务器证书时使用的证书颁发机构。
- 类型
-
object
属性 | 类型 | 描述 |
---|---|---|
|
| 包含用于目标的数据的 ConfigMap。 |
|
| 包含用于目标的数据的 secret。 |
8.1.76. .spec.alerting.alertmanagers[].tlsConfig.ca.configMap
- 描述
- 包含用于目标的数据的 ConfigMap。
- 类型
-
object
- 必填
-
key
-
属性 | 类型 | 描述 |
---|---|---|
|
| 要选择的密钥。 |
|
|
引用的名称。有效地需要此字段,但因为允许向后兼容为空。这里具有空值的此类实例几乎是错误的。TODO:添加其他有用的字段。apiVersion、kind、uid?更多信息: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names TODO: 当 controller-gen 不需要 https://github.com/kubernetes-sigs/kubebuilder/issues/3896 时,Drop |
|
| 指定是否必须定义 ConfigMap 还是其键 |
8.1.77. .spec.alerting.alertmanagers[].tlsConfig.ca.secret
- 描述
- 包含用于目标的数据的 secret。
- 类型
-
object
- 必填
-
key
-
属性 | 类型 | 描述 |
---|---|---|
|
| 要从中选择的 secret 的密钥。必须是一个有效的 secret 密钥。 |
|
|
引用的名称。有效地需要此字段,但因为允许向后兼容为空。这里具有空值的此类实例几乎是错误的。TODO:添加其他有用的字段。apiVersion、kind、uid?更多信息: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names TODO: 当 controller-gen 不需要 https://github.com/kubernetes-sigs/kubebuilder/issues/3896 时,Drop |
|
| 指定是否需要定义 Secret 还是其密钥 |
8.1.78. .spec.alerting.alertmanagers[].tlsConfig.cert
- 描述
- 执行 client-authentication 时要出现的客户端证书。
- 类型
-
object
属性 | 类型 | 描述 |
---|---|---|
|
| 包含用于目标的数据的 ConfigMap。 |
|
| 包含用于目标的数据的 secret。 |
8.1.79. .spec.alerting.alertmanagers[].tlsConfig.cert.configMap
- 描述
- 包含用于目标的数据的 ConfigMap。
- 类型
-
object
- 必填
-
key
-
属性 | 类型 | 描述 |
---|---|---|
|
| 要选择的密钥。 |
|
|
引用的名称。有效地需要此字段,但因为允许向后兼容为空。这里具有空值的此类实例几乎是错误的。TODO:添加其他有用的字段。apiVersion、kind、uid?更多信息: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names TODO: 当 controller-gen 不需要 https://github.com/kubernetes-sigs/kubebuilder/issues/3896 时,Drop |
|
| 指定是否必须定义 ConfigMap 还是其键 |
8.1.80. .spec.alerting.alertmanagers[].tlsConfig.cert.secret
- 描述
- 包含用于目标的数据的 secret。
- 类型
-
object
- 必填
-
key
-
属性 | 类型 | 描述 |
---|---|---|
|
| 要从中选择的 secret 的密钥。必须是一个有效的 secret 密钥。 |
|
|
引用的名称。有效地需要此字段,但因为允许向后兼容为空。这里具有空值的此类实例几乎是错误的。TODO:添加其他有用的字段。apiVersion、kind、uid?更多信息: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names TODO: 当 controller-gen 不需要 https://github.com/kubernetes-sigs/kubebuilder/issues/3896 时,Drop |
|
| 指定是否需要定义 Secret 还是其密钥 |
8.1.81. .spec.alerting.alertmanagers[].tlsConfig.keySecret
- 描述
- 包含目标客户端密钥文件的 secret。
- 类型
-
object
- 必填
-
key
-
属性 | 类型 | 描述 |
---|---|---|
|
| 要从中选择的 secret 的密钥。必须是一个有效的 secret 密钥。 |
|
|
引用的名称。有效地需要此字段,但因为允许向后兼容为空。这里具有空值的此类实例几乎是错误的。TODO:添加其他有用的字段。apiVersion、kind、uid?更多信息: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names TODO: 当 controller-gen 不需要 https://github.com/kubernetes-sigs/kubebuilder/issues/3896 时,Drop |
|
| 指定是否需要定义 Secret 还是其密钥 |
8.1.82. .spec.apiserverConfig
- 描述
- apiserverConfig 允许指定主机和 auth 方法来访问 Kuberntees API 服务器。如果为 null,Prometheus 被认为在集群内运行:它将自动发现 API 服务器,并在 /var/run/secrets/kubernetes.io/serviceaccount/ 中使用 Pod 的 CA 证书和 bearer 令牌文件。
- 类型
-
object
- 必填
-
主机
-
属性 | 类型 | 描述 |
---|---|---|
|
| API 服务器的授权部分。
无法同时设置 |
|
| API 服务器的 basicAuth 配置。
无法同时设置授权、 |
|
|
警告:不应使用这个字段,因为令牌值会出现在明文中。首选使用 弃用:这会在以后的版本中删除。 |
|
| 文件读取用于访问 apiserver 的 bearer 令牌。
不可与
弃用:这会在以后的版本中删除。首选使用 |
|
| 由主机名或 IP 地址组成的 Kubernetes API 地址,后跟可选的端口号。 |
|
| 用于 API 服务器的 TLS 配置。 |
8.1.83. .spec.apiserverConfig.authorization
- 描述
API 服务器的授权部分。
无法同时设置
basicAuth
、bearerToken
或bearerTokenFile
。- 类型
-
object
属性 | 类型 | 描述 |
---|---|---|
|
| 选择命名空间中包含用于身份验证的凭证的 Secret 的键。 |
|
|
从中读取 secret 的文件,与 |
|
| 定义身份验证类型。该值不区分大小写。 "basic"不是受支持的值。 默认:"Bearer" |
8.1.84. .spec.apiserverConfig.authorization.credentials
- 描述
- 选择命名空间中包含用于身份验证的凭证的 Secret 的键。
- 类型
-
object
- 必填
-
key
-
属性 | 类型 | 描述 |
---|---|---|
|
| 要从中选择的 secret 的密钥。必须是一个有效的 secret 密钥。 |
|
|
引用的名称。有效地需要此字段,但因为允许向后兼容为空。这里具有空值的此类实例几乎是错误的。TODO:添加其他有用的字段。apiVersion、kind、uid?更多信息: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names TODO: 当 controller-gen 不需要 https://github.com/kubernetes-sigs/kubebuilder/issues/3896 时,Drop |
|
| 指定是否需要定义 Secret 还是其密钥 |
8.1.85. .spec.apiserverConfig.basicAuth
- 描述
API 服务器的 basicAuth 配置。
无法同时设置授权、
bearerToken
或
。bearerToken
File- 类型
-
object
属性 | 类型 | 描述 |
---|---|---|
|
|
|
|
|
|
8.1.86. .spec.apiserverConfig.basicAuth.password
- 描述
-
password
指定包含用于身份验证的密码的 Secret 的键。 - 类型
-
object
- 必填
-
key
-
属性 | 类型 | 描述 |
---|---|---|
|
| 要从中选择的 secret 的密钥。必须是一个有效的 secret 密钥。 |
|
|
引用的名称。有效地需要此字段,但因为允许向后兼容为空。这里具有空值的此类实例几乎是错误的。TODO:添加其他有用的字段。apiVersion、kind、uid?更多信息: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names TODO: 当 controller-gen 不需要 https://github.com/kubernetes-sigs/kubebuilder/issues/3896 时,Drop |
|
| 指定是否需要定义 Secret 还是其密钥 |
8.1.87. .spec.apiserverConfig.basicAuth.username
- 描述
-
username
指定包含用于身份验证的用户名的 Secret 的键。 - 类型
-
object
- 必填
-
key
-
属性 | 类型 | 描述 |
---|---|---|
|
| 要从中选择的 secret 的密钥。必须是一个有效的 secret 密钥。 |
|
|
引用的名称。有效地需要此字段,但因为允许向后兼容为空。这里具有空值的此类实例几乎是错误的。TODO:添加其他有用的字段。apiVersion、kind、uid?更多信息: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names TODO: 当 controller-gen 不需要 https://github.com/kubernetes-sigs/kubebuilder/issues/3896 时,Drop |
|
| 指定是否需要定义 Secret 还是其密钥 |
8.1.88. .spec.apiserverConfig.tlsConfig
- 描述
- 用于 API 服务器的 TLS 配置。
- 类型
-
object
属性 | 类型 | 描述 |
---|---|---|
|
| 验证服务器证书时使用的证书颁发机构。 |
|
| Prometheus 容器中用于目标的 CA 证书的路径。 |
|
| 执行 client-authentication 时要出现的客户端证书。 |
|
| 目标的 Prometheus 容器中客户端证书文件的路径。 |
|
| 禁用目标证书验证。 |
|
| 目标的 Prometheus 容器中客户端密钥文件的路径。 |
|
| 包含目标客户端密钥文件的 secret。 |
|
| 用于验证目标的主机名。 |
8.1.89. .spec.apiserverConfig.tlsConfig.ca
- 描述
- 验证服务器证书时使用的证书颁发机构。
- 类型
-
object
属性 | 类型 | 描述 |
---|---|---|
|
| 包含用于目标的数据的 ConfigMap。 |
|
| 包含用于目标的数据的 secret。 |
8.1.90. .spec.apiserverConfig.tlsConfig.ca.configMap
- 描述
- 包含用于目标的数据的 ConfigMap。
- 类型
-
object
- 必填
-
key
-
属性 | 类型 | 描述 |
---|---|---|
|
| 要选择的密钥。 |
|
|
引用的名称。有效地需要此字段,但因为允许向后兼容为空。这里具有空值的此类实例几乎是错误的。TODO:添加其他有用的字段。apiVersion、kind、uid?更多信息: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names TODO: 当 controller-gen 不需要 https://github.com/kubernetes-sigs/kubebuilder/issues/3896 时,Drop |
|
| 指定是否必须定义 ConfigMap 还是其键 |
8.1.91. .spec.apiserverConfig.tlsConfig.ca.secret
- 描述
- 包含用于目标的数据的 secret。
- 类型
-
object
- 必填
-
key
-
属性 | 类型 | 描述 |
---|---|---|
|
| 要从中选择的 secret 的密钥。必须是一个有效的 secret 密钥。 |
|
|
引用的名称。有效地需要此字段,但因为允许向后兼容为空。这里具有空值的此类实例几乎是错误的。TODO:添加其他有用的字段。apiVersion、kind、uid?更多信息: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names TODO: 当 controller-gen 不需要 https://github.com/kubernetes-sigs/kubebuilder/issues/3896 时,Drop |
|
| 指定是否需要定义 Secret 还是其密钥 |
8.1.92. .spec.apiserverConfig.tlsConfig.cert
- 描述
- 执行 client-authentication 时要出现的客户端证书。
- 类型
-
object
属性 | 类型 | 描述 |
---|---|---|
|
| 包含用于目标的数据的 ConfigMap。 |
|
| 包含用于目标的数据的 secret。 |
8.1.93. .spec.apiserverConfig.tlsConfig.cert.configMap
- 描述
- 包含用于目标的数据的 ConfigMap。
- 类型
-
object
- 必填
-
key
-
属性 | 类型 | 描述 |
---|---|---|
|
| 要选择的密钥。 |
|
|
引用的名称。有效地需要此字段,但因为允许向后兼容为空。这里具有空值的此类实例几乎是错误的。TODO:添加其他有用的字段。apiVersion、kind、uid?更多信息: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names TODO: 当 controller-gen 不需要 https://github.com/kubernetes-sigs/kubebuilder/issues/3896 时,Drop |
|
| 指定是否必须定义 ConfigMap 还是其键 |
8.1.94. .spec.apiserverConfig.tlsConfig.cert.secret
- 描述
- 包含用于目标的数据的 secret。
- 类型
-
object
- 必填
-
key
-
属性 | 类型 | 描述 |
---|---|---|
|
| 要从中选择的 secret 的密钥。必须是一个有效的 secret 密钥。 |
|
|
引用的名称。有效地需要此字段,但因为允许向后兼容为空。这里具有空值的此类实例几乎是错误的。TODO:添加其他有用的字段。apiVersion、kind、uid?更多信息: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names TODO: 当 controller-gen 不需要 https://github.com/kubernetes-sigs/kubebuilder/issues/3896 时,Drop |
|
| 指定是否需要定义 Secret 还是其密钥 |
8.1.95. .spec.apiserverConfig.tlsConfig.keySecret
- 描述
- 包含目标客户端密钥文件的 secret。
- 类型
-
object
- 必填
-
key
-
属性 | 类型 | 描述 |
---|---|---|
|
| 要从中选择的 secret 的密钥。必须是一个有效的 secret 密钥。 |
|
|
引用的名称。有效地需要此字段,但因为允许向后兼容为空。这里具有空值的此类实例几乎是错误的。TODO:添加其他有用的字段。apiVersion、kind、uid?更多信息: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names TODO: 当 controller-gen 不需要 https://github.com/kubernetes-sigs/kubebuilder/issues/3896 时,Drop |
|
| 指定是否需要定义 Secret 还是其密钥 |
8.1.96. .spec.arbitraryFSAccessThroughSMs
- 描述
-
为 true、ServiceMonitor、PodMonitor 和 Probe 对象被禁止引用"prometheus"容器文件系统上的任意文件。当 ServiceMonitor 的端点指定了
bearerTokenFile
值(如 '/var/run/secrets/kubernetes.io/serviceaccount/token'),恶意目标可以在 Prometheus' scrape 请求中获取 Prometheus 服务帐户的令牌的访问权限。将spec.arbitraryFSAccessThroughSM
设置为 'true' 可防止攻击。用户应该使用spec.bearerTokenSecret
字段提供凭证。 - 类型
-
object
属性 | 类型 | 描述 |
---|---|---|
|
|
8.1.97. .spec.containers
- 描述
容器允许注入其他容器或修改操作器生成的容器。这可用于允许向 Pod 添加身份验证代理或更改 Operator 生成的容器的行为。这里描述的容器如果操作器共享相同的名称和修改,则修改通过战略合并补丁来完成。
由 Operator 管理的容器的名称有:*
prometheus
*config-reloader
*thanos-sidecar
覆盖容器完全超出维护人员将支持什么范围,通过这样做,您可以接受这种行为,而无需通知。
- 类型
-
array
8.1.98. .spec.containers[]
- 描述
- 要在 pod 中运行的单一应用程序容器。
- 类型
-
object
- 必填
-
name
-
属性 | 类型 | 描述 |
---|---|---|
|
| 入口点的参数。如果没有提供,则使用容器镜像的 CMD。变量引用 $(VAR_NAME)使用容器的环境扩展。如果无法解析变量,则输入字符串中的引用将保持不变。双引号被缩减为单个 $,它允许转义 $(VAR_NAME)语法:即 " (VAR_NAME) " 将生成字符串 literal "$(VAR_NAME) "。转义的引用永远不会扩展,无论变量是否存在。无法更新。更多信息: https://kubernetes.io/docs/tasks/inject-data-application/define-command-argument-container/#running-a-command-in-a-shell |
|
| ENTRYPOINT 数组.没有在 shell 中执行。如果未提供此容器镜像,则使用容器镜像的 ENTRYPOINT。变量引用 $(VAR_NAME)使用容器的环境扩展。如果无法解析变量,则输入字符串中的引用将保持不变。双引号被缩减为单个 $,它允许转义 $(VAR_NAME)语法:即 " (VAR_NAME) " 将生成字符串 literal "$(VAR_NAME) "。转义的引用永远不会扩展,无论变量是否存在。无法更新。更多信息: https://kubernetes.io/docs/tasks/inject-data-application/define-command-argument-container/#running-a-command-in-a-shell |
|
| 容器中要设置的环境变量列表。无法更新。 |
|
| EnvVar 代表容器中存在的环境变量。 |
|
| 在容器中填充环境变量的源列表。源中定义的键必须是 C_IDENTIFIER。当容器启动时,所有无效密钥都会被报告为事件。当多个源中存在键时,与最后一个源关联的值将具有优先权。由带有重复键的 Env 定义的值将具有优先权。无法更新。 |
|
| EnvFromSource 代表一组 ConfigMap 的源 |
|
| 容器镜像名称。更多信息: https://kubernetes.io/docs/concepts/containers/images 此字段是可选的,允许更高级别的配置管理默认或覆盖工作负载控制器(如 Deployments 和 StatefulSets)中的容器镜像。 |
|
| 镜像拉取(pull)策略。Always, Never, IfNotPresent 之一。如果指定了 :latest 标签,则默认为 Always,否则则默认为 IfNotPresent。无法更新。更多信息: https://kubernetes.io/docs/concepts/containers/images#updating-images |
|
| 管理系统应采取的操作来响应容器生命周期事件。无法更新。 |
|
| 容器存活度探测.如果探测失败,容器将重启。无法更新。更多信息: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes |
|
| 指定为 DNS_LABEL 的容器名称。pod 中的每个容器都必须具有唯一的名称(DNS_LABEL)。无法更新。 |
|
| 从容器公开的端口列表。这里没有指定端口不会阻止公开该端口。所有正在侦听容器内默认"0.0.0.0"地址的端口均可从网络访问。使用策略合并补丁修改阵列可能会破坏数据。如需更多信息,请参阅 https://github.com/kubernetes/kubernetes/issues/108255。无法更新。 |
|
| containerPort 代表单个容器中的网络端口。 |
|
| 容器服务的定期探测到就绪状态。如果探测失败,容器将从服务端点中删除。无法更新。更多信息: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes |
|
| 容器的资源重新定义策略。 |
|
| ContainerResizePolicy 代表容器的资源重新定义策略。 |
|
| 此容器所需的计算资源。无法更新。更多信息: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/ |
|
| 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.io/docs/tasks/configure-pod-container/security-context/ |
|
| startupProbe 表示 Pod 已成功初始化。如果指定,则不会执行其他探测,直到成功完成为止。如果这个探测失败,则 Pod 将重启,就像 livenessProbe 失败一样。这可用于在 Pod 生命周期开始时提供不同的探测参数,当可能需要很长时间才能加载数据或温缓存时,而不是在 steady-state 操作过程中提供不同的探测参数。这不能更新。更多信息: https://kubernetes.io/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。无法更新。 |
|
| 指明应当如何填充终止消息。文件将使用 terminationMessagePath 的内容在成功或失败时填充容器状态消息。如果终止消息文件为空,则 FallbackToLogsOnError 将使用容器日志输出的最后块,并且容器退出并显示错误。日志输出限制为 2048 字节或 80 行,以较小者。默认为 File。无法更新。 |
|
| 此容器是否应为自己分配 TTY,也要求 'stdin' 为 true。默认为 false。 |
|
| volumeDevices 是容器要使用的块设备列表。 |
|
| volumeDevice 描述了容器中原始块设备的映射。 |
|
| 要挂载到容器文件系统的 Pod 卷。无法更新。 |
|
| VolumeMount 描述了容器内卷挂载。 |
|
| 容器的工作目录。如果未指定,则将使用容器运行时的默认值,该默认值可能在容器镜像中配置。无法更新。 |
8.1.99. .spec.containers[].env
- 描述
- 容器中要设置的环境变量列表。无法更新。
- 类型
-
array
8.1.100. .spec.containers[].env[]
- 描述
- EnvVar 代表容器中存在的环境变量。
- 类型
-
object
- 必填
-
name
-
属性 | 类型 | 描述 |
---|---|---|
|
| 环境变量的名称。必须是 C_IDENTIFIER。 |
|
| 变量引用 $(VAR_NAME)使用容器中之前定义的环境变量以及任何服务环境变量进行扩展。如果无法解析变量,则输入字符串中的引用将保持不变。双引号被缩减为单个 $,它允许转义 $(VAR_NAME)语法:即 " (VAR_NAME) " 将生成字符串 literal "$(VAR_NAME) "。转义的引用永远不会扩展,无论变量是否存在。默认为 ""。 |
|
| 环境变量的值的源。如果值不为空,则无法使用。 |
8.1.101. .spec.containers[].env[].valueFrom
- 描述
- 环境变量的值的源。如果值不为空,则无法使用。
- 类型
-
object
属性 | 类型 | 描述 |
---|---|---|
|
| 选择 ConfigMap 的键。 |
|
|
选择 pod 的字段:支持 metadata.name、metadata.namespace、 |
|
| 选择容器的资源:当前仅支持资源限值和请求(limits.cpu, limits.memory, limits.ephemeral-storage, requests.cpu, requests.memory and requests.ephemeral-storage)。 |
|
| 在 pod 命名空间中选择 secret 的键 |
8.1.102. .spec.containers[].env[].valueFrom.configMapKeyRef
- 描述
- 选择 ConfigMap 的键。
- 类型
-
object
- 必填
-
key
-
属性 | 类型 | 描述 |
---|---|---|
|
| 要选择的密钥。 |
|
|
引用的名称。有效地需要此字段,但因为允许向后兼容为空。这里具有空值的此类实例几乎是错误的。TODO:添加其他有用的字段。apiVersion、kind、uid?更多信息: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names TODO: 当 controller-gen 不需要 https://github.com/kubernetes-sigs/kubebuilder/issues/3896 时,Drop |
|
| 指定是否必须定义 ConfigMap 还是其键 |
8.1.103. .spec.containers[].env[].valueFrom.fieldRef
- 描述
-
选择 pod 的字段:支持 metadata.name、metadata.namespace、
metadata.labels['<KEY>']
,metadata.annotations['<KEY>']
, spec.nodeName, spec.serviceAccountName, status.hostIP, status.podIP, status.podIPs. - 类型
-
object
- 必填
-
fieldPath
-
属性 | 类型 | 描述 |
---|---|---|
|
| 模式的版本是按术语编写的 FieldPath,默认为 "v1"。 |
|
| 在指定 API 版本中选择的字段路径。 |
8.1.104. .spec.containers[].env[].valueFrom.resourceFieldRef
- 描述
- 选择容器的资源:当前仅支持资源限值和请求(limits.cpu, limits.memory, limits.ephemeral-storage, requests.cpu, requests.memory and requests.ephemeral-storage)。
- 类型
-
object
- 必填
-
resource
-
属性 | 类型 | 描述 |
---|---|---|
|
| 容器名称:卷需要,对于 env vars是可选的 |
|
| 指定公开资源的输出格式,默认为 "1" |
|
| 必需:要选择的资源 |
8.1.105. .spec.containers[].env[].valueFrom.secretKeyRef
- 描述
- 在 pod 命名空间中选择 secret 的键
- 类型
-
object
- 必填
-
key
-
属性 | 类型 | 描述 |
---|---|---|
|
| 要从中选择的 secret 的密钥。必须是一个有效的 secret 密钥。 |
|
|
引用的名称。有效地需要此字段,但因为允许向后兼容为空。这里具有空值的此类实例几乎是错误的。TODO:添加其他有用的字段。apiVersion、kind、uid?更多信息: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names TODO: 当 controller-gen 不需要 https://github.com/kubernetes-sigs/kubebuilder/issues/3896 时,Drop |
|
| 指定是否需要定义 Secret 还是其密钥 |
8.1.106. .spec.containers[].envFrom
- 描述
- 在容器中填充环境变量的源列表。源中定义的键必须是 C_IDENTIFIER。当容器启动时,所有无效密钥都会被报告为事件。当多个源中存在键时,与最后一个源关联的值将具有优先权。由带有重复键的 Env 定义的值将具有优先权。无法更新。
- 类型
-
array
8.1.107. .spec.containers[].envFrom[]
- 描述
- EnvFromSource 代表一组 ConfigMap 的源
- 类型
-
object
属性 | 类型 | 描述 |
---|---|---|
|
| 要从中选择的 ConfigMap |
|
| 要添加到 ConfigMap 中每个键的可选标识符。必须是 C_IDENTIFIER。 |
|
| 要从中选择的 Secret |
8.1.108. .spec.containers[].envFrom[].configMapRef
- 描述
- 要从中选择的 ConfigMap
- 类型
-
object
属性 | 类型 | 描述 |
---|---|---|
|
|
引用的名称。有效地需要此字段,但因为允许向后兼容为空。这里具有空值的此类实例几乎是错误的。TODO:添加其他有用的字段。apiVersion、kind、uid?更多信息: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names TODO: 当 controller-gen 不需要 https://github.com/kubernetes-sigs/kubebuilder/issues/3896 时,Drop |
|
| 指定是否必须定义 ConfigMap |
8.1.109. .spec.containers[].envFrom[].secretRef
- 描述
- 要从中选择的 Secret
- 类型
-
object
属性 | 类型 | 描述 |
---|---|---|
|
|
引用的名称。有效地需要此字段,但因为允许向后兼容为空。这里具有空值的此类实例几乎是错误的。TODO:添加其他有用的字段。apiVersion、kind、uid?更多信息: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names TODO: 当 controller-gen 不需要 https://github.com/kubernetes-sigs/kubebuilder/issues/3896 时,Drop |
|
| 指定是否必须定义 Secret |
8.1.110. .spec.containers[].lifecycle
- 描述
- 管理系统应采取的操作来响应容器生命周期事件。无法更新。
- 类型
-
object
属性 | 类型 | 描述 |
---|---|---|
|
| postStart 在容器被创建后立即调用。如果处理程序失败,则容器将根据其重启策略终止并重启。容器块的其他管理,直到 hook 完成为止。更多信息: https://kubernetes.io/docs/concepts/containers/container-lifecycle-hooks/#container-hooks |
|
| preStop 在因为 API 请求或管理事件而终止容器前马上调用,如存活度/启动探测失败、抢占、资源争用等。如果容器崩溃或退出,则不会调用处理程序。Pod 的终止宽限期倒计时开始,然后再执行 PreStop hook。无论处理程序的结果是什么,容器最终都会在 Pod 的终止宽限期内终止(除非被终结器造成延迟)。容器的其他管理块直到 hook 完成或直至到达终止宽限期为止。更多信息: https://kubernetes.io/docs/concepts/containers/container-lifecycle-hooks/#container-hooks |
8.1.111. .spec.containers[].lifecycle.postStart
- 描述
- postStart 在容器被创建后立即调用。如果处理程序失败,则容器将根据其重启策略终止并重启。容器块的其他管理,直到 hook 完成为止。更多信息: https://kubernetes.io/docs/concepts/containers/container-lifecycle-hooks/#container-hooks
- 类型
-
object
属性 | 类型 | 描述 |
---|---|---|
|
| exec 指定要执行的操作。 |
|
| httpGet 指定要执行的 http 请求。 |
|
| sleep 代表容器在被终止前应休眠的持续时间。 |
|
| 已弃用。tcpSocket 不支持作为 LifecycleHandler,并且保持向后兼容性。指定 tcp 处理程序时,没有此字段的验证和生命周期 hook 将在运行时失败。 |
8.1.112. .spec.containers[].lifecycle.postStart.exec
- 描述
- exec 指定要执行的操作。
- 类型
-
object
属性 | 类型 | 描述 |
---|---|---|
|
| 命令是在容器内执行的命令行,而 命令的工作目录是容器文件系统中的 root ('/')。命令只是 exec'd,它不会在 shell 中运行,因此传统的 shell 指令('|' 等)将无法工作。要使用 shell,您需要明确调用该 shell。0 的退出状态被视为 live/healthy,非零不健康。 |
8.1.113. .spec.containers[].lifecycle.postStart.httpGet
- 描述
- httpGet 指定要执行的 http 请求。
- 类型
-
object
- 必填
-
port
-
属性 | 类型 | 描述 |
---|---|---|
|
| 要连接到的主机名,默认为 pod IP。您可能想在 httpHeaders 中设置"主机"。 |
|
| 在请求中设置的自定义标头。HTTP 允许重复的标头。 |
|
| HTTPHeader 描述了在 HTTP 探测中使用的自定义标头 |
|
| 在 HTTP 服务器上访问的路径。 |
|
| 用于访问容器的端口的名称或编号。number 必须在 1 到 65535 之间。名称必须是 IANA_SVC_NAME。 |
|
| 用于连接到主机的方案。默认为 HTTP。 |
8.1.114. .spec.containers[].lifecycle.postStart.httpGet.httpHeaders
- 描述
- 在请求中设置的自定义标头。HTTP 允许重复的标头。
- 类型
-
array
8.1.115. .spec.containers[].lifecycle.postStart.httpGet.httpHeaders[]
- 描述
- HTTPHeader 描述了在 HTTP 探测中使用的自定义标头
- 类型
-
object
- 必填
-
name
-
value
-
属性 | 类型 | 描述 |
---|---|---|
|
| 标头字段名称。这将在输出时规范,因此理解 case-variant 名称与相同的标头一样。 |
|
| 标头字段值 |
8.1.116. .spec.containers[].lifecycle.postStart.sleep
- 描述
- sleep 代表容器在被终止前应休眠的持续时间。
- 类型
-
object
- 必填
-
SECONDS
-
属性 | 类型 | 描述 |
---|---|---|
|
| seconds 是睡眠的秒数。 |
8.1.117. .spec.containers[].lifecycle.postStart.tcpSocket
- 描述
- 已弃用。tcpSocket 不支持作为 LifecycleHandler,并且保持向后兼容性。指定 tcp 处理程序时,没有此字段的验证和生命周期 hook 将在运行时失败。
- 类型
-
object
- 必填
-
port
-
属性 | 类型 | 描述 |
---|---|---|
|
| 可选:要连接到的主机名,默认为 pod IP。 |
|
| 用于访问容器的端口的编号或名称。number 必须在 1 到 65535 之间。名称必须是 IANA_SVC_NAME。 |
8.1.118. .spec.containers[].lifecycle.preStop
- 描述
- preStop 在因为 API 请求或管理事件而终止容器前马上调用,如存活度/启动探测失败、抢占、资源争用等。如果容器崩溃或退出,则不会调用处理程序。Pod 的终止宽限期倒计时开始,然后再执行 PreStop hook。无论处理程序的结果是什么,容器最终都会在 Pod 的终止宽限期内终止(除非被终结器造成延迟)。容器的其他管理块直到 hook 完成或直至到达终止宽限期为止。更多信息: https://kubernetes.io/docs/concepts/containers/container-lifecycle-hooks/#container-hooks
- 类型
-
object
属性 | 类型 | 描述 |
---|---|---|
|
| exec 指定要执行的操作。 |
|
| httpGet 指定要执行的 http 请求。 |
|
| sleep 代表容器在被终止前应休眠的持续时间。 |
|
| 已弃用。tcpSocket 不支持作为 LifecycleHandler,并且保持向后兼容性。指定 tcp 处理程序时,没有此字段的验证和生命周期 hook 将在运行时失败。 |
8.1.119. .spec.containers[].lifecycle.preStop.exec
- 描述
- exec 指定要执行的操作。
- 类型
-
object
属性 | 类型 | 描述 |
---|---|---|
|
| 命令是在容器内执行的命令行,而 命令的工作目录是容器文件系统中的 root ('/')。命令只是 exec'd,它不会在 shell 中运行,因此传统的 shell 指令('|' 等)将无法工作。要使用 shell,您需要明确调用该 shell。0 的退出状态被视为 live/healthy,非零不健康。 |
8.1.120. .spec.containers[].lifecycle.preStop.httpGet
- 描述
- httpGet 指定要执行的 http 请求。
- 类型
-
object
- 必填
-
port
-
属性 | 类型 | 描述 |
---|---|---|
|
| 要连接到的主机名,默认为 pod IP。您可能想在 httpHeaders 中设置"主机"。 |
|
| 在请求中设置的自定义标头。HTTP 允许重复的标头。 |
|
| HTTPHeader 描述了在 HTTP 探测中使用的自定义标头 |
|
| 在 HTTP 服务器上访问的路径。 |
|
| 用于访问容器的端口的名称或编号。number 必须在 1 到 65535 之间。名称必须是 IANA_SVC_NAME。 |
|
| 用于连接到主机的方案。默认为 HTTP。 |
8.1.121. .spec.containers[].lifecycle.preStop.httpGet.httpHeaders
- 描述
- 在请求中设置的自定义标头。HTTP 允许重复的标头。
- 类型
-
array
8.1.122. .spec.containers[].lifecycle.preStop.httpGet.httpHeaders[]
- 描述
- HTTPHeader 描述了在 HTTP 探测中使用的自定义标头
- 类型
-
object
- 必填
-
name
-
value
-
属性 | 类型 | 描述 |
---|---|---|
|
| 标头字段名称。这将在输出时规范,因此理解 case-variant 名称与相同的标头一样。 |
|
| 标头字段值 |
8.1.123. .spec.containers[].lifecycle.preStop.sleep
- 描述
- sleep 代表容器在被终止前应休眠的持续时间。
- 类型
-
object
- 必填
-
SECONDS
-
属性 | 类型 | 描述 |
---|---|---|
|
| seconds 是睡眠的秒数。 |
8.1.124. .spec.containers[].lifecycle.preStop.tcpSocket
- 描述
- 已弃用。tcpSocket 不支持作为 LifecycleHandler,并且保持向后兼容性。指定 tcp 处理程序时,没有此字段的验证和生命周期 hook 将在运行时失败。
- 类型
-
object
- 必填
-
port
-
属性 | 类型 | 描述 |
---|---|---|
|
| 可选:要连接到的主机名,默认为 pod IP。 |
|
| 用于访问容器的端口的编号或名称。number 必须在 1 到 65535 之间。名称必须是 IANA_SVC_NAME。 |
8.1.125. .spec.containers[].livenessProbe
- 描述
- 容器存活度探测.如果探测失败,容器将重启。无法更新。更多信息: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes
- 类型
-
object
属性 | 类型 | 描述 |
---|---|---|
|
| exec 指定要执行的操作。 |
|
| 在成功后,探测被视为失败的最小连续失败。默认值为 3。最小值为 1。 |
|
| GRPC 指定涉及 GRPC 端口的操作。 |
|
| httpGet 指定要执行的 http 请求。 |
|
| 容器启动存活度探测前的秒数。更多信息: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes |
|
| 执行探测的频率(以秒为单位)。默认值为 10 秒。最小值为 1。 |
|
| 在失败后,探测至少连续成功会被视为成功。默认为 1。对于存活度和启动,必须为 1。最小值为 1。 |
|
| tcpSocket 指定涉及 TCP 端口的操作。 |
|
| pod 在探测失败时安全终止所需的可选持续时间(以秒为单位)。宽限期是 pod 中运行的进程发送终止信号和进程被强制停止使用 kill 信号的时间(以秒为单位)。为您的进程设置这个值超过预期清理时间。如果这个值是 nil,则使用 pod 的 terminationGracePeriodSeconds。否则,这个值会覆盖 pod 规格提供的值。值必须是非负整数。值为零表示立即通过终止信号停止(没有关闭的机会)。这是一个 beta 字段,需要启用 ProbeTerminationGracePeriod 功能门。如果未设置,则使用最小值为 1. spec.terminationGracePeriodSeconds。 |
|
| 探测超时的秒数。默认值为 1 秒。最小值为 1。更多信息: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes |
8.1.126. .spec.containers[].livenessProbe.exec
- 描述
- exec 指定要执行的操作。
- 类型
-
object
属性 | 类型 | 描述 |
---|---|---|
|
| 命令是在容器内执行的命令行,而 命令的工作目录是容器文件系统中的 root ('/')。命令只是 exec'd,它不会在 shell 中运行,因此传统的 shell 指令('|' 等)将无法工作。要使用 shell,您需要明确调用该 shell。0 的退出状态被视为 live/healthy,非零不健康。 |
8.1.127. .spec.containers[].livenessProbe.grpc
- 描述
- GRPC 指定涉及 GRPC 端口的操作。
- 类型
-
object
- 必填
-
port
-
属性 | 类型 | 描述 |
---|---|---|
|
| gRPC 服务的端口号。number 必须在 1 到 65535 之间。 |
|
| service 是要放入 gRPC HealthCheckRequest 中的服务名称(请参阅 https://github.com/grpc/grpc/blob/master/doc/health-checking.md)。 如果没有指定,则默认行为由 gRPC 定义。 |
8.1.128. .spec.containers[].livenessProbe.httpGet
- 描述
- httpGet 指定要执行的 http 请求。
- 类型
-
object
- 必填
-
port
-
属性 | 类型 | 描述 |
---|---|---|
|
| 要连接到的主机名,默认为 pod IP。您可能想在 httpHeaders 中设置"主机"。 |
|
| 在请求中设置的自定义标头。HTTP 允许重复的标头。 |
|
| HTTPHeader 描述了在 HTTP 探测中使用的自定义标头 |
|
| 在 HTTP 服务器上访问的路径。 |
|
| 用于访问容器的端口的名称或编号。number 必须在 1 到 65535 之间。名称必须是 IANA_SVC_NAME。 |
|
| 用于连接到主机的方案。默认为 HTTP。 |
8.1.129. .spec.containers[].livenessProbe.httpGet.httpHeaders
- 描述
- 在请求中设置的自定义标头。HTTP 允许重复的标头。
- 类型
-
array
8.1.130. .spec.containers[].livenessProbe.httpGet.httpHeaders[]
- 描述
- HTTPHeader 描述了在 HTTP 探测中使用的自定义标头
- 类型
-
object
- 必填
-
name
-
value
-
属性 | 类型 | 描述 |
---|---|---|
|
| 标头字段名称。这将在输出时规范,因此理解 case-variant 名称与相同的标头一样。 |
|
| 标头字段值 |
8.1.131. .spec.containers[].livenessProbe.tcpSocket
- 描述
- tcpSocket 指定涉及 TCP 端口的操作。
- 类型
-
object
- 必填
-
port
-
属性 | 类型 | 描述 |
---|---|---|
|
| 可选:要连接到的主机名,默认为 pod IP。 |
|
| 用于访问容器的端口的编号或名称。number 必须在 1 到 65535 之间。名称必须是 IANA_SVC_NAME。 |
8.1.132. .spec.containers[].ports
- 描述
- 从容器公开的端口列表。这里没有指定端口不会阻止公开该端口。所有正在侦听容器内默认"0.0.0.0"地址的端口均可从网络访问。使用策略合并补丁修改阵列可能会破坏数据。如需更多信息,请参阅 https://github.com/kubernetes/kubernetes/issues/108255。无法更新。
- 类型
-
array
8.1.133. .spec.containers[].ports[]
- 描述
- containerPort 代表单个容器中的网络端口。
- 类型
-
object
- 必填
-
containerPort
-
属性 | 类型 | 描述 |
---|---|---|
|
| pod IP 地址上公开的端口号。这必须是有效的端口号 0 < x < 65536。 |
|
| 将外部端口绑定到的主机 IP。 |
|
| 主机上公开的端口号。如果指定,这必须是有效的端口号 0 < x < 65536。如果指定了 HostNetwork,它必须与 ContainerPort 匹配。大多数容器都不需要这样做。 |
|
| 如果指定,这必须是 IANA_SVC_NAME,在 pod 中唯一。pod 中的每个命名端口都必须具有唯一的名称。服务可以引用的端口的名称。 |
|
| 端口的协议。必须是 UDP、TCP 或 SCTP。默认为 "TCP"。 |
8.1.134. .spec.containers[].readinessProbe
- 描述
- 容器服务的定期探测到就绪状态。如果探测失败,容器将从服务端点中删除。无法更新。更多信息: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes
- 类型
-
object
属性 | 类型 | 描述 |
---|---|---|
|
| exec 指定要执行的操作。 |
|
| 在成功后,探测被视为失败的最小连续失败。默认值为 3。最小值为 1。 |
|
| GRPC 指定涉及 GRPC 端口的操作。 |
|
| httpGet 指定要执行的 http 请求。 |
|
| 容器启动存活度探测前的秒数。更多信息: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes |
|
| 执行探测的频率(以秒为单位)。默认值为 10 秒。最小值为 1。 |
|
| 在失败后,探测至少连续成功会被视为成功。默认为 1。对于存活度和启动,必须为 1。最小值为 1。 |
|
| tcpSocket 指定涉及 TCP 端口的操作。 |
|
| pod 在探测失败时安全终止所需的可选持续时间(以秒为单位)。宽限期是 pod 中运行的进程发送终止信号和进程被强制停止使用 kill 信号的时间(以秒为单位)。为您的进程设置这个值超过预期清理时间。如果这个值是 nil,则使用 pod 的 terminationGracePeriodSeconds。否则,这个值会覆盖 pod 规格提供的值。值必须是非负整数。值为零表示立即通过终止信号停止(没有关闭的机会)。这是一个 beta 字段,需要启用 ProbeTerminationGracePeriod 功能门。如果未设置,则使用最小值为 1. spec.terminationGracePeriodSeconds。 |
|
| 探测超时的秒数。默认值为 1 秒。最小值为 1。更多信息: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes |
8.1.135. .spec.containers[].readinessProbe.exec
- 描述
- exec 指定要执行的操作。
- 类型
-
object
属性 | 类型 | 描述 |
---|---|---|
|
| 命令是在容器内执行的命令行,而 命令的工作目录是容器文件系统中的 root ('/')。命令只是 exec'd,它不会在 shell 中运行,因此传统的 shell 指令('|' 等)将无法工作。要使用 shell,您需要明确调用该 shell。0 的退出状态被视为 live/healthy,非零不健康。 |
8.1.136. .spec.containers[].readinessProbe.grpc
- 描述
- GRPC 指定涉及 GRPC 端口的操作。
- 类型
-
object
- 必填
-
port
-
属性 | 类型 | 描述 |
---|---|---|
|
| gRPC 服务的端口号。number 必须在 1 到 65535 之间。 |
|
| service 是要放入 gRPC HealthCheckRequest 中的服务名称(请参阅 https://github.com/grpc/grpc/blob/master/doc/health-checking.md)。 如果没有指定,则默认行为由 gRPC 定义。 |
8.1.137. .spec.containers[].readinessProbe.httpGet
- 描述
- httpGet 指定要执行的 http 请求。
- 类型
-
object
- 必填
-
port
-
属性 | 类型 | 描述 |
---|---|---|
|
| 要连接到的主机名,默认为 pod IP。您可能想在 httpHeaders 中设置"主机"。 |
|
| 在请求中设置的自定义标头。HTTP 允许重复的标头。 |
|
| HTTPHeader 描述了在 HTTP 探测中使用的自定义标头 |
|
| 在 HTTP 服务器上访问的路径。 |
|
| 用于访问容器的端口的名称或编号。number 必须在 1 到 65535 之间。名称必须是 IANA_SVC_NAME。 |
|
| 用于连接到主机的方案。默认为 HTTP。 |
8.1.138. .spec.containers[].readinessProbe.httpGet.httpHeaders
- 描述
- 在请求中设置的自定义标头。HTTP 允许重复的标头。
- 类型
-
array
8.1.139. .spec.containers[].readinessProbe.httpGet.httpHeaders[]
- 描述
- HTTPHeader 描述了在 HTTP 探测中使用的自定义标头
- 类型
-
object
- 必填
-
name
-
value
-
属性 | 类型 | 描述 |
---|---|---|
|
| 标头字段名称。这将在输出时规范,因此理解 case-variant 名称与相同的标头一样。 |
|
| 标头字段值 |
8.1.140. .spec.containers[].readinessProbe.tcpSocket
- 描述
- tcpSocket 指定涉及 TCP 端口的操作。
- 类型
-
object
- 必填
-
port
-
属性 | 类型 | 描述 |
---|---|---|
|
| 可选:要连接到的主机名,默认为 pod IP。 |
|
| 用于访问容器的端口的编号或名称。number 必须在 1 到 65535 之间。名称必须是 IANA_SVC_NAME。 |
8.1.141. .spec.containers[].resizePolicy
- 描述
- 容器的资源重新定义策略。
- 类型
-
数组
8.1.142. .spec.containers[].resizePolicy[]
- 描述
- ContainerResizePolicy 代表容器的资源重新定义策略。
- 类型
-
object
- 必填
-
resourceName
-
restartPolicy
-
属性 | 类型 | 描述 |
---|---|---|
|
| 此资源重新定义策略应用到的资源的名称。支持的值有:cpu、memory。 |
|
| 在指定资源调整大小时,重启策略会被应用。如果没有指定,则默认为 NotRequired。 |
8.1.143. .spec.containers[].resources
- 描述
- 此容器所需的计算资源。无法更新。更多信息: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/
- 类型
-
object
属性 | 类型 | 描述 |
---|---|---|
|
| claim 列出此容器使用的 spec.resourceClaims 中定义的资源名称。 这是一个 alpha 字段,需要启用 DynamicResourceAllocation 功能门。 此字段不可变。它只能为容器设置。 |
|
| ResourceClaim 引用 PodSpec.ResourceClaims 中的一个条目。 |
|
| 限制描述了允许的最大计算资源量。更多信息: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/ |
|
| Requests 描述了所需的最少计算资源。如果容器省略了 Requests,则默认为 Limits (如果明确指定),否则默认为实现定义的值。请求不能超过限值。更多信息: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/ |
8.1.144. .spec.containers[].resources.claims
- 描述
claim 列出此容器使用的 spec.resourceClaims 中定义的资源名称。
这是一个 alpha 字段,需要启用 DynamicResourceAllocation 功能门。
此字段不可变。它只能为容器设置。
- 类型
-
数组
8.1.145. .spec.containers[].resources.claims[]
- 描述
- ResourceClaim 引用 PodSpec.ResourceClaims 中的一个条目。
- 类型
-
object
- 必填
-
name
-
属性 | 类型 | 描述 |
---|---|---|
|
| name 必须与使用此字段的 Pod 的 pod.spec.resourceClaims 中的一个条目的名称匹配。它允许容器内部使用该资源。 |
8.1.146. .spec.containers[].securityContext
- 描述
- securityContext 定义容器应运行的安全选项。如果设置,SecurityContext 的字段会覆盖 PodSecurityContext 的等效字段。更多信息: https://kubernetes.io/docs/tasks/configure-pod-container/security-context/
- 类型
-
object
属性 | 类型 | 描述 |
---|---|---|
|
| allowPrivilegeEscalation 控制进程是否可以比其父进程获得更多特权。此 bool 直接控制容器进程上是否设置了 no_new_privs 标志。当容器是 : 1)作为 CAP_SYS_ADMIN 具有 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 时无法设置此字段。 |
|
| 此容器是否具有只读 root 文件系统。默认为 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 选项。如果 seccomp 选项同时在 pod 和容器级别上提供,则容器选项会覆盖 pod 选项。请注意,当 spec.os.name 是 windows 时无法设置此字段。 |
|
| 应用到所有容器的 Windows 特定设置。如果未指定,则使用 PodSecurityContext 中的选项。如果在 SecurityContext 和 PodSecurityContext 中设置,则 SecurityContext 中指定的值具有优先权。请注意,当 spec.os.name 是 linux 时,不能设置此字段。 |
8.1.147. .spec.containers[].securityContext.appArmorProfile
- 描述
- appArmorProfile 是此容器使用的 AppArmor 选项。如果设置,此配置集会覆盖 pod 的 appArmorProfile。请注意,当 spec.os.name 是 windows 时无法设置此字段。
- 类型
-
object
- 必填
-
type
-
属性 | 类型 | 描述 |
---|---|---|
|
| localhostProfile 表示节点上载入的配置集。该配置集必须在节点上预先配置才能正常工作。必须与配置文件的加载名称匹配。只在 type 为 "Localhost" 时,才应设置。 |
|
| Type 表示将应用哪些类型的 AppArmor 配置集。有效选项包括: Localhost - 节点上的配置文件预加载。RuntimeDefault - 容器运行时的默认配置集。unconfined - 无 AppArmor 强制。 |
8.1.148. .spec.containers[].securityContext.capabilities
- 描述
- 运行容器时添加/丢弃的功能。默认为容器运行时授予的默认功能集。请注意,当 spec.os.name 是 windows 时无法设置此字段。
- 类型
-
object
属性 | 类型 | 描述 |
---|---|---|
|
| 添加了功能 |
|
| 删除的功能 |
8.1.149. .spec.containers[].securityContext.seLinuxOptions
- 描述
- 要应用到容器的 SELinux 上下文。如果未指定,容器运行时将为每个容器分配一个随机 SELinux 上下文。也可以在 PodSecurityContext 中设置。如果在 SecurityContext 和 PodSecurityContext 中设置,则 SecurityContext 中指定的值具有优先权。请注意,当 spec.os.name 是 windows 时无法设置此字段。
- 类型
-
object
属性 | 类型 | 描述 |
---|---|---|
|
| level 是适用于容器的 SELinux 级别标签。 |
|
| role 是适用于容器的 SELinux 角色标签。 |
|
| type 是适用于容器的 SELinux 类型标签。 |
|
| user 是适用于容器的 SELinux 用户标签。 |
8.1.150. .spec.containers[].securityContext.seccompProfile
- 描述
- 此容器使用的 seccomp 选项。如果 seccomp 选项同时在 pod 和容器级别上提供,则容器选项会覆盖 pod 选项。请注意,当 spec.os.name 是 windows 时无法设置此字段。
- 类型
-
object
- 必填
-
type
-
属性 | 类型 | 描述 |
---|---|---|
|
| localhostProfile 表示应使用节点上文件中定义的配置集。该配置集必须在节点上预先配置才能正常工作。必须是一个降序路径,相对于 kubelet 配置的 seccomp 配置集位置。如果类型为"Localhost",则必须设置。不得为任何其他类型设置。 |
|
| Type 表示将应用了哪些 seccomp 配置集。有效选项有: localhost - 应该使用节点上文件中定义的配置文件。RuntimeDefault - 应使用容器运行时默认配置集。unconfined - 不应应用配置集。 |
8.1.151. .spec.containers[].securityContext.windowsOptions
- 描述
- 应用到所有容器的 Windows 特定设置。如果未指定,则使用 PodSecurityContext 中的选项。如果在 SecurityContext 和 PodSecurityContext 中设置,则 SecurityContext 中指定的值具有优先权。请注意,当 spec.os.name 是 linux 时,不能设置此字段。
- 类型
-
object
属性 | 类型 | 描述 |
---|---|---|
|
| GMSACredentialSpec 是 GMSA 准入 Webhook (https://github.com/kubernetes-sigs/windows-gmsa)内联由 GMSACredentialSpec 命名的 GMSA 凭证规格的内容。 |
|
| GMSACredentialSpecName 是要使用的 GMSA 凭证规格的名称。 |
|
| HostProcess 确定容器是否应作为"主机进程"容器运行。所有 Pod 的容器都必须具有相同的有效的 HostProcess 值(不允许混合 HostProcess 容器和非主机进程容器)。另外,如果 HostProcess 为 true,则 HostNetwork 也必须设置为 true。 |
|
| Windows 中的 UserName,以运行容器进程的入口点。如果未指定,则默认为在镜像元数据中指定的用户。也可以在 PodSecurityContext 中设置。如果在 SecurityContext 和 PodSecurityContext 中设置,则 SecurityContext 中指定的值具有优先权。 |
8.1.152. .spec.containers[].startupProbe
- 描述
- startupProbe 表示 Pod 已成功初始化。如果指定,则不会执行其他探测,直到成功完成为止。如果这个探测失败,则 Pod 将重启,就像 livenessProbe 失败一样。这可用于在 Pod 生命周期开始时提供不同的探测参数,当可能需要很长时间才能加载数据或温缓存时,而不是在 steady-state 操作过程中提供不同的探测参数。这不能更新。更多信息: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes
- 类型
-
object
属性 | 类型 | 描述 |
---|---|---|
|
| exec 指定要执行的操作。 |
|
| 在成功后,探测被视为失败的最小连续失败。默认值为 3。最小值为 1。 |
|
| GRPC 指定涉及 GRPC 端口的操作。 |
|
| httpGet 指定要执行的 http 请求。 |
|
| 容器启动存活度探测前的秒数。更多信息: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes |
|
| 执行探测的频率(以秒为单位)。默认值为 10 秒。最小值为 1。 |
|
| 在失败后,探测至少连续成功会被视为成功。默认为 1。对于存活度和启动,必须为 1。最小值为 1。 |
|
| tcpSocket 指定涉及 TCP 端口的操作。 |
|
| pod 在探测失败时安全终止所需的可选持续时间(以秒为单位)。宽限期是 pod 中运行的进程发送终止信号和进程被强制停止使用 kill 信号的时间(以秒为单位)。为您的进程设置这个值超过预期清理时间。如果这个值是 nil,则使用 pod 的 terminationGracePeriodSeconds。否则,这个值会覆盖 pod 规格提供的值。值必须是非负整数。值为零表示立即通过终止信号停止(没有关闭的机会)。这是一个 beta 字段,需要启用 ProbeTerminationGracePeriod 功能门。如果未设置,则使用最小值为 1. spec.terminationGracePeriodSeconds。 |
|
| 探测超时的秒数。默认值为 1 秒。最小值为 1。更多信息: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes |
8.1.153. .spec.containers[].startupProbe.exec
- 描述
- exec 指定要执行的操作。
- 类型
-
object
属性 | 类型 | 描述 |
---|---|---|
|
| 命令是在容器内执行的命令行,而 命令的工作目录是容器文件系统中的 root ('/')。命令只是 exec'd,它不会在 shell 中运行,因此传统的 shell 指令('|' 等)将无法工作。要使用 shell,您需要明确调用该 shell。0 的退出状态被视为 live/healthy,非零不健康。 |
8.1.154. .spec.containers[].startupProbe.grpc
- 描述
- GRPC 指定涉及 GRPC 端口的操作。
- 类型
-
object
- 必填
-
port
-
属性 | 类型 | 描述 |
---|---|---|
|
| gRPC 服务的端口号。number 必须在 1 到 65535 之间。 |
|
| service 是要放入 gRPC HealthCheckRequest 中的服务名称(请参阅 https://github.com/grpc/grpc/blob/master/doc/health-checking.md)。 如果没有指定,则默认行为由 gRPC 定义。 |
8.1.155. .spec.containers[].startupProbe.httpGet
- 描述
- httpGet 指定要执行的 http 请求。
- 类型
-
object
- 必填
-
port
-
属性 | 类型 | 描述 |
---|---|---|
|
| 要连接到的主机名,默认为 pod IP。您可能想在 httpHeaders 中设置"主机"。 |
|
| 在请求中设置的自定义标头。HTTP 允许重复的标头。 |
|
| HTTPHeader 描述了在 HTTP 探测中使用的自定义标头 |
|
| 在 HTTP 服务器上访问的路径。 |
|
| 用于访问容器的端口的名称或编号。number 必须在 1 到 65535 之间。名称必须是 IANA_SVC_NAME。 |
|
| 用于连接到主机的方案。默认为 HTTP。 |
8.1.156. .spec.containers[].startupProbe.httpGet.httpHeaders
- 描述
- 在请求中设置的自定义标头。HTTP 允许重复的标头。
- 类型
-
array
8.1.157. .spec.containers[].startupProbe.httpGet.httpHeaders[]
- 描述
- HTTPHeader 描述了在 HTTP 探测中使用的自定义标头
- 类型
-
object
- 必填
-
name
-
value
-
属性 | 类型 | 描述 |
---|---|---|
|
| 标头字段名称。这将在输出时规范,因此理解 case-variant 名称与相同的标头一样。 |
|
| 标头字段值 |
8.1.158. .spec.containers[].startupProbe.tcpSocket
- 描述
- tcpSocket 指定涉及 TCP 端口的操作。
- 类型
-
object
- 必填
-
port
-
属性 | 类型 | 描述 |
---|---|---|
|
| 可选:要连接到的主机名,默认为 pod IP。 |
|
| 用于访问容器的端口的编号或名称。number 必须在 1 到 65535 之间。名称必须是 IANA_SVC_NAME。 |
8.1.159. .spec.containers[].volumeDevices
- 描述
- volumeDevices 是容器要使用的块设备列表。
- 类型
-
array
8.1.160. .spec.containers[].volumeDevices[]
- 描述
- volumeDevice 描述了容器中原始块设备的映射。
- 类型
-
object
- 必填
-
devicePath
-
name
-
属性 | 类型 | 描述 |
---|---|---|
|
| DevicePath 是该设备要映射到的容器内的路径。 |
|
| name 必须与 pod 中 persistentVolumeClaim 的名称匹配 |
8.1.161. .spec.containers[].volumeMounts
- 描述
- 要挂载到容器文件系统的 Pod 卷。无法更新。
- 类型
-
array
8.1.162. .spec.containers[].volumeMounts[]
- 描述
- VolumeMount 描述了容器内卷挂载。
- 类型
-
object
- 必填
-
mountPath
-
name
-
属性 | 类型 | 描述 |
---|---|---|
|
| 应挂载卷的容器中的路径。不得包含 ':'。 |
|
| mountPropagation 决定挂载如何从主机传播到容器以及反向传播。如果没有设置,则使用 MountPropagationNone。此字段在 1.10 中是 beta。当 RecursiveReadOnly 设置为 IfPossible 或 Enabled 时,mountPropagation 必须是 None 或未指定(默认为 None)。 |
|
| 这必须与卷的 Name 匹配。 |
|
| 如果为 true,则以只读方式挂载,否则读写(false 或未指定)。默认为false。 |
|
| RecursiveReadOnly 指定是否应递归处理只读挂载。 如果 ReadOnly 为 false,则此字段没有意义,必须未指定。 如果 ReadOnly 为 true,且此字段设置为 Disabled,则不会递归只读挂载。如果将此字段设置为 IfPossible,则挂载将递归只读(如果容器运行时支持)。如果此字段设置为 Enabled,则挂载将在容器运行时支持时递归只读,否则不会启动 pod,并生成错误来指示原因。 如果将此字段设置为 IfPossible 或 Enabled,则 MountPropagation 必须设为 None (或未指定,默认为 None)。 如果没有指定此字段,它将被视为与 Disabled 的等效值。 |
|
| 应从中挂载容器卷的卷中的路径。默认为 "" (卷的 root)。 |
|
| 在应该挂载容器卷的卷中扩展路径。行为与 SubPath 类似,但环境变量引用 $(VAR_NAME)使用容器的环境扩展。默认为 "" (卷的 root)。SubPathExpr 和 SubPath 是互斥的。 |
8.1.163. .spec.excludedFromEnforcement
- 描述
对 PodMonitor、ServiceMonitor、Probe 和 PrometheusRule 对象的引用列表,以便从强制空间标签 origin 中排除。
只有在
spec.enforcedNamespaceLabel
设置为 true 时才适用。- 类型
-
数组
8.1.164. .spec.excludedFromEnforcement[]
- 描述
- ObjectReference 引用 PodMonitor、ServiceMonitor、Probe 或 PrometheusRule 对象。
- 类型
-
object
- 必填
-
namespace
-
resource
-
属性 | 类型 | 描述 |
---|---|---|
|
|
引用的组。如果没有指定,则默认为 |
|
| 引用的名称。如果没有设置,则命名空间中的所有资源都匹配。 |
|
| 引用的命名空间。更多信息: https://kubernetes.io/docs/concepts/overview/working-with-objects/namespaces/ |
|
| 引用的资源。 |
8.1.165. .spec.exemplars
- 描述
-
Exemplars 相关设置可重新加载。它需要启用
exemplar-storage
功能标记才能生效。 - 类型
-
object
属性 | 类型 | 描述 |
---|---|---|
|
| 存储在所有系列的内存中的最大 exemplar 数量。
必须使用 如果没有设置,Prometheus 将使用其默认值。为零或小于零的值会禁用存储。 |
8.1.166. .spec.hostAliases
- 描述
- 可选的主机和 IP 列表,如果指定,将注入到 Pod 的主机文件中。
- 类型
-
数组
8.1.167. .spec.hostAliases[]
- 描述
- HostAlias 包含 IP 和主机名之间的映射,这些映射将作为 pod 的主机文件中的条目注入。
- 类型
-
object
- 必填
-
主机名
-
ip
-
属性 | 类型 | 描述 |
---|---|---|
|
| 以上 IP 地址的主机名。 |
|
| 主机文件条目的 IP 地址。 |
8.1.168. .spec.imagePullSecrets
- 描述
- 可选引用同一命名空间中的 Secret 列表,用于从 registry 中拉取镜像。See http://kubernetes.io/docs/user-guide/images#specifying-imagepullsecrets-on-a-pod
- 类型
-
array
8.1.169. .spec.imagePullSecrets[]
- 描述
- LocalObjectReference 包含足够信息,供您在同一命名空间中找到引用的对象。
- 类型
-
object
属性 | 类型 | 描述 |
---|---|---|
|
|
引用的名称。有效地需要此字段,但因为允许向后兼容为空。这里具有空值的此类实例几乎是错误的。TODO:添加其他有用的字段。apiVersion、kind、uid?更多信息: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names TODO: 当 controller-gen 不需要 https://github.com/kubernetes-sigs/kubebuilder/issues/3896 时,Drop |
8.1.170. .spec.initContainers
- 描述
initContainers 允许将 initContainers 注入 Pod 定义。它们可用于从外部来源获取用于注入 Prometheus 配置的 secret。执行 initContainer 期间的任何错误将导致重启 Pod。更多信息: https://kubernetes.io/docs/concepts/workloads/pods/init-containers/ InitContainers如果操作器共享相同的名称和修改,则修改 Operator 生成的 init 容器(如果它们通过策略合并补丁完成)。
由 Operator 管理的 init 容器名称的名称有:*
init-config-reloader
。覆盖 init 容器完全超出维护人员将支持什么范围,通过这样做,您接受的行为可能随时中断,而无需通知。
- 类型
-
array
8.1.171. .spec.initContainers[]
- 描述
- 要在 pod 中运行的单一应用程序容器。
- 类型
-
object
- 必填
-
name
-
属性 | 类型 | 描述 |
---|---|---|
|
| 入口点的参数。如果没有提供,则使用容器镜像的 CMD。变量引用 $(VAR_NAME)使用容器的环境扩展。如果无法解析变量,则输入字符串中的引用将保持不变。双引号被缩减为单个 $,它允许转义 $(VAR_NAME)语法:即 " (VAR_NAME) " 将生成字符串 literal "$(VAR_NAME) "。转义的引用永远不会扩展,无论变量是否存在。无法更新。更多信息: https://kubernetes.io/docs/tasks/inject-data-application/define-command-argument-container/#running-a-command-in-a-shell |
|
| ENTRYPOINT 数组.没有在 shell 中执行。如果未提供此容器镜像,则使用容器镜像的 ENTRYPOINT。变量引用 $(VAR_NAME)使用容器的环境扩展。如果无法解析变量,则输入字符串中的引用将保持不变。双引号被缩减为单个 $,它允许转义 $(VAR_NAME)语法:即 " (VAR_NAME) " 将生成字符串 literal "$(VAR_NAME) "。转义的引用永远不会扩展,无论变量是否存在。无法更新。更多信息: https://kubernetes.io/docs/tasks/inject-data-application/define-command-argument-container/#running-a-command-in-a-shell |
|
| 容器中要设置的环境变量列表。无法更新。 |
|
| EnvVar 代表容器中存在的环境变量。 |
|
| 在容器中填充环境变量的源列表。源中定义的键必须是 C_IDENTIFIER。当容器启动时,所有无效密钥都会被报告为事件。当多个源中存在键时,与最后一个源关联的值将具有优先权。由带有重复键的 Env 定义的值将具有优先权。无法更新。 |
|
| EnvFromSource 代表一组 ConfigMap 的源 |
|
| 容器镜像名称。更多信息: https://kubernetes.io/docs/concepts/containers/images 此字段是可选的,允许更高级别的配置管理默认或覆盖工作负载控制器(如 Deployments 和 StatefulSets)中的容器镜像。 |
|
| 镜像拉取(pull)策略。Always, Never, IfNotPresent 之一。如果指定了 :latest 标签,则默认为 Always,否则则默认为 IfNotPresent。无法更新。更多信息: https://kubernetes.io/docs/concepts/containers/images#updating-images |
|
| 管理系统应采取的操作来响应容器生命周期事件。无法更新。 |
|
| 容器存活度探测.如果探测失败,容器将重启。无法更新。更多信息: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes |
|
| 指定为 DNS_LABEL 的容器名称。pod 中的每个容器都必须具有唯一的名称(DNS_LABEL)。无法更新。 |
|
| 从容器公开的端口列表。这里没有指定端口不会阻止公开该端口。所有正在侦听容器内默认"0.0.0.0"地址的端口均可从网络访问。使用策略合并补丁修改阵列可能会破坏数据。如需更多信息,请参阅 https://github.com/kubernetes/kubernetes/issues/108255。无法更新。 |
|
| containerPort 代表单个容器中的网络端口。 |
|
| 容器服务的定期探测到就绪状态。如果探测失败,容器将从服务端点中删除。无法更新。更多信息: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes |
|
| 容器的资源重新定义策略。 |
|
| ContainerResizePolicy 代表容器的资源重新定义策略。 |
|
| 此容器所需的计算资源。无法更新。更多信息: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/ |
|
| 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.io/docs/tasks/configure-pod-container/security-context/ |
|
| startupProbe 表示 Pod 已成功初始化。如果指定,则不会执行其他探测,直到成功完成为止。如果这个探测失败,则 Pod 将重启,就像 livenessProbe 失败一样。这可用于在 Pod 生命周期开始时提供不同的探测参数,当可能需要很长时间才能加载数据或温缓存时,而不是在 steady-state 操作过程中提供不同的探测参数。这不能更新。更多信息: https://kubernetes.io/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。无法更新。 |
|
| 指明应当如何填充终止消息。文件将使用 terminationMessagePath 的内容在成功或失败时填充容器状态消息。如果终止消息文件为空,则 FallbackToLogsOnError 将使用容器日志输出的最后块,并且容器退出并显示错误。日志输出限制为 2048 字节或 80 行,以较小者。默认为 File。无法更新。 |
|
| 此容器是否应为自己分配 TTY,也要求 'stdin' 为 true。默认为 false。 |
|
| volumeDevices 是容器要使用的块设备列表。 |
|
| volumeDevice 描述了容器中原始块设备的映射。 |
|
| 要挂载到容器文件系统的 Pod 卷。无法更新。 |
|
| VolumeMount 描述了容器内卷挂载。 |
|
| 容器的工作目录。如果未指定,则将使用容器运行时的默认值,该默认值可能在容器镜像中配置。无法更新。 |
8.1.172. .spec.initContainers[].env
- 描述
- 容器中要设置的环境变量列表。无法更新。
- 类型
-
array
8.1.173. .spec.initContainers[].env[]
- 描述
- EnvVar 代表容器中存在的环境变量。
- 类型
-
object
- 必填
-
name
-
属性 | 类型 | 描述 |
---|---|---|
|
| 环境变量的名称。必须是 C_IDENTIFIER。 |
|
| 变量引用 $(VAR_NAME)使用容器中之前定义的环境变量以及任何服务环境变量进行扩展。如果无法解析变量,则输入字符串中的引用将保持不变。双引号被缩减为单个 $,它允许转义 $(VAR_NAME)语法:即 " (VAR_NAME) " 将生成字符串 literal "$(VAR_NAME) "。转义的引用永远不会扩展,无论变量是否存在。默认为 ""。 |
|
| 环境变量的值的源。如果值不为空,则无法使用。 |
8.1.174. .spec.initContainers[].env[].valueFrom
- 描述
- 环境变量的值的源。如果值不为空,则无法使用。
- 类型
-
object
属性 | 类型 | 描述 |
---|---|---|
|
| 选择 ConfigMap 的键。 |
|
|
选择 pod 的字段:支持 metadata.name、metadata.namespace、 |
|
| 选择容器的资源:当前仅支持资源限值和请求(limits.cpu, limits.memory, limits.ephemeral-storage, requests.cpu, requests.memory and requests.ephemeral-storage)。 |
|
| 在 pod 命名空间中选择 secret 的键 |
8.1.175. .spec.initContainers[].env[].valueFrom.configMapKeyRef
- 描述
- 选择 ConfigMap 的键。
- 类型
-
object
- 必填
-
key
-
属性 | 类型 | 描述 |
---|---|---|
|
| 要选择的密钥。 |
|
|
引用的名称。有效地需要此字段,但因为允许向后兼容为空。这里具有空值的此类实例几乎是错误的。TODO:添加其他有用的字段。apiVersion、kind、uid?更多信息: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names TODO: 当 controller-gen 不需要 https://github.com/kubernetes-sigs/kubebuilder/issues/3896 时,Drop |
|
| 指定是否必须定义 ConfigMap 还是其键 |
8.1.176. .spec.initContainers[].env[].valueFrom.fieldRef
- 描述
-
选择 pod 的字段:支持 metadata.name、metadata.namespace、
metadata.labels['<KEY>']
,metadata.annotations['<KEY>']
, spec.nodeName, spec.serviceAccountName, status.hostIP, status.podIP, status.podIPs. - 类型
-
object
- 必填
-
fieldPath
-
属性 | 类型 | 描述 |
---|---|---|
|
| 模式的版本是按术语编写的 FieldPath,默认为 "v1"。 |
|
| 在指定 API 版本中选择的字段路径。 |
8.1.177. .spec.initContainers[].env[].valueFrom.resourceFieldRef
- 描述
- 选择容器的资源:当前仅支持资源限值和请求(limits.cpu, limits.memory, limits.ephemeral-storage, requests.cpu, requests.memory and requests.ephemeral-storage)。
- 类型
-
object
- 必填
-
resource
-
属性 | 类型 | 描述 |
---|---|---|
|
| 容器名称:卷需要,对于 env vars是可选的 |
|
| 指定公开资源的输出格式,默认为 "1" |
|
| 必需:要选择的资源 |
8.1.178. .spec.initContainers[].env[].valueFrom.secretKeyRef
- 描述
- 在 pod 命名空间中选择 secret 的键
- 类型
-
object
- 必填
-
key
-
属性 | 类型 | 描述 |
---|---|---|
|
| 要从中选择的 secret 的密钥。必须是一个有效的 secret 密钥。 |
|
|
引用的名称。有效地需要此字段,但因为允许向后兼容为空。这里具有空值的此类实例几乎是错误的。TODO:添加其他有用的字段。apiVersion、kind、uid?更多信息: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names TODO: 当 controller-gen 不需要 https://github.com/kubernetes-sigs/kubebuilder/issues/3896 时,Drop |
|
| 指定是否需要定义 Secret 还是其密钥 |
8.1.179. .spec.initContainers[].envFrom
- 描述
- 在容器中填充环境变量的源列表。源中定义的键必须是 C_IDENTIFIER。当容器启动时,所有无效密钥都会被报告为事件。当多个源中存在键时,与最后一个源关联的值将具有优先权。由带有重复键的 Env 定义的值将具有优先权。无法更新。
- 类型
-
array
8.1.180. .spec.initContainers[].envFrom[]
- 描述
- EnvFromSource 代表一组 ConfigMap 的源
- 类型
-
object
属性 | 类型 | 描述 |
---|---|---|
|
| 要从中选择的 ConfigMap |
|
| 要添加到 ConfigMap 中每个键的可选标识符。必须是 C_IDENTIFIER。 |
|
| 要从中选择的 Secret |
8.1.181. .spec.initContainers[].envFrom[].configMapRef
- 描述
- 要从中选择的 ConfigMap
- 类型
-
object
属性 | 类型 | 描述 |
---|---|---|
|
|
引用的名称。有效地需要此字段,但因为允许向后兼容为空。这里具有空值的此类实例几乎是错误的。TODO:添加其他有用的字段。apiVersion、kind、uid?更多信息: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names TODO: 当 controller-gen 不需要 https://github.com/kubernetes-sigs/kubebuilder/issues/3896 时,Drop |
|
| 指定是否必须定义 ConfigMap |
8.1.182. .spec.initContainers[].envFrom[].secretRef
- 描述
- 要从中选择的 Secret
- 类型
-
object
属性 | 类型 | 描述 |
---|---|---|
|
|
引用的名称。有效地需要此字段,但因为允许向后兼容为空。这里具有空值的此类实例几乎是错误的。TODO:添加其他有用的字段。apiVersion、kind、uid?更多信息: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names TODO: 当 controller-gen 不需要 https://github.com/kubernetes-sigs/kubebuilder/issues/3896 时,Drop |
|
| 指定是否必须定义 Secret |
8.1.183. .spec.initContainers[].lifecycle
- 描述
- 管理系统应采取的操作来响应容器生命周期事件。无法更新。
- 类型
-
object
属性 | 类型 | 描述 |
---|---|---|
|
| postStart 在容器被创建后立即调用。如果处理程序失败,则容器将根据其重启策略终止并重启。容器块的其他管理,直到 hook 完成为止。更多信息: https://kubernetes.io/docs/concepts/containers/container-lifecycle-hooks/#container-hooks |
|
| preStop 在因为 API 请求或管理事件而终止容器前马上调用,如存活度/启动探测失败、抢占、资源争用等。如果容器崩溃或退出,则不会调用处理程序。Pod 的终止宽限期倒计时开始,然后再执行 PreStop hook。无论处理程序的结果是什么,容器最终都会在 Pod 的终止宽限期内终止(除非被终结器造成延迟)。容器的其他管理块直到 hook 完成或直至到达终止宽限期为止。更多信息: https://kubernetes.io/docs/concepts/containers/container-lifecycle-hooks/#container-hooks |
8.1.184. .spec.initContainers[].lifecycle.postStart
- 描述
- postStart 在容器被创建后立即调用。如果处理程序失败,则容器将根据其重启策略终止并重启。容器块的其他管理,直到 hook 完成为止。更多信息: https://kubernetes.io/docs/concepts/containers/container-lifecycle-hooks/#container-hooks
- 类型
-
object
属性 | 类型 | 描述 |
---|---|---|
|
| exec 指定要执行的操作。 |
|
| httpGet 指定要执行的 http 请求。 |
|
| sleep 代表容器在被终止前应休眠的持续时间。 |
|
| 已弃用。tcpSocket 不支持作为 LifecycleHandler,并且保持向后兼容性。指定 tcp 处理程序时,没有此字段的验证和生命周期 hook 将在运行时失败。 |
8.1.185. .spec.initContainers[].lifecycle.postStart.exec
- 描述
- exec 指定要执行的操作。
- 类型
-
object
属性 | 类型 | 描述 |
---|---|---|
|
| 命令是在容器内执行的命令行,而 命令的工作目录是容器文件系统中的 root ('/')。命令只是 exec'd,它不会在 shell 中运行,因此传统的 shell 指令('|' 等)将无法工作。要使用 shell,您需要明确调用该 shell。0 的退出状态被视为 live/healthy,非零不健康。 |
8.1.186. .spec.initContainers[].lifecycle.postStart.httpGet
- 描述
- httpGet 指定要执行的 http 请求。
- 类型
-
object
- 必填
-
port
-
属性 | 类型 | 描述 |
---|---|---|
|
| 要连接到的主机名,默认为 pod IP。您可能想在 httpHeaders 中设置"主机"。 |
|
| 在请求中设置的自定义标头。HTTP 允许重复的标头。 |
|
| HTTPHeader 描述了在 HTTP 探测中使用的自定义标头 |
|
| 在 HTTP 服务器上访问的路径。 |
|
| 用于访问容器的端口的名称或编号。number 必须在 1 到 65535 之间。名称必须是 IANA_SVC_NAME。 |
|
| 用于连接到主机的方案。默认为 HTTP。 |
8.1.187. .spec.initContainers[].lifecycle.postStart.httpGet.httpHeaders
- 描述
- 在请求中设置的自定义标头。HTTP 允许重复的标头。
- 类型
-
array
8.1.188. .spec.initContainers[].lifecycle.postStart.httpGet.httpHeaders[]
- 描述
- HTTPHeader 描述了在 HTTP 探测中使用的自定义标头
- 类型
-
object
- 必填
-
name
-
value
-
属性 | 类型 | 描述 |
---|---|---|
|
| 标头字段名称。这将在输出时规范,因此理解 case-variant 名称与相同的标头一样。 |
|
| 标头字段值 |
8.1.189. .spec.initContainers[].lifecycle.postStart.sleep
- 描述
- sleep 代表容器在被终止前应休眠的持续时间。
- 类型
-
object
- 必填
-
SECONDS
-
属性 | 类型 | 描述 |
---|---|---|
|
| seconds 是睡眠的秒数。 |
8.1.190. .spec.initContainers[].lifecycle.postStart.tcpSocket
- 描述
- 已弃用。tcpSocket 不支持作为 LifecycleHandler,并且保持向后兼容性。指定 tcp 处理程序时,没有此字段的验证和生命周期 hook 将在运行时失败。
- 类型
-
object
- 必填
-
port
-
属性 | 类型 | 描述 |
---|---|---|
|
| 可选:要连接到的主机名,默认为 pod IP。 |
|
| 用于访问容器的端口的编号或名称。number 必须在 1 到 65535 之间。名称必须是 IANA_SVC_NAME。 |
8.1.191. .spec.initContainers[].lifecycle.preStop
- 描述
- preStop 在因为 API 请求或管理事件而终止容器前马上调用,如存活度/启动探测失败、抢占、资源争用等。如果容器崩溃或退出,则不会调用处理程序。Pod 的终止宽限期倒计时开始,然后再执行 PreStop hook。无论处理程序的结果是什么,容器最终都会在 Pod 的终止宽限期内终止(除非被终结器造成延迟)。容器的其他管理块直到 hook 完成或直至到达终止宽限期为止。更多信息: https://kubernetes.io/docs/concepts/containers/container-lifecycle-hooks/#container-hooks
- 类型
-
object
属性 | 类型 | 描述 |
---|---|---|
|
| exec 指定要执行的操作。 |
|
| httpGet 指定要执行的 http 请求。 |
|
| sleep 代表容器在被终止前应休眠的持续时间。 |
|
| 已弃用。tcpSocket 不支持作为 LifecycleHandler,并且保持向后兼容性。指定 tcp 处理程序时,没有此字段的验证和生命周期 hook 将在运行时失败。 |
8.1.192. .spec.initContainers[].lifecycle.preStop.exec
- 描述
- exec 指定要执行的操作。
- 类型
-
object
属性 | 类型 | 描述 |
---|---|---|
|
| 命令是在容器内执行的命令行,而 命令的工作目录是容器文件系统中的 root ('/')。命令只是 exec'd,它不会在 shell 中运行,因此传统的 shell 指令('|' 等)将无法工作。要使用 shell,您需要明确调用该 shell。0 的退出状态被视为 live/healthy,非零不健康。 |
8.1.193. .spec.initContainers[].lifecycle.preStop.httpGet
- 描述
- httpGet 指定要执行的 http 请求。
- 类型
-
object
- 必填
-
port
-
属性 | 类型 | 描述 |
---|---|---|
|
| 要连接到的主机名,默认为 pod IP。您可能想在 httpHeaders 中设置"主机"。 |
|
| 在请求中设置的自定义标头。HTTP 允许重复的标头。 |
|
| HTTPHeader 描述了在 HTTP 探测中使用的自定义标头 |
|
| 在 HTTP 服务器上访问的路径。 |
|
| 用于访问容器的端口的名称或编号。number 必须在 1 到 65535 之间。名称必须是 IANA_SVC_NAME。 |
|
| 用于连接到主机的方案。默认为 HTTP。 |
8.1.194. .spec.initContainers[].lifecycle.preStop.httpGet.httpHeaders
- 描述
- 在请求中设置的自定义标头。HTTP 允许重复的标头。
- 类型
-
array
8.1.195. .spec.initContainers[].lifecycle.preStop.httpGet.httpHeaders[]
- 描述
- HTTPHeader 描述了在 HTTP 探测中使用的自定义标头
- 类型
-
object
- 必填
-
name
-
value
-
属性 | 类型 | 描述 |
---|---|---|
|
| 标头字段名称。这将在输出时规范,因此理解 case-variant 名称与相同的标头一样。 |
|
| 标头字段值 |
8.1.196. .spec.initContainers[].lifecycle.preStop.sleep
- 描述
- sleep 代表容器在被终止前应休眠的持续时间。
- 类型
-
object
- 必填
-
SECONDS
-
属性 | 类型 | 描述 |
---|---|---|
|
| seconds 是睡眠的秒数。 |
8.1.197. .spec.initContainers[].lifecycle.preStop.tcpSocket
- 描述
- 已弃用。tcpSocket 不支持作为 LifecycleHandler,并且保持向后兼容性。指定 tcp 处理程序时,没有此字段的验证和生命周期 hook 将在运行时失败。
- 类型
-
object
- 必填
-
port
-
属性 | 类型 | 描述 |
---|---|---|
|
| 可选:要连接到的主机名,默认为 pod IP。 |
|
| 用于访问容器的端口的编号或名称。number 必须在 1 到 65535 之间。名称必须是 IANA_SVC_NAME。 |
8.1.198. .spec.initContainers[].livenessProbe
- 描述
- 容器存活度探测.如果探测失败,容器将重启。无法更新。更多信息: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes
- 类型
-
object
属性 | 类型 | 描述 |
---|---|---|
|
| exec 指定要执行的操作。 |
|
| 在成功后,探测被视为失败的最小连续失败。默认值为 3。最小值为 1。 |
|
| GRPC 指定涉及 GRPC 端口的操作。 |
|
| httpGet 指定要执行的 http 请求。 |
|
| 容器启动存活度探测前的秒数。更多信息: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes |
|
| 执行探测的频率(以秒为单位)。默认值为 10 秒。最小值为 1。 |
|
| 在失败后,探测至少连续成功会被视为成功。默认为 1。对于存活度和启动,必须为 1。最小值为 1。 |
|
| tcpSocket 指定涉及 TCP 端口的操作。 |
|
| pod 在探测失败时安全终止所需的可选持续时间(以秒为单位)。宽限期是 pod 中运行的进程发送终止信号和进程被强制停止使用 kill 信号的时间(以秒为单位)。为您的进程设置这个值超过预期清理时间。如果这个值是 nil,则使用 pod 的 terminationGracePeriodSeconds。否则,这个值会覆盖 pod 规格提供的值。值必须是非负整数。值为零表示立即通过终止信号停止(没有关闭的机会)。这是一个 beta 字段,需要启用 ProbeTerminationGracePeriod 功能门。如果未设置,则使用最小值为 1. spec.terminationGracePeriodSeconds。 |
|
| 探测超时的秒数。默认值为 1 秒。最小值为 1。更多信息: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes |
8.1.199. .spec.initContainers[].livenessProbe.exec
- 描述
- exec 指定要执行的操作。
- 类型
-
object
属性 | 类型 | 描述 |
---|---|---|
|
| 命令是在容器内执行的命令行,而 命令的工作目录是容器文件系统中的 root ('/')。命令只是 exec'd,它不会在 shell 中运行,因此传统的 shell 指令('|' 等)将无法工作。要使用 shell,您需要明确调用该 shell。0 的退出状态被视为 live/healthy,非零不健康。 |
8.1.200. .spec.initContainers[].livenessProbe.grpc
- 描述
- GRPC 指定涉及 GRPC 端口的操作。
- 类型
-
object
- 必填
-
port
-
属性 | 类型 | 描述 |
---|---|---|
|
| gRPC 服务的端口号。number 必须在 1 到 65535 之间。 |
|
| service 是要放入 gRPC HealthCheckRequest 中的服务名称(请参阅 https://github.com/grpc/grpc/blob/master/doc/health-checking.md)。 如果没有指定,则默认行为由 gRPC 定义。 |
8.1.201. .spec.initContainers[].livenessProbe.httpGet
- 描述
- httpGet 指定要执行的 http 请求。
- 类型
-
object
- 必填
-
port
-
属性 | 类型 | 描述 |
---|---|---|
|
| 要连接到的主机名,默认为 pod IP。您可能想在 httpHeaders 中设置"主机"。 |
|
| 在请求中设置的自定义标头。HTTP 允许重复的标头。 |
|
| HTTPHeader 描述了在 HTTP 探测中使用的自定义标头 |
|
| 在 HTTP 服务器上访问的路径。 |
|
| 用于访问容器的端口的名称或编号。number 必须在 1 到 65535 之间。名称必须是 IANA_SVC_NAME。 |
|
| 用于连接到主机的方案。默认为 HTTP。 |
8.1.202. .spec.initContainers[].livenessProbe.httpGet.httpHeaders
- 描述
- 在请求中设置的自定义标头。HTTP 允许重复的标头。
- 类型
-
array
8.1.203. .spec.initContainers[].livenessProbe.httpGet.httpHeaders[]
- 描述
- HTTPHeader 描述了在 HTTP 探测中使用的自定义标头
- 类型
-
object
- 必填
-
name
-
value
-
属性 | 类型 | 描述 |
---|---|---|
|
| 标头字段名称。这将在输出时规范,因此理解 case-variant 名称与相同的标头一样。 |
|
| 标头字段值 |
8.1.204. .spec.initContainers[].livenessProbe.tcpSocket
- 描述
- tcpSocket 指定涉及 TCP 端口的操作。
- 类型
-
object
- 必填
-
port
-
属性 | 类型 | 描述 |
---|---|---|
|
| 可选:要连接到的主机名,默认为 pod IP。 |
|
| 用于访问容器的端口的编号或名称。number 必须在 1 到 65535 之间。名称必须是 IANA_SVC_NAME。 |
8.1.205. .spec.initContainers[].ports
- 描述
- 从容器公开的端口列表。这里没有指定端口不会阻止公开该端口。所有正在侦听容器内默认"0.0.0.0"地址的端口均可从网络访问。使用策略合并补丁修改阵列可能会破坏数据。如需更多信息,请参阅 https://github.com/kubernetes/kubernetes/issues/108255。无法更新。
- 类型
-
array
8.1.206. .spec.initContainers[].ports[]
- 描述
- containerPort 代表单个容器中的网络端口。
- 类型
-
object
- 必填
-
containerPort
-
属性 | 类型 | 描述 |
---|---|---|
|
| pod IP 地址上公开的端口号。这必须是有效的端口号 0 < x < 65536。 |
|
| 将外部端口绑定到的主机 IP。 |
|
| 主机上公开的端口号。如果指定,这必须是有效的端口号 0 < x < 65536。如果指定了 HostNetwork,它必须与 ContainerPort 匹配。大多数容器都不需要这样做。 |
|
| 如果指定,这必须是 IANA_SVC_NAME,在 pod 中唯一。pod 中的每个命名端口都必须具有唯一的名称。服务可以引用的端口的名称。 |
|
| 端口的协议。必须是 UDP、TCP 或 SCTP。默认为 "TCP"。 |
8.1.207. .spec.initContainers[].readinessProbe
- 描述
- 容器服务的定期探测到就绪状态。如果探测失败,容器将从服务端点中删除。无法更新。更多信息: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes
- 类型
-
object
属性 | 类型 | 描述 |
---|---|---|
|
| exec 指定要执行的操作。 |
|
| 在成功后,探测被视为失败的最小连续失败。默认值为 3。最小值为 1。 |
|
| GRPC 指定涉及 GRPC 端口的操作。 |
|
| httpGet 指定要执行的 http 请求。 |
|
| 容器启动存活度探测前的秒数。更多信息: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes |
|
| 执行探测的频率(以秒为单位)。默认值为 10 秒。最小值为 1。 |
|
| 在失败后,探测至少连续成功会被视为成功。默认为 1。对于存活度和启动,必须为 1。最小值为 1。 |
|
| tcpSocket 指定涉及 TCP 端口的操作。 |
|
| pod 在探测失败时安全终止所需的可选持续时间(以秒为单位)。宽限期是 pod 中运行的进程发送终止信号和进程被强制停止使用 kill 信号的时间(以秒为单位)。为您的进程设置这个值超过预期清理时间。如果这个值是 nil,则使用 pod 的 terminationGracePeriodSeconds。否则,这个值会覆盖 pod 规格提供的值。值必须是非负整数。值为零表示立即通过终止信号停止(没有关闭的机会)。这是一个 beta 字段,需要启用 ProbeTerminationGracePeriod 功能门。如果未设置,则使用最小值为 1. spec.terminationGracePeriodSeconds。 |
|
| 探测超时的秒数。默认值为 1 秒。最小值为 1。更多信息: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes |
8.1.208. .spec.initContainers[].readinessProbe.exec
- 描述
- exec 指定要执行的操作。
- 类型
-
object
属性 | 类型 | 描述 |
---|---|---|
|
| 命令是在容器内执行的命令行,而 命令的工作目录是容器文件系统中的 root ('/')。命令只是 exec'd,它不会在 shell 中运行,因此传统的 shell 指令('|' 等)将无法工作。要使用 shell,您需要明确调用该 shell。0 的退出状态被视为 live/healthy,非零不健康。 |
8.1.209. .spec.initContainers[].readinessProbe.grpc
- 描述
- GRPC 指定涉及 GRPC 端口的操作。
- 类型
-
object
- 必填
-
port
-
属性 | 类型 | 描述 |
---|---|---|
|
| gRPC 服务的端口号。number 必须在 1 到 65535 之间。 |
|
| service 是要放入 gRPC HealthCheckRequest 中的服务名称(请参阅 https://github.com/grpc/grpc/blob/master/doc/health-checking.md)。 如果没有指定,则默认行为由 gRPC 定义。 |
8.1.210. .spec.initContainers[].readinessProbe.httpGet
- 描述
- httpGet 指定要执行的 http 请求。
- 类型
-
object
- 必填
-
port
-
属性 | 类型 | 描述 |
---|---|---|
|
| 要连接到的主机名,默认为 pod IP。您可能想在 httpHeaders 中设置"主机"。 |
|
| 在请求中设置的自定义标头。HTTP 允许重复的标头。 |
|
| HTTPHeader 描述了在 HTTP 探测中使用的自定义标头 |
|
| 在 HTTP 服务器上访问的路径。 |
|
| 用于访问容器的端口的名称或编号。number 必须在 1 到 65535 之间。名称必须是 IANA_SVC_NAME。 |
|
| 用于连接到主机的方案。默认为 HTTP。 |
8.1.211. .spec.initContainers[].readinessProbe.httpGet.httpHeaders
- 描述
- 在请求中设置的自定义标头。HTTP 允许重复的标头。
- 类型
-
array
8.1.212. .spec.initContainers[].readinessProbe.httpGet.httpHeaders[]
- 描述
- HTTPHeader 描述了在 HTTP 探测中使用的自定义标头
- 类型
-
object
- 必填
-
name
-
value
-
属性 | 类型 | 描述 |
---|---|---|
|
| 标头字段名称。这将在输出时规范,因此理解 case-variant 名称与相同的标头一样。 |
|
| 标头字段值 |
8.1.213. .spec.initContainers[].readinessProbe.tcpSocket
- 描述
- tcpSocket 指定涉及 TCP 端口的操作。
- 类型
-
object
- 必填
-
port
-
属性 | 类型 | 描述 |
---|---|---|
|
| 可选:要连接到的主机名,默认为 pod IP。 |
|
| 用于访问容器的端口的编号或名称。number 必须在 1 到 65535 之间。名称必须是 IANA_SVC_NAME。 |
8.1.214. .spec.initContainers[].resizePolicy
- 描述
- 容器的资源重新定义策略。
- 类型
-
数组
8.1.215. .spec.initContainers[].resizePolicy[]
- 描述
- ContainerResizePolicy 代表容器的资源重新定义策略。
- 类型
-
object
- 必填
-
resourceName
-
restartPolicy
-
属性 | 类型 | 描述 |
---|---|---|
|
| 此资源重新定义策略应用到的资源的名称。支持的值有:cpu、memory。 |
|
| 在指定资源调整大小时,重启策略会被应用。如果没有指定,则默认为 NotRequired。 |
8.1.216. .spec.initContainers[].resources
- 描述
- 此容器所需的计算资源。无法更新。更多信息: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/
- 类型
-
object
属性 | 类型 | 描述 |
---|---|---|
|
| claim 列出此容器使用的 spec.resourceClaims 中定义的资源名称。 这是一个 alpha 字段,需要启用 DynamicResourceAllocation 功能门。 此字段不可变。它只能为容器设置。 |
|
| ResourceClaim 引用 PodSpec.ResourceClaims 中的一个条目。 |
|
| 限制描述了允许的最大计算资源量。更多信息: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/ |
|
| Requests 描述了所需的最少计算资源。如果容器省略了 Requests,则默认为 Limits (如果明确指定),否则默认为实现定义的值。请求不能超过限值。更多信息: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/ |
8.1.217. .spec.initContainers[].resources.claims
- 描述
claim 列出此容器使用的 spec.resourceClaims 中定义的资源名称。
这是一个 alpha 字段,需要启用 DynamicResourceAllocation 功能门。
此字段不可变。它只能为容器设置。
- 类型
-
数组
8.1.218. .spec.initContainers[].resources.claims[]
- 描述
- ResourceClaim 引用 PodSpec.ResourceClaims 中的一个条目。
- 类型
-
object
- 必填
-
name
-
属性 | 类型 | 描述 |
---|---|---|
|
| name 必须与使用此字段的 Pod 的 pod.spec.resourceClaims 中的一个条目的名称匹配。它允许容器内部使用该资源。 |
8.1.219. .spec.initContainers[].securityContext
- 描述
- securityContext 定义容器应运行的安全选项。如果设置,SecurityContext 的字段会覆盖 PodSecurityContext 的等效字段。更多信息: https://kubernetes.io/docs/tasks/configure-pod-container/security-context/
- 类型
-
object
属性 | 类型 | 描述 |
---|---|---|
|
| allowPrivilegeEscalation 控制进程是否可以比其父进程获得更多特权。此 bool 直接控制容器进程上是否设置了 no_new_privs 标志。当容器是 : 1)作为 CAP_SYS_ADMIN 具有 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 时无法设置此字段。 |
|
| 此容器是否具有只读 root 文件系统。默认为 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 选项。如果 seccomp 选项同时在 pod 和容器级别上提供,则容器选项会覆盖 pod 选项。请注意,当 spec.os.name 是 windows 时无法设置此字段。 |
|
| 应用到所有容器的 Windows 特定设置。如果未指定,则使用 PodSecurityContext 中的选项。如果在 SecurityContext 和 PodSecurityContext 中设置,则 SecurityContext 中指定的值具有优先权。请注意,当 spec.os.name 是 linux 时,不能设置此字段。 |
8.1.220. .spec.initContainers[].securityContext.appArmorProfile
- 描述
- appArmorProfile 是此容器使用的 AppArmor 选项。如果设置,此配置集会覆盖 pod 的 appArmorProfile。请注意,当 spec.os.name 是 windows 时无法设置此字段。
- 类型
-
object
- 必填
-
type
-
属性 | 类型 | 描述 |
---|---|---|
|
| localhostProfile 表示节点上载入的配置集。该配置集必须在节点上预先配置才能正常工作。必须与配置文件的加载名称匹配。只在 type 为 "Localhost" 时,才应设置。 |
|
| Type 表示将应用哪些类型的 AppArmor 配置集。有效选项包括: Localhost - 节点上的配置文件预加载。RuntimeDefault - 容器运行时的默认配置集。unconfined - 无 AppArmor 强制。 |
8.1.221. .spec.initContainers[].securityContext.capabilities
- 描述
- 运行容器时添加/丢弃的功能。默认为容器运行时授予的默认功能集。请注意,当 spec.os.name 是 windows 时无法设置此字段。
- 类型
-
object
属性 | 类型 | 描述 |
---|---|---|
|
| 添加了功能 |
|
| 删除的功能 |
8.1.222. .spec.initContainers[].securityContext.seLinuxOptions
- 描述
- 要应用到容器的 SELinux 上下文。如果未指定,容器运行时将为每个容器分配一个随机 SELinux 上下文。也可以在 PodSecurityContext 中设置。如果在 SecurityContext 和 PodSecurityContext 中设置,则 SecurityContext 中指定的值具有优先权。请注意,当 spec.os.name 是 windows 时无法设置此字段。
- 类型
-
object
属性 | 类型 | 描述 |
---|---|---|
|
| level 是适用于容器的 SELinux 级别标签。 |
|
| role 是适用于容器的 SELinux 角色标签。 |
|
| type 是适用于容器的 SELinux 类型标签。 |
|
| user 是适用于容器的 SELinux 用户标签。 |
8.1.223. .spec.initContainers[].securityContext.seccompProfile
- 描述
- 此容器使用的 seccomp 选项。如果 seccomp 选项同时在 pod 和容器级别上提供,则容器选项会覆盖 pod 选项。请注意,当 spec.os.name 是 windows 时无法设置此字段。
- 类型
-
object
- 必填
-
type
-
属性 | 类型 | 描述 |
---|---|---|
|
| localhostProfile 表示应使用节点上文件中定义的配置集。该配置集必须在节点上预先配置才能正常工作。必须是一个降序路径,相对于 kubelet 配置的 seccomp 配置集位置。如果类型为"Localhost",则必须设置。不得为任何其他类型设置。 |
|
| Type 表示将应用了哪些 seccomp 配置集。有效选项有: localhost - 应该使用节点上文件中定义的配置文件。RuntimeDefault - 应使用容器运行时默认配置集。unconfined - 不应应用配置集。 |
8.1.224. .spec.initContainers[].securityContext.windowsOptions
- 描述
- 应用到所有容器的 Windows 特定设置。如果未指定,则使用 PodSecurityContext 中的选项。如果在 SecurityContext 和 PodSecurityContext 中设置,则 SecurityContext 中指定的值具有优先权。请注意,当 spec.os.name 是 linux 时,不能设置此字段。
- 类型
-
object
属性 | 类型 | 描述 |
---|---|---|
|
| GMSACredentialSpec 是 GMSA 准入 Webhook (https://github.com/kubernetes-sigs/windows-gmsa)内联由 GMSACredentialSpec 命名的 GMSA 凭证规格的内容。 |
|
| GMSACredentialSpecName 是要使用的 GMSA 凭证规格的名称。 |
|
| HostProcess 确定容器是否应作为"主机进程"容器运行。所有 Pod 的容器都必须具有相同的有效的 HostProcess 值(不允许混合 HostProcess 容器和非主机进程容器)。另外,如果 HostProcess 为 true,则 HostNetwork 也必须设置为 true。 |
|
| Windows 中的 UserName,以运行容器进程的入口点。如果未指定,则默认为在镜像元数据中指定的用户。也可以在 PodSecurityContext 中设置。如果在 SecurityContext 和 PodSecurityContext 中设置,则 SecurityContext 中指定的值具有优先权。 |
8.1.225. .spec.initContainers[].startupProbe
- 描述
- startupProbe 表示 Pod 已成功初始化。如果指定,则不会执行其他探测,直到成功完成为止。如果这个探测失败,则 Pod 将重启,就像 livenessProbe 失败一样。这可用于在 Pod 生命周期开始时提供不同的探测参数,当可能需要很长时间才能加载数据或温缓存时,而不是在 steady-state 操作过程中提供不同的探测参数。这不能更新。更多信息: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes
- 类型
-
object
属性 | 类型 | 描述 |
---|---|---|
|
| exec 指定要执行的操作。 |
|
| 在成功后,探测被视为失败的最小连续失败。默认值为 3。最小值为 1。 |
|
| GRPC 指定涉及 GRPC 端口的操作。 |
|
| httpGet 指定要执行的 http 请求。 |
|
| 容器启动存活度探测前的秒数。更多信息: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes |
|
| 执行探测的频率(以秒为单位)。默认值为 10 秒。最小值为 1。 |
|
| 在失败后,探测至少连续成功会被视为成功。默认为 1。对于存活度和启动,必须为 1。最小值为 1。 |
|
| tcpSocket 指定涉及 TCP 端口的操作。 |
|
| pod 在探测失败时安全终止所需的可选持续时间(以秒为单位)。宽限期是 pod 中运行的进程发送终止信号和进程被强制停止使用 kill 信号的时间(以秒为单位)。为您的进程设置这个值超过预期清理时间。如果这个值是 nil,则使用 pod 的 terminationGracePeriodSeconds。否则,这个值会覆盖 pod 规格提供的值。值必须是非负整数。值为零表示立即通过终止信号停止(没有关闭的机会)。这是一个 beta 字段,需要启用 ProbeTerminationGracePeriod 功能门。如果未设置,则使用最小值为 1. spec.terminationGracePeriodSeconds。 |
|
| 探测超时的秒数。默认值为 1 秒。最小值为 1。更多信息: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes |
8.1.226. .spec.initContainers[].startupProbe.exec
- 描述
- exec 指定要执行的操作。
- 类型
-
object
属性 | 类型 | 描述 |
---|---|---|
|
| 命令是在容器内执行的命令行,而 命令的工作目录是容器文件系统中的 root ('/')。命令只是 exec'd,它不会在 shell 中运行,因此传统的 shell 指令('|' 等)将无法工作。要使用 shell,您需要明确调用该 shell。0 的退出状态被视为 live/healthy,非零不健康。 |
8.1.227. .spec.initContainers[].startupProbe.grpc
- 描述
- GRPC 指定涉及 GRPC 端口的操作。
- 类型
-
object
- 必填
-
port
-
属性 | 类型 | 描述 |
---|---|---|
|
| gRPC 服务的端口号。number 必须在 1 到 65535 之间。 |
|
| service 是要放入 gRPC HealthCheckRequest 中的服务名称(请参阅 https://github.com/grpc/grpc/blob/master/doc/health-checking.md)。 如果没有指定,则默认行为由 gRPC 定义。 |
8.1.228. .spec.initContainers[].startupProbe.httpGet
- 描述
- httpGet 指定要执行的 http 请求。
- 类型
-
object
- 必填
-
port
-
属性 | 类型 | 描述 |
---|---|---|
|
| 要连接到的主机名,默认为 pod IP。您可能想在 httpHeaders 中设置"主机"。 |
|
| 在请求中设置的自定义标头。HTTP 允许重复的标头。 |
|
| HTTPHeader 描述了在 HTTP 探测中使用的自定义标头 |
|
| 在 HTTP 服务器上访问的路径。 |
|
| 用于访问容器的端口的名称或编号。number 必须在 1 到 65535 之间。名称必须是 IANA_SVC_NAME。 |
|
| 用于连接到主机的方案。默认为 HTTP。 |
8.1.229. .spec.initContainers[].startupProbe.httpGet.httpHeaders
- 描述
- 在请求中设置的自定义标头。HTTP 允许重复的标头。
- 类型
-
array
8.1.230. .spec.initContainers[].startupProbe.httpGet.httpHeaders[]
- 描述
- HTTPHeader 描述了在 HTTP 探测中使用的自定义标头
- 类型
-
object
- 必填
-
name
-
value
-
属性 | 类型 | 描述 |
---|---|---|
|
| 标头字段名称。这将在输出时规范,因此理解 case-variant 名称与相同的标头一样。 |
|
| 标头字段值 |
8.1.231. .spec.initContainers[].startupProbe.tcpSocket
- 描述
- tcpSocket 指定涉及 TCP 端口的操作。
- 类型
-
object
- 必填
-
port
-
属性 | 类型 | 描述 |
---|---|---|
|
| 可选:要连接到的主机名,默认为 pod IP。 |
|
| 用于访问容器的端口的编号或名称。number 必须在 1 到 65535 之间。名称必须是 IANA_SVC_NAME。 |
8.1.232. .spec.initContainers[].volumeDevices
- 描述
- volumeDevices 是容器要使用的块设备列表。
- 类型
-
array
8.1.233. .spec.initContainers[].volumeDevices[]
- 描述
- volumeDevice 描述了容器中原始块设备的映射。
- 类型
-
object
- 必填
-
devicePath
-
name
-
属性 | 类型 | 描述 |
---|---|---|
|
| DevicePath 是该设备要映射到的容器内的路径。 |
|
| name 必须与 pod 中 persistentVolumeClaim 的名称匹配 |
8.1.234. .spec.initContainers[].volumeMounts
- 描述
- 要挂载到容器文件系统的 Pod 卷。无法更新。
- 类型
-
array
8.1.235. .spec.initContainers[].volumeMounts[]
- 描述
- VolumeMount 描述了容器内卷挂载。
- 类型
-
object
- 必填
-
mountPath
-
name
-
属性 | 类型 | 描述 |
---|---|---|
|
| 应挂载卷的容器中的路径。不得包含 ':'。 |
|
| mountPropagation 决定挂载如何从主机传播到容器以及反向传播。如果没有设置,则使用 MountPropagationNone。此字段在 1.10 中是 beta。当 RecursiveReadOnly 设置为 IfPossible 或 Enabled 时,mountPropagation 必须是 None 或未指定(默认为 None)。 |
|
| 这必须与卷的 Name 匹配。 |
|
| 如果为 true,则以只读方式挂载,否则读写(false 或未指定)。默认为false。 |
|
| RecursiveReadOnly 指定是否应递归处理只读挂载。 如果 ReadOnly 为 false,则此字段没有意义,必须未指定。 如果 ReadOnly 为 true,且此字段设置为 Disabled,则不会递归只读挂载。如果将此字段设置为 IfPossible,则挂载将递归只读(如果容器运行时支持)。如果此字段设置为 Enabled,则挂载将在容器运行时支持时递归只读,否则不会启动 pod,并生成错误来指示原因。 如果将此字段设置为 IfPossible 或 Enabled,则 MountPropagation 必须设为 None (或未指定,默认为 None)。 如果没有指定此字段,它将被视为与 Disabled 的等效值。 |
|
| 应从中挂载容器卷的卷中的路径。默认为 "" (卷的 root)。 |
|
| 在应该挂载容器卷的卷中扩展路径。行为与 SubPath 类似,但环境变量引用 $(VAR_NAME)使用容器的环境扩展。默认为 "" (卷的 root)。SubPathExpr 和 SubPath 是互斥的。 |
8.1.236. .spec.persistentVolumeClaimRetentionPolicy
- 描述
- 字段控制 StatefulSet 生命周期中是否和如何删除 PVC。所有 PVC 的默认行为都会被保留。这是 kubernetes 1.23 的 alpha 字段,直到 1.26 和来自 1.26 的 beta 字段。它需要启用 StatefulSetAutoDeletePVC 功能门。
- 类型
-
object
属性 | 类型 | 描述 |
---|---|---|
|
|
WhenDeleted 指定在 StatefulSet 被删除时从 StatefulSet VolumeClaimTemplates 创建的 PVC 发生的情况。 |
|
|
WhenScaled 指定在 StatefulSet 缩减时从 StatefulSet VolumeClaimTemplates 创建的 PVC 发生的情况。 |
8.1.237. .spec.podMetadata
- 描述
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" annotation, set to "prometheus".
- 类型
-
object
属性 | 类型 | 描述 |
---|---|---|
|
| annotations 是一个无结构的键值映射,它存储有资源,可通过外部工具存储和检索任意元数据。它们不可查询,应在修改对象时保留。更多信息: http://kubernetes.io/docs/user-guide/annotations |
|
| 可用于组织和分类(范围和选择)对象的字符串键和值映射。可能与复制控制器和服务选择器匹配。更多信息: http://kubernetes.io/docs/user-guide/labels |
|
| 名称在命名空间中必须是唯一的。创建资源时需要一些资源,但有些资源可能会允许客户端自动请求生成适当名称。name 主要用于创建 idempotence 和配置定义。无法更新。更多信息: http://kubernetes.io/docs/user-guide/identifiers#names |
8.1.238. .spec.podMonitorNamespaceSelector
- 描述
- 用于与 PodMonitor 发现匹配的命名空间。空标签选择器与所有命名空间匹配。null 标签选择器(默认值)仅与当前命名空间匹配。
- 类型
-
object
属性 | 类型 | 描述 |
---|---|---|
|
| matchExpressions 是标签选择器要求列表。要求的逻辑关系是 AND。 |
|
| 标签选择器要求是一个选择器,其中包含与键和值相关的值、键和值。 |
|
| matchLabels 是 {key,value} 对的映射。MatchLabels 映射中的单个 {key,value} 等同于 matchExpressions 的一个元素,其 key 字段是 "key",运算符是 "In",值数组仅包含 "value"。要求的逻辑关系是 AND。 |
8.1.239. .spec.podMonitorNamespaceSelector.matchExpressions
- 描述
- matchExpressions 是标签选择器要求列表。要求的逻辑关系是 AND。
- 类型
-
array
8.1.240. .spec.podMonitorNamespaceSelector.matchExpressions[]
- 描述
- 标签选择器要求是一个选择器,其中包含与键和值相关的值、键和值。
- 类型
-
object
- 必填
-
key
-
operator
-
属性 | 类型 | 描述 |
---|---|---|
|
| key 是选择器应用到的标签键。 |
|
| 运算符代表一个键与一组值的关系。有效的运算符是 In、NotIn、Exists 和 DoesNotExist。 |
|
| 值是字符串值的数组。如果运算符是 In 或 NotIn,则值数组必须是非空的。如果运算符是 Exists 或 DoesNotExist,则值数组必须为空。这个数组会在策略性合并补丁中被替换。 |
8.1.241. .spec.podMonitorSelector
- 描述
为目标发现选择 PodMonitor。空标签选择器匹配所有对象。null 标签选择器不匹配任何对象。
如果
spec.serviceMonitorSelector
,spec.podMonitorSelector
,spec.probeSelector
和spec.scrapeConfigSelector
为 null,则 Prometheus 配置为非受管。Prometheus operator 将确保 Prometheus 配置的 Secret 存在,但负责用户在prometheus.yaml.gz
键下提供原始 gzip Prometheus 配置。这个行为 已弃用,并将在自定义资源定义的下一个主版本中删除。建议您使用spec.additionalScrapeConfigs
替代。- 类型
-
object
属性 | 类型 | 描述 |
---|---|---|
|
| matchExpressions 是标签选择器要求列表。要求的逻辑关系是 AND。 |
|
| 标签选择器要求是一个选择器,其中包含与键和值相关的值、键和值。 |
|
| matchLabels 是 {key,value} 对的映射。MatchLabels 映射中的单个 {key,value} 等同于 matchExpressions 的一个元素,其 key 字段是 "key",运算符是 "In",值数组仅包含 "value"。要求的逻辑关系是 AND。 |
8.1.242. .spec.podMonitorSelector.matchExpressions
- 描述
- matchExpressions 是标签选择器要求列表。要求的逻辑关系是 AND。
- 类型
-
array
8.1.243. .spec.podMonitorSelector.matchExpressions[]
- 描述
- 标签选择器要求是一个选择器,其中包含与键和值相关的值、键和值。
- 类型
-
object
- 必填
-
key
-
operator
-
属性 | 类型 | 描述 |
---|---|---|
|
| key 是选择器应用到的标签键。 |
|
| 运算符代表一个键与一组值的关系。有效的运算符是 In、NotIn、Exists 和 DoesNotExist。 |
|
| 值是字符串值的数组。如果运算符是 In 或 NotIn,则值数组必须是非空的。如果运算符是 Exists 或 DoesNotExist,则值数组必须为空。这个数组会在策略性合并补丁中被替换。 |
8.1.244. .spec.probeNamespaceSelector
- 描述
- 要与探测发现匹配的命名空间。空标签选择器与所有命名空间匹配。null 标签选择器仅与当前命名空间匹配。
- 类型
-
object
属性 | 类型 | 描述 |
---|---|---|
|
| matchExpressions 是标签选择器要求列表。要求的逻辑关系是 AND。 |
|
| 标签选择器要求是一个选择器,其中包含与键和值相关的值、键和值。 |
|
| matchLabels 是 {key,value} 对的映射。MatchLabels 映射中的单个 {key,value} 等同于 matchExpressions 的一个元素,其 key 字段是 "key",运算符是 "In",值数组仅包含 "value"。要求的逻辑关系是 AND。 |
8.1.245. .spec.probeNamespaceSelector.matchExpressions
- 描述
- matchExpressions 是标签选择器要求列表。要求的逻辑关系是 AND。
- 类型
-
array
8.1.246. .spec.probeNamespaceSelector.matchExpressions[]
- 描述
- 标签选择器要求是一个选择器,其中包含与键和值相关的值、键和值。
- 类型
-
object
- 必填
-
key
-
operator
-
属性 | 类型 | 描述 |
---|---|---|
|
| key 是选择器应用到的标签键。 |
|
| 运算符代表一个键与一组值的关系。有效的运算符是 In、NotIn、Exists 和 DoesNotExist。 |
|
| 值是字符串值的数组。如果运算符是 In 或 NotIn,则值数组必须是非空的。如果运算符是 Exists 或 DoesNotExist,则值数组必须为空。这个数组会在策略性合并补丁中被替换。 |
8.1.247. .spec.probeSelector
- 描述
为目标发现选择的探测。空标签选择器匹配所有对象。null 标签选择器不匹配任何对象。
如果
spec.serviceMonitorSelector
,spec.podMonitorSelector
,spec.probeSelector
和spec.scrapeConfigSelector
为 null,则 Prometheus 配置为非受管。Prometheus operator 将确保 Prometheus 配置的 Secret 存在,但负责用户在prometheus.yaml.gz
键下提供原始 gzip Prometheus 配置。这个行为 已弃用,并将在自定义资源定义的下一个主版本中删除。建议您使用spec.additionalScrapeConfigs
替代。- 类型
-
object
属性 | 类型 | 描述 |
---|---|---|
|
| matchExpressions 是标签选择器要求列表。要求的逻辑关系是 AND。 |
|
| 标签选择器要求是一个选择器,其中包含与键和值相关的值、键和值。 |
|
| matchLabels 是 {key,value} 对的映射。MatchLabels 映射中的单个 {key,value} 等同于 matchExpressions 的一个元素,其 key 字段是 "key",运算符是 "In",值数组仅包含 "value"。要求的逻辑关系是 AND。 |
8.1.248. .spec.probeSelector.matchExpressions
- 描述
- matchExpressions 是标签选择器要求列表。要求的逻辑关系是 AND。
- 类型
-
array
8.1.249. .spec.probeSelector.matchExpressions[]
- 描述
- 标签选择器要求是一个选择器,其中包含与键和值相关的值、键和值。
- 类型
-
object
- 必填
-
key
-
operator
-
属性 | 类型 | 描述 |
---|---|---|
|
| key 是选择器应用到的标签键。 |
|
| 运算符代表一个键与一组值的关系。有效的运算符是 In、NotIn、Exists 和 DoesNotExist。 |
|
| 值是字符串值的数组。如果运算符是 In 或 NotIn,则值数组必须是非空的。如果运算符是 Exists 或 DoesNotExist,则值数组必须为空。这个数组会在策略性合并补丁中被替换。 |
8.1.250. .spec.prometheusRulesExcludedFromEnforce
- 描述
-
定义命名空间标签强制不应用到的 PrometheusRule 对象列表。这只有在
spec.enforcedNamespaceLabel
设置为 true 时才相关。deprecated: 使用spec.excludedFromEnforcement
替代。 - 类型
-
array
8.1.251. .spec.prometheusRulesExcludedFromEnforce[]
- 描述
- PrometheusRuleExcludeConfig 允许用户配置排除的 PrometheusRule 名称及其命名空间,同时为警报和指标强制执行命名空间标签。
- 类型
-
object
- 必填
-
ruleName
-
ruleNamespace
-
属性 | 类型 | 描述 |
---|---|---|
|
| 排除的 PrometheusRule 对象的名称。 |
|
| 排除的 PrometheusRule 对象的命名空间。 |
8.1.252. .spec.query
- 描述
- QuerySpec 定义 Promethus 查询服务的配置。
- 类型
-
object
属性 | 类型 | 描述 |
---|---|---|
|
| 在表达式评估期间检索指标允许的增量差异。 |
|
| 可以同时运行的并发查询数。 |
|
| 单个查询可以加载到内存的最大样本数。请注意,如果查询会加载比这个内存更多的样本,则查询将失败,因此还限制了查询可以返回的示例数量。 |
|
| 查询在中止前可以花费的最长时间。 |
8.1.253. .spec.remoteRead
- 描述
- 定义远程读取配置的列表。
- 类型
-
array
8.1.254. .spec.remoteRead[]
- 描述
- RemoteReadSpec 定义 Prometheus 的配置,以从远程端点读取后端示例。
- 类型
-
object
- 必填
-
url
-
属性 | 类型 | 描述 |
---|---|---|
|
| URL 的授权部分。 它需要 Prometheus >= v2.26.0。
不可与 |
|
| URL 的 basicAuth 配置。
不可 |
|
|
警告:不应使用这个字段,因为令牌值会出现在明文中。首选使用 弃用:这会在以后的版本中删除。 |
|
| 从中读取 URL 的 bearer 令牌的文件。
弃用:这会在以后的版本中删除。首选使用 |
|
| 是否将外部标签用作远程读取端点的选择器。 它需要 Prometheus >= v2.34.0。 |
|
| 配置 HTTP 请求是否遵循 HTTP 3xx 重定向。 它需要 Prometheus >= v2.26.0。 |
|
| 要与每个远程读取请求一起发送的自定义 HTTP 标头。请注意,由 Prometheus 本身设置的标头无法覆盖。仅在 Prometheus 版本 2.26.0 及更新版本中有效。 |
|
| 远程读取队列的名称,如果指定,它必须是唯一的。名称用于指标并登录,以区分读取配置。 它需要 Prometheus >= v2.15.0。 |
|
|
它需要 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。 |
|
|
它需要 Prometheus >= v2.43.0。 |
|
| 是否应该对本地存储应具有完整数据的查询进行读取。 |
|
| 对远程读取端点的请求超时。 |
|
| 可选的 equality matchers 列表,必须存在于选择器中才能查询远程读取端点。 |
|
| 用于 URL 的 TLS 配置。 |
|
| 要查询的端点的 URL。 |
8.1.255. .spec.remoteRead[].authorization
- 描述
URL 的授权部分。
它需要 Prometheus >= v2.26.0。
不可与
basicAuth
或oauth2
同时设置。- 类型
-
object
属性 | 类型 | 描述 |
---|---|---|
|
| 选择命名空间中包含用于身份验证的凭证的 Secret 的键。 |
|
|
从中读取 secret 的文件,与 |
|
| 定义身份验证类型。该值不区分大小写。 "basic"不是受支持的值。 默认:"Bearer" |
8.1.256. .spec.remoteRead[].authorization.credentials
- 描述
- 选择命名空间中包含用于身份验证的凭证的 Secret 的键。
- 类型
-
object
- 必填
-
key
-
属性 | 类型 | 描述 |
---|---|---|
|
| 要从中选择的 secret 的密钥。必须是一个有效的 secret 密钥。 |
|
|
引用的名称。有效地需要此字段,但因为允许向后兼容为空。这里具有空值的此类实例几乎是错误的。TODO:添加其他有用的字段。apiVersion、kind、uid?更多信息: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names TODO: 当 controller-gen 不需要 https://github.com/kubernetes-sigs/kubebuilder/issues/3896 时,Drop |
|
| 指定是否需要定义 Secret 还是其密钥 |
8.1.257. .spec.remoteRead[].basicAuth
- 描述
URL 的 basicAuth 配置。
不可
与授权
(或oauth2)
同时设置。- 类型
-
object
属性 | 类型 | 描述 |
---|---|---|
|
|
|
|
|
|
8.1.258. .spec.remoteRead[].basicAuth.password
- 描述
-
password
指定包含用于身份验证的密码的 Secret 的键。 - 类型
-
object
- 必填
-
key
-
属性 | 类型 | 描述 |
---|---|---|
|
| 要从中选择的 secret 的密钥。必须是一个有效的 secret 密钥。 |
|
|
引用的名称。有效地需要此字段,但因为允许向后兼容为空。这里具有空值的此类实例几乎是错误的。TODO:添加其他有用的字段。apiVersion、kind、uid?更多信息: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names TODO: 当 controller-gen 不需要 https://github.com/kubernetes-sigs/kubebuilder/issues/3896 时,Drop |
|
| 指定是否需要定义 Secret 还是其密钥 |
8.1.259. .spec.remoteRead[].basicAuth.username
- 描述
-
username
指定包含用于身份验证的用户名的 Secret 的键。 - 类型
-
object
- 必填
-
key
-
属性 | 类型 | 描述 |
---|---|---|
|
| 要从中选择的 secret 的密钥。必须是一个有效的 secret 密钥。 |
|
|
引用的名称。有效地需要此字段,但因为允许向后兼容为空。这里具有空值的此类实例几乎是错误的。TODO:添加其他有用的字段。apiVersion、kind、uid?更多信息: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names TODO: 当 controller-gen 不需要 https://github.com/kubernetes-sigs/kubebuilder/issues/3896 时,Drop |
|
| 指定是否需要定义 Secret 还是其密钥 |
8.1.260. .spec.remoteRead[].oauth2
- 描述
URL 的 OAuth2 配置。
它需要 Prometheus >= v2.27.0。
不可与授权同时设置,或者
basicAuth
。- 类型
-
object
- 必填
-
clientId
-
clientSecret
-
tokenUrl
-
属性 | 类型 | 描述 |
---|---|---|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
8.1.261. .spec.remoteRead[].oauth2.clientId
- 描述
-
clientId
指定包含 OAuth2 客户端 ID 的 Secret 或 ConfigMap 的键。 - 类型
-
object
属性 | 类型 | 描述 |
---|---|---|
|
| 包含用于目标的数据的 ConfigMap。 |
|
| 包含用于目标的数据的 secret。 |
8.1.262. .spec.remoteRead[].oauth2.clientId.configMap
- 描述
- 包含用于目标的数据的 ConfigMap。
- 类型
-
object
- 必填
-
key
-
属性 | 类型 | 描述 |
---|---|---|
|
| 要选择的密钥。 |
|
|
引用的名称。有效地需要此字段,但因为允许向后兼容为空。这里具有空值的此类实例几乎是错误的。TODO:添加其他有用的字段。apiVersion、kind、uid?更多信息: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names TODO: 当 controller-gen 不需要 https://github.com/kubernetes-sigs/kubebuilder/issues/3896 时,Drop |
|
| 指定是否必须定义 ConfigMap 还是其键 |
8.1.263. .spec.remoteRead[].oauth2.clientId.secret
- 描述
- 包含用于目标的数据的 secret。
- 类型
-
object
- 必填
-
key
-
属性 | 类型 | 描述 |
---|---|---|
|
| 要从中选择的 secret 的密钥。必须是一个有效的 secret 密钥。 |
|
|
引用的名称。有效地需要此字段,但因为允许向后兼容为空。这里具有空值的此类实例几乎是错误的。TODO:添加其他有用的字段。apiVersion、kind、uid?更多信息: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names TODO: 当 controller-gen 不需要 https://github.com/kubernetes-sigs/kubebuilder/issues/3896 时,Drop |
|
| 指定是否需要定义 Secret 还是其密钥 |
8.1.264. .spec.remoteRead[].oauth2.clientSecret
- 描述
-
clientSecret
指定包含 OAuth2 客户端 secret 的 Secret 的密钥。 - 类型
-
object
- 必填
-
key
-
属性 | 类型 | 描述 |
---|---|---|
|
| 要从中选择的 secret 的密钥。必须是一个有效的 secret 密钥。 |
|
|
引用的名称。有效地需要此字段,但因为允许向后兼容为空。这里具有空值的此类实例几乎是错误的。TODO:添加其他有用的字段。apiVersion、kind、uid?更多信息: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names TODO: 当 controller-gen 不需要 https://github.com/kubernetes-sigs/kubebuilder/issues/3896 时,Drop |
|
| 指定是否需要定义 Secret 还是其密钥 |
8.1.265. .spec.remoteRead[].proxyConnectHeader
- 描述
ProxyConnectHeader (可选)指定在 CONNECT 请求期间发送到代理的标头。
它需要 Prometheus >= v2.43.0。
- 类型
-
object
8.1.266. .spec.remoteRead[].proxyConnectHeader{}
- 描述
- 类型
-
数组
8.1.267. .spec.remoteRead[].proxyConnectHeader{}[]
- 描述
- SecretKeySelector 选择 Secret 的密钥。
- 类型
-
object
- 必填
-
key
-
属性 | 类型 | 描述 |
---|---|---|
|
| 要从中选择的 secret 的密钥。必须是一个有效的 secret 密钥。 |
|
|
引用的名称。有效地需要此字段,但因为允许向后兼容为空。这里具有空值的此类实例几乎是错误的。TODO:添加其他有用的字段。apiVersion、kind、uid?更多信息: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names TODO: 当 controller-gen 不需要 https://github.com/kubernetes-sigs/kubebuilder/issues/3896 时,Drop |
|
| 指定是否需要定义 Secret 还是其密钥 |
8.1.268. .spec.remoteRead[].tlsConfig
- 描述
- 用于 URL 的 TLS 配置。
- 类型
-
object
属性 | 类型 | 描述 |
---|---|---|
|
| 验证服务器证书时使用的证书颁发机构。 |
|
| Prometheus 容器中用于目标的 CA 证书的路径。 |
|
| 执行 client-authentication 时要出现的客户端证书。 |
|
| 目标的 Prometheus 容器中客户端证书文件的路径。 |
|
| 禁用目标证书验证。 |
|
| 目标的 Prometheus 容器中客户端密钥文件的路径。 |
|
| 包含目标客户端密钥文件的 secret。 |
|
| 用于验证目标的主机名。 |
8.1.269. .spec.remoteRead[].tlsConfig.ca
- 描述
- 验证服务器证书时使用的证书颁发机构。
- 类型
-
object
属性 | 类型 | 描述 |
---|---|---|
|
| 包含用于目标的数据的 ConfigMap。 |
|
| 包含用于目标的数据的 secret。 |
8.1.270. .spec.remoteRead[].tlsConfig.ca.configMap
- 描述
- 包含用于目标的数据的 ConfigMap。
- 类型
-
object
- 必填
-
key
-
属性 | 类型 | 描述 |
---|---|---|
|
| 要选择的密钥。 |
|
|
引用的名称。有效地需要此字段,但因为允许向后兼容为空。这里具有空值的此类实例几乎是错误的。TODO:添加其他有用的字段。apiVersion、kind、uid?更多信息: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names TODO: 当 controller-gen 不需要 https://github.com/kubernetes-sigs/kubebuilder/issues/3896 时,Drop |
|
| 指定是否必须定义 ConfigMap 还是其键 |
8.1.271. .spec.remoteRead[].tlsConfig.ca.secret
- 描述
- 包含用于目标的数据的 secret。
- 类型
-
object
- 必填
-
key
-
属性 | 类型 | 描述 |
---|---|---|
|
| 要从中选择的 secret 的密钥。必须是一个有效的 secret 密钥。 |
|
|
引用的名称。有效地需要此字段,但因为允许向后兼容为空。这里具有空值的此类实例几乎是错误的。TODO:添加其他有用的字段。apiVersion、kind、uid?更多信息: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names TODO: 当 controller-gen 不需要 https://github.com/kubernetes-sigs/kubebuilder/issues/3896 时,Drop |
|
| 指定是否需要定义 Secret 还是其密钥 |
8.1.272. .spec.remoteRead[].tlsConfig.cert
- 描述
- 执行 client-authentication 时要出现的客户端证书。
- 类型
-
object
属性 | 类型 | 描述 |
---|---|---|
|
| 包含用于目标的数据的 ConfigMap。 |
|
| 包含用于目标的数据的 secret。 |
8.1.273. .spec.remoteRead[].tlsConfig.cert.configMap
- 描述
- 包含用于目标的数据的 ConfigMap。
- 类型
-
object
- 必填
-
key
-
属性 | 类型 | 描述 |
---|---|---|
|
| 要选择的密钥。 |
|
|
引用的名称。有效地需要此字段,但因为允许向后兼容为空。这里具有空值的此类实例几乎是错误的。TODO:添加其他有用的字段。apiVersion、kind、uid?更多信息: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names TODO: 当 controller-gen 不需要 https://github.com/kubernetes-sigs/kubebuilder/issues/3896 时,Drop |
|
| 指定是否必须定义 ConfigMap 还是其键 |
8.1.274. .spec.remoteRead[].tlsConfig.cert.secret
- 描述
- 包含用于目标的数据的 secret。
- 类型
-
object
- 必填
-
key
-
属性 | 类型 | 描述 |
---|---|---|
|
| 要从中选择的 secret 的密钥。必须是一个有效的 secret 密钥。 |
|
|
引用的名称。有效地需要此字段,但因为允许向后兼容为空。这里具有空值的此类实例几乎是错误的。TODO:添加其他有用的字段。apiVersion、kind、uid?更多信息: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names TODO: 当 controller-gen 不需要 https://github.com/kubernetes-sigs/kubebuilder/issues/3896 时,Drop |
|
| 指定是否需要定义 Secret 还是其密钥 |
8.1.275. .spec.remoteRead[].tlsConfig.keySecret
- 描述
- 包含目标客户端密钥文件的 secret。
- 类型
-
object
- 必填
-
key
-
属性 | 类型 | 描述 |
---|---|---|
|
| 要从中选择的 secret 的密钥。必须是一个有效的 secret 密钥。 |
|
|
引用的名称。有效地需要此字段,但因为允许向后兼容为空。这里具有空值的此类实例几乎是错误的。TODO:添加其他有用的字段。apiVersion、kind、uid?更多信息: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names TODO: 当 controller-gen 不需要 https://github.com/kubernetes-sigs/kubebuilder/issues/3896 时,Drop |
|
| 指定是否需要定义 Secret 还是其密钥 |
8.1.276. .spec.remoteWrite
- 描述
- 定义远程写入配置的列表。
- 类型
-
array
8.1.277. .spec.remoteWrite[]
- 描述
- RemoteWriteSpec 定义将示例从 Prometheus 写入远程端点的配置。
- 类型
-
object
- 必填
-
url
-
属性 | 类型 | 描述 |
---|---|---|
|
| 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 本身设置的标头无法覆盖。 它需要 Prometheus >= v2.25.0。 |
|
| metadataConfig 配置将一系列元数据发送到远程存储。 |
|
| 远程写入队列的名称,如果指定,它必须是唯一的。名称用于指标并登录以区分队列。 它需要 Prometheus >= v2.15.0。 |
|
|
它需要 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。 |
|
|
它需要 Prometheus >= v2.43.0。 |
|
| QueueConfig 允许调整远程写入队列参数。 |
|
| 对远程写入端点的请求超时。 |
|
|
启用通过远程写入发送 exemplars。请注意,必须使用 它需要 Prometheus >= v2.27.0。 |
|
| 启用发送原生直方图,也称为通过远程写入的稀疏直方图。 它需要 Prometheus >= v2.40.0。 |
|
| Sigv4 允许为 URL 配置 AWS 的签名验证 4。 它需要 Prometheus >= v2.26.0。
不可 |
|
| 用于 URL 的 TLS 配置。 |
|
| 将示例发送到的端点的 URL。 |
|
| 远程写入重新标记配置的列表。 |
|
| RelabelConfig 允许为目标、警报、提取示例和远程写入示例动态重写标签。 更多信息: https://prometheus.io/docs/prometheus/latest/configuration/configuration/#relabel_config |
8.1.278. .spec.remoteWrite[].authorization
- 描述
URL 的授权部分。
它需要 Prometheus >= v2.26.0。
无法同时设置
sigv4
、basicAuth
、oauth2
或azureAd
。- 类型
-
object
属性 | 类型 | 描述 |
---|---|---|
|
| 选择命名空间中包含用于身份验证的凭证的 Secret 的键。 |
|
|
从中读取 secret 的文件,与 |
|
| 定义身份验证类型。该值不区分大小写。 "basic"不是受支持的值。 默认:"Bearer" |
8.1.279. .spec.remoteWrite[].authorization.credentials
- 描述
- 选择命名空间中包含用于身份验证的凭证的 Secret 的键。
- 类型
-
object
- 必填
-
key
-
属性 | 类型 | 描述 |
---|---|---|
|
| 要从中选择的 secret 的密钥。必须是一个有效的 secret 密钥。 |
|
|
引用的名称。有效地需要此字段,但因为允许向后兼容为空。这里具有空值的此类实例几乎是错误的。TODO:添加其他有用的字段。apiVersion、kind、uid?更多信息: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names TODO: 当 controller-gen 不需要 https://github.com/kubernetes-sigs/kubebuilder/issues/3896 时,Drop |
|
| 指定是否需要定义 Secret 还是其密钥 |
8.1.280. .spec.remoteWrite[].azureAd
- 描述
用于 URL 的 AzureAD。
它需要 Prometheus >= v2.45.0。
不可
与授权
、basicAuth
、oauth2
或sigv4
同时设置。- 类型
-
object
属性 | 类型 | 描述 |
---|---|---|
|
| Azure Cloud。选项为 'AzurePublic'、'AzureChina' 或 'AzureGovernment'。 |
|
|
ManagedIdentity 定义 Azure User-assigned Managed 身份。不可与 |
|
|
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。 |
8.1.281. .spec.remoteWrite[].azureAd.managedIdentity
- 描述
-
ManagedIdentity 定义 Azure User-assigned Managed 身份。不可与
oauth
或sdk
同时设置。 - 类型
-
object
- 必填
-
clientId
-
属性 | 类型 | 描述 |
---|---|---|
|
| 客户端 ID |
8.1.282. .spec.remoteWrite[].azureAd.oauth
- 描述
OAuth 定义用于验证的 oauth 配置。不可与
managedIdentity
或sdk
同时设置。它需要 Prometheus >= v2.48.0。
- 类型
-
object
- 必填
-
clientId
-
clientSecret
-
tenantId
-
属性 | 类型 | 描述 |
---|---|---|
|
|
|
|
|
|
|
|
|
8.1.283. .spec.remoteWrite[].azureAd.oauth.clientSecret
- 描述
-
clientSecret
指定包含用于身份验证的 Azure Active Directory 应用程序的客户端 secret 的 Secret 密钥。 - 类型
-
object
- 必填
-
key
-
属性 | 类型 | 描述 |
---|---|---|
|
| 要从中选择的 secret 的密钥。必须是一个有效的 secret 密钥。 |
|
|
引用的名称。有效地需要此字段,但因为允许向后兼容为空。这里具有空值的此类实例几乎是错误的。TODO:添加其他有用的字段。apiVersion、kind、uid?更多信息: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names TODO: 当 controller-gen 不需要 https://github.com/kubernetes-sigs/kubebuilder/issues/3896 时,Drop |
|
| 指定是否需要定义 Secret 还是其密钥 |
8.1.284. .spec.remoteWrite[].azureAd.sdk
- 描述
SDK 定义用于验证的 Azure SDK 配置。请参阅 https://learn.microsoft.com/en-us/azure/developer/go/azure-sdk-authentication 无法与
oauth
或managedIdentity
同时设置。它需要 Prometheus >= 2.52.0。
- 类型
-
object
属性 | 类型 | 描述 |
---|---|---|
|
|
|
8.1.285. .spec.remoteWrite[].basicAuth
- 描述
URL 的 basicAuth 配置。
无法同时设置
sigv4
、授权
、oauth2
或azureAd
。- 类型
-
object
属性 | 类型 | 描述 |
---|---|---|
|
|
|
|
|
|
8.1.286. .spec.remoteWrite[].basicAuth.password
- 描述
-
password
指定包含用于身份验证的密码的 Secret 的键。 - 类型
-
object
- 必填
-
key
-
属性 | 类型 | 描述 |
---|---|---|
|
| 要从中选择的 secret 的密钥。必须是一个有效的 secret 密钥。 |
|
|
引用的名称。有效地需要此字段,但因为允许向后兼容为空。这里具有空值的此类实例几乎是错误的。TODO:添加其他有用的字段。apiVersion、kind、uid?更多信息: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names TODO: 当 controller-gen 不需要 https://github.com/kubernetes-sigs/kubebuilder/issues/3896 时,Drop |
|
| 指定是否需要定义 Secret 还是其密钥 |
8.1.287. .spec.remoteWrite[].basicAuth.username
- 描述
-
username
指定包含用于身份验证的用户名的 Secret 的键。 - 类型
-
object
- 必填
-
key
-
属性 | 类型 | 描述 |
---|---|---|
|
| 要从中选择的 secret 的密钥。必须是一个有效的 secret 密钥。 |
|
|
引用的名称。有效地需要此字段,但因为允许向后兼容为空。这里具有空值的此类实例几乎是错误的。TODO:添加其他有用的字段。apiVersion、kind、uid?更多信息: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names TODO: 当 controller-gen 不需要 https://github.com/kubernetes-sigs/kubebuilder/issues/3896 时,Drop |
|
| 指定是否需要定义 Secret 还是其密钥 |
8.1.288. .spec.remoteWrite[].metadataConfig
- 描述
- metadataConfig 配置将一系列元数据发送到远程存储。
- 类型
-
object
属性 | 类型 | 描述 |
---|---|---|
|
| 定义是否将指标元数据发送到远程存储。 |
|
| 定义如何将指标元数据发送到远程存储的频率。 |
8.1.289. .spec.remoteWrite[].oauth2
- 描述
URL 的 OAuth2 配置。
它需要 Prometheus >= v2.27.0。
无法同时设置
sigv4
、授权
、basicAuth
或azureAd
。- 类型
-
object
- 必填
-
clientId
-
clientSecret
-
tokenUrl
-
属性 | 类型 | 描述 |
---|---|---|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
8.1.290. .spec.remoteWrite[].oauth2.clientId
- 描述
-
clientId
指定包含 OAuth2 客户端 ID 的 Secret 或 ConfigMap 的键。 - 类型
-
object
属性 | 类型 | 描述 |
---|---|---|
|
| 包含用于目标的数据的 ConfigMap。 |
|
| 包含用于目标的数据的 secret。 |
8.1.291. .spec.remoteWrite[].oauth2.clientId.configMap
- 描述
- 包含用于目标的数据的 ConfigMap。
- 类型
-
object
- 必填
-
key
-
属性 | 类型 | 描述 |
---|---|---|
|
| 要选择的密钥。 |
|
|
引用的名称。有效地需要此字段,但因为允许向后兼容为空。这里具有空值的此类实例几乎是错误的。TODO:添加其他有用的字段。apiVersion、kind、uid?更多信息: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names TODO: 当 controller-gen 不需要 https://github.com/kubernetes-sigs/kubebuilder/issues/3896 时,Drop |
|
| 指定是否必须定义 ConfigMap 还是其键 |
8.1.292. .spec.remoteWrite[].oauth2.clientId.secret
- 描述
- 包含用于目标的数据的 secret。
- 类型
-
object
- 必填
-
key
-
属性 | 类型 | 描述 |
---|---|---|
|
| 要从中选择的 secret 的密钥。必须是一个有效的 secret 密钥。 |
|
|
引用的名称。有效地需要此字段,但因为允许向后兼容为空。这里具有空值的此类实例几乎是错误的。TODO:添加其他有用的字段。apiVersion、kind、uid?更多信息: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names TODO: 当 controller-gen 不需要 https://github.com/kubernetes-sigs/kubebuilder/issues/3896 时,Drop |
|
| 指定是否需要定义 Secret 还是其密钥 |
8.1.293. .spec.remoteWrite[].oauth2.clientSecret
- 描述
-
clientSecret
指定包含 OAuth2 客户端 secret 的 Secret 的密钥。 - 类型
-
object
- 必填
-
key
-
属性 | 类型 | 描述 |
---|---|---|
|
| 要从中选择的 secret 的密钥。必须是一个有效的 secret 密钥。 |
|
|
引用的名称。有效地需要此字段,但因为允许向后兼容为空。这里具有空值的此类实例几乎是错误的。TODO:添加其他有用的字段。apiVersion、kind、uid?更多信息: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names TODO: 当 controller-gen 不需要 https://github.com/kubernetes-sigs/kubebuilder/issues/3896 时,Drop |
|
| 指定是否需要定义 Secret 还是其密钥 |
8.1.294. .spec.remoteWrite[].proxyConnectHeader
- 描述
ProxyConnectHeader (可选)指定在 CONNECT 请求期间发送到代理的标头。
它需要 Prometheus >= v2.43.0。
- 类型
-
object
8.1.295. .spec.remoteWrite[].proxyConnectHeader{}
- 描述
- 类型
-
数组
8.1.296. .spec.remoteWrite[].proxyConnectHeader{}[]
- 描述
- SecretKeySelector 选择 Secret 的密钥。
- 类型
-
object
- 必填
-
key
-
属性 | 类型 | 描述 |
---|---|---|
|
| 要从中选择的 secret 的密钥。必须是一个有效的 secret 密钥。 |
|
|
引用的名称。有效地需要此字段,但因为允许向后兼容为空。这里具有空值的此类实例几乎是错误的。TODO:添加其他有用的字段。apiVersion、kind、uid?更多信息: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names TODO: 当 controller-gen 不需要 https://github.com/kubernetes-sigs/kubebuilder/issues/3896 时,Drop |
|
| 指定是否需要定义 Secret 还是其密钥 |
8.1.297. .spec.remoteWrite[].queueConfig
- 描述
- QueueConfig 允许调整远程写入队列参数。
- 类型
-
object
属性 | 类型 | 描述 |
---|---|---|
|
| BatchSendDeadline 是示例在缓冲中等待的最长时间。 |
|
| 容量是在我们开始丢弃前每个分片缓冲的示例数量。 |
|
| MaxBackoff 是最大重试延迟。 |
|
| maxRetries 是可在可恢复错误时重试批处理的次数上限。 |
|
| MaxSamplesPerSend 是每个发送的最大示例数。 |
|
| MaxShards 是分片的最大数量,即并发数量。 |
|
| MinBackoff 是初始重试延迟。每重试都会加倍。 |
|
| MinShards 是最小分片数量,即并发数量。 |
|
| 从远程写入存储中接收 429 状态代码时重试。 这是一个 实验性功能,它可能会以中断的方式改变任何即将推出的版本。 |
|
| SampleAgeLimit 丢弃超过限制的示例。它需要 Prometheus >= v2.50.0。 |
8.1.298. .spec.remoteWrite[].sigv4
- 描述
Sigv4 允许为 URL 配置 AWS 的签名验证 4。
它需要 Prometheus >= v2.26.0。
不可
与授权
、basicAuth
、oauth2
或azureAd
同时设置。- 类型
-
object
属性 | 类型 | 描述 |
---|---|---|
|
|
accessKey 是 AWS API 密钥。如果没有指定,则使用环境变量 |
|
| 配置集是用来进行身份验证的命名 AWS 配置集。 |
|
| 区域是 AWS 区域。如果为空,则使用默认凭证链中的区域。 |
|
| RoleArn 是用来进行身份验证的 AWS 配置集。 |
|
|
secretKey 是 AWS API secret。如果没有指定,则使用环境变量 |
8.1.299. .spec.remoteWrite[].sigv4.accessKey
- 描述
-
accessKey 是 AWS API 密钥。如果没有指定,则使用环境变量
AWS_ACCESS_KEY_ID
。 - 类型
-
object
- 必填
-
key
-
属性 | 类型 | 描述 |
---|---|---|
|
| 要从中选择的 secret 的密钥。必须是一个有效的 secret 密钥。 |
|
|
引用的名称。有效地需要此字段,但因为允许向后兼容为空。这里具有空值的此类实例几乎是错误的。TODO:添加其他有用的字段。apiVersion、kind、uid?更多信息: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names TODO: 当 controller-gen 不需要 https://github.com/kubernetes-sigs/kubebuilder/issues/3896 时,Drop |
|
| 指定是否需要定义 Secret 还是其密钥 |
8.1.300. .spec.remoteWrite[].sigv4.secretKey
- 描述
-
secretKey 是 AWS API secret。如果没有指定,则使用环境变量
AWS_SECRET_ACCESS_KEY
。 - 类型
-
object
- 必填
-
key
-
属性 | 类型 | 描述 |
---|---|---|
|
| 要从中选择的 secret 的密钥。必须是一个有效的 secret 密钥。 |
|
|
引用的名称。有效地需要此字段,但因为允许向后兼容为空。这里具有空值的此类实例几乎是错误的。TODO:添加其他有用的字段。apiVersion、kind、uid?更多信息: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names TODO: 当 controller-gen 不需要 https://github.com/kubernetes-sigs/kubebuilder/issues/3896 时,Drop |
|
| 指定是否需要定义 Secret 还是其密钥 |
8.1.301. .spec.remoteWrite[].tlsConfig
- 描述
- 用于 URL 的 TLS 配置。
- 类型
-
object
属性 | 类型 | 描述 |
---|---|---|
|
| 验证服务器证书时使用的证书颁发机构。 |
|
| Prometheus 容器中用于目标的 CA 证书的路径。 |
|
| 执行 client-authentication 时要出现的客户端证书。 |
|
| 目标的 Prometheus 容器中客户端证书文件的路径。 |
|
| 禁用目标证书验证。 |
|
| 目标的 Prometheus 容器中客户端密钥文件的路径。 |
|
| 包含目标客户端密钥文件的 secret。 |
|
| 用于验证目标的主机名。 |
8.1.302. .spec.remoteWrite[].tlsConfig.ca
- 描述
- 验证服务器证书时使用的证书颁发机构。
- 类型
-
object
属性 | 类型 | 描述 |
---|---|---|
|
| 包含用于目标的数据的 ConfigMap。 |
|
| 包含用于目标的数据的 secret。 |
8.1.303. .spec.remoteWrite[].tlsConfig.ca.configMap
- 描述
- 包含用于目标的数据的 ConfigMap。
- 类型
-
object
- 必填
-
key
-
属性 | 类型 | 描述 |
---|---|---|
|
| 要选择的密钥。 |
|
|
引用的名称。有效地需要此字段,但因为允许向后兼容为空。这里具有空值的此类实例几乎是错误的。TODO:添加其他有用的字段。apiVersion、kind、uid?更多信息: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names TODO: 当 controller-gen 不需要 https://github.com/kubernetes-sigs/kubebuilder/issues/3896 时,Drop |
|
| 指定是否必须定义 ConfigMap 还是其键 |
8.1.304. .spec.remoteWrite[].tlsConfig.ca.secret
- 描述
- 包含用于目标的数据的 secret。
- 类型
-
object
- 必填
-
key
-
属性 | 类型 | 描述 |
---|---|---|
|
| 要从中选择的 secret 的密钥。必须是一个有效的 secret 密钥。 |
|
|
引用的名称。有效地需要此字段,但因为允许向后兼容为空。这里具有空值的此类实例几乎是错误的。TODO:添加其他有用的字段。apiVersion、kind、uid?更多信息: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names TODO: 当 controller-gen 不需要 https://github.com/kubernetes-sigs/kubebuilder/issues/3896 时,Drop |
|
| 指定是否需要定义 Secret 还是其密钥 |
8.1.305. .spec.remoteWrite[].tlsConfig.cert
- 描述
- 执行 client-authentication 时要出现的客户端证书。
- 类型
-
object
属性 | 类型 | 描述 |
---|---|---|
|
| 包含用于目标的数据的 ConfigMap。 |
|
| 包含用于目标的数据的 secret。 |
8.1.306. .spec.remoteWrite[].tlsConfig.cert.configMap
- 描述
- 包含用于目标的数据的 ConfigMap。
- 类型
-
object
- 必填
-
key
-
属性 | 类型 | 描述 |
---|---|---|
|
| 要选择的密钥。 |
|
|
引用的名称。有效地需要此字段,但因为允许向后兼容为空。这里具有空值的此类实例几乎是错误的。TODO:添加其他有用的字段。apiVersion、kind、uid?更多信息: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names TODO: 当 controller-gen 不需要 https://github.com/kubernetes-sigs/kubebuilder/issues/3896 时,Drop |
|
| 指定是否必须定义 ConfigMap 还是其键 |
8.1.307. .spec.remoteWrite[].tlsConfig.cert.secret
- 描述
- 包含用于目标的数据的 secret。
- 类型
-
object
- 必填
-
key
-
属性 | 类型 | 描述 |
---|---|---|
|
| 要从中选择的 secret 的密钥。必须是一个有效的 secret 密钥。 |
|
|
引用的名称。有效地需要此字段,但因为允许向后兼容为空。这里具有空值的此类实例几乎是错误的。TODO:添加其他有用的字段。apiVersion、kind、uid?更多信息: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names TODO: 当 controller-gen 不需要 https://github.com/kubernetes-sigs/kubebuilder/issues/3896 时,Drop |
|
| 指定是否需要定义 Secret 还是其密钥 |
8.1.308. .spec.remoteWrite[].tlsConfig.keySecret
- 描述
- 包含目标客户端密钥文件的 secret。
- 类型
-
object
- 必填
-
key
-
属性 | 类型 | 描述 |
---|---|---|
|
| 要从中选择的 secret 的密钥。必须是一个有效的 secret 密钥。 |
|
|
引用的名称。有效地需要此字段,但因为允许向后兼容为空。这里具有空值的此类实例几乎是错误的。TODO:添加其他有用的字段。apiVersion、kind、uid?更多信息: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names TODO: 当 controller-gen 不需要 https://github.com/kubernetes-sigs/kubebuilder/issues/3896 时,Drop |
|
| 指定是否需要定义 Secret 还是其密钥 |
8.1.309. .spec.remoteWrite[].writeRelabelConfigs
- 描述
- 远程写入重新标记配置的列表。
- 类型
-
array
8.1.310. .spec.remoteWrite[].writeRelabelConfigs[]
- 描述
RelabelConfig 允许为目标、警报、提取示例和远程写入示例动态重写标签。
更多信息: https://prometheus.io/docs/prometheus/latest/configuration/configuration/#relabel_config
- 类型
-
object
属性 | 类型 | 描述 |
---|---|---|
|
| 根据正则表达式匹配要执行的操作。
默认:"Replace" |
|
| modulus 采用 source 标签值的哈希。
仅在操作为 |
|
| 匹配提取值的正则表达式。 |
|
| 如果正则表达式匹配,则执行 replace 操作的替换值。 正则表达式捕获组可用。 |
|
| 分隔符是串联的 SourceLabels 之间的字符串。 |
|
| source 标签从现有标签中选择值。其内容使用配置的 Separator 连接,并与配置的正则表达式匹配。 |
|
| 生成的字符串写入替换标签。
对于 正则表达式捕获组可用。 |
8.1.311. .spec.resources
- 描述
- 定义 'prometheus' 容器的资源请求和限值。
- 类型
-
object
属性 | 类型 | 描述 |
---|---|---|
|
| claim 列出此容器使用的 spec.resourceClaims 中定义的资源名称。 这是一个 alpha 字段,需要启用 DynamicResourceAllocation 功能门。 此字段不可变。它只能为容器设置。 |
|
| ResourceClaim 引用 PodSpec.ResourceClaims 中的一个条目。 |
|
| 限制描述了允许的最大计算资源量。更多信息: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/ |
|
| Requests 描述了所需的最少计算资源。如果容器省略了 Requests,则默认为 Limits (如果明确指定),否则默认为实现定义的值。请求不能超过限值。更多信息: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/ |
8.1.312. .spec.resources.claims
- 描述
claim 列出此容器使用的 spec.resourceClaims 中定义的资源名称。
这是一个 alpha 字段,需要启用 DynamicResourceAllocation 功能门。
此字段不可变。它只能为容器设置。
- 类型
-
数组
8.1.313. .spec.resources.claims[]
- 描述
- ResourceClaim 引用 PodSpec.ResourceClaims 中的一个条目。
- 类型
-
object
- 必填
-
name
-
属性 | 类型 | 描述 |
---|---|---|
|
| name 必须与使用此字段的 Pod 的 pod.spec.resourceClaims 中的一个条目的名称匹配。它允许容器内部使用该资源。 |
8.1.314. .spec.ruleNamespaceSelector
- 描述
- 用于与 PrometheusRule 发现匹配的命名空间。空标签选择器与所有命名空间匹配。null 标签选择器仅与当前命名空间匹配。
- 类型
-
object
属性 | 类型 | 描述 |
---|---|---|
|
| matchExpressions 是标签选择器要求列表。要求的逻辑关系是 AND。 |
|
| 标签选择器要求是一个选择器,其中包含与键和值相关的值、键和值。 |
|
| matchLabels 是 {key,value} 对的映射。MatchLabels 映射中的单个 {key,value} 等同于 matchExpressions 的一个元素,其 key 字段是 "key",运算符是 "In",值数组仅包含 "value"。要求的逻辑关系是 AND。 |
8.1.315. .spec.ruleNamespaceSelector.matchExpressions
- 描述
- matchExpressions 是标签选择器要求列表。要求的逻辑关系是 AND。
- 类型
-
array
8.1.316. .spec.ruleNamespaceSelector.matchExpressions[]
- 描述
- 标签选择器要求是一个选择器,其中包含与键和值相关的值、键和值。
- 类型
-
object
- 必填
-
key
-
operator
-
属性 | 类型 | 描述 |
---|---|---|
|
| key 是选择器应用到的标签键。 |
|
| 运算符代表一个键与一组值的关系。有效的运算符是 In、NotIn、Exists 和 DoesNotExist。 |
|
| 值是字符串值的数组。如果运算符是 In 或 NotIn,则值数组必须是非空的。如果运算符是 Exists 或 DoesNotExist,则值数组必须为空。这个数组会在策略性合并补丁中被替换。 |
8.1.317. .spec.ruleSelector
- 描述
- 为规则评估选择的 PrometheusRule 对象。空标签选择器匹配所有对象。null 标签选择器不匹配任何对象。
- 类型
-
object
属性 | 类型 | 描述 |
---|---|---|
|
| matchExpressions 是标签选择器要求列表。要求的逻辑关系是 AND。 |
|
| 标签选择器要求是一个选择器,其中包含与键和值相关的值、键和值。 |
|
| matchLabels 是 {key,value} 对的映射。MatchLabels 映射中的单个 {key,value} 等同于 matchExpressions 的一个元素,其 key 字段是 "key",运算符是 "In",值数组仅包含 "value"。要求的逻辑关系是 AND。 |
8.1.318. .spec.ruleSelector.matchExpressions
- 描述
- matchExpressions 是标签选择器要求列表。要求的逻辑关系是 AND。
- 类型
-
array
8.1.319. .spec.ruleSelector.matchExpressions[]
- 描述
- 标签选择器要求是一个选择器,其中包含与键和值相关的值、键和值。
- 类型
-
object
- 必填
-
key
-
operator
-
属性 | 类型 | 描述 |
---|---|---|
|
| key 是选择器应用到的标签键。 |
|
| 运算符代表一个键与一组值的关系。有效的运算符是 In、NotIn、Exists 和 DoesNotExist。 |
|
| 值是字符串值的数组。如果运算符是 In 或 NotIn,则值数组必须是非空的。如果运算符是 Exists 或 DoesNotExist,则值数组必须为空。这个数组会在策略性合并补丁中被替换。 |
8.1.320. .spec.rules
- 描述
- 定义 Prometheus 规则引擎的配置。
- 类型
-
object
属性 | 类型 | 描述 |
---|---|---|
|
| 定义 Prometheus 规则引擎的参数。 对这些参数的任何更新都会触发 pod 重启。 |
8.1.321. .spec.rules.alert
- 描述
定义 Prometheus 规则引擎的参数。
对这些参数的任何更新都会触发 pod 重启。
- 类型
-
object
属性 | 类型 | 描述 |
---|---|---|
|
| 警报和恢复的 'for' 状态之间的最短持续时间。 这只适用于配置的 'for' 时间大于宽限期的警报。 |
|
| 容许 prometheus 中断的最大时间,以恢复警报的 'for' 状态。 |
|
| 将警报重新发送到 Alertmanager 前需要等待的最短时间。 |
8.1.322. .spec.scrapeClasses
- 描述
要公开的提取类列表,以提取对象,如 PodMonitor、ServiceMonitor、Probes 和 ScrapeConfigs。
这是一个 实验性功能,它可能会以中断的方式改变任何即将推出的版本。
- 类型
-
数组
8.1.323. .spec.scrapeClasses[]
- 描述
- 类型
-
object
- 必填
-
name
-
属性 | 类型 | 描述 |
---|---|---|
|
| default 表示提取适用于没有配置显式提取类名称的所有提取对象。 只能将一个提取类设置为默认值。 |
|
| metricRelabelings 配置重新标记规则,以便在 ingestion 前应用到所有示例。 Operator 添加提取类指标重新标记此处定义的。然后,Operator 会添加 ServiceMonitor、PodMonitors、Probes 和 ScrapeConfigs 中定义的特定于目标的指标重新标记。然后,Operator 会添加命名空间强制重新标记规则,在 '.spec.enforcedNamespaceLabel' 中指定。 更多信息: https://prometheus.io/docs/prometheus/latest/configuration/configuration/#metric_relabel_configs |
|
| RelabelConfig 允许为目标、警报、提取示例和远程写入示例动态重写标签。 更多信息: https://prometheus.io/docs/prometheus/latest/configuration/configuration/#relabel_config |
|
| 提取类的名称。 |
|
| 重新标记配置重新标记规则,以应用到所有提取目标。
Operator 会自动为几个标准 Kubernetes 字段添加重新标记,如 更多信息: https://prometheus.io/docs/prometheus/latest/configuration/configuration/#relabel_config |
|
| RelabelConfig 允许为目标、警报、提取示例和远程写入示例动态重写标签。 更多信息: https://prometheus.io/docs/prometheus/latest/configuration/configuration/#relabel_config |
|
| TLSConfig 定义用于提取的 TLS 设置。当提取对象定义自己的 CA、证书和/或密钥时,它们优先于对应的提取类字段。
现在,只支持 |
8.1.324. .spec.scrapeClasses[].metricRelabelings
- 描述
metricRelabelings 配置重新标记规则,以便在 ingestion 前应用到所有示例。
Operator 添加提取类指标重新标记此处定义的。然后,Operator 会添加 ServiceMonitor、PodMonitors、Probes 和 ScrapeConfigs 中定义的特定于目标的指标重新标记。然后,Operator 会添加命名空间强制重新标记规则,在 '.spec.enforcedNamespaceLabel' 中指定。
更多信息: https://prometheus.io/docs/prometheus/latest/configuration/configuration/#metric_relabel_configs
- 类型
-
数组
8.1.325. .spec.scrapeClasses[].metricRelabelings[]
- 描述
RelabelConfig 允许为目标、警报、提取示例和远程写入示例动态重写标签。
更多信息: https://prometheus.io/docs/prometheus/latest/configuration/configuration/#relabel_config
- 类型
-
object
属性 | 类型 | 描述 |
---|---|---|
|
| 根据正则表达式匹配要执行的操作。
默认:"Replace" |
|
| modulus 采用 source 标签值的哈希。
仅在操作为 |
|
| 匹配提取值的正则表达式。 |
|
| 如果正则表达式匹配,则执行 replace 操作的替换值。 正则表达式捕获组可用。 |
|
| 分隔符是串联的 SourceLabels 之间的字符串。 |
|
| source 标签从现有标签中选择值。其内容使用配置的 Separator 连接,并与配置的正则表达式匹配。 |
|
| 生成的字符串写入替换标签。
对于 正则表达式捕获组可用。 |
8.1.326. .spec.scrapeClasses[].relabelings
- 描述
重新标记配置重新标记规则,以应用到所有提取目标。
Operator 会自动为几个标准 Kubernetes 字段添加重新标记,如
__meta_kubernetes_namespace
和\__meta_kubernetes_service_name
。然后,Operator 会添加此处定义的提取类重新标记。然后,Operator 会添加 scrape 对象中定义的特定于目标的重新标记。更多信息: https://prometheus.io/docs/prometheus/latest/configuration/configuration/#relabel_config
- 类型
-
数组
8.1.327. .spec.scrapeClasses[].relabelings[]
- 描述
RelabelConfig 允许为目标、警报、提取示例和远程写入示例动态重写标签。
更多信息: https://prometheus.io/docs/prometheus/latest/configuration/configuration/#relabel_config
- 类型
-
object
属性 | 类型 | 描述 |
---|---|---|
|
| 根据正则表达式匹配要执行的操作。
默认:"Replace" |
|
| modulus 采用 source 标签值的哈希。
仅在操作为 |
|
| 匹配提取值的正则表达式。 |
|
| 如果正则表达式匹配,则执行 replace 操作的替换值。 正则表达式捕获组可用。 |
|
| 分隔符是串联的 SourceLabels 之间的字符串。 |
|
| source 标签从现有标签中选择值。其内容使用配置的 Separator 连接,并与配置的正则表达式匹配。 |
|
| 生成的字符串写入替换标签。
对于 正则表达式捕获组可用。 |
8.1.328. .spec.scrapeClasses[].tlsConfig
- 描述
TLSConfig 定义用于提取的 TLS 设置。当提取对象定义自己的 CA、证书和/或密钥时,它们优先于对应的提取类字段。
现在,只支持
caFile
、certFile
和keyFile
字段。- 类型
-
object
属性 | 类型 | 描述 |
---|---|---|
|
| 验证服务器证书时使用的证书颁发机构。 |
|
| Prometheus 容器中用于目标的 CA 证书的路径。 |
|
| 执行 client-authentication 时要出现的客户端证书。 |
|
| 目标的 Prometheus 容器中客户端证书文件的路径。 |
|
| 禁用目标证书验证。 |
|
| 目标的 Prometheus 容器中客户端密钥文件的路径。 |
|
| 包含目标客户端密钥文件的 secret。 |
|
| 用于验证目标的主机名。 |
8.1.329. .spec.scrapeClasses[].tlsConfig.ca
- 描述
- 验证服务器证书时使用的证书颁发机构。
- 类型
-
object
属性 | 类型 | 描述 |
---|---|---|
|
| 包含用于目标的数据的 ConfigMap。 |
|
| 包含用于目标的数据的 secret。 |
8.1.330. .spec.scrapeClasses[].tlsConfig.ca.configMap
- 描述
- 包含用于目标的数据的 ConfigMap。
- 类型
-
object
- 必填
-
key
-
属性 | 类型 | 描述 |
---|---|---|
|
| 要选择的密钥。 |
|
|
引用的名称。有效地需要此字段,但因为允许向后兼容为空。这里具有空值的此类实例几乎是错误的。TODO:添加其他有用的字段。apiVersion、kind、uid?更多信息: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names TODO: 当 controller-gen 不需要 https://github.com/kubernetes-sigs/kubebuilder/issues/3896 时,Drop |
|
| 指定是否必须定义 ConfigMap 还是其键 |
8.1.331. .spec.scrapeClasses[].tlsConfig.ca.secret
- 描述
- 包含用于目标的数据的 secret。
- 类型
-
object
- 必填
-
key
-
属性 | 类型 | 描述 |
---|---|---|
|
| 要从中选择的 secret 的密钥。必须是一个有效的 secret 密钥。 |
|
|
引用的名称。有效地需要此字段,但因为允许向后兼容为空。这里具有空值的此类实例几乎是错误的。TODO:添加其他有用的字段。apiVersion、kind、uid?更多信息: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names TODO: 当 controller-gen 不需要 https://github.com/kubernetes-sigs/kubebuilder/issues/3896 时,Drop |
|
| 指定是否需要定义 Secret 还是其密钥 |
8.1.332. .spec.scrapeClasses[].tlsConfig.cert
- 描述
- 执行 client-authentication 时要出现的客户端证书。
- 类型
-
object
属性 | 类型 | 描述 |
---|---|---|
|
| 包含用于目标的数据的 ConfigMap。 |
|
| 包含用于目标的数据的 secret。 |
8.1.333. .spec.scrapeClasses[].tlsConfig.cert.configMap
- 描述
- 包含用于目标的数据的 ConfigMap。
- 类型
-
object
- 必填
-
key
-
属性 | 类型 | 描述 |
---|---|---|
|
| 要选择的密钥。 |
|
|
引用的名称。有效地需要此字段,但因为允许向后兼容为空。这里具有空值的此类实例几乎是错误的。TODO:添加其他有用的字段。apiVersion、kind、uid?更多信息: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names TODO: 当 controller-gen 不需要 https://github.com/kubernetes-sigs/kubebuilder/issues/3896 时,Drop |
|
| 指定是否必须定义 ConfigMap 还是其键 |
8.1.334. .spec.scrapeClasses[].tlsConfig.cert.secret
- 描述
- 包含用于目标的数据的 secret。
- 类型
-
object
- 必填
-
key
-
属性 | 类型 | 描述 |
---|---|---|
|
| 要从中选择的 secret 的密钥。必须是一个有效的 secret 密钥。 |
|
|
引用的名称。有效地需要此字段,但因为允许向后兼容为空。这里具有空值的此类实例几乎是错误的。TODO:添加其他有用的字段。apiVersion、kind、uid?更多信息: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names TODO: 当 controller-gen 不需要 https://github.com/kubernetes-sigs/kubebuilder/issues/3896 时,Drop |
|
| 指定是否需要定义 Secret 还是其密钥 |
8.1.335. .spec.scrapeClasses[].tlsConfig.keySecret
- 描述
- 包含目标客户端密钥文件的 secret。
- 类型
-
object
- 必填
-
key
-
属性 | 类型 | 描述 |
---|---|---|
|
| 要从中选择的 secret 的密钥。必须是一个有效的 secret 密钥。 |
|
|
引用的名称。有效地需要此字段,但因为允许向后兼容为空。这里具有空值的此类实例几乎是错误的。TODO:添加其他有用的字段。apiVersion、kind、uid?更多信息: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names TODO: 当 controller-gen 不需要 https://github.com/kubernetes-sigs/kubebuilder/issues/3896 时,Drop |
|
| 指定是否需要定义 Secret 还是其密钥 |
8.1.336. .spec.scrapeConfigNamespaceSelector
- 描述
命名空间以匹配 ScrapeConfig 发现。空标签选择器与所有命名空间匹配。null 标签选择器仅与当前命名空间匹配。
请注意,ScrapeConfig 自定义资源定义目前在 Alpha 级别上。
- 类型
-
object
属性 | 类型 | 描述 |
---|---|---|
|
| matchExpressions 是标签选择器要求列表。要求的逻辑关系是 AND。 |
|
| 标签选择器要求是一个选择器,其中包含与键和值相关的值、键和值。 |
|
| matchLabels 是 {key,value} 对的映射。MatchLabels 映射中的单个 {key,value} 等同于 matchExpressions 的一个元素,其 key 字段是 "key",运算符是 "In",值数组仅包含 "value"。要求的逻辑关系是 AND。 |
8.1.337. .spec.scrapeConfigNamespaceSelector.matchExpressions
- 描述
- matchExpressions 是标签选择器要求列表。要求的逻辑关系是 AND。
- 类型
-
数组
8.1.338. .spec.scrapeConfigNamespaceSelector.matchExpressions[]
- 描述
- 标签选择器要求是一个选择器,其中包含与键和值相关的值、键和值。
- 类型
-
object
- 必填
-
key
-
operator
-
属性 | 类型 | 描述 |
---|---|---|
|
| key 是选择器应用到的标签键。 |
|
| 运算符代表一个键与一组值的关系。有效的运算符是 In、NotIn、Exists 和 DoesNotExist。 |
|
| 值是字符串值的数组。如果运算符是 In 或 NotIn,则值数组必须是非空的。如果运算符是 Exists 或 DoesNotExist,则值数组必须为空。这个数组会在策略性合并补丁中被替换。 |
8.1.339. .spec.scrapeConfigSelector
- 描述
为目标发现选择 ScrapeConfigs。空标签选择器匹配所有对象。null 标签选择器不匹配任何对象。
如果
spec.serviceMonitorSelector
,spec.podMonitorSelector
,spec.probeSelector
和spec.scrapeConfigSelector
为 null,则 Prometheus 配置为非受管。Prometheus operator 将确保 Prometheus 配置的 Secret 存在,但负责用户在prometheus.yaml.gz
键下提供原始 gzip Prometheus 配置。这个行为 已弃用,并将在自定义资源定义的下一个主版本中删除。建议您使用spec.additionalScrapeConfigs
替代。请注意,ScrapeConfig 自定义资源定义目前在 Alpha 级别上。
- 类型
-
object
属性 | 类型 | 描述 |
---|---|---|
|
| matchExpressions 是标签选择器要求列表。要求的逻辑关系是 AND。 |
|
| 标签选择器要求是一个选择器,其中包含与键和值相关的值、键和值。 |
|
| matchLabels 是 {key,value} 对的映射。MatchLabels 映射中的单个 {key,value} 等同于 matchExpressions 的一个元素,其 key 字段是 "key",运算符是 "In",值数组仅包含 "value"。要求的逻辑关系是 AND。 |
8.1.340. .spec.scrapeConfigSelector.matchExpressions
- 描述
- matchExpressions 是标签选择器要求列表。要求的逻辑关系是 AND。
- 类型
-
数组
8.1.341. .spec.scrapeConfigSelector.matchExpressions[]
- 描述
- 标签选择器要求是一个选择器,其中包含与键和值相关的值、键和值。
- 类型
-
object
- 必填
-
key
-
operator
-
属性 | 类型 | 描述 |
---|---|---|
|
| key 是选择器应用到的标签键。 |
|
| 运算符代表一个键与一组值的关系。有效的运算符是 In、NotIn、Exists 和 DoesNotExist。 |
|
| 值是字符串值的数组。如果运算符是 In 或 NotIn,则值数组必须是非空的。如果运算符是 Exists 或 DoesNotExist,则值数组必须为空。这个数组会在策略性合并补丁中被替换。 |
8.1.342. .spec.securityContext
- 描述
- securityContext 包含 pod 级别的安全属性和通用容器设置。默认为默认的 PodSecurityContext。
- 类型
-
object
属性 | 类型 | 描述 |
---|---|---|
|
| appArmorProfile 是此 pod 中的容器使用的 AppArmor 选项。请注意,当 spec.os.name 是 windows 时无法设置此字段。 |
|
| 适用于 pod 中所有容器的特殊补充组。有些卷类型允许 Kubelet 将该卷的所有权更改为由 pod 所有: 1.拥有的 GID 为 FSGroup 2。设置 setgid 位(卷中创建的新文件将归 FSGroup 所有)3。权限位是 OR'd with rw-rw--- 如果未设置,Kubelet 不会修改任何卷的所有权和权限。请注意,当 spec.os.name 是 windows 时无法设置此字段。 |
|
| fsGroupChangePolicy 定义在 Pod 内公开卷之前更改卷的所有权和权限的行为。此字段将只适用于支持基于 fsGroup 的所有权(和权限)的卷类型。它对临时卷类型没有影响,如 secret、configmap 和 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 时无法设置此字段。 |
|
| sysctl 包含用于 pod 的命名空间 sysctl 列表。带有不支持 sysctl (容器运行时)的 Pod 可能无法启动。请注意,当 spec.os.name 是 windows 时无法设置此字段。 |
|
| sysctl 定义要设置的内核参数 |
|
| 应用到所有容器的 Windows 特定设置。如果未指定,则使用容器的 SecurityContext 中的选项。如果在 SecurityContext 和 PodSecurityContext 中设置,则 SecurityContext 中指定的值具有优先权。请注意,当 spec.os.name 是 linux 时,不能设置此字段。 |
8.1.343. .spec.securityContext.appArmorProfile
- 描述
- appArmorProfile 是此 pod 中的容器使用的 AppArmor 选项。请注意,当 spec.os.name 是 windows 时无法设置此字段。
- 类型
-
object
- 必填
-
type
-
属性 | 类型 | 描述 |
---|---|---|
|
| localhostProfile 表示节点上载入的配置集。该配置集必须在节点上预先配置才能正常工作。必须与配置文件的加载名称匹配。只在 type 为 "Localhost" 时,才应设置。 |
|
| Type 表示将应用哪些类型的 AppArmor 配置集。有效选项包括: Localhost - 节点上的配置文件预加载。RuntimeDefault - 容器运行时的默认配置集。unconfined - 无 AppArmor 强制。 |
8.1.344. .spec.securityContext.seLinuxOptions
- 描述
- 要应用到所有容器的 SELinux 上下文。如果未指定,容器运行时将为每个容器分配一个随机 SELinux 上下文。还可能会在 SecurityContext 中设置。如果在 SecurityContext 和 PodSecurityContext 中设置,则 SecurityContext 中指定的值优先于该容器。请注意,当 spec.os.name 是 windows 时无法设置此字段。
- 类型
-
object
属性 | 类型 | 描述 |
---|---|---|
|
| level 是适用于容器的 SELinux 级别标签。 |
|
| role 是适用于容器的 SELinux 角色标签。 |
|
| type 是适用于容器的 SELinux 类型标签。 |
|
| user 是适用于容器的 SELinux 用户标签。 |
8.1.345. .spec.securityContext.seccompProfile
- 描述
- 此 pod 中容器使用的 seccomp 选项。请注意,当 spec.os.name 是 windows 时无法设置此字段。
- 类型
-
object
- 必填
-
type
-
属性 | 类型 | 描述 |
---|---|---|
|
| localhostProfile 表示应使用节点上文件中定义的配置集。该配置集必须在节点上预先配置才能正常工作。必须是一个降序路径,相对于 kubelet 配置的 seccomp 配置集位置。如果类型为"Localhost",则必须设置。不得为任何其他类型设置。 |
|
| Type 表示将应用了哪些 seccomp 配置集。有效选项有: localhost - 应该使用节点上文件中定义的配置文件。RuntimeDefault - 应使用容器运行时默认配置集。unconfined - 不应应用配置集。 |
8.1.346. .spec.securityContext.sysctls
- 描述
- sysctl 包含用于 pod 的命名空间 sysctl 列表。带有不支持 sysctl (容器运行时)的 Pod 可能无法启动。请注意,当 spec.os.name 是 windows 时无法设置此字段。
- 类型
-
array
8.1.347. .spec.securityContext.sysctls[]
- 描述
- sysctl 定义要设置的内核参数
- 类型
-
object
- 必填
-
name
-
value
-
属性 | 类型 | 描述 |
---|---|---|
|
| 要设置的属性的名称 |
|
| 要设置的属性值 |
8.1.348. .spec.securityContext.windowsOptions
- 描述
- 应用到所有容器的 Windows 特定设置。如果未指定,则使用容器的 SecurityContext 中的选项。如果在 SecurityContext 和 PodSecurityContext 中设置,则 SecurityContext 中指定的值具有优先权。请注意,当 spec.os.name 是 linux 时,不能设置此字段。
- 类型
-
object
属性 | 类型 | 描述 |
---|---|---|
|
| GMSACredentialSpec 是 GMSA 准入 Webhook (https://github.com/kubernetes-sigs/windows-gmsa)内联由 GMSACredentialSpec 命名的 GMSA 凭证规格的内容。 |
|
| GMSACredentialSpecName 是要使用的 GMSA 凭证规格的名称。 |
|
| HostProcess 确定容器是否应作为"主机进程"容器运行。所有 Pod 的容器都必须具有相同的有效的 HostProcess 值(不允许混合 HostProcess 容器和非主机进程容器)。另外,如果 HostProcess 为 true,则 HostNetwork 也必须设置为 true。 |
|
| Windows 中的 UserName,以运行容器进程的入口点。如果未指定,则默认为在镜像元数据中指定的用户。也可以在 PodSecurityContext 中设置。如果在 SecurityContext 和 PodSecurityContext 中设置,则 SecurityContext 中指定的值具有优先权。 |
8.1.349. .spec.serviceMonitorNamespaceSelector
- 描述
- 用于与 ServicedMonitors 发现匹配的命名空间。空标签选择器与所有命名空间匹配。null 标签选择器(默认值)仅与当前命名空间匹配。
- 类型
-
object
属性 | 类型 | 描述 |
---|---|---|
|
| matchExpressions 是标签选择器要求列表。要求的逻辑关系是 AND。 |
|
| 标签选择器要求是一个选择器,其中包含与键和值相关的值、键和值。 |
|
| matchLabels 是 {key,value} 对的映射。MatchLabels 映射中的单个 {key,value} 等同于 matchExpressions 的一个元素,其 key 字段是 "key",运算符是 "In",值数组仅包含 "value"。要求的逻辑关系是 AND。 |
8.1.350. .spec.serviceMonitorNamespaceSelector.matchExpressions
- 描述
- matchExpressions 是标签选择器要求列表。要求的逻辑关系是 AND。
- 类型
-
array
8.1.351. .spec.serviceMonitorNamespaceSelector.matchExpressions[]
- 描述
- 标签选择器要求是一个选择器,其中包含与键和值相关的值、键和值。
- 类型
-
object
- 必填
-
key
-
operator
-
属性 | 类型 | 描述 |
---|---|---|
|
| key 是选择器应用到的标签键。 |
|
| 运算符代表一个键与一组值的关系。有效的运算符是 In、NotIn、Exists 和 DoesNotExist。 |
|
| 值是字符串值的数组。如果运算符是 In 或 NotIn,则值数组必须是非空的。如果运算符是 Exists 或 DoesNotExist,则值数组必须为空。这个数组会在策略性合并补丁中被替换。 |
8.1.352. .spec.serviceMonitorSelector
- 描述
为目标发现选择的 ServiceMonitor。空标签选择器匹配所有对象。null 标签选择器不匹配任何对象。
如果
spec.serviceMonitorSelector
,spec.podMonitorSelector
,spec.probeSelector
和spec.scrapeConfigSelector
为 null,则 Prometheus 配置为非受管。Prometheus operator 将确保 Prometheus 配置的 Secret 存在,但负责用户在prometheus.yaml.gz
键下提供原始 gzip Prometheus 配置。这个行为 已弃用,并将在自定义资源定义的下一个主版本中删除。建议您使用spec.additionalScrapeConfigs
替代。- 类型
-
object
属性 | 类型 | 描述 |
---|---|---|
|
| matchExpressions 是标签选择器要求列表。要求的逻辑关系是 AND。 |
|
| 标签选择器要求是一个选择器,其中包含与键和值相关的值、键和值。 |
|
| matchLabels 是 {key,value} 对的映射。MatchLabels 映射中的单个 {key,value} 等同于 matchExpressions 的一个元素,其 key 字段是 "key",运算符是 "In",值数组仅包含 "value"。要求的逻辑关系是 AND。 |
8.1.353. .spec.serviceMonitorSelector.matchExpressions
- 描述
- matchExpressions 是标签选择器要求列表。要求的逻辑关系是 AND。
- 类型
-
array
8.1.354. .spec.serviceMonitorSelector.matchExpressions[]
- 描述
- 标签选择器要求是一个选择器,其中包含与键和值相关的值、键和值。
- 类型
-
object
- 必填
-
key
-
operator
-
属性 | 类型 | 描述 |
---|---|---|
|
| key 是选择器应用到的标签键。 |
|
| 运算符代表一个键与一组值的关系。有效的运算符是 In、NotIn、Exists 和 DoesNotExist。 |
|
| 值是字符串值的数组。如果运算符是 In 或 NotIn,则值数组必须是非空的。如果运算符是 Exists 或 DoesNotExist,则值数组必须为空。这个数组会在策略性合并补丁中被替换。 |
8.1.355. .spec.storage
- 描述
- Storage 定义 Prometheus 使用的存储。
- 类型
-
object
属性 | 类型 | 描述 |
---|---|---|
|
| 弃用: 在以后的发行版本中会删除 subPath 用量。 |
|
|
StatefulSet 使用的 EmptyDirVolumeSource。如果指定,它优先于 |
|
| StatefulSet 使用的 EphemeralVolumeSource。这是 k8s 1.21 和 1.15 中的 beta 字段。对于较低版本,从 k8s 1.19 开始,它需要启用 GenericEphemeralVolume 功能门。更多信息: https://kubernetes.io/docs/concepts/storage/ephemeral-volumes/#generic-ephemeral-volumes |
|
| 定义 Prometheus StatefulSets 使用的 PVC spec。使用无法自动置备的卷的最简单方法是使用带有手动创建的 PersistentVolume 的标签选择器。 |
8.1.356. .spec.storage.emptyDir
- 描述
-
StatefulSet 使用的 EmptyDirVolumeSource。如果指定,它优先于
ephemeral
和volumeClaimTemplate
。更多信息: https://kubernetes.io/docs/concepts/storage/volumes/#emptydir - 类型
-
object
属性 | 类型 | 描述 |
---|---|---|
|
| Medium 代表存储介质类型应支持这个目录。默认值为 "",这意味着使用节点的默认介质。必须是空字符串(默认)或 Memory。更多信息: https://kubernetes.io/docs/concepts/storage/volumes#emptydir |
|
| sizeLimit 是这个 EmptyDir 卷所需的本地存储总量。大小限制也适用于内存介质。内存用量的最大使用量为此处指定的 SizeLimit 和 pod 中所有容器的内存限值总和。默认值为 nil,这意味着限制未定义。更多信息: https://kubernetes.io/docs/concepts/storage/volumes#emptydir |
8.1.357. .spec.storage.ephemeral
- 描述
- StatefulSet 使用的 EphemeralVolumeSource。这是 k8s 1.21 和 1.15 中的 beta 字段。对于较低版本,从 k8s 1.19 开始,它需要启用 GenericEphemeralVolume 功能门。更多信息: https://kubernetes.io/docs/concepts/storage/ephemeral-volumes/#generic-ephemeral-volumes
- 类型
-
object
属性 | 类型 | 描述 |
---|---|---|
|
|
将用于创建独立 PVC 来置备卷。嵌入此 EphemeralVolumeSource 的 pod 将是 PVC 的所有者,即 PVC 将与 pod 一起删除。PVC 的名称将是 < 具有名称不归 pod 所有的现有 PVC 将不会 用于 pod,以避免错误地使用不相关的卷。然后,启动 pod 会被阻断,直到删除不相关的 PVC。如果 pod 使用这样的预先创建的 PVC,则必须在 pod 存在后使用对 pod 的所有者引用来更新 PVC。通常,这应该不需要,但手动重建一个有问题的集群时可能会很有用。 此字段是只读的,Kubernetes 在创建后不会对 PVC 进行任何更改。 必需,不能是 nil。 |
8.1.358. .spec.storage.ephemeral.volumeClaimTemplate
- 描述
将用于创建独立 PVC 来置备卷。嵌入此 EphemeralVolumeSource 的 pod 将是 PVC 的所有者,即 PVC 将与 pod 一起删除。PVC 的名称将是 <
pod name>-<volume name>
,其中<volume
name> 是PodSpec.Volumes
数组条目中的名称。如果串联的名称对 PVC 无效(例如,太长),pod 验证将拒绝 pod。具有名称不归 pod 所有的现有 PVC 将不会 用于 pod,以避免错误地使用不相关的卷。然后,启动 pod 会被阻断,直到删除不相关的 PVC。如果 pod 使用这样的预先创建的 PVC,则必须在 pod 存在后使用对 pod 的所有者引用来更新 PVC。通常,这应该不需要,但手动重建一个有问题的集群时可能会很有用。
此字段是只读的,Kubernetes 在创建后不会对 PVC 进行任何更改。
必需,不能是 nil。
- 类型
-
object
- 必填
-
spec
-
属性 | 类型 | 描述 |
---|---|---|
|
| 可能包含创建 PVC 时将复制到 PVC 的标签和注解。不允许其他字段,并在验证过程中被拒绝。 |
|
| PersistentVolumeClaim 的规格。整个内容保持不变复制到从该模板创建的 PVC 中。PersistentVolumeClaim 中与 相同的字段也有效。 |
8.1.359. .spec.storage.ephemeral.volumeClaimTemplate.metadata
- 描述
- 可能包含创建 PVC 时将复制到 PVC 的标签和注解。不允许其他字段,并在验证过程中被拒绝。
- 类型
-
object
8.1.360. .spec.storage.ephemeral.volumeClaimTemplate.spec
- 描述
- PersistentVolumeClaim 的规格。整个内容保持不变复制到从该模板创建的 PVC 中。PersistentVolumeClaim 中与 相同的字段也有效。
- 类型
-
object
属性 | 类型 | 描述 |
---|---|---|
|
| accessModes 包含卷应具有所需的访问模式。更多信息: https://kubernetes.io/docs/concepts/storage/persistent-volumes#access-modes-1 |
|
| Datasource 字段可以用来指定:* 一个现有的 VolumeSnapshot 对象(snapshot.storage.k8s.io/VolumeSnapshot)* 一个现有的 PVC (PersistentVolumeClaim),如果置备程序或外部控制器可以支持指定的数据源,它将基于指定数据源的内容创建一个新卷。当启用 AnyVolumeDataSource 功能门时,dataSource 内容将复制到 dataSourceRef 中,当未指定 dataSourceRef.namespace 时,dataSourceRef 内容将复制到 dataSource 中。如果指定了 namespace,则不会将 dataSourceRef 复制到 dataSource 中。 |
|
| 如果需要非空卷,则 dataSourceRef 指定要使用数据填充卷的对象。这可以是来自非空 API 组(非核心对象)或 PersistentVolumeClaim 对象的任何对象。当指定对象的类型与某些安装的卷填充或动态置备程序匹配时,卷绑定才会成功。此字段将替换 dataSource 字段的功能,如果两个字段都不是空的,则它们必须具有相同的值。为了向后兼容,当命名空间没有在 dataSourceRef 中指定时,如果其中一个为空,则两个字段(dataSource 和 dataSourceRef)都会自动设置为相同的值,另一个是非空的。当在 dataSourceRef 中指定 namespace 时,dataSource 不设置为相同的值,必须为空。dataSource 和 dataSourceRef 之间有三个重要区别:* While dataSource 只允许两种特定类型的对象,dataSourceRef 允许任何非核心对象,以及 PersistentVolumeClaim 对象。* 虽然 dataSource 忽略了禁止的值(丢弃它们),dataSourceRef 保留所有值,并在指定禁止的值时生成错误。* 虽然 dataSource 只允许本地对象,dataSourceRef 允许任何命名空间中的对象。(beta)使用此字段需要启用 AnyVolumeDataSource 功能门。(alpha)使用 dataSourceRef 的 namespace 字段需要启用 CrossNamespaceVolumeDataSource 功能门。 |
|
| resources 代表卷应具有的最小资源。如果启用了 RecoverVolumeExpansionFailure 功能,用户可以指定小于之前值的资源要求,但仍必须高于声明的 status 字段中记录的容量。更多信息: https://kubernetes.io/docs/concepts/storage/persistent-volumes#resources |
|
| selector 是要考虑绑定的卷的标签查询。 |
|
| storageClassName 是声明所需的 StorageClass 的名称。更多信息: https://kubernetes.io/docs/concepts/storage/persistent-volumes#class-1 |
|
| volumeAttributesClassName 可用于设置此声明使用的 VolumeAttributesClass。如果指定,CSI 驱动程序将使用对应的 VolumeAttributesClass 中定义的属性创建或更新卷。这有一个不同于 storageClassName 的目的,可在创建声明后更改。空字符串表示,不会将 VolumeAttributesClass 应用到声明,但不允许在设置后将此字段重置为空字符串。如果未指定,并且 PersistentVolumeClaim 为 unbound,则 persistentvolume 控制器将设置默认的 VolumeAttributesClass (如果存在)。如果 volumeAttributesClass 引用的资源不存在,则这个 PersistentVolumeClaim 将被设置为 Pending 状态,如 modifyVolumeStatus 字段反映,直到资源存在为止。更多信息: https://kubernetes.io/docs/concepts/storage/volume-attributes-classes/ (Alpha)使用此字段需要启用 VolumeAttributesClass 功能门。 |
|
| volumeMode 定义声明需要哪些卷类型。当未包含在 claim spec 中时,文件系统的值会被表示。 |
|
| volumeName 是对此声明支持的 PersistentVolume 的绑定引用。 |
8.1.361. .spec.storage.ephemeral.volumeClaimTemplate.spec.dataSource
- 描述
- Datasource 字段可以用来指定:* 一个现有的 VolumeSnapshot 对象(snapshot.storage.k8s.io/VolumeSnapshot)* 一个现有的 PVC (PersistentVolumeClaim),如果置备程序或外部控制器可以支持指定的数据源,它将基于指定数据源的内容创建一个新卷。当启用 AnyVolumeDataSource 功能门时,dataSource 内容将复制到 dataSourceRef 中,当未指定 dataSourceRef.namespace 时,dataSourceRef 内容将复制到 dataSource 中。如果指定了 namespace,则不会将 dataSourceRef 复制到 dataSource 中。
- 类型
-
object
- 必填
-
kind
-
name
-
属性 | 类型 | 描述 |
---|---|---|
|
| APIGroup 是所引用资源的组。如果没有指定 APIGroup,则指定的 Kind 必须位于 core API 组中。对于任何其他第三方类型,需要 APIGroup。 |
|
| kind 是被引用的资源类型 |
|
| name 是被引用的资源的名称 |
8.1.362. .spec.storage.ephemeral.volumeClaimTemplate.spec.dataSourceRef
- 描述
- 如果需要非空卷,则 dataSourceRef 指定要使用数据填充卷的对象。这可以是来自非空 API 组(非核心对象)或 PersistentVolumeClaim 对象的任何对象。当指定对象的类型与某些安装的卷填充或动态置备程序匹配时,卷绑定才会成功。此字段将替换 dataSource 字段的功能,如果两个字段都不是空的,则它们必须具有相同的值。为了向后兼容,当命名空间没有在 dataSourceRef 中指定时,如果其中一个为空,则两个字段(dataSource 和 dataSourceRef)都会自动设置为相同的值,另一个是非空的。当在 dataSourceRef 中指定 namespace 时,dataSource 不设置为相同的值,必须为空。dataSource 和 dataSourceRef 之间有三个重要区别:* While dataSource 只允许两种特定类型的对象,dataSourceRef 允许任何非核心对象,以及 PersistentVolumeClaim 对象。* 虽然 dataSource 忽略了禁止的值(丢弃它们),dataSourceRef 保留所有值,并在指定禁止的值时生成错误。* 虽然 dataSource 只允许本地对象,dataSourceRef 允许任何命名空间中的对象。(beta)使用此字段需要启用 AnyVolumeDataSource 功能门。(alpha)使用 dataSourceRef 的 namespace 字段需要启用 CrossNamespaceVolumeDataSource 功能门。
- 类型
-
object
- 必填
-
kind
-
name
-
属性 | 类型 | 描述 |
---|---|---|
|
| APIGroup 是所引用资源的组。如果没有指定 APIGroup,则指定的 Kind 必须位于 core API 组中。对于任何其他第三方类型,需要 APIGroup。 |
|
| kind 是被引用的资源类型 |
|
| name 是被引用的资源的名称 |
|
| 命名空间是被引用的资源的命名空间,请注意,当指定命名空间时,引用命名空间中需要一个 gateway.networking.k8s.io/ReferenceGrant 对象来允许该命名空间的所有者接受引用。详情请查看 ReferenceGrant 文档。(alpha)此字段需要启用 CrossNamespaceVolumeDataSource 功能门。 |
8.1.363. .spec.storage.ephemeral.volumeClaimTemplate.spec.resources
- 描述
- resources 代表卷应具有的最小资源。如果启用了 RecoverVolumeExpansionFailure 功能,用户可以指定小于之前值的资源要求,但仍必须高于声明的 status 字段中记录的容量。更多信息: https://kubernetes.io/docs/concepts/storage/persistent-volumes#resources
- 类型
-
object
属性 | 类型 | 描述 |
---|---|---|
|
| 限制描述了允许的最大计算资源量。更多信息: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/ |
|
| Requests 描述了所需的最少计算资源。如果容器省略了 Requests,则默认为 Limits (如果明确指定),否则默认为实现定义的值。请求不能超过限值。更多信息: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/ |
8.1.364. .spec.storage.ephemeral.volumeClaimTemplate.spec.selector
- 描述
- selector 是要考虑绑定的卷的标签查询。
- 类型
-
object
属性 | 类型 | 描述 |
---|---|---|
|
| matchExpressions 是标签选择器要求列表。要求的逻辑关系是 AND。 |
|
| 标签选择器要求是一个选择器,其中包含与键和值相关的值、键和值。 |
|
| matchLabels 是 {key,value} 对的映射。MatchLabels 映射中的单个 {key,value} 等同于 matchExpressions 的一个元素,其 key 字段是 "key",运算符是 "In",值数组仅包含 "value"。要求的逻辑关系是 AND。 |
8.1.365. .spec.storage.ephemeral.volumeClaimTemplate.spec.selector.matchExpressions
- 描述
- matchExpressions 是标签选择器要求列表。要求的逻辑关系是 AND。
- 类型
-
数组
8.1.366. .spec.storage.ephemeral.volumeClaimTemplate.spec.selector.matchExpressions[]
- 描述
- 标签选择器要求是一个选择器,其中包含与键和值相关的值、键和值。
- 类型
-
object
- 必填
-
key
-
operator
-
属性 | 类型 | 描述 |
---|---|---|
|
| key 是选择器应用到的标签键。 |
|
| 运算符代表一个键与一组值的关系。有效的运算符是 In、NotIn、Exists 和 DoesNotExist。 |
|
| 值是字符串值的数组。如果运算符是 In 或 NotIn,则值数组必须是非空的。如果运算符是 Exists 或 DoesNotExist,则值数组必须为空。这个数组会在策略性合并补丁中被替换。 |
8.1.367. .spec.storage.volumeClaimTemplate
- 描述
- 定义 Prometheus StatefulSets 使用的 PVC spec。使用无法自动置备的卷的最简单方法是使用带有手动创建的 PersistentVolume 的标签选择器。
- 类型
-
object
属性 | 类型 | 描述 |
---|---|---|
|
| APIVersion 定义对象的这个表示法的版本化的 schema。服务器应该将识别的模式转换为最新的内部值,并可拒绝未识别的值。更多信息: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources |
|
| kind 是一个字符串值,代表此对象所代表的 REST 资源。服务器可以从客户端向其提交请求的端点推断。无法更新。采用驼峰拼写法 (CamelCase)。更多信息: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds |
|
| EmbeddedMetadata 包含与 EmbeddedResource 相关的元数据。 |
|
| 定义 Pod 作者请求的卷所需的特征。更多信息: https://kubernetes.io/docs/concepts/storage/persistent-volumes#persistentvolumeclaims |
|
| deprecated: 此字段永不设置。 |
8.1.368. .spec.storage.volumeClaimTemplate.metadata
- 描述
- EmbeddedMetadata 包含与 EmbeddedResource 相关的元数据。
- 类型
-
object
属性 | 类型 | 描述 |
---|---|---|
|
| annotations 是一个无结构的键值映射,它存储有资源,可通过外部工具存储和检索任意元数据。它们不可查询,应在修改对象时保留。更多信息: http://kubernetes.io/docs/user-guide/annotations |
|
| 可用于组织和分类(范围和选择)对象的字符串键和值映射。可能与复制控制器和服务选择器匹配。更多信息: http://kubernetes.io/docs/user-guide/labels |
|
| 名称在命名空间中必须是唯一的。创建资源时需要一些资源,但有些资源可能会允许客户端自动请求生成适当名称。name 主要用于创建 idempotence 和配置定义。无法更新。更多信息: http://kubernetes.io/docs/user-guide/identifiers#names |
8.1.369. .spec.storage.volumeClaimTemplate.spec
- 描述
- 定义 Pod 作者请求的卷所需的特征。更多信息: https://kubernetes.io/docs/concepts/storage/persistent-volumes#persistentvolumeclaims
- 类型
-
object
属性 | 类型 | 描述 |
---|---|---|
|
| accessModes 包含卷应具有所需的访问模式。更多信息: https://kubernetes.io/docs/concepts/storage/persistent-volumes#access-modes-1 |
|
| Datasource 字段可以用来指定:* 一个现有的 VolumeSnapshot 对象(snapshot.storage.k8s.io/VolumeSnapshot)* 一个现有的 PVC (PersistentVolumeClaim),如果置备程序或外部控制器可以支持指定的数据源,它将基于指定数据源的内容创建一个新卷。当启用 AnyVolumeDataSource 功能门时,dataSource 内容将复制到 dataSourceRef 中,当未指定 dataSourceRef.namespace 时,dataSourceRef 内容将复制到 dataSource 中。如果指定了 namespace,则不会将 dataSourceRef 复制到 dataSource 中。 |
|
| 如果需要非空卷,则 dataSourceRef 指定要使用数据填充卷的对象。这可以是来自非空 API 组(非核心对象)或 PersistentVolumeClaim 对象的任何对象。当指定对象的类型与某些安装的卷填充或动态置备程序匹配时,卷绑定才会成功。此字段将替换 dataSource 字段的功能,如果两个字段都不是空的,则它们必须具有相同的值。为了向后兼容,当命名空间没有在 dataSourceRef 中指定时,如果其中一个为空,则两个字段(dataSource 和 dataSourceRef)都会自动设置为相同的值,另一个是非空的。当在 dataSourceRef 中指定 namespace 时,dataSource 不设置为相同的值,必须为空。dataSource 和 dataSourceRef 之间有三个重要区别:* While dataSource 只允许两种特定类型的对象,dataSourceRef 允许任何非核心对象,以及 PersistentVolumeClaim 对象。* 虽然 dataSource 忽略了禁止的值(丢弃它们),dataSourceRef 保留所有值,并在指定禁止的值时生成错误。* 虽然 dataSource 只允许本地对象,dataSourceRef 允许任何命名空间中的对象。(beta)使用此字段需要启用 AnyVolumeDataSource 功能门。(alpha)使用 dataSourceRef 的 namespace 字段需要启用 CrossNamespaceVolumeDataSource 功能门。 |
|
| resources 代表卷应具有的最小资源。如果启用了 RecoverVolumeExpansionFailure 功能,用户可以指定小于之前值的资源要求,但仍必须高于声明的 status 字段中记录的容量。更多信息: https://kubernetes.io/docs/concepts/storage/persistent-volumes#resources |
|
| selector 是要考虑绑定的卷的标签查询。 |
|
| storageClassName 是声明所需的 StorageClass 的名称。更多信息: https://kubernetes.io/docs/concepts/storage/persistent-volumes#class-1 |
|
| volumeAttributesClassName 可用于设置此声明使用的 VolumeAttributesClass。如果指定,CSI 驱动程序将使用对应的 VolumeAttributesClass 中定义的属性创建或更新卷。这有一个不同于 storageClassName 的目的,可在创建声明后更改。空字符串表示,不会将 VolumeAttributesClass 应用到声明,但不允许在设置后将此字段重置为空字符串。如果未指定,并且 PersistentVolumeClaim 为 unbound,则 persistentvolume 控制器将设置默认的 VolumeAttributesClass (如果存在)。如果 volumeAttributesClass 引用的资源不存在,则这个 PersistentVolumeClaim 将被设置为 Pending 状态,如 modifyVolumeStatus 字段反映,直到资源存在为止。更多信息: https://kubernetes.io/docs/concepts/storage/volume-attributes-classes/ (Alpha)使用此字段需要启用 VolumeAttributesClass 功能门。 |
|
| volumeMode 定义声明需要哪些卷类型。当未包含在 claim spec 中时,文件系统的值会被表示。 |
|
| volumeName 是对此声明支持的 PersistentVolume 的绑定引用。 |
8.1.370. .spec.storage.volumeClaimTemplate.spec.dataSource
- 描述
- Datasource 字段可以用来指定:* 一个现有的 VolumeSnapshot 对象(snapshot.storage.k8s.io/VolumeSnapshot)* 一个现有的 PVC (PersistentVolumeClaim),如果置备程序或外部控制器可以支持指定的数据源,它将基于指定数据源的内容创建一个新卷。当启用 AnyVolumeDataSource 功能门时,dataSource 内容将复制到 dataSourceRef 中,当未指定 dataSourceRef.namespace 时,dataSourceRef 内容将复制到 dataSource 中。如果指定了 namespace,则不会将 dataSourceRef 复制到 dataSource 中。
- 类型
-
object
- 必填
-
kind
-
name
-
属性 | 类型 | 描述 |
---|---|---|
|
| APIGroup 是所引用资源的组。如果没有指定 APIGroup,则指定的 Kind 必须位于 core API 组中。对于任何其他第三方类型,需要 APIGroup。 |
|
| kind 是被引用的资源类型 |
|
| name 是被引用的资源的名称 |
8.1.371. .spec.storage.volumeClaimTemplate.spec.dataSourceRef
- 描述
- 如果需要非空卷,则 dataSourceRef 指定要使用数据填充卷的对象。这可以是来自非空 API 组(非核心对象)或 PersistentVolumeClaim 对象的任何对象。当指定对象的类型与某些安装的卷填充或动态置备程序匹配时,卷绑定才会成功。此字段将替换 dataSource 字段的功能,如果两个字段都不是空的,则它们必须具有相同的值。为了向后兼容,当命名空间没有在 dataSourceRef 中指定时,如果其中一个为空,则两个字段(dataSource 和 dataSourceRef)都会自动设置为相同的值,另一个是非空的。当在 dataSourceRef 中指定 namespace 时,dataSource 不设置为相同的值,必须为空。dataSource 和 dataSourceRef 之间有三个重要区别:* While dataSource 只允许两种特定类型的对象,dataSourceRef 允许任何非核心对象,以及 PersistentVolumeClaim 对象。* 虽然 dataSource 忽略了禁止的值(丢弃它们),dataSourceRef 保留所有值,并在指定禁止的值时生成错误。* 虽然 dataSource 只允许本地对象,dataSourceRef 允许任何命名空间中的对象。(beta)使用此字段需要启用 AnyVolumeDataSource 功能门。(alpha)使用 dataSourceRef 的 namespace 字段需要启用 CrossNamespaceVolumeDataSource 功能门。
- 类型
-
object
- 必填
-
kind
-
name
-
属性 | 类型 | 描述 |
---|---|---|
|
| APIGroup 是所引用资源的组。如果没有指定 APIGroup,则指定的 Kind 必须位于 core API 组中。对于任何其他第三方类型,需要 APIGroup。 |
|
| kind 是被引用的资源类型 |
|
| name 是被引用的资源的名称 |
|
| 命名空间是被引用的资源的命名空间,请注意,当指定命名空间时,引用命名空间中需要一个 gateway.networking.k8s.io/ReferenceGrant 对象来允许该命名空间的所有者接受引用。详情请查看 ReferenceGrant 文档。(alpha)此字段需要启用 CrossNamespaceVolumeDataSource 功能门。 |
8.1.372. .spec.storage.volumeClaimTemplate.spec.resources
- 描述
- resources 代表卷应具有的最小资源。如果启用了 RecoverVolumeExpansionFailure 功能,用户可以指定小于之前值的资源要求,但仍必须高于声明的 status 字段中记录的容量。更多信息: https://kubernetes.io/docs/concepts/storage/persistent-volumes#resources
- 类型
-
object
属性 | 类型 | 描述 |
---|---|---|
|
| 限制描述了允许的最大计算资源量。更多信息: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/ |
|
| Requests 描述了所需的最少计算资源。如果容器省略了 Requests,则默认为 Limits (如果明确指定),否则默认为实现定义的值。请求不能超过限值。更多信息: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/ |
8.1.373. .spec.storage.volumeClaimTemplate.spec.selector
- 描述
- selector 是要考虑绑定的卷的标签查询。
- 类型
-
object
属性 | 类型 | 描述 |
---|---|---|
|
| matchExpressions 是标签选择器要求列表。要求的逻辑关系是 AND。 |
|
| 标签选择器要求是一个选择器,其中包含与键和值相关的值、键和值。 |
|
| matchLabels 是 {key,value} 对的映射。MatchLabels 映射中的单个 {key,value} 等同于 matchExpressions 的一个元素,其 key 字段是 "key",运算符是 "In",值数组仅包含 "value"。要求的逻辑关系是 AND。 |
8.1.374. .spec.storage.volumeClaimTemplate.spec.selector.matchExpressions
- 描述
- matchExpressions 是标签选择器要求列表。要求的逻辑关系是 AND。
- 类型
-
array
8.1.375. .spec.storage.volumeClaimTemplate.spec.selector.matchExpressions[]
- 描述
- 标签选择器要求是一个选择器,其中包含与键和值相关的值、键和值。
- 类型
-
object
- 必填
-
key
-
operator
-
属性 | 类型 | 描述 |
---|---|---|
|
| key 是选择器应用到的标签键。 |
|
| 运算符代表一个键与一组值的关系。有效的运算符是 In、NotIn、Exists 和 DoesNotExist。 |
|
| 值是字符串值的数组。如果运算符是 In 或 NotIn,则值数组必须是非空的。如果运算符是 Exists 或 DoesNotExist,则值数组必须为空。这个数组会在策略性合并补丁中被替换。 |
8.1.376. .spec.storage.volumeClaimTemplate.status
- 描述
- deprecated: 此字段永不设置。
- 类型
-
object
属性 | 类型 | 描述 |
---|---|---|
|
| accessModes 包含 PVC 支持的卷的实际访问模式。更多信息: https://kubernetes.io/docs/concepts/storage/persistent-volumes#access-modes-1 |
|
| allocatedResourceStatuses 存储给定 PVC 的大小的资源状态。键名称遵循标准 Kubernetes 标签语法。有效值为:* Un-prefixed 键: - storage - 卷的容量。* 自定义资源必须使用定义实现的前缀前缀名称,如 "example.com/my-custom-resource" 除以上值外 - 未前缀或具有 kubernetes.io 前缀的密钥被视为保留,因此可能无法使用。 ClaimResourceStatus 可以处于以下状态: - ControllerResizeInProgress: 当重新定义 control-plane 大小调整卷大小时 State set。- ControllerResizeFailed: 在重新定义控制器大小失败时,State set 会失败,并显示终端错误。- NodeResizePending: 当重新定义控制器调整卷的大小时 State 设置,但节点上需要进一步重新定义卷大小。- NodeResizeInProgress: 当 kubelet 开始重新定义卷的大小时设置 State。- NodeResizeFailed: 当 kubelet 中调整大小失败并显示终端错误时,State 设置。临时错误没有设置 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" When this field is not set, 这意味着,给定 PVC 没有调整大小的操作。 接收之前未知 resourceName 或 ClaimResourceStatus 的 PVC 更新的控制器应忽略其设计的用途的更新。例如 - 仅负责重新定义卷大小调整容量的控制器,应忽略更改与 PVC 相关的其他有效资源的 PVC 更新。 这是一个 alpha 字段,需要启用 RecoverVolumeExpansionFailure 功能。 |
|
| allocatedResources 跟踪分配给 PVC 的资源,包括其容量。键名称遵循标准 Kubernetes 标签语法。有效值为:* Un-prefixed 键: - storage - 卷的容量。* 自定义资源必须使用定义实现的前缀前缀名称,如 "example.com/my-custom-resource" 除以上值外 - 未前缀或具有 kubernetes.io 前缀的密钥被视为保留,因此可能无法使用。 当请求卷扩展操作时,此处报告的容量可能大于实际容量。对于存储配额,使用来自 allocatedResources 和 PVC.spec.resources 的值。如果没有设置 allocatedResources,则单独使用 PVC.spec.resources 进行配额计算。如果卷扩展容量请求较低,则只有当实际卷容量相等或低于请求的容量时,才会降低 allocatedResources。 接收之前未知 resourceName 的 PVC 更新的控制器应忽略其目的的更新。例如 - 仅负责重新定义卷大小调整容量的控制器,应忽略更改与 PVC 相关的其他有效资源的 PVC 更新。 这是一个 alpha 字段,需要启用 RecoverVolumeExpansionFailure 功能。 |
|
| capacity 代表底层卷的实际资源。 |
|
| 条件是持久性卷声明的当前条件。如果底层持久性卷被调整大小,则条件将设置为 'Resizing'。 |
|
| PersistentVolumeClaimCondition 包含有关 pvc 状态的详细信息 |
|
| currentVolumeAttributesClassName 是 PVC 正在使用的 VolumeAttributesClass 的当前名称。当取消设置时,没有应用到此 PersistentVolumeClaim 的 VolumeAttributeClass。这是一个 alpha 字段,需要启用 VolumeAttributesClass 功能。 |
|
| ModifyVolumeStatus 代表 ControllerModifyVolume 操作的状态对象。当这未设置时,不会尝试 ModifyVolume 操作。这是一个 alpha 字段,需要启用 VolumeAttributesClass 功能。 |
|
| phase 代表 PersistentVolumeClaim 的当前阶段。 |
8.1.377. .spec.storage.volumeClaimTemplate.status.conditions
- 描述
- 条件是持久性卷声明的当前条件。如果底层持久性卷被调整大小,则条件将设置为 'Resizing'。
- 类型
-
array
8.1.378. .spec.storage.volumeClaimTemplate.status.conditions[]
- 描述
- PersistentVolumeClaimCondition 包含有关 pvc 状态的详细信息
- 类型
-
object
- 必填
-
status
-
type
-
属性 | 类型 | 描述 |
---|---|---|
|
| lastProbeTime 是我们探测到条件的时间。 |
|
| lastTransitionTime 是条件从一个状态转换到另一个状态的时间。 |
|
| Message 是人类可读的消息,指示最后一次转换的详细信息。 |
|
| 原因是唯一的,这应该是一个简短的机器理解字符串,给出了条件最后一次转换的原因。如果报告"重新调整",则表示已调整底层持久性卷的大小。 |
|
| |
|
| PersistentVolumeClaimConditionType 是 PersistentVolumeClaimCondition.Type 的有效值 |
8.1.379. .spec.storage.volumeClaimTemplate.status.modifyVolumeStatus
- 描述
- ModifyVolumeStatus 代表 ControllerModifyVolume 操作的状态对象。当这未设置时,不会尝试 ModifyVolume 操作。这是一个 alpha 字段,需要启用 VolumeAttributesClass 功能。
- 类型
-
object
- 必填
-
status
-
属性 | 类型 | 描述 |
---|---|---|
|
| status 是 ControllerModifyVolume 操作的状态。它可以处于以下状态: - Pending Pending 表示因为未处理的要求(如指定的 VolumeAttributesClass 不存在)- InProgress InProgress 表示卷被修改。- 不可联邦表示请求已被修改为无效的 CSI 驱动程序。要解决错误,需要指定一个有效的 VolumeAttributesClass。注: 以后可以添加新状态。消费者应检查未知状态并正确失败。 |
|
| targetVolumeAttributesClassName 是当前被协调的 PVC 的 VolumeAttributesClass 的名称 |
8.1.380. .spec.thanos
- 描述
- 定义可选 Thanos sidecar 的配置。
- 类型
-
object
属性 | 类型 | 描述 |
---|---|---|
|
| AdditionalArgs 允许为 Thanos 容器设置额外的参数。参数以 as-is 传递给 Thanos 容器,如果它们无效或不支持给定的 Thanos 版本,则可能会导致问题。如果参数冲突(例如,已由 Operator 本身设置的参数)或在提供无效参数时,协调将失败,并会记录错误。 |
|
| 参数作为 AdditionalArgs 列表的一部分。 |
|
| deprecated: 使用 'image' 替代。 |
|
| BlockDuration 控制 Prometheus 生成的 TSDB 块的大小。默认值为 2h,用于与上游 Prometheus 默认值匹配。 警告:更改块持续时间可能会影响整个 Prometheus/Thanos 堆栈的性能和效率,因为它如何与内存和 Thanos 紧凑器交互。建议把这个值保留为最多的提取或规则间隔 120 倍。例如,30s * 120 = 1h。 |
|
| 检索 Prometheus 配置的频率。 |
|
| 检索 Prometheus 配置时等待的最长时间。 |
|
| 为 true 时,Thanos sidecar 侦听 loopback 接口,而不是 gRPC 端点的 Pod IP 地址。
如果 |
|
| 为提供 StoreAPI 的 gRPC 服务器配置 TLS 参数。
注: 目前只支持 |
|
| 为 true 时,Thanos sidecar 侦听 loopback 接口,而不是 HTTP 端点的 Pod IP 地址。
如果 |
|
|
Thanos 的容器镜像名称。如果指定,它优先于
仍然需要指定
如果没有定义 |
|
|
deprecated: 使用 |
|
| 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 的资源请求和限值。 |
|
| deprecated: 使用 'image' 替代。镜像摘要可以指定为镜像名称的一部分。 |
|
| deprecated: 使用 'image' 替代。镜像标签可作为镜像名称的一部分指定。 |
|
| 定义 Thanos sidecar 的追踪配置。
更多信息: https://thanos.io/tip/thanos/tracing.md/ 这是一个 实验性功能,它可能会以中断的方式改变任何即将推出的版本。 |
|
| 为 Thanos sidecar 定义追踪配置文件。
此字段优先于 更多信息: https://thanos.io/tip/thanos/tracing.md/ 这是一个 实验性功能,它可能会以中断的方式改变任何即将推出的版本。 |
|
| 正在部署的 Thanos 版本。Operator 使用此信息来生成 Prometheus StatefulSet + 配置文件。 如果没有指定,Operator 会假定在发布 Operator 版本时提供 Thanos 的最新上游版本。 |
|
| volumeMounts 允许为 Thanos 配置额外的 VolumeMount。specified volumeMounts 将附加到 'thanos-sidecar' 容器中的其他 VolumeMount 中。 |
|
| VolumeMount 描述了容器内卷挂载。 |
8.1.381. .spec.thanos.additionalArgs
- 描述
- AdditionalArgs 允许为 Thanos 容器设置额外的参数。参数以 as-is 传递给 Thanos 容器,如果它们无效或不支持给定的 Thanos 版本,则可能会导致问题。如果参数冲突(例如,已由 Operator 本身设置的参数)或在提供无效参数时,协调将失败,并会记录错误。
- 类型
-
数组
8.1.382. .spec.thanos.additionalArgs[]
- 描述
- 参数作为 AdditionalArgs 列表的一部分。
- 类型
-
object
- 必填
-
name
-
属性 | 类型 | 描述 |
---|---|---|
|
| 参数的名称,如 "scrape.discovery-reload-interval"。 |
|
| 参数值,如 30s。对于仅限名称的参数(如 --storage.tsdb.no-lockfile)可以为空。 |
8.1.383. .spec.thanos.grpcServerTlsConfig
- 描述
为提供 StoreAPI 的 gRPC 服务器配置 TLS 参数。
注: 目前只支持
caFile
、certFile
和keyFile
字段。- 类型
-
object
属性 | 类型 | 描述 |
---|---|---|
|
| 验证服务器证书时使用的证书颁发机构。 |
|
| Prometheus 容器中用于目标的 CA 证书的路径。 |
|
| 执行 client-authentication 时要出现的客户端证书。 |
|
| 目标的 Prometheus 容器中客户端证书文件的路径。 |
|
| 禁用目标证书验证。 |
|
| 目标的 Prometheus 容器中客户端密钥文件的路径。 |
|
| 包含目标客户端密钥文件的 secret。 |
|
| 用于验证目标的主机名。 |
8.1.384. .spec.thanos.grpcServerTlsConfig.ca
- 描述
- 验证服务器证书时使用的证书颁发机构。
- 类型
-
object
属性 | 类型 | 描述 |
---|---|---|
|
| 包含用于目标的数据的 ConfigMap。 |
|
| 包含用于目标的数据的 secret。 |
8.1.385. .spec.thanos.grpcServerTlsConfig.ca.configMap
- 描述
- 包含用于目标的数据的 ConfigMap。
- 类型
-
object
- 必填
-
key
-
属性 | 类型 | 描述 |
---|---|---|
|
| 要选择的密钥。 |
|
|
引用的名称。有效地需要此字段,但因为允许向后兼容为空。这里具有空值的此类实例几乎是错误的。TODO:添加其他有用的字段。apiVersion、kind、uid?更多信息: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names TODO: 当 controller-gen 不需要 https://github.com/kubernetes-sigs/kubebuilder/issues/3896 时,Drop |
|
| 指定是否必须定义 ConfigMap 还是其键 |
8.1.386. .spec.thanos.grpcServerTlsConfig.ca.secret
- 描述
- 包含用于目标的数据的 secret。
- 类型
-
object
- 必填
-
key
-
属性 | 类型 | 描述 |
---|---|---|
|
| 要从中选择的 secret 的密钥。必须是一个有效的 secret 密钥。 |
|
|
引用的名称。有效地需要此字段,但因为允许向后兼容为空。这里具有空值的此类实例几乎是错误的。TODO:添加其他有用的字段。apiVersion、kind、uid?更多信息: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names TODO: 当 controller-gen 不需要 https://github.com/kubernetes-sigs/kubebuilder/issues/3896 时,Drop |
|
| 指定是否需要定义 Secret 还是其密钥 |
8.1.387. .spec.thanos.grpcServerTlsConfig.cert
- 描述
- 执行 client-authentication 时要出现的客户端证书。
- 类型
-
object
属性 | 类型 | 描述 |
---|---|---|
|
| 包含用于目标的数据的 ConfigMap。 |
|
| 包含用于目标的数据的 secret。 |
8.1.388. .spec.thanos.grpcServerTlsConfig.cert.configMap
- 描述
- 包含用于目标的数据的 ConfigMap。
- 类型
-
object
- 必填
-
key
-
属性 | 类型 | 描述 |
---|---|---|
|
| 要选择的密钥。 |
|
|
引用的名称。有效地需要此字段,但因为允许向后兼容为空。这里具有空值的此类实例几乎是错误的。TODO:添加其他有用的字段。apiVersion、kind、uid?更多信息: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names TODO: 当 controller-gen 不需要 https://github.com/kubernetes-sigs/kubebuilder/issues/3896 时,Drop |
|
| 指定是否必须定义 ConfigMap 还是其键 |
8.1.389. .spec.thanos.grpcServerTlsConfig.cert.secret
- 描述
- 包含用于目标的数据的 secret。
- 类型
-
object
- 必填
-
key
-
属性 | 类型 | 描述 |
---|---|---|
|
| 要从中选择的 secret 的密钥。必须是一个有效的 secret 密钥。 |
|
|
引用的名称。有效地需要此字段,但因为允许向后兼容为空。这里具有空值的此类实例几乎是错误的。TODO:添加其他有用的字段。apiVersion、kind、uid?更多信息: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names TODO: 当 controller-gen 不需要 https://github.com/kubernetes-sigs/kubebuilder/issues/3896 时,Drop |
|
| 指定是否需要定义 Secret 还是其密钥 |
8.1.390. .spec.thanos.grpcServerTlsConfig.keySecret
- 描述
- 包含目标客户端密钥文件的 secret。
- 类型
-
object
- 必填
-
key
-
属性 | 类型 | 描述 |
---|---|---|
|
| 要从中选择的 secret 的密钥。必须是一个有效的 secret 密钥。 |
|
|
引用的名称。有效地需要此字段,但因为允许向后兼容为空。这里具有空值的此类实例几乎是错误的。TODO:添加其他有用的字段。apiVersion、kind、uid?更多信息: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names TODO: 当 controller-gen 不需要 https://github.com/kubernetes-sigs/kubebuilder/issues/3896 时,Drop |
|
| 指定是否需要定义 Secret 还是其密钥 |
8.1.391. .spec.thanos.objectStorageConfig
- 描述
定义 Thanos sidecar 的配置,将 TSDB 块上传到对象存储。
更多信息: https://thanos.io/tip/thanos/storage.md/
objectStorageConfigFile 优先于此字段。
- 类型
-
object
- 必填
-
key
-
属性 | 类型 | 描述 |
---|---|---|
|
| 要从中选择的 secret 的密钥。必须是一个有效的 secret 密钥。 |
|
|
引用的名称。有效地需要此字段,但因为允许向后兼容为空。这里具有空值的此类实例几乎是错误的。TODO:添加其他有用的字段。apiVersion、kind、uid?更多信息: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names TODO: 当 controller-gen 不需要 https://github.com/kubernetes-sigs/kubebuilder/issues/3896 时,Drop |
|
| 指定是否需要定义 Secret 还是其密钥 |
8.1.392. .spec.thanos.resources
- 描述
- 定义 Thanos sidecar 的资源请求和限值。
- 类型
-
object
属性 | 类型 | 描述 |
---|---|---|
|
| claim 列出此容器使用的 spec.resourceClaims 中定义的资源名称。 这是一个 alpha 字段,需要启用 DynamicResourceAllocation 功能门。 此字段不可变。它只能为容器设置。 |
|
| ResourceClaim 引用 PodSpec.ResourceClaims 中的一个条目。 |
|
| 限制描述了允许的最大计算资源量。更多信息: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/ |
|
| Requests 描述了所需的最少计算资源。如果容器省略了 Requests,则默认为 Limits (如果明确指定),否则默认为实现定义的值。请求不能超过限值。更多信息: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/ |
8.1.393. .spec.thanos.resources.claims
- 描述
claim 列出此容器使用的 spec.resourceClaims 中定义的资源名称。
这是一个 alpha 字段,需要启用 DynamicResourceAllocation 功能门。
此字段不可变。它只能为容器设置。
- 类型
-
数组
8.1.394. .spec.thanos.resources.claims[]
- 描述
- ResourceClaim 引用 PodSpec.ResourceClaims 中的一个条目。
- 类型
-
object
- 必填
-
name
-
属性 | 类型 | 描述 |
---|---|---|
|
| name 必须与使用此字段的 Pod 的 pod.spec.resourceClaims 中的一个条目的名称匹配。它允许容器内部使用该资源。 |
8.1.395. .spec.thanos.tracingConfig
- 描述
定义 Thanos sidecar 的追踪配置。
tracingConfigFile
优先于此字段。更多信息: https://thanos.io/tip/thanos/tracing.md/
这是一个 实验性功能,它可能会以中断的方式改变任何即将推出的版本。
- 类型
-
object
- 必填
-
key
-
属性 | 类型 | 描述 |
---|---|---|
|
| 要从中选择的 secret 的密钥。必须是一个有效的 secret 密钥。 |
|
|
引用的名称。有效地需要此字段,但因为允许向后兼容为空。这里具有空值的此类实例几乎是错误的。TODO:添加其他有用的字段。apiVersion、kind、uid?更多信息: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names TODO: 当 controller-gen 不需要 https://github.com/kubernetes-sigs/kubebuilder/issues/3896 时,Drop |
|
| 指定是否需要定义 Secret 还是其密钥 |
8.1.396. .spec.thanos.volumeMounts
- 描述
- volumeMounts 允许为 Thanos 配置额外的 VolumeMount。specified volumeMounts 将附加到 'thanos-sidecar' 容器中的其他 VolumeMount 中。
- 类型
-
array
8.1.397. .spec.thanos.volumeMounts[]
- 描述
- VolumeMount 描述了容器内卷挂载。
- 类型
-
object
- 必填
-
mountPath
-
name
-
属性 | 类型 | 描述 |
---|---|---|
|
| 应挂载卷的容器中的路径。不得包含 ':'。 |
|
| mountPropagation 决定挂载如何从主机传播到容器以及反向传播。如果没有设置,则使用 MountPropagationNone。此字段在 1.10 中是 beta。当 RecursiveReadOnly 设置为 IfPossible 或 Enabled 时,mountPropagation 必须是 None 或未指定(默认为 None)。 |
|
| 这必须与卷的 Name 匹配。 |
|
| 如果为 true,则以只读方式挂载,否则读写(false 或未指定)。默认为false。 |
|
| RecursiveReadOnly 指定是否应递归处理只读挂载。 如果 ReadOnly 为 false,则此字段没有意义,必须未指定。 如果 ReadOnly 为 true,且此字段设置为 Disabled,则不会递归只读挂载。如果将此字段设置为 IfPossible,则挂载将递归只读(如果容器运行时支持)。如果此字段设置为 Enabled,则挂载将在容器运行时支持时递归只读,否则不会启动 pod,并生成错误来指示原因。 如果将此字段设置为 IfPossible 或 Enabled,则 MountPropagation 必须设为 None (或未指定,默认为 None)。 如果没有指定此字段,它将被视为与 Disabled 的等效值。 |
|
| 应从中挂载容器卷的卷中的路径。默认为 "" (卷的 root)。 |
|
| 在应该挂载容器卷的卷中扩展路径。行为与 SubPath 类似,但环境变量引用 $(VAR_NAME)使用容器的环境扩展。默认为 "" (卷的 root)。SubPathExpr 和 SubPath 是互斥的。 |
8.1.398. .spec.tolerations
- 描述
- 如果指定,定义 Pod 的容限。
- 类型
-
array
8.1.399. .spec.tolerations[]
- 描述
- 此 Toleration 附加到 pod,以使用匹配的 operator <operator> 容许与 triple <key,value,effect> 匹配的任何污点。
- 类型
-
object
属性 | 类型 | 描述 |
---|---|---|
|
| effect 表示要匹配的污点效果。空意味着匹配所有污点效果。指定后,允许的值为 NoSchedule,PreferNoSchedule 和 NoExecute。 |
|
| key 是容限应用到的污点键。empty 表示与所有污点键匹配。如果键为空,则必须存在运算符;组合意味着匹配所有值和所有键。 |
|
| Operator 代表键与值的关系。有效的运算符是 Exists 和 Equal。默认值为 Equal。exists 等同于值的通配符,以便 pod 可以容忍特定类别的所有污点。 |
|
| tolerationSeconds 代表容限的期间(必须生效 NoExecute,否则此字段将被忽略)可以容忍污点。默认情况下,它不会被设置,这意味着容许任何污点(不要驱除)。零值和负值将被视为 0 (立即删除)。 |
|
| value 是容限匹配的污点值。如果运算符是 Exists,则该值应该为空,否则仅是一个常规字符串。 |
8.1.400. .spec.topologySpreadConstraints
- 描述
- 如果指定,定义 pod 的拓扑分布约束。
- 类型
-
array
8.1.401. .spec.topologySpreadConstraints[]
- 描述
- 类型
-
object
- 必填
-
maxSkew
-
topologyKey
-
whenUnsatisfiable
-
属性 | 类型 | 描述 |
---|---|---|
|
| 定义在 topologySpreadConstraint 上应该将 Prometheus Operator 管理的标签添加到 labelSelector 中。 |
|
| labelSelector 用于查找匹配的 pod。与此标签选择器匹配的 Pod 被计算,以确定其对应拓扑域中的 pod 数量。 |
|
| matchLabelKeys 是一组 pod 标签键,用于选择要在其中计算分布的 pod。这些键用于从传入的 pod 标签中查找值,这些键值标签由 labelSelector 匹配,以选择现有 pod 的组,用于为传入的 pod 计算。匹配键被禁止在 MatchLabelKeys 和 LabelSelector 中。当 LabelSelector 没有设置时,无法设置 matchLabelKeys。传入的 pod 标签中不存在的键将被忽略。null 或空列表表示仅与 labelSelector 匹配。 这是一个 beta 字段,需要启用 MatchLabelKeysInPodTopologySpread 功能门(默认启用)。 |
|
|
maxSkew 描述了 pod 可能没有被均匀分布的程度。当 |
|
| MinDomains 表示合格的域数量。当具有匹配拓扑键的合格域数量小于 minDomains 时,Pod Topology Spread 会将"global minimum"视为 0,然后执行 Skew 的计算。当匹配拓扑键等于或大于 minDomains 的合格域数量时,这个值不会影响调度。因此,当有资格的域数量小于 minDomains 时,调度程序不会将超过 maxSkew Pod 的调度到这些域。如果值为 nil,则约束的行为就像 MinDomains 等于 1 一样。有效值为大于 0 的整数。如果值不是 nil,WhenUnsatisfiable 必须是 DoNotSchedule。 例如,在一个 3 个区集群中,MaxSkew 设置为 2,MinDomains 被设置为 5,且带有与 2/2/2: | zone1 | zone2 | zone2 | zone2 | zone3 | P P | P | P P | P P | P P | P P | 数量的域的数量小于 5 (MinDomains),因此"global minimum"被视为 0。在这种情况下,如果新 Pod 调度到任何三个区域,则无法调度具有相同 labelSelector 的新 pod,因为 computed skew 将为 3 (3 - 0),它将违反 MaxSkew。 |
|
| NodeAffinityPolicy 表示在计算 pod 拓扑分布偏移时,我们将如何处理 Pod 的 nodeAffinity/nodeSelector。选项为:- Honor:只有与 nodeAffinity/nodeSelector 匹配的节点才会包含在计算中。- Ignore: nodeAffinity/nodeSelector 会被忽略。所有节点都包含在计算中。 如果这个值是 nil,则行为等同于 Honor 策略。这是 NodeInclusionPolicyInPodTopologySpread 功能默认启用的 beta 级别功能。 |
|
| NodeTaintsPolicy 指示在计算 pod 拓扑分布偏移时如何对待节点污点。选项为:- Honor: 没有污点的节点,以及传入的 pod 具有容限的污点节点。- Ignore: node taint are ignored.所有节点都包括在内。 如果这个值是 nil,则行为等同于 Ignore 策略。这是 NodeInclusionPolicyInPodTopologySpread 功能默认启用的 beta 级别功能。 |
|
| topologyKey 是节点标签的密钥。带有具有此键和相同值标签的节点被视为在同一拓扑中。我们把每个 <key, value> 视为 "bucket",并尝试将均衡的 pod 数量放在每个存储桶中。我们将域定义为拓扑的特定实例。另外,我们将一个有资格的域定义为节点满足 nodeAffinityPolicy 和 nodeTaintsPolicy 的要求的域。例如,如果 TopologyKey 为 "kubernetes.io/hostname",则每个节点都是该拓扑的域。如果 TopologyKey 是 "topology.kubernetes.io/zone",每个区都是该拓扑的域。这是必填字段。 |
|
| whenUnsatisfiable 表示如何在不满足分散约束的情况下处理 pod。- DoNotSchedule (default)告知调度程序不调度它。- ScheduleAnyway 告知调度程序将 pod 调度到任何位置,但为拓扑赋予更高优先级,有助于减少偏差。如果每个可能的节点分配都会在某些拓扑上违反"MaxSkew",则约束被视为"不satisfiable"。例如,在一个 3 区集群中,MaxSkew 设置为 1,而具有与 3/1/1: | zone1 | zone2 | zone2 | zone3 | P P | P | P | P | P | P | P | P | P | WhenUnsatisfiable 设置为 DoNotSchedule 的 pod 只能调度到 zone2 (zone3)要成为 3/2/1 (3/1/2),在 zone2 (zone3)中以 ActualSkew (2-1)满足 MaxSkew (1)。换句话说,集群仍然可以实现平衡,但调度程序不会使其更不平衡。这是必填字段。 |
8.1.402. .spec.topologySpreadConstraints[].labelSelector
- 描述
- labelSelector 用于查找匹配的 pod。与此标签选择器匹配的 Pod 被计算,以确定其对应拓扑域中的 pod 数量。
- 类型
-
object
属性 | 类型 | 描述 |
---|---|---|
|
| matchExpressions 是标签选择器要求列表。要求的逻辑关系是 AND。 |
|
| 标签选择器要求是一个选择器,其中包含与键和值相关的值、键和值。 |
|
| matchLabels 是 {key,value} 对的映射。MatchLabels 映射中的单个 {key,value} 等同于 matchExpressions 的一个元素,其 key 字段是 "key",运算符是 "In",值数组仅包含 "value"。要求的逻辑关系是 AND。 |
8.1.403. .spec.topologySpreadConstraints[].labelSelector.matchExpressions
- 描述
- matchExpressions 是标签选择器要求列表。要求的逻辑关系是 AND。
- 类型
-
array
8.1.404. .spec.topologySpreadConstraints[].labelSelector.matchExpressions[]
- 描述
- 标签选择器要求是一个选择器,其中包含与键和值相关的值、键和值。
- 类型
-
object
- 必填
-
key
-
operator
-
属性 | 类型 | 描述 |
---|---|---|
|
| key 是选择器应用到的标签键。 |
|
| 运算符代表一个键与一组值的关系。有效的运算符是 In、NotIn、Exists 和 DoesNotExist。 |
|
| 值是字符串值的数组。如果运算符是 In 或 NotIn,则值数组必须是非空的。如果运算符是 Exists 或 DoesNotExist,则值数组必须为空。这个数组会在策略性合并补丁中被替换。 |
8.1.405. .spec.tracingConfig
- 描述
tracingConfig 在 Prometheus 中配置追踪。
这是一个 实验性功能,它可能会以中断的方式改变任何即将推出的版本。
- 类型
-
object
- 必填
-
端点
-
属性 | 类型 | 描述 |
---|---|---|
|
|
用于导出 trace 的客户端。支持的值有 |
|
|
支持的压缩类型的密钥。唯一支持的值是 |
|
| 将 trace 发送到的端点。应以 <host>:<port> 格式提供。 |
|
| 用作与 gRPC 或 HTTP 请求关联的标头的键值对。 |
|
| 如果禁用,客户端将使用安全连接。 |
|
| 设置给定 trace 的概率将被抽样。必须是从 0 到 1 的浮点值。 |
|
| 导出器等待每个批处理导出的最长时间。 |
|
| 发送 trace 时使用的 TLS Config。 |
8.1.406. .spec.tracingConfig.tlsConfig
- 描述
- 发送 trace 时使用的 TLS Config。
- 类型
-
object
属性 | 类型 | 描述 |
---|---|---|
|
| 验证服务器证书时使用的证书颁发机构。 |
|
| Prometheus 容器中用于目标的 CA 证书的路径。 |
|
| 执行 client-authentication 时要出现的客户端证书。 |
|
| 目标的 Prometheus 容器中客户端证书文件的路径。 |
|
| 禁用目标证书验证。 |
|
| 目标的 Prometheus 容器中客户端密钥文件的路径。 |
|
| 包含目标客户端密钥文件的 secret。 |
|
| 用于验证目标的主机名。 |
8.1.407. .spec.tracingConfig.tlsConfig.ca
- 描述
- 验证服务器证书时使用的证书颁发机构。
- 类型
-
object
属性 | 类型 | 描述 |
---|---|---|
|
| 包含用于目标的数据的 ConfigMap。 |
|
| 包含用于目标的数据的 secret。 |
8.1.408. .spec.tracingConfig.tlsConfig.ca.configMap
- 描述
- 包含用于目标的数据的 ConfigMap。
- 类型
-
object
- 必填
-
key
-
属性 | 类型 | 描述 |
---|---|---|
|
| 要选择的密钥。 |
|
|
引用的名称。有效地需要此字段,但因为允许向后兼容为空。这里具有空值的此类实例几乎是错误的。TODO:添加其他有用的字段。apiVersion、kind、uid?更多信息: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names TODO: 当 controller-gen 不需要 https://github.com/kubernetes-sigs/kubebuilder/issues/3896 时,Drop |
|
| 指定是否必须定义 ConfigMap 还是其键 |
8.1.409. .spec.tracingConfig.tlsConfig.ca.secret
- 描述
- 包含用于目标的数据的 secret。
- 类型
-
object
- 必填
-
key
-
属性 | 类型 | 描述 |
---|---|---|
|
| 要从中选择的 secret 的密钥。必须是一个有效的 secret 密钥。 |
|
|
引用的名称。有效地需要此字段,但因为允许向后兼容为空。这里具有空值的此类实例几乎是错误的。TODO:添加其他有用的字段。apiVersion、kind、uid?更多信息: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names TODO: 当 controller-gen 不需要 https://github.com/kubernetes-sigs/kubebuilder/issues/3896 时,Drop |
|
| 指定是否需要定义 Secret 还是其密钥 |
8.1.410. .spec.tracingConfig.tlsConfig.cert
- 描述
- 执行 client-authentication 时要出现的客户端证书。
- 类型
-
object
属性 | 类型 | 描述 |
---|---|---|
|
| 包含用于目标的数据的 ConfigMap。 |
|
| 包含用于目标的数据的 secret。 |
8.1.411. .spec.tracingConfig.tlsConfig.cert.configMap
- 描述
- 包含用于目标的数据的 ConfigMap。
- 类型
-
object
- 必填
-
key
-
属性 | 类型 | 描述 |
---|---|---|
|
| 要选择的密钥。 |
|
|
引用的名称。有效地需要此字段,但因为允许向后兼容为空。这里具有空值的此类实例几乎是错误的。TODO:添加其他有用的字段。apiVersion、kind、uid?更多信息: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names TODO: 当 controller-gen 不需要 https://github.com/kubernetes-sigs/kubebuilder/issues/3896 时,Drop |
|
| 指定是否必须定义 ConfigMap 还是其键 |
8.1.412. .spec.tracingConfig.tlsConfig.cert.secret
- 描述
- 包含用于目标的数据的 secret。
- 类型
-
object
- 必填
-
key
-
属性 | 类型 | 描述 |
---|---|---|
|
| 要从中选择的 secret 的密钥。必须是一个有效的 secret 密钥。 |
|
|
引用的名称。有效地需要此字段,但因为允许向后兼容为空。这里具有空值的此类实例几乎是错误的。TODO:添加其他有用的字段。apiVersion、kind、uid?更多信息: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names TODO: 当 controller-gen 不需要 https://github.com/kubernetes-sigs/kubebuilder/issues/3896 时,Drop |
|
| 指定是否需要定义 Secret 还是其密钥 |
8.1.413. .spec.tracingConfig.tlsConfig.keySecret
- 描述
- 包含目标客户端密钥文件的 secret。
- 类型
-
object
- 必填
-
key
-
属性 | 类型 | 描述 |
---|---|---|
|
| 要从中选择的 secret 的密钥。必须是一个有效的 secret 密钥。 |
|
|
引用的名称。有效地需要此字段,但因为允许向后兼容为空。这里具有空值的此类实例几乎是错误的。TODO:添加其他有用的字段。apiVersion、kind、uid?更多信息: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names TODO: 当 controller-gen 不需要 https://github.com/kubernetes-sigs/kubebuilder/issues/3896 时,Drop |
|
| 指定是否需要定义 Secret 还是其密钥 |
8.1.414. .spec.tsdb
- 描述
- 定义时间序列数据库(TSDB)的运行时重新加载配置。
- 类型
-
object
属性 | 类型 | 描述 |
---|---|---|
|
| 配置在 TSDB 最大时间下限时如何出现超出顺序/出站示例。 一个 out-of-of-bounds 示例,只要示例的时间戳是 >=(TSDB.MaxTime - outOfOrderTimeWindow)。 这是一个 实验性功能,它可能会以中断的方式改变任何即将推出的版本。 它需要 Prometheus >= v2.39.0。 |
8.1.415. .spec.volumeMounts
- 描述
volumeMounts 允许配置额外的 VolumeMount。
volumeMounts 将附加到"prometheus"容器中的其他 VolumeMount 中,这些 VolumeMount 因 StorageSpec 对象而生成。
- 类型
-
array
8.1.416. .spec.volumeMounts[]
- 描述
- VolumeMount 描述了容器内卷挂载。
- 类型
-
object
- 必填
-
mountPath
-
name
-
属性 | 类型 | 描述 |
---|---|---|
|
| 应挂载卷的容器中的路径。不得包含 ':'。 |
|
| mountPropagation 决定挂载如何从主机传播到容器以及反向传播。如果没有设置,则使用 MountPropagationNone。此字段在 1.10 中是 beta。当 RecursiveReadOnly 设置为 IfPossible 或 Enabled 时,mountPropagation 必须是 None 或未指定(默认为 None)。 |
|
| 这必须与卷的 Name 匹配。 |
|
| 如果为 true,则以只读方式挂载,否则读写(false 或未指定)。默认为false。 |
|
| RecursiveReadOnly 指定是否应递归处理只读挂载。 如果 ReadOnly 为 false,则此字段没有意义,必须未指定。 如果 ReadOnly 为 true,且此字段设置为 Disabled,则不会递归只读挂载。如果将此字段设置为 IfPossible,则挂载将递归只读(如果容器运行时支持)。如果此字段设置为 Enabled,则挂载将在容器运行时支持时递归只读,否则不会启动 pod,并生成错误来指示原因。 如果将此字段设置为 IfPossible 或 Enabled,则 MountPropagation 必须设为 None (或未指定,默认为 None)。 如果没有指定此字段,它将被视为与 Disabled 的等效值。 |
|
| 应从中挂载容器卷的卷中的路径。默认为 "" (卷的 root)。 |
|
| 在应该挂载容器卷的卷中扩展路径。行为与 SubPath 类似,但环境变量引用 $(VAR_NAME)使用容器的环境扩展。默认为 "" (卷的 root)。SubPathExpr 和 SubPath 是互斥的。 |
8.1.417. .spec.volumes
- 描述
- 卷允许在输出 StatefulSet 定义中配置额外的卷。指定的卷将附加到作为 StorageSpec 对象生成的其他卷。
- 类型
-
array
8.1.418. .spec.volumes[]
- 描述
- 卷代表 pod 中的指定卷,可以被 pod 中的任何容器访问。
- 类型
-
object
- 必填
-
name
-
属性 | 类型 | 描述 |
---|---|---|
|
| awsElasticBlockStore 代表一个 AWS Disk 资源,附加到 kubelet 的主机机器,然后公开给 pod。更多信息: https://kubernetes.io/docs/concepts/storage/volumes#awselasticblockstore |
|
| azureDisk 代表主机上的 Azure Data Disk 挂载,并绑定到 pod。 |
|
| azureFile 代表主机上的 Azure File Service 挂载,并绑定到 pod。 |
|
| CephFS 代表共享 pod 生命周期的主机上的 Ceph FS 挂载 |
|
| Cinder 代表附加并挂载到 kubelet 主机机器上的 cinder 卷。更多信息: https://examples.k8s.io/mysql-cinder-pd/README.md |
|
| ConfigMap 代表应填充此卷的 configMap |
|
| CSI (Container Storage Interface)代表由特定外部 CSI 驱动程序(Beta 功能)处理的临时存储。 |
|
| downwardAPI 代表应填充此卷的 pod 的 Downward API |
|
| emptyDir 代表共享 pod 生命周期的临时目录。更多信息: https://kubernetes.io/docs/concepts/storage/volumes#emptydir |
|
| ephemeral 代表由集群存储驱动程序处理的卷。卷的生命周期与定义它的 pod 关联 - 将在 pod 启动前创建,并在 pod 被删除时删除。 如果 pod 运行(如需要从快照或容量跟踪中恢复)正常卷时,才需要这个卷。c)通过存储类指定存储驱动程序,以及 d)存储驱动程序支持通过 PersistentVolumeClaim 进行动态卷置备(请参阅 EphemeralVolumeSource 以了解有关这个卷类型和 PersistentVolumeClaim 间的连接的更多信息。 对于保留的时间超过单个 pod 的生命周期,使用 PersistentVolumeClaim 或特定于供应商的 API 之一。 如果使用 CSI 驱动程序,使用 CSI 驱动程序来轻量级本地临时卷 - 如需更多信息,请参阅驱动程序文档。 pod 可以同时使用两种类型的临时卷和持久性卷。 |
|
| FC 代表附加到 kubelet 主机机器的光纤通道资源,然后公开给 pod。 |
|
| FlexVolume 代表使用基于 exec 的插件置备的/附加的通用卷资源。 |
|
| flocker 代表附加到 kubelet 主机机器的 Flocker 卷。这取决于正在运行的 Flocker 控制服务 |
|
| gcePersistentDisk 代表一个 GCE Disk 资源,该资源附加到 kubelet 的主机机器,然后公开给 pod。更多信息: https://kubernetes.io/docs/concepts/storage/volumes#gcepersistentdisk |
|
| gitRepo 代表特定修订版本中的 git 存储库。DEPRECATED: GitRepo 已被弃用。要使用 git 存储库置备容器,请将 EmptyDir 挂载到使用 git 克隆存储库的 InitContainer 中,然后将 EmptyDir 挂载到 Pod 的容器中。 |
|
| GlusterFS 代表共享 pod 生命周期的主机上的 Glusterfs 挂载。更多信息: https://examples.k8s.io/volumes/glusterfs/README.md |
|
| hostpath 代表主机机器上直接公开给容器的已存在的文件或目录。这通常用于系统代理或其他允许查看主机机器的特权事情。大多数容器都不需要这样做。更多信息: https://kubernetes.io/docs/concepts/storage/volumes#hostpath -- TODO (jonesdl)我们需要限制哪些人可以使用主机目录挂载,以及谁可以/不能将主机目录挂载为读/写。 |
|
| iSCSI 代表附加到 kubelet 主机机器的 ISCSI Disk 资源,然后公开给 pod。更多信息: https://examples.k8s.io/volumes/iscsi/README.md |
|
| 卷的名称。必须是 DNS_LABEL,且必须在 pod 中唯一。更多信息: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names |
|
| NFS 代表共享 pod 生命周期更多信息的主机上 NFS 挂载: https://kubernetes.io/docs/concepts/storage/volumes#nfs |
|
| persistentVolumeClaimVolumeSource 代表对同一命名空间中的 PersistentVolumeClaim 的引用。更多信息: https://kubernetes.io/docs/concepts/storage/persistent-volumes#persistentvolumeclaims |
|
| photonPersistentDisk 代表附加并挂载到 kubelets 主机上的 PhotonController 持久磁盘 |
|
| portworxVolume 代表附加并挂载到 kubelets 主机上的 portworx 卷 |
|
| 一个资源 secret、configmap 和 Downward API 中所有的项目项目 |
|
| quobyte 代表共享 pod 生命周期的主机上执行 Quobyte 挂载 |
|
| RBD 代表共享 pod 生命周期的主机上 Rados 块设备挂载。更多信息: https://examples.k8s.io/volumes/rbd/README.md |
|
| scaleIO 代表附加并挂载到 Kubernetes 节点上的 ScaleIO 持久性卷。 |
|
| Secret 代表应填充此卷的 secret。更多信息: https://kubernetes.io/docs/concepts/storage/volumes#secret |
|
| storageos 代表附加并挂载到 Kubernetes 节点上的 StorageOS 卷。 |
|
| vsphereVolume 代表附加并挂载到 kubelets 主机上的 vSphere 卷 |
8.1.419. .spec.volumes[].awsElasticBlockStore
- 描述
- awsElasticBlockStore 代表一个 AWS Disk 资源,附加到 kubelet 的主机机器,然后公开给 pod。更多信息: https://kubernetes.io/docs/concepts/storage/volumes#awselasticblockstore
- 类型
-
object
- 必填
-
volumeID
-
属性 | 类型 | 描述 |
---|---|---|
|
| fstype 是您要挂载的卷的文件系统类型。提示: 确保主机操作系统支持文件系统类型。示例:"ext4", "xfs", "ntfs"。如果未指定,则隐式推断为 "ext4"。更多信息: https://kubernetes.io/docs/concepts/storage/volumes#awselasticblockstore TODO:如何防止文件系统中的错误影响机器 |
|
| partition 是您要挂载的卷中的分区。如果省略,则默认使用卷名称来挂载。示例: 对于卷 /dev/sda1,您可以将分区指定为 "1"。同样,/dev/sda 的卷分区是"0" (或者您可以将属性留空)。 |
|
| readonly 值 true 将强制 VolumeMount 中的 readOnly 设置。更多信息: https://kubernetes.io/docs/concepts/storage/volumes#awselasticblockstore |
|
| VolumeId 是 AWS (Amazon EBS 卷)中持久磁盘资源的唯一 ID。更多信息: https://kubernetes.io/docs/concepts/storage/volumes#awselasticblockstore |
8.1.420. .spec.volumes[].azureDisk
- 描述
- azureDisk 代表主机上的 Azure Data Disk 挂载,并绑定到 pod。
- 类型
-
object
- 必填
-
diskName
-
diskURI
-
属性 | 类型 | 描述 |
---|---|---|
|
| cachingMode 是主机缓存模式: None、Read Only、Read Write。 |
|
| diskname 是 blob 存储中的数据磁盘的 Name |
|
| diskURI 是 blob 存储中的数据磁盘的 URI |
|
| fstype 是要挂载的 Filesystem 类型。必须是主机操作系统支持的文件系统类型。Ex. "ext4", "xfs", "ntfs".如果未指定,则隐式推断为 "ext4"。 |
|
| kind 预期值为 Shared: 每个存储帐户 Dedicated 有多个 blob 磁盘:每个存储帐户 Managed: azure managed data disk (only on managed availability set). 默认为 shared |
|
| readonly Defaults to false (read/write)。此处的 readonly 将强制 VolumeMount 中的 ReadOnly 设置。 |
8.1.421. .spec.volumes[].azureFile
- 描述
- azureFile 代表主机上的 Azure File Service 挂载,并绑定到 pod。
- 类型
-
object
- 必填
-
secretName
-
shareName
-
属性 | 类型 | 描述 |
---|---|---|
|
| readonly 默认为 false (读/写)。此处的 readonly 将强制 VolumeMount 中的 ReadOnly 设置。 |
|
| secretName 是包含 Azure Storage Account Name 和 Key 的 secret 名称 |
|
| sharename 是 azure 共享名称 |
8.1.422. .spec.volumes[].cephfs
- 描述
- CephFS 代表共享 pod 生命周期的主机上的 Ceph FS 挂载
- 类型
-
object
- 必填
-
monitor
-
属性 | 类型 | 描述 |
---|---|---|
|
| monitor 是必需的: monitor 是 Ceph 监视器更多信息的集合: https://examples.k8s.io/volumes/cephfs/README.md#how-to-use-it |
|
| 路径为可选:作为挂载的 root 使用,而不是完整的 Ceph 树,默认为 / |
|
| readonly 为 Optional: Defaults to false (read/write)。此处的 readonly 将强制 VolumeMount 中的 ReadOnly 设置。更多信息: https://examples.k8s.io/volumes/cephfs/README.md#how-to-use-it |
|
| secretfile 为 Optional: SecretFile 是用户密钥环的路径,默认为 /etc/ceph/user.secret 更多信息 :https://examples.k8s.io/volumes/cephfs/README.md#how-to-use-it |
|
| secretRef 为 Optional: SecretRef 对 User 的身份验证 secret 的引用,默认为空。更多信息: https://examples.k8s.io/volumes/cephfs/README.md#how-to-use-it |
|
| User 是可选的:用户是 rados 用户名,默认为 admin 更多信息: https://examples.k8s.io/volumes/cephfs/README.md#how-to-use-it |
8.1.423. .spec.volumes[].cephfs.secretRef
- 描述
- secretRef 为 Optional: SecretRef 对 User 的身份验证 secret 的引用,默认为空。更多信息: https://examples.k8s.io/volumes/cephfs/README.md#how-to-use-it
- 类型
-
object
属性 | 类型 | 描述 |
---|---|---|
|
|
引用的名称。有效地需要此字段,但因为允许向后兼容为空。这里具有空值的此类实例几乎是错误的。TODO:添加其他有用的字段。apiVersion、kind、uid?更多信息: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names TODO: 当 controller-gen 不需要 https://github.com/kubernetes-sigs/kubebuilder/issues/3896 时,Drop |
8.1.424. .spec.volumes[].cinder
- 描述
- Cinder 代表附加并挂载到 kubelet 主机机器上的 cinder 卷。更多信息: https://examples.k8s.io/mysql-cinder-pd/README.md
- 类型
-
object
- 必填
-
volumeID
-
属性 | 类型 | 描述 |
---|---|---|
|
| fstype 是要挂载的文件系统类型。必须是主机操作系统支持的文件系统类型。示例:"ext4", "xfs", "ntfs"。如果未指定,则隐式推断为 "ext4"。更多信息: https://examples.k8s.io/mysql-cinder-pd/README.md |
|
| readonly 默认为 false (读/写)。此处的 readonly 将强制 VolumeMount 中的 ReadOnly 设置。更多信息: https://examples.k8s.io/mysql-cinder-pd/README.md |
|
| secretRef 是可选的:指向包含用于连接到 OpenStack 的参数的 secret 对象。 |
|
| 用于识别 cinder 中的卷的 VolumeId。更多信息: https://examples.k8s.io/mysql-cinder-pd/README.md |
8.1.425. .spec.volumes[].cinder.secretRef
- 描述
- secretRef 是可选的:指向包含用于连接到 OpenStack 的参数的 secret 对象。
- 类型
-
object
属性 | 类型 | 描述 |
---|---|---|
|
|
引用的名称。有效地需要此字段,但因为允许向后兼容为空。这里具有空值的此类实例几乎是错误的。TODO:添加其他有用的字段。apiVersion、kind、uid?更多信息: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names TODO: 当 controller-gen 不需要 https://github.com/kubernetes-sigs/kubebuilder/issues/3896 时,Drop |
8.1.426. .spec.volumes[].configMap
- 描述
- ConfigMap 代表应填充此卷的 configMap
- 类型
-
object
属性 | 类型 | 描述 |
---|---|---|
|
| defaultMode 是可选的:默认用于在创建的文件上设置权限的模式位。必须是 0000 到 0777 之间的数值,或者 0 到 511 之间的十进制值。YAML 接受八进制和十进制值,JSON 需要模式位的十进制值。默认值为 0644。路径中的目录不受此设置的影响。这可能与影响文件模式的其他选项(如 fsGroup )冲突,结果可以是其他模式位。 |
|
| 如果未指定,则引用的 ConfigMap 的 Data 字段中每个键值对将投射到卷中,其名称是键,内容是值。如果指定,列出的键将投射到指定的路径中,并且不会出现未列出的键。如果指定了没有存在于 ConfigMap 中的键,则卷设置将失败,除非标记为可选。路径必须是相对的,且不能包含 '..' 路径,或者以 '..' 开始。 |
|
| 将字符串键映射到卷中的路径。 |
|
|
引用的名称。有效地需要此字段,但因为允许向后兼容为空。这里具有空值的此类实例几乎是错误的。TODO:添加其他有用的字段。apiVersion、kind、uid?更多信息: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names TODO: 当 controller-gen 不需要 https://github.com/kubernetes-sigs/kubebuilder/issues/3896 时,Drop |
|
| 可选指定是否必须定义 ConfigMap 还是其键 |
8.1.427. .spec.volumes[].configMap.items
- 描述
- 如果未指定,则引用的 ConfigMap 的 Data 字段中每个键值对将投射到卷中,其名称是键,内容是值。如果指定,列出的键将投射到指定的路径中,并且不会出现未列出的键。如果指定了没有存在于 ConfigMap 中的键,则卷设置将失败,除非标记为可选。路径必须是相对的,且不能包含 '..' 路径,或者以 '..' 开始。
- 类型
-
array
8.1.428. .spec.volumes[].configMap.items[]
- 描述
- 将字符串键映射到卷中的路径。
- 类型
-
object
- 必填
-
key
-
path
-
属性 | 类型 | 描述 |
---|---|---|
|
| key 是项目的关键。 |
|
| 模式为可选:用于设置此文件权限的模式位。必须是 0000 到 0777 之间的数值,或者 0 到 511 之间的十进制值。YAML 接受八进制和十进制值,JSON 需要模式位的十进制值。如果没有指定,则使用卷 defaultMode。这可能与影响文件模式的其他选项(如 fsGroup )冲突,结果可以是其他模式位。 |
|
| path 是将键映射到的文件的相对路径。可能不是绝对路径。不得包含路径元素 '..'。不得以字符串 '..' 开头。 |
8.1.429. .spec.volumes[].csi
- 描述
- CSI (Container Storage Interface)代表由特定外部 CSI 驱动程序(Beta 功能)处理的临时存储。
- 类型
-
object
- 必填
-
driver
-
属性 | 类型 | 描述 |
---|---|---|
|
| driver 是处理此卷的 CSI 驱动程序的名称。请参考您的 admin,了解集群中注册的正确名称。 |
|
| 要挂载的 fstype。Ex. "ext4", "xfs", "ntfs".如果没有提供,则会将空值传递给关联的 CSI 驱动程序,该驱动程序将决定要应用的默认文件系统。 |
|
| nodePublishSecretRef 是包含敏感信息的 secret 对象的引用,以传递给 CSI 驱动程序,以完成 CSI NodePublishVolume 和 NodeUnpublishVolume 调用。此字段是可选的,如果不需要 secret,则可能会为空。如果 secret 对象包含多个 secret,则会传递所有 secret 引用。 |
|
| readonly 为卷指定只读配置。默认为 false (读/写)。 |
|
| volumeAttributes 存储传递给 CSI 驱动程序的驱动程序特定属性。有关支持的值,请参阅驱动程序的文档。 |
8.1.430. .spec.volumes[].csi.nodePublishSecretRef
- 描述
- nodePublishSecretRef 是包含敏感信息的 secret 对象的引用,以传递给 CSI 驱动程序,以完成 CSI NodePublishVolume 和 NodeUnpublishVolume 调用。此字段是可选的,如果不需要 secret,则可能会为空。如果 secret 对象包含多个 secret,则会传递所有 secret 引用。
- 类型
-
object
属性 | 类型 | 描述 |
---|---|---|
|
|
引用的名称。有效地需要此字段,但因为允许向后兼容为空。这里具有空值的此类实例几乎是错误的。TODO:添加其他有用的字段。apiVersion、kind、uid?更多信息: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names TODO: 当 controller-gen 不需要 https://github.com/kubernetes-sigs/kubebuilder/issues/3896 时,Drop |
8.1.431. .spec.volumes[].downwardAPI
- 描述
- downwardAPI 代表应填充此卷的 pod 的 Downward API
- 类型
-
object
属性 | 类型 | 描述 |
---|---|---|
|
| 可选:默认在创建的文件上使用模式位。必须是 Optional: 模式位,用于默认对创建的文件设置权限。必须是 0000 到 0777 之间的数值,或者 0 到 511 之间的十进制值。YAML 接受八进制和十进制值,JSON 需要模式位的十进制值。默认值为 0644。路径中的目录不受此设置的影响。这可能与影响文件模式的其他选项(如 fsGroup )冲突,结果可以是其他模式位。 |
|
| items 是 Downward API 卷文件的列表 |
|
| DownwardAPIVolumeFile 代表创建包含 pod 字段的文件的信息 |
8.1.432. .spec.volumes[].downwardAPI.items
- 描述
- items 是 Downward API 卷文件的列表
- 类型
-
array
8.1.433. .spec.volumes[].downwardAPI.items[]
- 描述
- DownwardAPIVolumeFile 代表创建包含 pod 字段的文件的信息
- 类型
-
object
- 必填
-
path
-
属性 | 类型 | 描述 |
---|---|---|
|
| 必需:支持选择 pod 的字段:只支持注解、标签、名称、命名空间和 uid。 |
|
| 可选:用于设置此文件权限的模式位,必须是 0000 到 0777 之间的数值,或 0 到 511 之间的十进制值。YAML 接受八进制和十进制值,JSON 需要模式位的十进制值。如果没有指定,则使用卷 defaultMode。这可能与影响文件模式的其他选项(如 fsGroup )冲突,结果可以是其他模式位。 |
|
| 必需:Path 是要创建的文件的相对路径名称。不能是绝对的,也不能包含 '..' 路径。必须经过 utf-8 编码。相对路径的第一个项不能以 '..' 开头。 |
|
| 选择容器的资源:目前只支持资源限值和请求(limits.cpu、limits.memory、requests.cpu 和 requests.memory)。 |
8.1.434. .spec.volumes[].downwardAPI.items[].fieldRef
- 描述
- 必需:支持选择 pod 的字段:只支持注解、标签、名称、命名空间和 uid。
- 类型
-
object
- 必填
-
fieldPath
-
属性 | 类型 | 描述 |
---|---|---|
|
| 模式的版本是按术语编写的 FieldPath,默认为 "v1"。 |
|
| 在指定 API 版本中选择的字段路径。 |
8.1.435. .spec.volumes[].downwardAPI.items[].resourceFieldRef
- 描述
- 选择容器的资源:目前只支持资源限值和请求(limits.cpu、limits.memory、requests.cpu 和 requests.memory)。
- 类型
-
object
- 必填
-
resource
-
属性 | 类型 | 描述 |
---|---|---|
|
| 容器名称:卷需要,对于 env vars是可选的 |
|
| 指定公开资源的输出格式,默认为 "1" |
|
| 必需:要选择的资源 |
8.1.436. .spec.volumes[].emptyDir
- 描述
- emptyDir 代表共享 pod 生命周期的临时目录。更多信息: https://kubernetes.io/docs/concepts/storage/volumes#emptydir
- 类型
-
object
属性 | 类型 | 描述 |
---|---|---|
|
| Medium 代表存储介质类型应支持这个目录。默认值为 "",这意味着使用节点的默认介质。必须是空字符串(默认)或 Memory。更多信息: https://kubernetes.io/docs/concepts/storage/volumes#emptydir |
|
| sizeLimit 是这个 EmptyDir 卷所需的本地存储总量。大小限制也适用于内存介质。内存用量的最大使用量为此处指定的 SizeLimit 和 pod 中所有容器的内存限值总和。默认值为 nil,这意味着限制未定义。更多信息: https://kubernetes.io/docs/concepts/storage/volumes#emptydir |
8.1.437. .spec.volumes[].ephemeral
- 描述
ephemeral 代表由集群存储驱动程序处理的卷。卷的生命周期与定义它的 pod 关联 - 将在 pod 启动前创建,并在 pod 被删除时删除。
如果 pod 运行(如需要从快照或容量跟踪中恢复)正常卷时,才需要这个卷。c)通过存储类指定存储驱动程序,以及 d)存储驱动程序支持通过 PersistentVolumeClaim 进行动态卷置备(请参阅 EphemeralVolumeSource 以了解有关这个卷类型和 PersistentVolumeClaim 间的连接的更多信息。
对于保留的时间超过单个 pod 的生命周期,使用 PersistentVolumeClaim 或特定于供应商的 API 之一。
如果使用 CSI 驱动程序,使用 CSI 驱动程序来轻量级本地临时卷 - 如需更多信息,请参阅驱动程序文档。
pod 可以同时使用两种类型的临时卷和持久性卷。
- 类型
-
object
属性 | 类型 | 描述 |
---|---|---|
|
|
将用于创建独立 PVC 来置备卷。嵌入此 EphemeralVolumeSource 的 pod 将是 PVC 的所有者,即 PVC 将与 pod 一起删除。PVC 的名称将是 < 具有名称不归 pod 所有的现有 PVC 将不会 用于 pod,以避免错误地使用不相关的卷。然后,启动 pod 会被阻断,直到删除不相关的 PVC。如果 pod 使用这样的预先创建的 PVC,则必须在 pod 存在后使用对 pod 的所有者引用来更新 PVC。通常,这应该不需要,但手动重建一个有问题的集群时可能会很有用。 此字段是只读的,Kubernetes 在创建后不会对 PVC 进行任何更改。 必需,不能是 nil。 |
8.1.438. .spec.volumes[].ephemeral.volumeClaimTemplate
- 描述
将用于创建独立 PVC 来置备卷。嵌入此 EphemeralVolumeSource 的 pod 将是 PVC 的所有者,即 PVC 将与 pod 一起删除。PVC 的名称将是 <
pod name>-<volume name>
,其中<volume
name> 是PodSpec.Volumes
数组条目中的名称。如果串联的名称对 PVC 无效(例如,太长),pod 验证将拒绝 pod。具有名称不归 pod 所有的现有 PVC 将不会 用于 pod,以避免错误地使用不相关的卷。然后,启动 pod 会被阻断,直到删除不相关的 PVC。如果 pod 使用这样的预先创建的 PVC,则必须在 pod 存在后使用对 pod 的所有者引用来更新 PVC。通常,这应该不需要,但手动重建一个有问题的集群时可能会很有用。
此字段是只读的,Kubernetes 在创建后不会对 PVC 进行任何更改。
必需,不能是 nil。
- 类型
-
object
- 必填
-
spec
-
属性 | 类型 | 描述 |
---|---|---|
|
| 可能包含创建 PVC 时将复制到 PVC 的标签和注解。不允许其他字段,并在验证过程中被拒绝。 |
|
| PersistentVolumeClaim 的规格。整个内容保持不变复制到从该模板创建的 PVC 中。PersistentVolumeClaim 中与 相同的字段也有效。 |
8.1.439. .spec.volumes[].ephemeral.volumeClaimTemplate.metadata
- 描述
- 可能包含创建 PVC 时将复制到 PVC 的标签和注解。不允许其他字段,并在验证过程中被拒绝。
- 类型
-
object
8.1.440. .spec.volumes[].ephemeral.volumeClaimTemplate.spec
- 描述
- PersistentVolumeClaim 的规格。整个内容保持不变复制到从该模板创建的 PVC 中。PersistentVolumeClaim 中与 相同的字段也有效。
- 类型
-
object
属性 | 类型 | 描述 |
---|---|---|
|
| accessModes 包含卷应具有所需的访问模式。更多信息: https://kubernetes.io/docs/concepts/storage/persistent-volumes#access-modes-1 |
|
| Datasource 字段可以用来指定:* 一个现有的 VolumeSnapshot 对象(snapshot.storage.k8s.io/VolumeSnapshot)* 一个现有的 PVC (PersistentVolumeClaim),如果置备程序或外部控制器可以支持指定的数据源,它将基于指定数据源的内容创建一个新卷。当启用 AnyVolumeDataSource 功能门时,dataSource 内容将复制到 dataSourceRef 中,当未指定 dataSourceRef.namespace 时,dataSourceRef 内容将复制到 dataSource 中。如果指定了 namespace,则不会将 dataSourceRef 复制到 dataSource 中。 |
|
| 如果需要非空卷,则 dataSourceRef 指定要使用数据填充卷的对象。这可以是来自非空 API 组(非核心对象)或 PersistentVolumeClaim 对象的任何对象。当指定对象的类型与某些安装的卷填充或动态置备程序匹配时,卷绑定才会成功。此字段将替换 dataSource 字段的功能,如果两个字段都不是空的,则它们必须具有相同的值。为了向后兼容,当命名空间没有在 dataSourceRef 中指定时,如果其中一个为空,则两个字段(dataSource 和 dataSourceRef)都会自动设置为相同的值,另一个是非空的。当在 dataSourceRef 中指定 namespace 时,dataSource 不设置为相同的值,必须为空。dataSource 和 dataSourceRef 之间有三个重要区别:* While dataSource 只允许两种特定类型的对象,dataSourceRef 允许任何非核心对象,以及 PersistentVolumeClaim 对象。* 虽然 dataSource 忽略了禁止的值(丢弃它们),dataSourceRef 保留所有值,并在指定禁止的值时生成错误。* 虽然 dataSource 只允许本地对象,dataSourceRef 允许任何命名空间中的对象。(beta)使用此字段需要启用 AnyVolumeDataSource 功能门。(alpha)使用 dataSourceRef 的 namespace 字段需要启用 CrossNamespaceVolumeDataSource 功能门。 |
|
| resources 代表卷应具有的最小资源。如果启用了 RecoverVolumeExpansionFailure 功能,用户可以指定小于之前值的资源要求,但仍必须高于声明的 status 字段中记录的容量。更多信息: https://kubernetes.io/docs/concepts/storage/persistent-volumes#resources |
|
| selector 是要考虑绑定的卷的标签查询。 |
|
| storageClassName 是声明所需的 StorageClass 的名称。更多信息: https://kubernetes.io/docs/concepts/storage/persistent-volumes#class-1 |
|
| volumeAttributesClassName 可用于设置此声明使用的 VolumeAttributesClass。如果指定,CSI 驱动程序将使用对应的 VolumeAttributesClass 中定义的属性创建或更新卷。这有一个不同于 storageClassName 的目的,可在创建声明后更改。空字符串表示,不会将 VolumeAttributesClass 应用到声明,但不允许在设置后将此字段重置为空字符串。如果未指定,并且 PersistentVolumeClaim 为 unbound,则 persistentvolume 控制器将设置默认的 VolumeAttributesClass (如果存在)。如果 volumeAttributesClass 引用的资源不存在,则这个 PersistentVolumeClaim 将被设置为 Pending 状态,如 modifyVolumeStatus 字段反映,直到资源存在为止。更多信息: https://kubernetes.io/docs/concepts/storage/volume-attributes-classes/ (Alpha)使用此字段需要启用 VolumeAttributesClass 功能门。 |
|
| volumeMode 定义声明需要哪些卷类型。当未包含在 claim spec 中时,文件系统的值会被表示。 |
|
| volumeName 是对此声明支持的 PersistentVolume 的绑定引用。 |
8.1.441. .spec.volumes[].ephemeral.volumeClaimTemplate.spec.dataSource
- 描述
- Datasource 字段可以用来指定:* 一个现有的 VolumeSnapshot 对象(snapshot.storage.k8s.io/VolumeSnapshot)* 一个现有的 PVC (PersistentVolumeClaim),如果置备程序或外部控制器可以支持指定的数据源,它将基于指定数据源的内容创建一个新卷。当启用 AnyVolumeDataSource 功能门时,dataSource 内容将复制到 dataSourceRef 中,当未指定 dataSourceRef.namespace 时,dataSourceRef 内容将复制到 dataSource 中。如果指定了 namespace,则不会将 dataSourceRef 复制到 dataSource 中。
- 类型
-
object
- 必填
-
kind
-
name
-
属性 | 类型 | 描述 |
---|---|---|
|
| APIGroup 是所引用资源的组。如果没有指定 APIGroup,则指定的 Kind 必须位于 core API 组中。对于任何其他第三方类型,需要 APIGroup。 |
|
| kind 是被引用的资源类型 |
|
| name 是被引用的资源的名称 |
8.1.442. .spec.volumes[].ephemeral.volumeClaimTemplate.spec.dataSourceRef
- 描述
- 如果需要非空卷,则 dataSourceRef 指定要使用数据填充卷的对象。这可以是来自非空 API 组(非核心对象)或 PersistentVolumeClaim 对象的任何对象。当指定对象的类型与某些安装的卷填充或动态置备程序匹配时,卷绑定才会成功。此字段将替换 dataSource 字段的功能,如果两个字段都不是空的,则它们必须具有相同的值。为了向后兼容,当命名空间没有在 dataSourceRef 中指定时,如果其中一个为空,则两个字段(dataSource 和 dataSourceRef)都会自动设置为相同的值,另一个是非空的。当在 dataSourceRef 中指定 namespace 时,dataSource 不设置为相同的值,必须为空。dataSource 和 dataSourceRef 之间有三个重要区别:* While dataSource 只允许两种特定类型的对象,dataSourceRef 允许任何非核心对象,以及 PersistentVolumeClaim 对象。* 虽然 dataSource 忽略了禁止的值(丢弃它们),dataSourceRef 保留所有值,并在指定禁止的值时生成错误。* 虽然 dataSource 只允许本地对象,dataSourceRef 允许任何命名空间中的对象。(beta)使用此字段需要启用 AnyVolumeDataSource 功能门。(alpha)使用 dataSourceRef 的 namespace 字段需要启用 CrossNamespaceVolumeDataSource 功能门。
- 类型
-
object
- 必填
-
kind
-
name
-
属性 | 类型 | 描述 |
---|---|---|
|
| APIGroup 是所引用资源的组。如果没有指定 APIGroup,则指定的 Kind 必须位于 core API 组中。对于任何其他第三方类型,需要 APIGroup。 |
|
| kind 是被引用的资源类型 |
|
| name 是被引用的资源的名称 |
|
| 命名空间是被引用的资源的命名空间,请注意,当指定命名空间时,引用命名空间中需要一个 gateway.networking.k8s.io/ReferenceGrant 对象来允许该命名空间的所有者接受引用。详情请查看 ReferenceGrant 文档。(alpha)此字段需要启用 CrossNamespaceVolumeDataSource 功能门。 |
8.1.443. .spec.volumes[].ephemeral.volumeClaimTemplate.spec.resources
- 描述
- resources 代表卷应具有的最小资源。如果启用了 RecoverVolumeExpansionFailure 功能,用户可以指定小于之前值的资源要求,但仍必须高于声明的 status 字段中记录的容量。更多信息: https://kubernetes.io/docs/concepts/storage/persistent-volumes#resources
- 类型
-
object
属性 | 类型 | 描述 |
---|---|---|
|
| 限制描述了允许的最大计算资源量。更多信息: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/ |
|
| Requests 描述了所需的最少计算资源。如果容器省略了 Requests,则默认为 Limits (如果明确指定),否则默认为实现定义的值。请求不能超过限值。更多信息: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/ |
8.1.444. .spec.volumes[].ephemeral.volumeClaimTemplate.spec.selector
- 描述
- selector 是要考虑绑定的卷的标签查询。
- 类型
-
object
属性 | 类型 | 描述 |
---|---|---|
|
| matchExpressions 是标签选择器要求列表。要求的逻辑关系是 AND。 |
|
| 标签选择器要求是一个选择器,其中包含与键和值相关的值、键和值。 |
|
| matchLabels 是 {key,value} 对的映射。MatchLabels 映射中的单个 {key,value} 等同于 matchExpressions 的一个元素,其 key 字段是 "key",运算符是 "In",值数组仅包含 "value"。要求的逻辑关系是 AND。 |
8.1.445. .spec.volumes[].ephemeral.volumeClaimTemplate.spec.selector.matchExpressions
- 描述
- matchExpressions 是标签选择器要求列表。要求的逻辑关系是 AND。
- 类型
-
数组
8.1.446. .spec.volumes[].ephemeral.volumeClaimTemplate.spec.selector.matchExpressions[]
- 描述
- 标签选择器要求是一个选择器,其中包含与键和值相关的值、键和值。
- 类型
-
object
- 必填
-
key
-
operator
-
属性 | 类型 | 描述 |
---|---|---|
|
| key 是选择器应用到的标签键。 |
|
| 运算符代表一个键与一组值的关系。有效的运算符是 In、NotIn、Exists 和 DoesNotExist。 |
|
| 值是字符串值的数组。如果运算符是 In 或 NotIn,则值数组必须是非空的。如果运算符是 Exists 或 DoesNotExist,则值数组必须为空。这个数组会在策略性合并补丁中被替换。 |
8.1.447. .spec.volumes[].fc
- 描述
- FC 代表附加到 kubelet 主机机器的光纤通道资源,然后公开给 pod。
- 类型
-
object
属性 | 类型 | 描述 |
---|---|---|
|
| fstype 是要挂载的文件系统类型。必须是主机操作系统支持的文件系统类型。Ex. "ext4", "xfs", "ntfs".如果未指定,则隐式推断为 "ext4"。TODO:如何防止文件系统中的错误破坏计算机 |
|
| LUN 是可选的:FC 目标 lun 号 |
|
| readonly 为 Optional: Defaults to false (read/write)。此处的 readonly 将强制 VolumeMount 中的 ReadOnly 设置。 |
|
| targetWWNs 是可选:FC 目标全球名称(WWN) |
|
| wwids 可选:FC 卷全局范围标识符(wwids) Either wwids 或 targetWWN 和 lun 的组合必须被设置,但不能同时设置。 |
8.1.448. .spec.volumes[].flexVolume
- 描述
- FlexVolume 代表使用基于 exec 的插件置备的/附加的通用卷资源。
- 类型
-
object
- 必填
-
driver
-
属性 | 类型 | 描述 |
---|---|---|
|
| driver 是用于此卷的驱动程序的名称。 |
|
| fstype 是要挂载的文件系统类型。必须是主机操作系统支持的文件系统类型。Ex. "ext4", "xfs", "ntfs".默认文件系统依赖于 FlexVolume 脚本。 |
|
| 选项为 Optional:此字段包含额外的命令选项(若有)。 |
|
| readonly 为 Optional: 默认为 false (读/写)。此处的 readonly 将强制 VolumeMount 中的 ReadOnly 设置。 |
|
| secretRef 是 Optional: secretRef 引用了包含敏感信息的 secret 对象,以传递给插件脚本。如果没有指定 secret 对象,这可能为空。如果 secret 对象包含多个 secret,则所有 secret 都会传递给插件脚本。 |
8.1.449. .spec.volumes[].flexVolume.secretRef
- 描述
- secretRef 是 Optional: secretRef 引用了包含敏感信息的 secret 对象,以传递给插件脚本。如果没有指定 secret 对象,这可能为空。如果 secret 对象包含多个 secret,则所有 secret 都会传递给插件脚本。
- 类型
-
object
属性 | 类型 | 描述 |
---|---|---|
|
|
引用的名称。有效地需要此字段,但因为允许向后兼容为空。这里具有空值的此类实例几乎是错误的。TODO:添加其他有用的字段。apiVersion、kind、uid?更多信息: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names TODO: 当 controller-gen 不需要 https://github.com/kubernetes-sigs/kubebuilder/issues/3896 时,Drop |
8.1.450. .spec.volumes[].flocker
- 描述
- flocker 代表附加到 kubelet 主机机器的 Flocker 卷。这取决于正在运行的 Flocker 控制服务
- 类型
-
object
属性 | 类型 | 描述 |
---|---|---|
|
| datasetName 是数据存储为 Flocker dataset 上的 metadata → name 的 Name,应被视为已弃用 |
|
| datasetUUID 是 dataset 的 UUID。这是 Flocker 数据集的唯一标识符 |
8.1.451. .spec.volumes[].gcePersistentDisk
- 描述
- gcePersistentDisk 代表一个 GCE Disk 资源,该资源附加到 kubelet 的主机机器,然后公开给 pod。更多信息: https://kubernetes.io/docs/concepts/storage/volumes#gcepersistentdisk
- 类型
-
object
- 必填
-
pdName
-
属性 | 类型 | 描述 |
---|---|---|
|
| fstype 是您要挂载的卷的文件系统类型。提示: 确保主机操作系统支持文件系统类型。示例:"ext4", "xfs", "ntfs"。如果未指定,则隐式推断为 "ext4"。更多信息: https://kubernetes.io/docs/concepts/storage/volumes#gcepersistentdisk TODO:如何防止文件系统中的错误影响机器 |
|
| partition 是您要挂载的卷中的分区。如果省略,则默认使用卷名称来挂载。示例: 对于卷 /dev/sda1,您可以将分区指定为 "1"。同样,/dev/sda 的卷分区是"0" (或者您可以将属性留空)。更多信息: https://kubernetes.io/docs/concepts/storage/volumes#gcepersistentdisk |
|
| pdName 是 GCE 中的 PD 资源的唯一名称。用于识别 GCE 中的磁盘。更多信息: https://kubernetes.io/docs/concepts/storage/volumes#gcepersistentdisk |
|
| 此处的 readonly 将强制 VolumeMount 中的 ReadOnly 设置。默认为false。更多信息: https://kubernetes.io/docs/concepts/storage/volumes#gcepersistentdisk |
8.1.452. .spec.volumes[].gitRepo
- 描述
- gitRepo 代表特定修订版本中的 git 存储库。DEPRECATED: GitRepo 已被弃用。要使用 git 存储库置备容器,请将 EmptyDir 挂载到使用 git 克隆存储库的 InitContainer 中,然后将 EmptyDir 挂载到 Pod 的容器中。
- 类型
-
object
- 必填
-
软件仓库
-
属性 | 类型 | 描述 |
---|---|---|
|
| directory 是目标目录名称。不得包含或以 '..' 开头。如果提供了 '.',则卷目录将是 git 存储库。否则,如果指定,卷将在带有给定名称的子目录中包含 git 存储库。 |
|
| repository 是 URL |
|
| revision 是指定修订版本的提交哈希。 |
8.1.453. .spec.volumes[].glusterfs
- 描述
- GlusterFS 代表共享 pod 生命周期的主机上的 Glusterfs 挂载。更多信息: https://examples.k8s.io/volumes/glusterfs/README.md
- 类型
-
object
- 必填
-
端点
-
path
-
属性 | 类型 | 描述 |
---|---|---|
|
| 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 |
8.1.454. .spec.volumes[].hostPath
- 描述
- hostpath 代表主机机器上直接公开给容器的已存在的文件或目录。这通常用于系统代理或其他允许查看主机机器的特权事情。大多数容器都不需要这样做。更多信息: https://kubernetes.io/docs/concepts/storage/volumes#hostpath -- TODO (jonesdl)我们需要限制哪些人可以使用主机目录挂载,以及谁可以/不能将主机目录挂载为读/写。
- 类型
-
object
- 必填
-
path
-
属性 | 类型 | 描述 |
---|---|---|
|
| 主机上目录的路径。如果路径是符号链接,它将遵循指向实际路径的链接。更多信息: https://kubernetes.io/docs/concepts/storage/volumes#hostpath |
|
| HostPath Volume 默认为 "" 更多信息: https://kubernetes.io/docs/concepts/storage/volumes#hostpath |
8.1.455. .spec.volumes[].iscsi
- 描述
- iSCSI 代表附加到 kubelet 主机机器的 ISCSI Disk 资源,然后公开给 pod。更多信息: https://examples.k8s.io/volumes/iscsi/README.md
- 类型
-
object
- 必填
-
iqn
-
lun
-
targetPortal
-
属性 | 类型 | 描述 |
---|---|---|
|
| chapAuthDiscovery 定义是否支持 iSCSI Discovery CHAP 身份验证 |
|
| chapAuthSession 定义是否支持 iSCSI 会话 CHAP 身份验证 |
|
| fstype 是您要挂载的卷的文件系统类型。提示: 确保主机操作系统支持文件系统类型。示例:"ext4", "xfs", "ntfs"。如果未指定,则隐式推断为 "ext4"。更多信息: https://kubernetes.io/docs/concepts/storage/volumes#iscsi TODO:如何防止文件系统中的错误影响机器 |
|
| initiatorname 是自定义 iSCSI 启动器名称。如果同时使用 iscsiInterface 指定 initiatorName,则会为连接创建新的 iSCSI 接口 <target portal>:<volume name>。 |
|
| IQN 是目标 iSCSI 限定名称。 |
|
| iscsiInterface 是使用 iSCSI 传输的接口名称。默认为 'default'(tcp)。 |
|
| LUN 表示 iSCSI 目标 Lun 编号。 |
|
| 门户是 iSCSI 目标门户列表。如果端口不是默认值(通常为 TCP 端口 860 和 3260),则门户是 IP 或 ip_addr:port。 |
|
| 此处的 readonly 将强制 VolumeMount 中的 ReadOnly 设置。默认为false。 |
|
| secretRef 是 iSCSI 目标和发起方身份验证的 CHAP Secret |
|
| targetPortal 是 iSCSI 目标门户。如果端口不是默认值(通常为 TCP 端口 860 和 3260),则门户是 IP 或 ip_addr:port。 |
8.1.456. .spec.volumes[].iscsi.secretRef
- 描述
- secretRef 是 iSCSI 目标和发起方身份验证的 CHAP Secret
- 类型
-
object
属性 | 类型 | 描述 |
---|---|---|
|
|
引用的名称。有效地需要此字段,但因为允许向后兼容为空。这里具有空值的此类实例几乎是错误的。TODO:添加其他有用的字段。apiVersion、kind、uid?更多信息: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names TODO: 当 controller-gen 不需要 https://github.com/kubernetes-sigs/kubebuilder/issues/3896 时,Drop |
8.1.457. .spec.volumes[].nfs
- 描述
- NFS 代表共享 pod 生命周期更多信息的主机上 NFS 挂载: https://kubernetes.io/docs/concepts/storage/volumes#nfs
- 类型
-
object
- 必填
-
path
-
server
-
属性 | 类型 | 描述 |
---|---|---|
|
| NFS 服务器导出的路径。更多信息: https://kubernetes.io/docs/concepts/storage/volumes#nfs |
|
| 此处的只读将强制使用只读权限挂载 NFS 导出。默认为false。更多信息: https://kubernetes.io/docs/concepts/storage/volumes#nfs |
|
| server 是 NFS 服务器的主机名或 IP 地址。更多信息: https://kubernetes.io/docs/concepts/storage/volumes#nfs |
8.1.458. .spec.volumes[].persistentVolumeClaim
- 描述
- persistentVolumeClaimVolumeSource 代表对同一命名空间中的 PersistentVolumeClaim 的引用。更多信息: https://kubernetes.io/docs/concepts/storage/persistent-volumes#persistentvolumeclaims
- 类型
-
object
- 必填
-
claimName
-
属性 | 类型 | 描述 |
---|---|---|
|
| claimName 是与使用这个卷的 pod 相同的命名空间中的 PersistentVolumeClaim 的名称。更多信息: https://kubernetes.io/docs/concepts/storage/persistent-volumes#persistentvolumeclaims |
|
| readonly 将强制 VolumeMount 中的 ReadOnly 设置。默认 false。 |
8.1.459. .spec.volumes[].photonPersistentDisk
- 描述
- photonPersistentDisk 代表附加并挂载到 kubelets 主机上的 PhotonController 持久磁盘
- 类型
-
object
- 必填
-
pdID
-
属性 | 类型 | 描述 |
---|---|---|
|
| fstype 是要挂载的文件系统类型。必须是主机操作系统支持的文件系统类型。Ex. "ext4", "xfs", "ntfs".如果未指定,则隐式推断为 "ext4"。 |
|
| pdID 是标识 Photon Controller 持久磁盘的 ID |
8.1.460. .spec.volumes[].portworxVolume
- 描述
- portworxVolume 代表附加并挂载到 kubelets 主机上的 portworx 卷
- 类型
-
object
- 必填
-
volumeID
-
属性 | 类型 | 描述 |
---|---|---|
|
| fstype 代表要挂载的文件系统类型必须是主机操作系统支持的文件系统类型。Ex. "ext4", "xfs".如果未指定,则隐式推断为 "ext4"。 |
|
| readonly 默认为 false (读/写)。此处的 readonly 将强制 VolumeMount 中的 ReadOnly 设置。 |
|
| VolumeId 唯一标识 Portworx 卷 |
8.1.461. .spec.volumes[].projected
- 描述
- 一个资源 secret、configmap 和 Downward API 中所有的项目项目
- 类型
-
object
属性 | 类型 | 描述 |
---|---|---|
|
| defaultMode 是默认用于在创建的文件上设置权限的模式位。必须是 0000 到 0777 之间的数值,或者 0 到 511 之间的十进制值。YAML 接受八进制和十进制值,JSON 需要模式位的十进制值。路径中的目录不受此设置的影响。这可能与影响文件模式的其他选项(如 fsGroup )冲突,结果可以是其他模式位。 |
|
| sources 是卷投射列表 |
|
| 可投射以及其他支持的卷类型的预测 |
8.1.462. .spec.volumes[].projected.sources
- 描述
- sources 是卷投射列表
- 类型
-
array
8.1.463. .spec.volumes[].projected.sources[]
- 描述
- 可投射以及其他支持的卷类型的预测
- 类型
-
object
属性 | 类型 | 描述 |
---|---|---|
|
|
ClusterTrustBundle 允许 pod 访问自动更新文件中的 ClusterTrustBundle 对象的 alpha,由 ClusterTrustBundleProjection 功能门实现。 ClusterTrustBundle 对象可以按名称选择,或者通过 signer 名称和标签选择器的组合来选择。 kubelet 对写入 pod 文件系统的 PEM 内容进行积极规范化。esoteric PEM 功能(如 inter-block 注释和块标头)将被剥离。证书会被重复数据删除。文件中的证书排序是任意的,Kubelet 可能会随时间更改顺序。 |
|
| 有关项目的 configMap 数据的 ConfigMap 信息 |
|
| downwardAPI 有关项目的 downwardAPI 数据的信息 |
|
| 有关项目的 secret 数据的 secret 信息 |
|
| serviceAccountToken 是与项目的 serviceAccountToken 数据相关的信息 |
8.1.464. .spec.volumes[].projected.sources[].clusterTrustBundle
- 描述
ClusterTrustBundle 允许 pod 访问自动更新文件中的 ClusterTrustBundle 对象的
.spec.trustBundle
字段。alpha,由 ClusterTrustBundleProjection 功能门实现。
ClusterTrustBundle 对象可以按名称选择,或者通过 signer 名称和标签选择器的组合来选择。
kubelet 对写入 pod 文件系统的 PEM 内容进行积极规范化。esoteric PEM 功能(如 inter-block 注释和块标头)将被剥离。证书会被重复数据删除。文件中的证书排序是任意的,Kubelet 可能会随时间更改顺序。
- 类型
-
object
- 必填
-
path
-
属性 | 类型 | 描述 |
---|---|---|
|
| 选择与这个标签选择器匹配的所有 ClusterTrustBundles。仅在设置了 signerName 时生效。使用名称互斥器.如果未设置,则解释为"匹配任何内容"。如果设置但为空,则解释为"匹配所有内容"。 |
|
| 按对象名称选择单个 ClusterTrustBundle。与 signerName 和 labelSelector 相互排斥. |
|
| 如果为 true,如果引用的 ClusterTrustBundle 不可用,则不阻止 pod 启动。如果使用 name,则允许命名 ClusterTrustBundle 不存在。如果使用 signerName,则允许 signerName 和 labelSelector 的组合匹配零 ClusterTrustBundles。 |
|
| 卷根的相对路径以写入捆绑包。 |
|
| 选择与这个签名者名称匹配的所有 ClusterTrustBundles。使用名称互斥器.所有所选 ClusterTrustBundles 的内容将统一并去除重复数据。 |
8.1.465. .spec.volumes[].projected.sources[].clusterTrustBundle.labelSelector
- 描述
- 选择与这个标签选择器匹配的所有 ClusterTrustBundles。仅在设置了 signerName 时生效。使用名称互斥器.如果未设置,则解释为"匹配任何内容"。如果设置但为空,则解释为"匹配所有内容"。
- 类型
-
object
属性 | 类型 | 描述 |
---|---|---|
|
| matchExpressions 是标签选择器要求列表。要求的逻辑关系是 AND。 |
|
| 标签选择器要求是一个选择器,其中包含与键和值相关的值、键和值。 |
|
| matchLabels 是 {key,value} 对的映射。MatchLabels 映射中的单个 {key,value} 等同于 matchExpressions 的一个元素,其 key 字段是 "key",运算符是 "In",值数组仅包含 "value"。要求的逻辑关系是 AND。 |
8.1.466. .spec.volumes[].projected.sources[].clusterTrustBundle.labelSelector.matchExpressions
- 描述
- matchExpressions 是标签选择器要求列表。要求的逻辑关系是 AND。
- 类型
-
数组
8.1.467. .spec.volumes[].projected.sources[].clusterTrustBundle.labelSelector.matchExpressions[]
- 描述
- 标签选择器要求是一个选择器,其中包含与键和值相关的值、键和值。
- 类型
-
object
- 必填
-
key
-
operator
-
属性 | 类型 | 描述 |
---|---|---|
|
| key 是选择器应用到的标签键。 |
|
| 运算符代表一个键与一组值的关系。有效的运算符是 In、NotIn、Exists 和 DoesNotExist。 |
|
| 值是字符串值的数组。如果运算符是 In 或 NotIn,则值数组必须是非空的。如果运算符是 Exists 或 DoesNotExist,则值数组必须为空。这个数组会在策略性合并补丁中被替换。 |
8.1.468. .spec.volumes[].projected.sources[].configMap
- 描述
- 有关项目的 configMap 数据的 ConfigMap 信息
- 类型
-
object
属性 | 类型 | 描述 |
---|---|---|
|
| 如果未指定,则引用的 ConfigMap 的 Data 字段中每个键值对将投射到卷中,其名称是键,内容是值。如果指定,列出的键将投射到指定的路径中,并且不会出现未列出的键。如果指定了没有存在于 ConfigMap 中的键,则卷设置将失败,除非标记为可选。路径必须是相对的,且不能包含 '..' 路径,或者以 '..' 开始。 |
|
| 将字符串键映射到卷中的路径。 |
|
|
引用的名称。有效地需要此字段,但因为允许向后兼容为空。这里具有空值的此类实例几乎是错误的。TODO:添加其他有用的字段。apiVersion、kind、uid?更多信息: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names TODO: 当 controller-gen 不需要 https://github.com/kubernetes-sigs/kubebuilder/issues/3896 时,Drop |
|
| 可选指定是否必须定义 ConfigMap 还是其键 |
8.1.469. .spec.volumes[].projected.sources[].configMap.items
- 描述
- 如果未指定,则引用的 ConfigMap 的 Data 字段中每个键值对将投射到卷中,其名称是键,内容是值。如果指定,列出的键将投射到指定的路径中,并且不会出现未列出的键。如果指定了没有存在于 ConfigMap 中的键,则卷设置将失败,除非标记为可选。路径必须是相对的,且不能包含 '..' 路径,或者以 '..' 开始。
- 类型
-
array
8.1.470. .spec.volumes[].projected.sources[].configMap.items[]
- 描述
- 将字符串键映射到卷中的路径。
- 类型
-
object
- 必填
-
key
-
path
-
属性 | 类型 | 描述 |
---|---|---|
|
| key 是项目的关键。 |
|
| 模式为可选:用于设置此文件权限的模式位。必须是 0000 到 0777 之间的数值,或者 0 到 511 之间的十进制值。YAML 接受八进制和十进制值,JSON 需要模式位的十进制值。如果没有指定,则使用卷 defaultMode。这可能与影响文件模式的其他选项(如 fsGroup )冲突,结果可以是其他模式位。 |
|
| path 是将键映射到的文件的相对路径。可能不是绝对路径。不得包含路径元素 '..'。不得以字符串 '..' 开头。 |
8.1.471. .spec.volumes[].projected.sources[].downwardAPI
- 描述
- downwardAPI 有关项目的 downwardAPI 数据的信息
- 类型
-
object
属性 | 类型 | 描述 |
---|---|---|
|
| items 是 DownwardAPIVolume 文件列表 |
|
| DownwardAPIVolumeFile 代表创建包含 pod 字段的文件的信息 |
8.1.472. .spec.volumes[].projected.sources[].downwardAPI.items
- 描述
- items 是 DownwardAPIVolume 文件列表
- 类型
-
array
8.1.473. .spec.volumes[].projected.sources[].downwardAPI.items[]
- 描述
- DownwardAPIVolumeFile 代表创建包含 pod 字段的文件的信息
- 类型
-
object
- 必填
-
path
-
属性 | 类型 | 描述 |
---|---|---|
|
| 必需:支持选择 pod 的字段:只支持注解、标签、名称、命名空间和 uid。 |
|
| 可选:用于设置此文件权限的模式位,必须是 0000 到 0777 之间的数值,或 0 到 511 之间的十进制值。YAML 接受八进制和十进制值,JSON 需要模式位的十进制值。如果没有指定,则使用卷 defaultMode。这可能与影响文件模式的其他选项(如 fsGroup )冲突,结果可以是其他模式位。 |
|
| 必需:Path 是要创建的文件的相对路径名称。不能是绝对的,也不能包含 '..' 路径。必须经过 utf-8 编码。相对路径的第一个项不能以 '..' 开头。 |
|
| 选择容器的资源:目前只支持资源限值和请求(limits.cpu、limits.memory、requests.cpu 和 requests.memory)。 |
8.1.474. .spec.volumes[].projected.sources[].downwardAPI.items[].fieldRef
- 描述
- 必需:支持选择 pod 的字段:只支持注解、标签、名称、命名空间和 uid。
- 类型
-
object
- 必填
-
fieldPath
-
属性 | 类型 | 描述 |
---|---|---|
|
| 模式的版本是按术语编写的 FieldPath,默认为 "v1"。 |
|
| 在指定 API 版本中选择的字段路径。 |
8.1.475. .spec.volumes[].projected.sources[].downwardAPI.items[].resourceFieldRef
- 描述
- 选择容器的资源:目前只支持资源限值和请求(limits.cpu、limits.memory、requests.cpu 和 requests.memory)。
- 类型
-
object
- 必填
-
resource
-
属性 | 类型 | 描述 |
---|---|---|
|
| 容器名称:卷需要,对于 env vars是可选的 |
|
| 指定公开资源的输出格式,默认为 "1" |
|
| 必需:要选择的资源 |
8.1.476. .spec.volumes[].projected.sources[].secret
- 描述
- 有关项目的 secret 数据的 secret 信息
- 类型
-
object
属性 | 类型 | 描述 |
---|---|---|
|
| 如果未指定,则引用 Secret 的 Data 字段中的每个键值对将投射到卷中,其名称是键,内容是值。如果指定,列出的键将投射到指定的路径中,并且不会出现未列出的键。如果指定了没有存在于 Secret 中的密钥,则卷设置将出错,除非标记为可选。路径必须是相对的,且不能包含 '..' 路径,或者以 '..' 开始。 |
|
| 将字符串键映射到卷中的路径。 |
|
|
引用的名称。有效地需要此字段,但因为允许向后兼容为空。这里具有空值的此类实例几乎是错误的。TODO:添加其他有用的字段。apiVersion、kind、uid?更多信息: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names TODO: 当 controller-gen 不需要 https://github.com/kubernetes-sigs/kubebuilder/issues/3896 时,Drop |
|
| 可选字段指定是否必须定义 Secret 或其密钥 |
8.1.477. .spec.volumes[].projected.sources[].secret.items
- 描述
- 如果未指定,则引用 Secret 的 Data 字段中的每个键值对将投射到卷中,其名称是键,内容是值。如果指定,列出的键将投射到指定的路径中,并且不会出现未列出的键。如果指定了没有存在于 Secret 中的密钥,则卷设置将出错,除非标记为可选。路径必须是相对的,且不能包含 '..' 路径,或者以 '..' 开始。
- 类型
-
array
8.1.478. .spec.volumes[].projected.sources[].secret.items[]
- 描述
- 将字符串键映射到卷中的路径。
- 类型
-
object
- 必填
-
key
-
path
-
属性 | 类型 | 描述 |
---|---|---|
|
| key 是项目的关键。 |
|
| 模式为可选:用于设置此文件权限的模式位。必须是 0000 到 0777 之间的数值,或者 0 到 511 之间的十进制值。YAML 接受八进制和十进制值,JSON 需要模式位的十进制值。如果没有指定,则使用卷 defaultMode。这可能与影响文件模式的其他选项(如 fsGroup )冲突,结果可以是其他模式位。 |
|
| path 是将键映射到的文件的相对路径。可能不是绝对路径。不得包含路径元素 '..'。不得以字符串 '..' 开头。 |
8.1.479. .spec.volumes[].projected.sources[].serviceAccountToken
- 描述
- serviceAccountToken 是与项目的 serviceAccountToken 数据相关的信息
- 类型
-
object
- 必填
-
path
-
属性 | 类型 | 描述 |
---|---|---|
|
| 受众是令牌的预期使用者。令牌的接收者必须使用令牌使用者中指定的标识符来识别其自身,否则应拒绝令牌。受众默认为 apiserver 的标识符。 |
|
| expirationSeconds 是服务帐户令牌的请求的有效期。当令牌接近过期时,kubelet 卷插件会主动轮转服务帐户令牌。如果令牌的时间超过 80%,或者令牌早于 24 小时,则 kubelet 将开始尝试轮转令牌。默认为 1 小时,且必须至少为 10 分钟。 |
|
| path 是与文件挂载点相关的路径,用于将令牌放入其中。 |
8.1.480. .spec.volumes[].quobyte
- 描述
- quobyte 代表共享 pod 生命周期的主机上执行 Quobyte 挂载
- 类型
-
object
- 必填
-
registry
-
卷
-
属性 | 类型 | 描述 |
---|---|---|
|
| 将卷访问映射到 Default 的组没有组 |
|
| 此处的 readonly 将强制使用只读权限挂载 Quobyte 卷。默认为false。 |
|
| registry 代表单个或多个 Quobyte Registry 服务,它指定为 host:port 对(多个条目用逗号分开),它充当卷的中央 registry |
|
| 在带有动态置备 Quobyte 卷的后端使用中拥有给定 Quobyte 卷的租户,由插件设置 |
|
| 用户,将卷访问权限映射到 Defaults 到 serivceaccount 用户 |
|
| volume 是按名称引用已创建 Quobyte 卷的字符串。 |
8.1.481. .spec.volumes[].rbd
- 描述
- RBD 代表共享 pod 生命周期的主机上 Rados 块设备挂载。更多信息: https://examples.k8s.io/volumes/rbd/README.md
- 类型
-
object
- 必填
-
image
-
monitor
-
属性 | 类型 | 描述 |
---|---|---|
|
| fstype 是您要挂载的卷的文件系统类型。提示: 确保主机操作系统支持文件系统类型。示例:"ext4", "xfs", "ntfs"。如果未指定,则隐式推断为 "ext4"。更多信息: https://kubernetes.io/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 |
|
| monitor 是 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 将强制 VolumeMount 中的 ReadOnly 设置。默认为false。更多信息: https://examples.k8s.io/volumes/rbd/README.md#how-to-use-it |
|
| secretRef 是 RBDUser 的身份验证 secret 的名称。如果提供的会覆盖密钥环。默认为 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 |
8.1.482. .spec.volumes[].rbd.secretRef
- 描述
- secretRef 是 RBDUser 的身份验证 secret 的名称。如果提供的会覆盖密钥环。默认为 nil。更多信息: https://examples.k8s.io/volumes/rbd/README.md#how-to-use-it
- 类型
-
object
属性 | 类型 | 描述 |
---|---|---|
|
|
引用的名称。有效地需要此字段,但因为允许向后兼容为空。这里具有空值的此类实例几乎是错误的。TODO:添加其他有用的字段。apiVersion、kind、uid?更多信息: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names TODO: 当 controller-gen 不需要 https://github.com/kubernetes-sigs/kubebuilder/issues/3896 时,Drop |
8.1.483. .spec.volumes[].scaleIO
- 描述
- scaleIO 代表附加并挂载到 Kubernetes 节点上的 ScaleIO 持久性卷。
- 类型
-
object
- 必填
-
gateway
-
secretRef
-
system
-
属性 | 类型 | 描述 |
---|---|---|
|
| fstype 是要挂载的文件系统类型。必须是主机操作系统支持的文件系统类型。Ex. "ext4", "xfs", "ntfs".默认为 "xfs"。 |
|
| gateway 是 ScaleIO API 网关的主机地址。 |
|
| protectionDomain 是配置存储的 ScaleIO 保护域的名称。 |
|
| readonly Defaults to false (read/write)。此处的 readonly 将强制 VolumeMount 中的 ReadOnly 设置。 |
|
| secretRef 引用 ScaleIO 用户和其他敏感信息的 secret。如果没有提供,则登录操作将失败。 |
|
| sslEnabled Flag 启用/禁用与网关的 SSL 通信,默认为 false |
|
| storageMode 指示卷的存储是否应 ThickProvisioned 或 ThinProvisioned。默认为 ThinProvisioned。 |
|
| StoragePool 是与保护域关联的 ScaleIO 存储池。 |
|
| system 是 ScaleIO 中配置的存储系统的名称。 |
|
| volumeName 是在与这个卷源关联的 ScaleIO 系统中创建的卷的名称。 |
8.1.484. .spec.volumes[].scaleIO.secretRef
- 描述
- secretRef 引用 ScaleIO 用户和其他敏感信息的 secret。如果没有提供,则登录操作将失败。
- 类型
-
object
属性 | 类型 | 描述 |
---|---|---|
|
|
引用的名称。有效地需要此字段,但因为允许向后兼容为空。这里具有空值的此类实例几乎是错误的。TODO:添加其他有用的字段。apiVersion、kind、uid?更多信息: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names TODO: 当 controller-gen 不需要 https://github.com/kubernetes-sigs/kubebuilder/issues/3896 时,Drop |
8.1.485. .spec.volumes[].secret
- 描述
- Secret 代表应填充此卷的 secret。更多信息: https://kubernetes.io/docs/concepts/storage/volumes#secret
- 类型
-
object
属性 | 类型 | 描述 |
---|---|---|
|
| defaultMode 是可选:默认用于设置创建文件的权限的模式位。必须是 0000 到 0777 之间的数值,或者 0 到 511 之间的十进制值。YAML 接受八进制和十进制值,JSON 需要模式位的十进制值。默认值为 0644。路径中的目录不受此设置的影响。这可能与影响文件模式的其他选项(如 fsGroup )冲突,结果可以是其他模式位。 |
|
| 如果未指定项目,则引用 Secret 的 Data 字段中的每个键值对将投射到卷中,其名称是键,内容是值。如果指定,列出的键将投射到指定的路径中,并且不会出现未列出的键。如果指定了没有存在于 Secret 中的密钥,则卷设置将出错,除非标记为可选。路径必须是相对的,且不能包含 '..' 路径,或者以 '..' 开始。 |
|
| 将字符串键映射到卷中的路径。 |
|
| 可选字段指定是否必须定义 Secret 或其密钥 |
|
| secretName 是要使用的 pod 命名空间中的 secret 名称。更多信息: https://kubernetes.io/docs/concepts/storage/volumes#secret |
8.1.486. .spec.volumes[].secret.items
- 描述
- 如果未指定项目,则引用 Secret 的 Data 字段中的每个键值对将投射到卷中,其名称是键,内容是值。如果指定,列出的键将投射到指定的路径中,并且不会出现未列出的键。如果指定了没有存在于 Secret 中的密钥,则卷设置将出错,除非标记为可选。路径必须是相对的,且不能包含 '..' 路径,或者以 '..' 开始。
- 类型
-
array
8.1.487. .spec.volumes[].secret.items[]
- 描述
- 将字符串键映射到卷中的路径。
- 类型
-
object
- 必填
-
key
-
path
-
属性 | 类型 | 描述 |
---|---|---|
|
| key 是项目的关键。 |
|
| 模式为可选:用于设置此文件权限的模式位。必须是 0000 到 0777 之间的数值,或者 0 到 511 之间的十进制值。YAML 接受八进制和十进制值,JSON 需要模式位的十进制值。如果没有指定,则使用卷 defaultMode。这可能与影响文件模式的其他选项(如 fsGroup )冲突,结果可以是其他模式位。 |
|
| path 是将键映射到的文件的相对路径。可能不是绝对路径。不得包含路径元素 '..'。不得以字符串 '..' 开头。 |
8.1.488. .spec.volumes[].storageos
- 描述
- storageos 代表附加并挂载到 Kubernetes 节点上的 StorageOS 卷。
- 类型
-
object
属性 | 类型 | 描述 |
---|---|---|
|
| fstype 是要挂载的文件系统类型。必须是主机操作系统支持的文件系统类型。Ex. "ext4", "xfs", "ntfs".如果未指定,则隐式推断为 "ext4"。 |
|
| readonly 默认为 false (读/写)。此处的 readonly 将强制 VolumeMount 中的 ReadOnly 设置。 |
|
| secretRef 指定用于获取 StorageOS API 凭证的 secret。如果没有指定,则会尝试默认值。 |
|
| volumeName 是 StorageOS 卷的人类可读名称。卷名称仅在命名空间中唯一。 |
|
| volumeNamespace 指定 StorageOS 中的卷范围。如果没有指定命名空间,则使用 Pod 的命名空间。这允许在 StorageOS 中镜像 Kubernetes 名称进行更紧密的集成。将 VolumeName 设置为任何名称,以覆盖默认的行为。如果没有在 StorageOS 中使用命名空间,则设置为 "default"。将创建在 StorageOS 中没有预先存在的命名空间。 |
8.1.489. .spec.volumes[].storageos.secretRef
- 描述
- secretRef 指定用于获取 StorageOS API 凭证的 secret。如果没有指定,则会尝试默认值。
- 类型
-
object
属性 | 类型 | 描述 |
---|---|---|
|
|
引用的名称。有效地需要此字段,但因为允许向后兼容为空。这里具有空值的此类实例几乎是错误的。TODO:添加其他有用的字段。apiVersion、kind、uid?更多信息: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names TODO: 当 controller-gen 不需要 https://github.com/kubernetes-sigs/kubebuilder/issues/3896 时,Drop |
8.1.490. .spec.volumes[].vsphereVolume
- 描述
- vsphereVolume 代表附加并挂载到 kubelets 主机上的 vSphere 卷
- 类型
-
object
- 必填
-
volumePath
-
属性 | 类型 | 描述 |
---|---|---|
|
| fstype 是要挂载的文件系统类型。必须是主机操作系统支持的文件系统类型。Ex. "ext4", "xfs", "ntfs".如果未指定,则隐式推断为 "ext4"。 |
|
| storagePolicyID 是与 StoragePolicyName 关联的存储策略 Based Management (SPBM)配置集 ID。 |
|
| StoragePolicyName 是存储基于策略的管理(SPBM)配置集名称。 |
|
| volumePath 是标识 vSphere 卷 vmdk 的路径 |
8.1.491. .spec.web
- 描述
- 定义 Prometheus web 服务器的配置。
- 类型
-
object
属性 | 类型 | 描述 |
---|---|---|
|
| 定义 Web 服务器的 HTTP 参数。 |
|
| 定义同时连接 A 零值的最大数,意味着 Prometheus 不接受任何传入连接。 |
|
| prometheus 网页标题。 |
|
| 定义 HTTPS 的 TLS 参数。 |
8.1.492. .spec.web.httpConfig
- 描述
- 定义 Web 服务器的 HTTP 参数。
- 类型
-
object
属性 | 类型 | 描述 |
---|---|---|
|
| 可添加到 HTTP 响应中的标头列表。 |
|
| 启用 HTTP/2 支持。请注意,只有 TLS 支持 HTTP/2。如果没有配置 TLSConfig,则禁用 HTTP/2。每当字段更改时,将触发滚动更新。 |
8.1.493. .spec.web.httpConfig.headers
- 描述
- 可添加到 HTTP 响应中的标头列表。
- 类型
-
object
属性 | 类型 | 描述 |
---|---|---|
|
| 将 Content-Security-Policy 标头设置为 HTTP 响应。如果为空,则取消设置。 |
|
| 将 Strict-Transport-Security 标头设置为 HTTP 响应。如果为空,则取消设置。请确定您谨慎使用此标头,因为这个标头可能会强制浏览器加载 Prometheus,以及通过 HTTPS 在同一域和子域上托管的其他应用程序。https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/Strict-Transport-Security |
|
| 将 X-Content-Type-Options 标头设置为 HTTP 响应。如果为空,则取消设置。接受的值是 nosniff。https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/X-Content-Type-Options |
|
| 将 X-Frame-Options 标头设置为 HTTP 响应。如果为空,则取消设置。接受的值是 deny 和 sameorigin。https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/X-Frame-Options |
|
| 将 X-XSS-Protection 标头设置为所有响应。如果为空,则取消设置。https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/X-XSS-Protection |
8.1.494. .spec.web.tlsConfig
- 描述
- 定义 HTTPS 的 TLS 参数。
- 类型
-
object
- 必填
-
cert
-
keySecret
-
属性 | 类型 | 描述 |
---|---|---|
|
| 包含服务器的 TLS 证书。 |
|
| TLS 版本支持的密码套件列表,最高为 TLS 1.2。如果为空,则使用 Go 默认密码套件。可用的密码套件记录在以下文档 :https://golang.org/pkg/crypto/tls/#pkg-constants |
|
| 用于客户端身份验证的服务器策略。映射到 ClientAuth 策略。有关 clientAuth 选项的详情: https://golang.org/pkg/crypto/tls/#ClientAuthType |
|
| 包含服务器客户端证书身份验证的 CA 证书。 |
|
| 按偏好顺序在 ECDHE 握手中使用的 Elliptic curves。可用的 curves 记录在以下文档 :https://golang.org/pkg/crypto/tls/#CurveID |
|
| 包含服务器的 TLS 密钥的 secret。 |
|
| 可接受的最大 TLS 版本。默认为 TLS13。 |
|
| 可以接受的最低 TLS 版本。默认为 TLS12。 |
|
| 控制服务器是否选择客户端最首选密码套件,或者服务器最首选密码套件。如果为 true,则使用服务器的首选项,如 cipherSuites 中的元素顺序表示。 |
8.1.495. .spec.web.tlsConfig.cert
- 描述
- 包含服务器的 TLS 证书。
- 类型
-
object
属性 | 类型 | 描述 |
---|---|---|
|
| 包含用于目标的数据的 ConfigMap。 |
|
| 包含用于目标的数据的 secret。 |
8.1.496. .spec.web.tlsConfig.cert.configMap
- 描述
- 包含用于目标的数据的 ConfigMap。
- 类型
-
object
- 必填
-
key
-
属性 | 类型 | 描述 |
---|---|---|
|
| 要选择的密钥。 |
|
|
引用的名称。有效地需要此字段,但因为允许向后兼容为空。这里具有空值的此类实例几乎是错误的。TODO:添加其他有用的字段。apiVersion、kind、uid?更多信息: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names TODO: 当 controller-gen 不需要 https://github.com/kubernetes-sigs/kubebuilder/issues/3896 时,Drop |
|
| 指定是否必须定义 ConfigMap 还是其键 |
8.1.497. .spec.web.tlsConfig.cert.secret
- 描述
- 包含用于目标的数据的 secret。
- 类型
-
object
- 必填
-
key
-
属性 | 类型 | 描述 |
---|---|---|
|
| 要从中选择的 secret 的密钥。必须是一个有效的 secret 密钥。 |
|
|
引用的名称。有效地需要此字段,但因为允许向后兼容为空。这里具有空值的此类实例几乎是错误的。TODO:添加其他有用的字段。apiVersion、kind、uid?更多信息: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names TODO: 当 controller-gen 不需要 https://github.com/kubernetes-sigs/kubebuilder/issues/3896 时,Drop |
|
| 指定是否需要定义 Secret 还是其密钥 |
8.1.498. .spec.web.tlsConfig.client_ca
- 描述
- 包含服务器客户端证书身份验证的 CA 证书。
- 类型
-
object
属性 | 类型 | 描述 |
---|---|---|
|
| 包含用于目标的数据的 ConfigMap。 |
|
| 包含用于目标的数据的 secret。 |
8.1.499. .spec.web.tlsConfig.client_ca.configMap
- 描述
- 包含用于目标的数据的 ConfigMap。
- 类型
-
object
- 必填
-
key
-
属性 | 类型 | 描述 |
---|---|---|
|
| 要选择的密钥。 |
|
|
引用的名称。有效地需要此字段,但因为允许向后兼容为空。这里具有空值的此类实例几乎是错误的。TODO:添加其他有用的字段。apiVersion、kind、uid?更多信息: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names TODO: 当 controller-gen 不需要 https://github.com/kubernetes-sigs/kubebuilder/issues/3896 时,Drop |
|
| 指定是否必须定义 ConfigMap 还是其键 |
8.1.500. .spec.web.tlsConfig.client_ca.secret
- 描述
- 包含用于目标的数据的 secret。
- 类型
-
object
- 必填
-
key
-
属性 | 类型 | 描述 |
---|---|---|
|
| 要从中选择的 secret 的密钥。必须是一个有效的 secret 密钥。 |
|
|
引用的名称。有效地需要此字段,但因为允许向后兼容为空。这里具有空值的此类实例几乎是错误的。TODO:添加其他有用的字段。apiVersion、kind、uid?更多信息: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names TODO: 当 controller-gen 不需要 https://github.com/kubernetes-sigs/kubebuilder/issues/3896 时,Drop |
|
| 指定是否需要定义 Secret 还是其密钥 |
8.1.501. .spec.web.tlsConfig.keySecret
- 描述
- 包含服务器的 TLS 密钥的 secret。
- 类型
-
object
- 必填
-
key
-
属性 | 类型 | 描述 |
---|---|---|
|
| 要从中选择的 secret 的密钥。必须是一个有效的 secret 密钥。 |
|
|
引用的名称。有效地需要此字段,但因为允许向后兼容为空。这里具有空值的此类实例几乎是错误的。TODO:添加其他有用的字段。apiVersion、kind、uid?更多信息: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names TODO: 当 controller-gen 不需要 https://github.com/kubernetes-sigs/kubebuilder/issues/3896 时,Drop |
|
| 指定是否需要定义 Secret 还是其密钥 |
8.1.502. .status
- 描述
- 最近观察到的 Prometheus 集群的状态。只读。更多信息: https://github.com/kubernetes/community/blob/master/contributors/devel/sig-architecture/api-conventions.md#spec-and-status
- 类型
-
object
- 必填
-
availableReplicas
-
paused
-
replicas
-
unavailableReplicas
-
updatedReplicas
-
属性 | 类型 | 描述 |
---|---|---|
|
| 此 Prometheus 部署的目标可用 pod 的总数(至少为 minReadySeconds)。 |
|
| Prometheus 部署的当前状态。 |
|
| condition 代表与 Prometheus、Alertmanager 或 ThanosRuler 资源关联的资源的状态。 |
|
| 代表是否在执行底层受管对象的任何操作。只有 delete 操作才会执行。 |
|
| 此 Prometheus 部署的目标非确定 pod 的总数(标签与选择器匹配)。 |
|
| 用于匹配此 Prometheus 资源目标 pod 的选择器。 |
|
| 列表中每个分片有一个条目。每个条目都提供了分片状态的摘要。 |
|
| |
|
| 分片是最近观察到的分片数量。 |
|
| 此 Prometheus 部署目标不可用 pod 的总数。 |
|
| 此 Prometheus 部署目标为具有所需版本 spec 的非确定 pod 的总数。 |
8.1.503. .status.conditions
- 描述
- Prometheus 部署的当前状态。
- 类型
-
array
8.1.504. .status.conditions[]
- 描述
- condition 代表与 Prometheus、Alertmanager 或 ThanosRuler 资源关联的资源的状态。
- 类型
-
object
- 必填
-
lastTransitionTime
-
status
-
type
-
属性 | 类型 | 描述 |
---|---|---|
|
| lastTransitionTime 是当前 status 属性最后一次更新的时间。 |
|
| 人类可读的消息,指示条件最后一次转换的详细信息。 |
|
|
observedGeneration 代表 .metadata.generation,条件基于这个条件。例如,如果 |
|
| 条件最后一次转换的原因。 |
|
| 条件的状态。 |
|
| 所报告条件的类型。 |
8.1.505. .status.shardStatuses
- 描述
- 列表中每个分片有一个条目。每个条目都提供了分片状态的摘要。
- 类型
-
数组
8.1.506. .status.shardStatuses[]
- 描述
- 类型
-
object
- 必填
-
availableReplicas
-
replicas
-
shardID
-
unavailableReplicas
-
updatedReplicas
-
属性 | 类型 | 描述 |
---|---|---|
|
| 此分片针对的可用 pod 的总数(至少为 minReadySeconds)。 |
|
| 此分片目标的 pod 总数。 |
|
| 分片的标识符。 |
|
| 此分片目标不可用 pod 的总数。 |
|
| 此分片的目标非确定的 pod 的总数,该分片具有所需的 spec。 |
8.2. API 端点
可用的 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 的状态
-
8.2.1. /apis/monitoring.coreos.com/v1/prometheuses
- HTTP 方法
-
GET
- 描述
- 列出 Prometheus 类型的对象
HTTP 代码 | 响应正文 |
---|---|
200 - OK | |
401 - Unauthorized | 空 |
8.2.2. /apis/monitoring.coreos.com/v1/namespaces/{namespace}/prometheuses
- HTTP 方法
-
DELETE
- 描述
- 删除 Prometheus 集合
HTTP 代码 | 响应正文 |
---|---|
200 - OK |
|
401 - Unauthorized | 空 |
- HTTP 方法
-
GET
- 描述
- 列出 Prometheus 类型的对象
HTTP 代码 | 响应正文 |
---|---|
200 - OK | |
401 - Unauthorized | 空 |
- HTTP 方法
-
POST
- 描述
- 创建 Prometheus
参数 | 类型 | 描述 |
---|---|---|
|
| 出现时,表示不应保留修改。无效的或未被识别的 dryRun 指令将导致错误响应,且请求不会被进一步处理。有效值为: - All: 所有预演阶段都将被处理 |
|
| fieldValidation 指示服务器如何处理包含了未知或重复字段的请求 (POST/PUT/PATCH) 中的对象。有效值为: - Ignore :忽略从对象中静默丢弃的未知字段,并将忽略所有除最后一个重复字段以外的所有字段。这是 v1.23 版本之前的默认行为- Warn: 这会通过标准的警告响应头为从对象丢弃的每个未知字段以及遇到的每个重复字段,发送警告。如果没有其他错误,请求仍会成功,且只保留重复字段的最后一个。这是 v1.23+ 的的默认行为 - Strict: 如果从对象中删除了任何未知字段,或者存在任何重复字段,请求将失败并带有 BadRequest 错误。从服务器返回的错误将包含遇到的,以及重复的字段。 |
参数 | 类型 | 描述 |
---|---|---|
|
|
HTTP 代码 | 响应正文 |
---|---|
200 - OK |
|
201 - Created |
|
202 - Accepted |
|
401 - Unauthorized | 空 |
8.2.3. /apis/monitoring.coreos.com/v1/namespaces/{namespace}/prometheuses/{name}
参数 | 类型 | 描述 |
---|---|---|
|
| Prometheus 的名称 |
- HTTP 方法
-
DELETE
- 描述
- 删除 Prometheus
参数 | 类型 | 描述 |
---|---|---|
|
| 出现时,表示不应保留修改。无效的或未被识别的 dryRun 指令将导致错误响应,且请求不会被进一步处理。有效值为: - All: 所有预演阶段都将被处理 |
HTTP 代码 | 响应正文 |
---|---|
200 - OK |
|
202 - Accepted |
|
401 - Unauthorized | 空 |
- HTTP 方法
-
GET
- 描述
- 阅读指定的 Prometheus
HTTP 代码 | 响应正文 |
---|---|
200 - OK |
|
401 - Unauthorized | 空 |
- HTTP 方法
-
PATCH
- 描述
- 部分更新指定的 Prometheus
参数 | 类型 | 描述 |
---|---|---|
|
| 出现时,表示不应保留修改。无效的或未被识别的 dryRun 指令将导致错误响应,且请求不会被进一步处理。有效值为: - All: 所有预演阶段都将被处理 |
|
| fieldValidation 指示服务器如何处理包含了未知或重复字段的请求 (POST/PUT/PATCH) 中的对象。有效值为: - Ignore :忽略从对象中静默丢弃的未知字段,并将忽略所有除最后一个重复字段以外的所有字段。这是 v1.23 版本之前的默认行为- Warn: 这会通过标准的警告响应头为从对象丢弃的每个未知字段以及遇到的每个重复字段,发送警告。如果没有其他错误,请求仍会成功,且只保留重复字段的最后一个。这是 v1.23+ 的的默认行为 - Strict: 如果从对象中删除了任何未知字段,或者存在任何重复字段,请求将失败并带有 BadRequest 错误。从服务器返回的错误将包含遇到的,以及重复的字段。 |
HTTP 代码 | 响应正文 |
---|---|
200 - OK |
|
401 - Unauthorized | 空 |
- HTTP 方法
-
PUT
- 描述
- 替换指定的 Prometheus
参数 | 类型 | 描述 |
---|---|---|
|
| 出现时,表示不应保留修改。无效的或未被识别的 dryRun 指令将导致错误响应,且请求不会被进一步处理。有效值为: - All: 所有预演阶段都将被处理 |
|
| fieldValidation 指示服务器如何处理包含了未知或重复字段的请求 (POST/PUT/PATCH) 中的对象。有效值为: - Ignore :忽略从对象中静默丢弃的未知字段,并将忽略所有除最后一个重复字段以外的所有字段。这是 v1.23 版本之前的默认行为- Warn: 这会通过标准的警告响应头为从对象丢弃的每个未知字段以及遇到的每个重复字段,发送警告。如果没有其他错误,请求仍会成功,且只保留重复字段的最后一个。这是 v1.23+ 的的默认行为 - Strict: 如果从对象中删除了任何未知字段,或者存在任何重复字段,请求将失败并带有 BadRequest 错误。从服务器返回的错误将包含遇到的,以及重复的字段。 |
参数 | 类型 | 描述 |
---|---|---|
|
|
HTTP 代码 | 响应正文 |
---|---|
200 - OK |
|
201 - Created |
|
401 - Unauthorized | 空 |
8.2.4. /apis/monitoring.coreos.com/v1/namespaces/{namespace}/prometheuses/{name}/scale
参数 | 类型 | 描述 |
---|---|---|
|
| Prometheus 的名称 |
- HTTP 方法
-
GET
- 描述
- 指定 Prometheus 的读取规模
HTTP 代码 | 响应正文 |
---|---|
200 - OK |
|
401 - Unauthorized | 空 |
- HTTP 方法
-
PATCH
- 描述
- 部分更新指定 Prometheus 扩展
参数 | 类型 | 描述 |
---|---|---|
|
| 出现时,表示不应保留修改。无效的或未被识别的 dryRun 指令将导致错误响应,且请求不会被进一步处理。有效值为: - All: 所有预演阶段都将被处理 |
|
| fieldValidation 指示服务器如何处理包含了未知或重复字段的请求 (POST/PUT/PATCH) 中的对象。有效值为: - Ignore :忽略从对象中静默丢弃的未知字段,并将忽略所有除最后一个重复字段以外的所有字段。这是 v1.23 版本之前的默认行为- Warn: 这会通过标准的警告响应头为从对象丢弃的每个未知字段以及遇到的每个重复字段,发送警告。如果没有其他错误,请求仍会成功,且只保留重复字段的最后一个。这是 v1.23+ 的的默认行为 - Strict: 如果从对象中删除了任何未知字段,或者存在任何重复字段,请求将失败并带有 BadRequest 错误。从服务器返回的错误将包含遇到的,以及重复的字段。 |
HTTP 代码 | 响应正文 |
---|---|
200 - OK |
|
401 - Unauthorized | 空 |
- HTTP 方法
-
PUT
- 描述
- 替换指定 Prometheus 的 scale
参数 | 类型 | 描述 |
---|---|---|
|
| 出现时,表示不应保留修改。无效的或未被识别的 dryRun 指令将导致错误响应,且请求不会被进一步处理。有效值为: - All: 所有预演阶段都将被处理 |
|
| fieldValidation 指示服务器如何处理包含了未知或重复字段的请求 (POST/PUT/PATCH) 中的对象。有效值为: - Ignore :忽略从对象中静默丢弃的未知字段,并将忽略所有除最后一个重复字段以外的所有字段。这是 v1.23 版本之前的默认行为- Warn: 这会通过标准的警告响应头为从对象丢弃的每个未知字段以及遇到的每个重复字段,发送警告。如果没有其他错误,请求仍会成功,且只保留重复字段的最后一个。这是 v1.23+ 的的默认行为 - Strict: 如果从对象中删除了任何未知字段,或者存在任何重复字段,请求将失败并带有 BadRequest 错误。从服务器返回的错误将包含遇到的,以及重复的字段。 |
参数 | 类型 | 描述 |
---|---|---|
|
|
HTTP 代码 | 响应正文 |
---|---|
200 - OK |
|
201 - Created |
|
401 - Unauthorized | 空 |
8.2.5. /apis/monitoring.coreos.com/v1/namespaces/{namespace}/prometheuses/{name}/status
参数 | 类型 | 描述 |
---|---|---|
|
| Prometheus 的名称 |
- HTTP 方法
-
GET
- 描述
- 指定 Prometheus 的读取状态
HTTP 代码 | 响应正文 |
---|---|
200 - OK |
|
401 - Unauthorized | 空 |
- HTTP 方法
-
PATCH
- 描述
- 部分更新指定 Prometheus 的状态
参数 | 类型 | 描述 |
---|---|---|
|
| 出现时,表示不应保留修改。无效的或未被识别的 dryRun 指令将导致错误响应,且请求不会被进一步处理。有效值为: - All: 所有预演阶段都将被处理 |
|
| fieldValidation 指示服务器如何处理包含了未知或重复字段的请求 (POST/PUT/PATCH) 中的对象。有效值为: - Ignore :忽略从对象中静默丢弃的未知字段,并将忽略所有除最后一个重复字段以外的所有字段。这是 v1.23 版本之前的默认行为- Warn: 这会通过标准的警告响应头为从对象丢弃的每个未知字段以及遇到的每个重复字段,发送警告。如果没有其他错误,请求仍会成功,且只保留重复字段的最后一个。这是 v1.23+ 的的默认行为 - Strict: 如果从对象中删除了任何未知字段,或者存在任何重复字段,请求将失败并带有 BadRequest 错误。从服务器返回的错误将包含遇到的,以及重复的字段。 |
HTTP 代码 | 响应正文 |
---|---|
200 - OK |
|
401 - Unauthorized | 空 |
- HTTP 方法
-
PUT
- 描述
- 替换指定 Prometheus 的状态
参数 | 类型 | 描述 |
---|---|---|
|
| 出现时,表示不应保留修改。无效的或未被识别的 dryRun 指令将导致错误响应,且请求不会被进一步处理。有效值为: - All: 所有预演阶段都将被处理 |
|
| fieldValidation 指示服务器如何处理包含了未知或重复字段的请求 (POST/PUT/PATCH) 中的对象。有效值为: - Ignore :忽略从对象中静默丢弃的未知字段,并将忽略所有除最后一个重复字段以外的所有字段。这是 v1.23 版本之前的默认行为- Warn: 这会通过标准的警告响应头为从对象丢弃的每个未知字段以及遇到的每个重复字段,发送警告。如果没有其他错误,请求仍会成功,且只保留重复字段的最后一个。这是 v1.23+ 的的默认行为 - Strict: 如果从对象中删除了任何未知字段,或者存在任何重复字段,请求将失败并带有 BadRequest 错误。从服务器返回的错误将包含遇到的,以及重复的字段。 |
参数 | 类型 | 描述 |
---|---|---|
|
|
HTTP 代码 | 响应正文 |
---|---|
200 - OK |
|
201 - Created |
|
401 - Unauthorized | 空 |
第 9 章 PrometheusRule [monitoring.coreos.com/v1]
- 描述
- PrometheusRule 为 Prometheus 实例定义记录和警报规则
- 类型
-
object
- 必填
-
spec
-
9.1. 规格
属性 | 类型 | 描述 |
---|---|---|
|
| APIVersion 定义对象的这个表示法的版本化的 schema。服务器应该将识别的模式转换为最新的内部值,并可拒绝未识别的值。更多信息: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources |
|
| kind 是一个字符串值,代表此对象所代表的 REST 资源。服务器可以从客户端向其提交请求的端点推断。无法更新。采用驼峰拼写法 (CamelCase)。更多信息: 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 所需的警报规则定义的规格。 |
9.1.1. .spec
- 描述
- Prometheus 所需的警报规则定义的规格。
- 类型
-
object
属性 | 类型 | 描述 |
---|---|---|
|
| Prometheus 规则文件的内容 |
|
| RuleGroup 是按顺序评估的记录和警报规则的列表。 |
9.1.2. .spec.groups
- 描述
- Prometheus 规则文件的内容
- 类型
-
array
9.1.3. .spec.groups[]
- 描述
- RuleGroup 是按顺序评估的记录和警报规则的列表。
- 类型
-
object
- 必填
-
name
-
属性 | 类型 | 描述 |
---|---|---|
|
| 间隔决定了组中规则的频率。 |
|
| 限制警报规则和一系列记录规则可以生成的警报数量。从 Prometheus >= 2.31 和 Thanos Ruler >= 0.24 开始支持限制。 |
|
| 规则组的名称。 |
|
| PartialResponseStrategy 仅供 ThanosRuler 使用,Prometheus 实例会忽略它。更多信息: https://github.com/thanos-io/thanos/blob/main/docs/components/rule.md#partial-response |
|
| 警报和记录规则列表。 |
|
| 规则描述了警报或记录规则,请参阅 Prometheus 文档: [alerting](https://www.prometheus.io/docs/prometheus/latest/configuration/alerting_rules/)或 [recording](https://www.prometheus.io/docs/prometheus/latest/configuration/recording_rules/#recording-rules)规则 |
9.1.4. .spec.groups[].rules
- 描述
- 警报和记录规则列表。
- 类型
-
array
9.1.5. .spec.groups[].rules[]
- 描述
- 规则描述了警报或记录规则,请参阅 Prometheus 文档: [alerting](https://www.prometheus.io/docs/prometheus/latest/configuration/alerting_rules/)或 [recording](https://www.prometheus.io/docs/prometheus/latest/configuration/recording_rules/#recording-rules)规则
- 类型
-
object
- 必填
-
expr
-
属性 | 类型 | 描述 |
---|---|---|
|
|
警报的名称。必须是有效的标签值。只能设置其中一个 |
|
| 要添加到每个警报的注解。仅对警报规则有效。 |
|
| 要评估的 PromQL 表达式。 |
|
| 当警报在此长时间返回后,会被视为触发。 |
|
| KeepFiringFor 定义在触发警报的条件被清除后继续触发的时长。 |
|
| 要添加或覆盖的标签。 |
|
|
要输出的时间序列名称。必须是有效的指标名称。只能设置其中一个 |
9.2. API 端点
可用的 API 端点如下:
/apis/monitoring.coreos.com/v1/prometheusrules
-
GET
: 列出 PrometheusRule 类型的对象
-
/apis/monitoring.coreos.com/v1/namespaces/{namespace}/prometheusrules
-
DELETE
: 删除 PrometheusRule 集合 -
GET
: 列出 PrometheusRule 类型的对象 -
POST
:创建 PrometheusRule
-
/apis/monitoring.coreos.com/v1/namespaces/{namespace}/prometheusrules/{name}
-
DELETE
:删除 PrometheusRule -
GET
:读取指定的 PrometheusRule -
PATCH
: 部分更新指定的 PrometheusRule -
PUT
:替换指定的 PrometheusRule
-
9.2.1. /apis/monitoring.coreos.com/v1/prometheusrules
- HTTP 方法
-
GET
- 描述
- 列出 PrometheusRule 类型的对象
HTTP 代码 | 响应正文 |
---|---|
200 - OK | |
401 - Unauthorized | 空 |
9.2.2. /apis/monitoring.coreos.com/v1/namespaces/{namespace}/prometheusrules
- HTTP 方法
-
DELETE
- 描述
- 删除 PrometheusRule 集合
HTTP 代码 | 响应正文 |
---|---|
200 - OK |
|
401 - Unauthorized | 空 |
- HTTP 方法
-
GET
- 描述
- 列出 PrometheusRule 类型的对象
HTTP 代码 | 响应正文 |
---|---|
200 - OK | |
401 - Unauthorized | 空 |
- HTTP 方法
-
POST
- 描述
- 创建 PrometheusRule
参数 | 类型 | 描述 |
---|---|---|
|
| 出现时,表示不应保留修改。无效的或未被识别的 dryRun 指令将导致错误响应,且请求不会被进一步处理。有效值为: - All: 所有预演阶段都将被处理 |
|
| fieldValidation 指示服务器如何处理包含了未知或重复字段的请求 (POST/PUT/PATCH) 中的对象。有效值为: - Ignore :忽略从对象中静默丢弃的未知字段,并将忽略所有除最后一个重复字段以外的所有字段。这是 v1.23 版本之前的默认行为- Warn: 这会通过标准的警告响应头为从对象丢弃的每个未知字段以及遇到的每个重复字段,发送警告。如果没有其他错误,请求仍会成功,且只保留重复字段的最后一个。这是 v1.23+ 的的默认行为 - Strict: 如果从对象中删除了任何未知字段,或者存在任何重复字段,请求将失败并带有 BadRequest 错误。从服务器返回的错误将包含遇到的,以及重复的字段。 |
参数 | 类型 | 描述 |
---|---|---|
|
HTTP 代码 | 响应正文 |
---|---|
200 - OK | |
201 - Created | |
202 - Accepted | |
401 - Unauthorized | 空 |
9.2.3. /apis/monitoring.coreos.com/v1/namespaces/{namespace}/prometheusrules/{name}
参数 | 类型 | 描述 |
---|---|---|
|
| PrometheusRule 的名称 |
- HTTP 方法
-
DELETE
- 描述
- 删除 PrometheusRule
参数 | 类型 | 描述 |
---|---|---|
|
| 出现时,表示不应保留修改。无效的或未被识别的 dryRun 指令将导致错误响应,且请求不会被进一步处理。有效值为: - All: 所有预演阶段都将被处理 |
HTTP 代码 | 响应正文 |
---|---|
200 - OK |
|
202 - Accepted |
|
401 - Unauthorized | 空 |
- HTTP 方法
-
GET
- 描述
- 读取指定的 PrometheusRule
HTTP 代码 | 响应正文 |
---|---|
200 - OK | |
401 - Unauthorized | 空 |
- HTTP 方法
-
PATCH
- 描述
- 部分更新指定的 PrometheusRule
参数 | 类型 | 描述 |
---|---|---|
|
| 出现时,表示不应保留修改。无效的或未被识别的 dryRun 指令将导致错误响应,且请求不会被进一步处理。有效值为: - All: 所有预演阶段都将被处理 |
|
| fieldValidation 指示服务器如何处理包含了未知或重复字段的请求 (POST/PUT/PATCH) 中的对象。有效值为: - Ignore :忽略从对象中静默丢弃的未知字段,并将忽略所有除最后一个重复字段以外的所有字段。这是 v1.23 版本之前的默认行为- Warn: 这会通过标准的警告响应头为从对象丢弃的每个未知字段以及遇到的每个重复字段,发送警告。如果没有其他错误,请求仍会成功,且只保留重复字段的最后一个。这是 v1.23+ 的的默认行为 - Strict: 如果从对象中删除了任何未知字段,或者存在任何重复字段,请求将失败并带有 BadRequest 错误。从服务器返回的错误将包含遇到的,以及重复的字段。 |
HTTP 代码 | 响应正文 |
---|---|
200 - OK | |
401 - Unauthorized | 空 |
- HTTP 方法
-
PUT
- 描述
- 替换指定的 PrometheusRule
参数 | 类型 | 描述 |
---|---|---|
|
| 出现时,表示不应保留修改。无效的或未被识别的 dryRun 指令将导致错误响应,且请求不会被进一步处理。有效值为: - All: 所有预演阶段都将被处理 |
|
| fieldValidation 指示服务器如何处理包含了未知或重复字段的请求 (POST/PUT/PATCH) 中的对象。有效值为: - Ignore :忽略从对象中静默丢弃的未知字段,并将忽略所有除最后一个重复字段以外的所有字段。这是 v1.23 版本之前的默认行为- Warn: 这会通过标准的警告响应头为从对象丢弃的每个未知字段以及遇到的每个重复字段,发送警告。如果没有其他错误,请求仍会成功,且只保留重复字段的最后一个。这是 v1.23+ 的的默认行为 - Strict: 如果从对象中删除了任何未知字段,或者存在任何重复字段,请求将失败并带有 BadRequest 错误。从服务器返回的错误将包含遇到的,以及重复的字段。 |
参数 | 类型 | 描述 |
---|---|---|
|
HTTP 代码 | 响应正文 |
---|---|
200 - OK | |
201 - Created | |
401 - Unauthorized | 空 |
第 10 章 ServiceMonitor [monitoring.coreos.com/v1]
- 描述
- ServiceMonitor 为一组服务定义监控。
- 类型
-
object
- 必填
-
spec
-
10.1. 规格
属性 | 类型 | 描述 |
---|---|---|
|
| APIVersion 定义对象的这个表示法的版本化的 schema。服务器应该将识别的模式转换为最新的内部值,并可拒绝未识别的值。更多信息: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources |
|
| kind 是一个字符串值,代表此对象所代表的 REST 资源。服务器可以从客户端向其提交请求的端点推断。无法更新。采用驼峰拼写法 (CamelCase)。更多信息: 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 的目标发现所需的服务选择规格。 |
10.1.1. .spec
- 描述
- Prometheus 的目标发现所需的服务选择规格。
- 类型
-
object
- 必填
-
selector
-
属性 | 类型 | 描述 |
---|---|---|
|
|
它需要 Prometheus >= v2.37.0。 |
|
| 定义后,bodySizeLimit 指定 Prometheus 接受的未压缩响应正文大小的作业级别限制。 它需要 Prometheus >= v2.28.0。 |
|
| 此 ServiceMonitor 的端点部分列表。 |
|
| 端点定义由 Prometheus 提取的 Prometheus 指标的端点。 |
|
|
例如,如果
如果此字段的值为空,或者标签不存在,则指标 |
|
| 通过重新标记将在内存中保留的目标数量来按scrape 限制。0 表示没有限制。 它需要 Prometheus >= v2.47.0。 |
|
| 对示例接受的标签数的 per-scrape 限制。 它需要 Prometheus >= v2.27.0。 |
|
| 对示例接受的标签名称长度的 per-scrape 限制。 它需要 Prometheus >= v2.27.0。 |
|
| 对示例接受的标签值长度的 per-scrape 限制。 它需要 Prometheus >= v2.27.0。 |
|
|
选择从哪些命名空间发现 Kubernetes |
|
|
|
|
|
|
|
| 要应用的提取类。 |
|
|
如果未设置,Prometheus 将使用其默认值。 它需要 Prometheus >= v2.49.0。 |
|
|
选择 Kubernetes |
|
|
|
|
|
|
10.1.2. .spec.attachMetadata
- 描述
attachMetadata
定义添加到发现的目标中的其他元数据。它需要 Prometheus >= v2.37.0。
- 类型
-
object
属性 | 类型 | 描述 |
---|---|---|
|
|
当设置为 true 时,Prometheus 必须具有 |
10.1.3. .spec.endpoints
- 描述
- 此 ServiceMonitor 的端点部分列表。
- 类型
-
array
10.1.4. .spec.endpoints[]
- 描述
- 端点定义由 Prometheus 提取的 Prometheus 指标的端点。
- 类型
-
object
属性 | 类型 | 描述 |
---|---|---|
|
|
不可与 |
|
|
不可 |
|
| 用于读取用于提取目标的 bearer 令牌的文件。
deprecated: 使用 |
|
|
deprecated: 使用 |
|
|
|
|
| 为 true 时,在目标发现过程中丢弃没有运行(如 Failed 或 Succeeded 状态)的 pod。 如果未设置,则启用过滤。 更多信息: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle/#pod-phase |
|
|
|
|
|
为 true 时,当指标标签与目标标签冲突时, |
|
|
|
|
| Prometheus 从目标中提取指标的间隔。 如果为空,Prometheus 将使用全局提取间隔。 |
|
|
|
|
| RelabelConfig 允许为目标、警报、提取示例和远程写入示例动态重写标签。 更多信息: https://prometheus.io/docs/prometheus/latest/configuration/configuration/#relabel_config |
|
|
它需要 Prometheus >= 2.27.0。
不可与授权同时设置,或者 |
|
| 参数定义可选的 HTTP URL 参数。 |
|
| |
|
| 从中提取指标的 HTTP 路径。
如果为空,Prometheus 将使用默认值(如 |
|
| 此端点引用的 Service 端口的名称。
它优先于 |
|
|
|
|
|
Operator 会自动为几个标准 Kubernetes 字段添加重新标记。
原始提取作业的名称可以通过 更多信息: https://prometheus.io/docs/prometheus/latest/configuration/configuration/#relabel_config |
|
| RelabelConfig 允许为目标、警报、提取示例和远程写入示例动态重写标签。 更多信息: https://prometheus.io/docs/prometheus/latest/configuration/configuration/#relabel_config |
|
| 用于提取的 HTTP 方案。
如果为空,Prometheus 将使用默认值 |
|
| Prometheus 将提取视为失败超时。 如果为空,Prometheus 将使用全局提取超时,除非它小于使用后者的目标提取间隔值。 |
|
|
Service 后面的 |
|
| 提取目标时使用的 TLS 配置。 |
|
|
它需要 Prometheus >= v2.48.0。 |
10.1.5. .spec.endpoints[].authorization
- 描述
授权
将 Authorization 标头凭据配置为在提取目标时使用。不可与
basicAuth
或oauth2
同时设置。- 类型
-
object
属性 | 类型 | 描述 |
---|---|---|
|
| 选择命名空间中包含用于身份验证的凭证的 Secret 的键。 |
|
| 定义身份验证类型。该值不区分大小写。 "basic"不是受支持的值。 默认:"Bearer" |
10.1.6. .spec.endpoints[].authorization.credentials
- 描述
- 选择命名空间中包含用于身份验证的凭证的 Secret 的键。
- 类型
-
object
- 必填
-
key
-
属性 | 类型 | 描述 |
---|---|---|
|
| 要从中选择的 secret 的密钥。必须是一个有效的 secret 密钥。 |
|
|
引用的名称。有效地需要此字段,但因为允许向后兼容为空。这里具有空值的此类实例几乎是错误的。TODO:添加其他有用的字段。apiVersion、kind、uid?更多信息: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names TODO: 当 controller-gen 不需要 https://github.com/kubernetes-sigs/kubebuilder/issues/3896 时,Drop |
|
| 指定是否需要定义 Secret 还是其密钥 |
10.1.7. .spec.endpoints[].basicAuth
- 描述
basicAuth
将基本身份验证凭据配置为在提取目标时使用。不可
与授权
(或oauth2)
同时设置。- 类型
-
object
属性 | 类型 | 描述 |
---|---|---|
|
|
|
|
|
|
10.1.8. .spec.endpoints[].basicAuth.password
- 描述
-
password
指定包含用于身份验证的密码的 Secret 的键。 - 类型
-
object
- 必填
-
key
-
属性 | 类型 | 描述 |
---|---|---|
|
| 要从中选择的 secret 的密钥。必须是一个有效的 secret 密钥。 |
|
|
引用的名称。有效地需要此字段,但因为允许向后兼容为空。这里具有空值的此类实例几乎是错误的。TODO:添加其他有用的字段。apiVersion、kind、uid?更多信息: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names TODO: 当 controller-gen 不需要 https://github.com/kubernetes-sigs/kubebuilder/issues/3896 时,Drop |
|
| 指定是否需要定义 Secret 还是其密钥 |
10.1.9. .spec.endpoints[].basicAuth.username
- 描述
-
username
指定包含用于身份验证的用户名的 Secret 的键。 - 类型
-
object
- 必填
-
key
-
属性 | 类型 | 描述 |
---|---|---|
|
| 要从中选择的 secret 的密钥。必须是一个有效的 secret 密钥。 |
|
|
引用的名称。有效地需要此字段,但因为允许向后兼容为空。这里具有空值的此类实例几乎是错误的。TODO:添加其他有用的字段。apiVersion、kind、uid?更多信息: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names TODO: 当 controller-gen 不需要 https://github.com/kubernetes-sigs/kubebuilder/issues/3896 时,Drop |
|
| 指定是否需要定义 Secret 还是其密钥 |
10.1.10. .spec.endpoints[].bearerTokenSecret
- 描述
bearerTokenSecret
指定包含用于提取目标的 bearer 令牌的 Secret 的密钥。secret 需要与 ServiceMonitor 对象位于同一个命名空间中,并可由 Prometheus Operator 读取。deprecated: 使用
authorization
替代。- 类型
-
object
- 必填
-
key
-
属性 | 类型 | 描述 |
---|---|---|
|
| 要从中选择的 secret 的密钥。必须是一个有效的 secret 密钥。 |
|
|
引用的名称。有效地需要此字段,但因为允许向后兼容为空。这里具有空值的此类实例几乎是错误的。TODO:添加其他有用的字段。apiVersion、kind、uid?更多信息: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names TODO: 当 controller-gen 不需要 https://github.com/kubernetes-sigs/kubebuilder/issues/3896 时,Drop |
|
| 指定是否需要定义 Secret 还是其密钥 |
10.1.11. .spec.endpoints[].metricRelabelings
- 描述
-
metricRelabelings
配置重新标记规则,以便在 ingestion 前应用到示例。 - 类型
-
array
10.1.12. .spec.endpoints[].metricRelabelings[]
- 描述
RelabelConfig 允许为目标、警报、提取示例和远程写入示例动态重写标签。
更多信息: https://prometheus.io/docs/prometheus/latest/configuration/configuration/#relabel_config
- 类型
-
object
属性 | 类型 | 描述 |
---|---|---|
|
| 根据正则表达式匹配要执行的操作。
默认:"Replace" |
|
| modulus 采用 source 标签值的哈希。
仅在操作为 |
|
| 匹配提取值的正则表达式。 |
|
| 如果正则表达式匹配,则执行 replace 操作的替换值。 正则表达式捕获组可用。 |
|
| 分隔符是串联的 SourceLabels 之间的字符串。 |
|
| source 标签从现有标签中选择值。其内容使用配置的 Separator 连接,并与配置的正则表达式匹配。 |
|
| 生成的字符串写入替换标签。
对于 正则表达式捕获组可用。 |
10.1.13. .spec.endpoints[].oauth2
- 描述
oauth2
将 OAuth2 设置配置为在提取目标时使用。它需要 Prometheus >= 2.27.0。
不可与授权同时设置,或者
basicAuth
。- 类型
-
object
- 必填
-
clientId
-
clientSecret
-
tokenUrl
-
属性 | 类型 | 描述 |
---|---|---|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
10.1.14. .spec.endpoints[].oauth2.clientId
- 描述
-
clientId
指定包含 OAuth2 客户端 ID 的 Secret 或 ConfigMap 的键。 - 类型
-
object
属性 | 类型 | 描述 |
---|---|---|
|
| 包含用于目标的数据的 ConfigMap。 |
|
| 包含用于目标的数据的 secret。 |
10.1.15. .spec.endpoints[].oauth2.clientId.configMap
- 描述
- 包含用于目标的数据的 ConfigMap。
- 类型
-
object
- 必填
-
key
-
属性 | 类型 | 描述 |
---|---|---|
|
| 要选择的密钥。 |
|
|
引用的名称。有效地需要此字段,但因为允许向后兼容为空。这里具有空值的此类实例几乎是错误的。TODO:添加其他有用的字段。apiVersion、kind、uid?更多信息: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names TODO: 当 controller-gen 不需要 https://github.com/kubernetes-sigs/kubebuilder/issues/3896 时,Drop |
|
| 指定是否必须定义 ConfigMap 还是其键 |
10.1.16. .spec.endpoints[].oauth2.clientId.secret
- 描述
- 包含用于目标的数据的 secret。
- 类型
-
object
- 必填
-
key
-
属性 | 类型 | 描述 |
---|---|---|
|
| 要从中选择的 secret 的密钥。必须是一个有效的 secret 密钥。 |
|
|
引用的名称。有效地需要此字段,但因为允许向后兼容为空。这里具有空值的此类实例几乎是错误的。TODO:添加其他有用的字段。apiVersion、kind、uid?更多信息: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names TODO: 当 controller-gen 不需要 https://github.com/kubernetes-sigs/kubebuilder/issues/3896 时,Drop |
|
| 指定是否需要定义 Secret 还是其密钥 |
10.1.17. .spec.endpoints[].oauth2.clientSecret
- 描述
-
clientSecret
指定包含 OAuth2 客户端 secret 的 Secret 的密钥。 - 类型
-
object
- 必填
-
key
-
属性 | 类型 | 描述 |
---|---|---|
|
| 要从中选择的 secret 的密钥。必须是一个有效的 secret 密钥。 |
|
|
引用的名称。有效地需要此字段,但因为允许向后兼容为空。这里具有空值的此类实例几乎是错误的。TODO:添加其他有用的字段。apiVersion、kind、uid?更多信息: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names TODO: 当 controller-gen 不需要 https://github.com/kubernetes-sigs/kubebuilder/issues/3896 时,Drop |
|
| 指定是否需要定义 Secret 还是其密钥 |
10.1.18. .spec.endpoints[].params
- 描述
- 参数定义可选的 HTTP URL 参数。
- 类型
-
对象
10.1.19. .spec.endpoints[].relabelings
- 描述
重新标记
配置重新标记规则以应用目标的元数据标签。Operator 会自动为几个标准 Kubernetes 字段添加重新标记。
原始提取作业的名称可以通过
\__tmp_prometheus_job_name
标签获得。更多信息: https://prometheus.io/docs/prometheus/latest/configuration/configuration/#relabel_config
- 类型
-
array
10.1.20. .spec.endpoints[].relabelings[]
- 描述
RelabelConfig 允许为目标、警报、提取示例和远程写入示例动态重写标签。
更多信息: https://prometheus.io/docs/prometheus/latest/configuration/configuration/#relabel_config
- 类型
-
object
属性 | 类型 | 描述 |
---|---|---|
|
| 根据正则表达式匹配要执行的操作。
默认:"Replace" |
|
| modulus 采用 source 标签值的哈希。
仅在操作为 |
|
| 匹配提取值的正则表达式。 |
|
| 如果正则表达式匹配,则执行 replace 操作的替换值。 正则表达式捕获组可用。 |
|
| 分隔符是串联的 SourceLabels 之间的字符串。 |
|
| source 标签从现有标签中选择值。其内容使用配置的 Separator 连接,并与配置的正则表达式匹配。 |
|
| 生成的字符串写入替换标签。
对于 正则表达式捕获组可用。 |
10.1.21. .spec.endpoints[].tlsConfig
- 描述
- 提取目标时使用的 TLS 配置。
- 类型
-
object
属性 | 类型 | 描述 |
---|---|---|
|
| 验证服务器证书时使用的证书颁发机构。 |
|
| Prometheus 容器中用于目标的 CA 证书的路径。 |
|
| 执行 client-authentication 时要出现的客户端证书。 |
|
| 目标的 Prometheus 容器中客户端证书文件的路径。 |
|
| 禁用目标证书验证。 |
|
| 目标的 Prometheus 容器中客户端密钥文件的路径。 |
|
| 包含目标客户端密钥文件的 secret。 |
|
| 用于验证目标的主机名。 |
10.1.22. .spec.endpoints[].tlsConfig.ca
- 描述
- 验证服务器证书时使用的证书颁发机构。
- 类型
-
object
属性 | 类型 | 描述 |
---|---|---|
|
| 包含用于目标的数据的 ConfigMap。 |
|
| 包含用于目标的数据的 secret。 |
10.1.23. .spec.endpoints[].tlsConfig.ca.configMap
- 描述
- 包含用于目标的数据的 ConfigMap。
- 类型
-
object
- 必填
-
key
-
属性 | 类型 | 描述 |
---|---|---|
|
| 要选择的密钥。 |
|
|
引用的名称。有效地需要此字段,但因为允许向后兼容为空。这里具有空值的此类实例几乎是错误的。TODO:添加其他有用的字段。apiVersion、kind、uid?更多信息: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names TODO: 当 controller-gen 不需要 https://github.com/kubernetes-sigs/kubebuilder/issues/3896 时,Drop |
|
| 指定是否必须定义 ConfigMap 还是其键 |
10.1.24. .spec.endpoints[].tlsConfig.ca.secret
- 描述
- 包含用于目标的数据的 secret。
- 类型
-
object
- 必填
-
key
-
属性 | 类型 | 描述 |
---|---|---|
|
| 要从中选择的 secret 的密钥。必须是一个有效的 secret 密钥。 |
|
|
引用的名称。有效地需要此字段,但因为允许向后兼容为空。这里具有空值的此类实例几乎是错误的。TODO:添加其他有用的字段。apiVersion、kind、uid?更多信息: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names TODO: 当 controller-gen 不需要 https://github.com/kubernetes-sigs/kubebuilder/issues/3896 时,Drop |
|
| 指定是否需要定义 Secret 还是其密钥 |
10.1.25. .spec.endpoints[].tlsConfig.cert
- 描述
- 执行 client-authentication 时要出现的客户端证书。
- 类型
-
object
属性 | 类型 | 描述 |
---|---|---|
|
| 包含用于目标的数据的 ConfigMap。 |
|
| 包含用于目标的数据的 secret。 |
10.1.26. .spec.endpoints[].tlsConfig.cert.configMap
- 描述
- 包含用于目标的数据的 ConfigMap。
- 类型
-
object
- 必填
-
key
-
属性 | 类型 | 描述 |
---|---|---|
|
| 要选择的密钥。 |
|
|
引用的名称。有效地需要此字段,但因为允许向后兼容为空。这里具有空值的此类实例几乎是错误的。TODO:添加其他有用的字段。apiVersion、kind、uid?更多信息: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names TODO: 当 controller-gen 不需要 https://github.com/kubernetes-sigs/kubebuilder/issues/3896 时,Drop |
|
| 指定是否必须定义 ConfigMap 还是其键 |
10.1.27. .spec.endpoints[].tlsConfig.cert.secret
- 描述
- 包含用于目标的数据的 secret。
- 类型
-
object
- 必填
-
key
-
属性 | 类型 | 描述 |
---|---|---|
|
| 要从中选择的 secret 的密钥。必须是一个有效的 secret 密钥。 |
|
|
引用的名称。有效地需要此字段,但因为允许向后兼容为空。这里具有空值的此类实例几乎是错误的。TODO:添加其他有用的字段。apiVersion、kind、uid?更多信息: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names TODO: 当 controller-gen 不需要 https://github.com/kubernetes-sigs/kubebuilder/issues/3896 时,Drop |
|
| 指定是否需要定义 Secret 还是其密钥 |
10.1.28. .spec.endpoints[].tlsConfig.keySecret
- 描述
- 包含目标客户端密钥文件的 secret。
- 类型
-
object
- 必填
-
key
-
属性 | 类型 | 描述 |
---|---|---|
|
| 要从中选择的 secret 的密钥。必须是一个有效的 secret 密钥。 |
|
|
引用的名称。有效地需要此字段,但因为允许向后兼容为空。这里具有空值的此类实例几乎是错误的。TODO:添加其他有用的字段。apiVersion、kind、uid?更多信息: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names TODO: 当 controller-gen 不需要 https://github.com/kubernetes-sigs/kubebuilder/issues/3896 时,Drop |
|
| 指定是否需要定义 Secret 还是其密钥 |
10.1.29. .spec.namespaceSelector
- 描述
-
选择从哪些命名空间发现 Kubernetes
Endpoints
对象的选择器。 - 类型
-
object
属性 | 类型 | 描述 |
---|---|---|
|
| 布尔值描述是否都选择了所有命名空间,而不是列表限制它们。 |
|
| 要从中选择的命名空间名称列表。 |
10.1.30. .spec.selector
- 描述
-
选择 Kubernetes
Endpoints
对象的标签选择器。 - 类型
-
object
属性 | 类型 | 描述 |
---|---|---|
|
| matchExpressions 是标签选择器要求列表。要求的逻辑关系是 AND。 |
|
| 标签选择器要求是一个选择器,其中包含与键和值相关的值、键和值。 |
|
| matchLabels 是 {key,value} 对的映射。MatchLabels 映射中的单个 {key,value} 等同于 matchExpressions 的一个元素,其 key 字段是 "key",运算符是 "In",值数组仅包含 "value"。要求的逻辑关系是 AND。 |
10.1.31. .spec.selector.matchExpressions
- 描述
- matchExpressions 是标签选择器要求列表。要求的逻辑关系是 AND。
- 类型
-
array
10.1.32. .spec.selector.matchExpressions[]
- 描述
- 标签选择器要求是一个选择器,其中包含与键和值相关的值、键和值。
- 类型
-
object
- 必填
-
key
-
operator
-
属性 | 类型 | 描述 |
---|---|---|
|
| key 是选择器应用到的标签键。 |
|
| 运算符代表一个键与一组值的关系。有效的运算符是 In、NotIn、Exists 和 DoesNotExist。 |
|
| 值是字符串值的数组。如果运算符是 In 或 NotIn,则值数组必须是非空的。如果运算符是 Exists 或 DoesNotExist,则值数组必须为空。这个数组会在策略性合并补丁中被替换。 |
10.2. API 端点
可用的 API 端点如下:
/apis/monitoring.coreos.com/v1/servicemonitors
-
GET
: 列出 ServiceMonitor 类型的对象
-
/apis/monitoring.coreos.com/v1/namespaces/{namespace}/servicemonitors
-
DELETE
:删除 ServiceMonitor 集合 -
GET
: 列出 ServiceMonitor 类型的对象 -
POST
:创建一个 ServiceMonitor
-
/apis/monitoring.coreos.com/v1/namespaces/{namespace}/servicemonitors/{name}
-
DELETE
:删除 ServiceMonitor -
GET
:读取指定的 ServiceMonitor -
PATCH
: 部分更新指定的 ServiceMonitor -
PUT
:替换指定的 ServiceMonitor
-
10.2.1. /apis/monitoring.coreos.com/v1/servicemonitors
- HTTP 方法
-
GET
- 描述
- 列出 ServiceMonitor 类型的对象
HTTP 代码 | 响应正文 |
---|---|
200 - OK | |
401 - Unauthorized | 空 |
10.2.2. /apis/monitoring.coreos.com/v1/namespaces/{namespace}/servicemonitors
- HTTP 方法
-
DELETE
- 描述
- 删除 ServiceMonitor 集合
HTTP 代码 | 响应正文 |
---|---|
200 - OK |
|
401 - Unauthorized | 空 |
- HTTP 方法
-
GET
- 描述
- 列出 ServiceMonitor 类型的对象
HTTP 代码 | 响应正文 |
---|---|
200 - OK | |
401 - Unauthorized | 空 |
- HTTP 方法
-
POST
- 描述
- 创建 ServiceMonitor
参数 | 类型 | 描述 |
---|---|---|
|
| 出现时,表示不应保留修改。无效的或未被识别的 dryRun 指令将导致错误响应,且请求不会被进一步处理。有效值为: - All: 所有预演阶段都将被处理 |
|
| fieldValidation 指示服务器如何处理包含了未知或重复字段的请求 (POST/PUT/PATCH) 中的对象。有效值为: - Ignore :忽略从对象中静默丢弃的未知字段,并将忽略所有除最后一个重复字段以外的所有字段。这是 v1.23 版本之前的默认行为- Warn: 这会通过标准的警告响应头为从对象丢弃的每个未知字段以及遇到的每个重复字段,发送警告。如果没有其他错误,请求仍会成功,且只保留重复字段的最后一个。这是 v1.23+ 的的默认行为 - Strict: 如果从对象中删除了任何未知字段,或者存在任何重复字段,请求将失败并带有 BadRequest 错误。从服务器返回的错误将包含遇到的,以及重复的字段。 |
参数 | 类型 | 描述 |
---|---|---|
|
HTTP 代码 | 响应正文 |
---|---|
200 - OK | |
201 - Created | |
202 - Accepted | |
401 - Unauthorized | 空 |
10.2.3. /apis/monitoring.coreos.com/v1/namespaces/{namespace}/servicemonitors/{name}
参数 | 类型 | 描述 |
---|---|---|
|
| ServiceMonitor 的名称 |
- HTTP 方法
-
DELETE
- 描述
- 删除 ServiceMonitor
参数 | 类型 | 描述 |
---|---|---|
|
| 出现时,表示不应保留修改。无效的或未被识别的 dryRun 指令将导致错误响应,且请求不会被进一步处理。有效值为: - All: 所有预演阶段都将被处理 |
HTTP 代码 | 响应正文 |
---|---|
200 - OK |
|
202 - Accepted |
|
401 - Unauthorized | 空 |
- HTTP 方法
-
GET
- 描述
- 读取指定的 ServiceMonitor
HTTP 代码 | 响应正文 |
---|---|
200 - OK | |
401 - Unauthorized | 空 |
- HTTP 方法
-
PATCH
- 描述
- 部分更新指定的 ServiceMonitor
参数 | 类型 | 描述 |
---|---|---|
|
| 出现时,表示不应保留修改。无效的或未被识别的 dryRun 指令将导致错误响应,且请求不会被进一步处理。有效值为: - All: 所有预演阶段都将被处理 |
|
| fieldValidation 指示服务器如何处理包含了未知或重复字段的请求 (POST/PUT/PATCH) 中的对象。有效值为: - Ignore :忽略从对象中静默丢弃的未知字段,并将忽略所有除最后一个重复字段以外的所有字段。这是 v1.23 版本之前的默认行为- Warn: 这会通过标准的警告响应头为从对象丢弃的每个未知字段以及遇到的每个重复字段,发送警告。如果没有其他错误,请求仍会成功,且只保留重复字段的最后一个。这是 v1.23+ 的的默认行为 - Strict: 如果从对象中删除了任何未知字段,或者存在任何重复字段,请求将失败并带有 BadRequest 错误。从服务器返回的错误将包含遇到的,以及重复的字段。 |
HTTP 代码 | 响应正文 |
---|---|
200 - OK | |
401 - Unauthorized | 空 |
- HTTP 方法
-
PUT
- 描述
- 替换指定的 ServiceMonitor
参数 | 类型 | 描述 |
---|---|---|
|
| 出现时,表示不应保留修改。无效的或未被识别的 dryRun 指令将导致错误响应,且请求不会被进一步处理。有效值为: - All: 所有预演阶段都将被处理 |
|
| fieldValidation 指示服务器如何处理包含了未知或重复字段的请求 (POST/PUT/PATCH) 中的对象。有效值为: - Ignore :忽略从对象中静默丢弃的未知字段,并将忽略所有除最后一个重复字段以外的所有字段。这是 v1.23 版本之前的默认行为- Warn: 这会通过标准的警告响应头为从对象丢弃的每个未知字段以及遇到的每个重复字段,发送警告。如果没有其他错误,请求仍会成功,且只保留重复字段的最后一个。这是 v1.23+ 的的默认行为 - Strict: 如果从对象中删除了任何未知字段,或者存在任何重复字段,请求将失败并带有 BadRequest 错误。从服务器返回的错误将包含遇到的,以及重复的字段。 |
参数 | 类型 | 描述 |
---|---|---|
|
HTTP 代码 | 响应正文 |
---|---|
200 - OK | |
201 - Created | |
401 - Unauthorized | 空 |
第 11 章 ThanosRuler [monitoring.coreos.com/v1]
- 描述
- ThanosRuler 定义 ThanosRuler 部署。
- 类型
-
object
- 必填
-
spec
-
11.1. 规格
属性 | 类型 | 描述 |
---|---|---|
|
| APIVersion 定义对象的这个表示法的版本化的 schema。服务器应该将识别的模式转换为最新的内部值,并可拒绝未识别的值。更多信息: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources |
|
| kind 是一个字符串值,代表此对象所代表的 REST 资源。服务器可以从客户端向其提交请求的端点推断。无法更新。采用驼峰拼写法 (CamelCase)。更多信息: 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 | |
|
| ThanosRuler 集群所需行为的规格。更多信息: https://github.com/kubernetes/community/blob/master/contributors/devel/sig-architecture/api-conventions.md#spec-and-status |
|
| ThanosRuler 集群最近观察到的状态。只读。更多信息: https://github.com/kubernetes/community/blob/master/contributors/devel/sig-architecture/api-conventions.md#spec-and-status |
11.1.1. .spec
- 描述
- ThanosRuler 集群所需行为的规格。更多信息: https://github.com/kubernetes/community/blob/master/contributors/devel/sig-architecture/api-conventions.md#spec-and-status
- 类型
-
object
属性 | 类型 | 描述 |
---|---|---|
|
| AdditionalArgs 允许为 ThanosRuler 容器设置额外的参数。它旨在激活被专用配置选项不支持的隐藏标志。参数以 as-is 传递给 ThanosRuler 容器,如果它们无效或不被给定 ThanosRuler 版本支持,则可能会导致问题。如果参数冲突(例如,已由 Operator 本身设置的参数),或者在提供无效的参数时,协调将失败,并会记录错误。 |
|
| 参数作为 AdditionalArgs 列表的一部分。 |
|
| 如果指定,pod 的调度限制。 |
|
|
AlertDropLabels 配置应在 ThanosRuler 警报中丢弃的标签名称。副本标签 |
|
| Thanos Ruler 将在所有警报的 'Source' 字段中设置的外部查询 URL。映射到 '--alert.query-url' CLI arg。 |
|
| AlertRelabelConfigFile 指定警报重新标记配置文件的路径。与 AlertRelabelConfigs 一起使用时,alertRelabelConfigFile 具有优先权。 |
|
| AlertRelabelConfigs 配置 ThanosRuler 中的警报重新标记。警报重新标记配置必须具有在官方 Prometheus 文档中指定的表单: https://prometheus.io/docs/prometheus/latest/configuration/configuration/#alert_relabel_configs 替代 AlertRelabelConfigFile,以及低顺序优先级。 |
|
|
定义连接到 alertmanager 的配置。仅适用于 thanos v0.10.0 及更高版本。映射到 |
|
|
定义要将警报发送到 Alertmanager 的 URL。对于 Thanos v0.10.0 或更高版本,应使用 AlertManagersConfig。注: 如果指定了 AlertManagersConfig,则此字段将被忽略。映射到 |
|
|
容器允许注入其他容器或修改操作器生成的容器。这可用于允许将身份验证代理添加到 ThanosRuler pod 中,或更改 Operator 生成的容器的行为。这里描述的容器如果操作器共享相同的名称和修改,则修改通过战略合并补丁来完成。当前容器名称为: |
|
| 要在 pod 中运行的单一应用程序容器。 |
|
| EnforcedNamespaceLabel 强制执行为每个用户创建的警报和指标添加一个命名空间标签 origin。标签值始终是正在创建的对象的命名空间。 |
|
| 连续评估之间的间隔。 |
|
| 在强制原始命名空间标签中排除的 PrometheusRule 对象的引用列表。仅在 enforcedNamespaceLabel 设置为 true 时才适用。 |
|
| ObjectReference 引用 PodMonitor、ServiceMonitor、Probe 或 PrometheusRule 对象。 |
|
| Thanos Ruler 实例将位于 的外部 URL。这是生成正确 URL 所必需的。如果 Thanos Ruler 没有从 DNS 名称的根目录提供,则需要此项。 |
|
| grpcServerTlsConfig 配置 gRPC 服务器,Thanos Querier 从中读取记录的规则数据。注: 目前只支持 CAFile、CertFile 和 KeyFile 字段。映射到 '--grpc-server-tls github' CLI args。 |
|
| Pod 的 hostAliases 配置 |
|
| HostAlias 包含 IP 和主机名之间的映射,这些映射将作为 pod 的主机文件中的条目注入。 |
|
| Thanos 容器镜像 URL。 |
|
| 'thanos'、'init-config-reloader' 和 'config-reloader' 容器的镜像拉取策略。详情请查看 https://kubernetes.io/docs/concepts/containers/images/#image-pull-policy。 |
|
| 从 registry 中对同一命名空间中的 secret 的引用列表,用于从 registry 中拉取 thanos 镜像,请参阅 http://kubernetes.io/docs/user-guide/images#specifying-imagepullsecrets-on-a-pod |
|
| LocalObjectReference 包含足够信息,供您在同一命名空间中找到引用的对象。 |
|
| initContainers 允许将 initContainers 添加到 pod 定义中。它们可用于从外部来源获取用于注入 ThanosRuler 配置的 secret。执行 initContainer 期间的任何错误将导致重启 Pod。更多信息: https://kubernetes.io/docs/concepts/workloads/pods/init-containers/ 将 initContainers 用于任何用例,然后 secret 获取完全超出维护人员将支持什么范围,通过这样做,您可以接受这些行为随时可能中断,而无需通知。 |
|
| 要在 pod 中运行的单一应用程序容器。 |
|
|
标签配置对 ThanosRuler 的外部标签对。默认副本标签 |
|
| ListenLocal 使 Thanos ruler 侦听回环,使其不与 Pod IP 绑定。 |
|
| 要配置的 ThanosRuler 的日志格式。 |
|
| 用于配置 ThanosRuler 的日志级别。 |
|
| 新创建的 pod 应该在不出现任何容器崩溃的情况下变为可用状态的最小秒数。默认值为 0 (pod 会在就绪时被视为可用)。这是 kubernetes 1.22 的一个 alpha 字段,直到 1.24 (需要启用 StatefulSetMinReadySeconds 功能门)。 |
|
| 定义 Pod 调度到哪些节点上。 |
|
| objectStorageConfig 在 Thanos 中配置对象存储。ObjectStorageConfigFile 以及较低的顺序优先级。 |
|
| ObjectStorageConfigFile 指定对象存储配置文件的路径。与 ObjectStorageConfig 一起使用时,ObjectStorageConfigFile 具有优先权。 |
|
| 当 ThanosRuler 部署暂停时,除了删除操作不会在底层对象上执行。 |
|
| podMetadata 配置传播到 ThanosRuler pod 的标签和注解。 以下项目会被保留且无法覆盖:* "app.kubernetes.io/name" 标签,设置为 "thanos-ruler"。* "app.kubernetes.io/managed-by" 标签,设置为 "prometheus-operator"。* "app.kubernetes.io/instance" 标签,设置为 ThanosRuler 实例的名称。* "Thanos-ruler" 标签,设置为 ThanosRuler 实例的名称。* "kubectl.kubernetes.io/default-container" annotation, set to "thanos-ruler". |
|
|
用于 pod 和监管服务的端口名称。默认为 |
|
| 分配给 Pod 的优先级类 |
|
| prometheusRulesExcludedFromEnforce - 从 enforcing 添加命名空间标签中排除的 Prometheus 规则列表。只有在 enforcedNamespaceLabel 设置为 true 时才可以正常工作。确保为每个对已弃用设置了 ruleNamespace 和 ruleName :使用 excludedFromEnforcement。 |
|
| PrometheusRuleExcludeConfig 允许用户配置排除的 PrometheusRule 名称及其命名空间,同时为警报和指标强制执行命名空间标签。 |
|
|
定义用于连接 thanos 查询实例的配置。如果定义了它,则忽略 QueryEndpoints 字段。映射到 |
|
| QueryEndpoints 定义从中查询指标的 Thanos querier 端点。映射到 thanos 规则器的 --query 标志。 |
|
| 要部署的 thanos 规则器实例数量。 |
|
| 资源定义单个 Pod 的资源要求。如果没有提供,则不会设置 requests/limits |
|
|
ThanosRuler 应该保留数据的持续时间。默认为 '24h',它必须与正则表达式 |
|
| 路由前缀 ThanosRuler 注册 HTTP 处理程序。这允许在子路径上提供 thanos UI。 |
|
| 为规则发现选择的命名空间。如果未指定,则使用与 ThanosRuler 对象相同的命名空间中。 |
|
| 用于选择为警报和记录挂载哪些 PrometheusRules 的标签选择器。 |
|
| securityContext 包含 pod 级别的安全属性和通用容器设置。默认为默认的 PodSecurityContext。 |
|
| serviceAccountName 是用于运行 Thanos Ruler Pod 的 ServiceAccount 的名称。 |
|
| 存储规格以指定如何使用存储。 |
|
| 如果指定,pod 的容限。 |
|
| 此 Toleration 附加到 pod,以使用匹配的 operator <operator> 容许与 triple <key,value,effect> 匹配的任何污点。 |
|
| 如果指定,pod 的拓扑分布限制。 |
|
| TopologySpreadConstraint 指定如何在给定的拓扑中分布匹配的 pod。 |
|
| tracingConfig 在 Thanos 中配置追踪。
这是一个 实验性功能,它可能会以中断的方式改变任何即将推出的版本。 |
|
| tracingConfig 指定追踪配置文件的路径。
此字段优先于 这是一个 实验性功能,它可能会以中断的方式改变任何即将推出的版本。 |
|
| 要部署的 Thanos 版本。 |
|
| volumeMounts 允许在输出 StatefulSet 定义上配置额外的 VolumeMount。指定的 volumeMounts 将附加到 ruler 容器中的其他 VolumeMount,这是 StorageSpec 对象生成的。 |
|
| VolumeMount 描述了容器内卷挂载。 |
|
| 卷允许在输出 StatefulSet 定义中配置额外的卷。指定的卷将附加到作为 StorageSpec 对象生成的其他卷。 |
|
| 卷代表 pod 中的指定卷,可以被 pod 中的任何容器访问。 |
|
| 定义 ThanosRuler web 服务器的配置。 |
11.1.2. .spec.additionalArgs
- 描述
- AdditionalArgs 允许为 ThanosRuler 容器设置额外的参数。它旨在激活被专用配置选项不支持的隐藏标志。参数以 as-is 传递给 ThanosRuler 容器,如果它们无效或不被给定 ThanosRuler 版本支持,则可能会导致问题。如果参数冲突(例如,已由 Operator 本身设置的参数),或者在提供无效的参数时,协调将失败,并会记录错误。
- 类型
-
数组
11.1.3. .spec.additionalArgs[]
- 描述
- 参数作为 AdditionalArgs 列表的一部分。
- 类型
-
object
- 必填
-
name
-
属性 | 类型 | 描述 |
---|---|---|
|
| 参数的名称,如 "scrape.discovery-reload-interval"。 |
|
| 参数值,如 30s。对于仅限名称的参数(如 --storage.tsdb.no-lockfile)可以为空。 |
11.1.4. .spec.affinity
- 描述
- 如果指定,pod 的调度限制。
- 类型
-
object
属性 | 类型 | 描述 |
---|---|---|
|
| 描述 pod 的节点关联性调度规则。 |
|
| 描述 pod 关联性调度规则(例如,将这个 pod 位于同一个节点、区等)中。 |
|
| 描述 pod 反关联性调度规则(例如,避免将此 pod 放置到同一个节点、区等)。 |
11.1.5. .spec.affinity.nodeAffinity
- 描述
- 描述 pod 的节点关联性调度规则。
- 类型
-
object
属性 | 类型 | 描述 |
---|---|---|
|
| 调度程序更喜欢将 pod 调度到满足此字段指定的关联性表达式的节点,但可能会选择违反一个或多个表达式的节点。最首选节点是具有最大权重总和的节点,即对于满足所有调度要求(资源请求、必需关联表达式等)的每个节点,计算出一个总和总和总和总和(如果节点与相应的 matchExpressions 匹配),则计算总和最高的节点是最首选的。 |
|
| 空白的首选调度术语与带有隐式权重 0 (例如,它的一个 no-op)的所有对象匹配。空首选调度术语不匹配任何对象(例如,也是 no-op)。 |
|
| 如果在调度时没有满足此字段指定的关联性要求,则 pod 不会被调度到该节点上。如果此字段指定的关联性要求在 pod 执行期间某一点满足(例如,由于更新),则系统可能或可能无法最终从其节点驱除 pod。 |
11.1.6. .spec.affinity.nodeAffinity.preferredDuringSchedulingIgnoredDuringExecution
- 描述
- 调度程序更喜欢将 pod 调度到满足此字段指定的关联性表达式的节点,但可能会选择违反一个或多个表达式的节点。最首选节点是具有最大权重总和的节点,即对于满足所有调度要求(资源请求、必需关联表达式等)的每个节点,计算出一个总和总和总和总和(如果节点与相应的 matchExpressions 匹配),则计算总和最高的节点是最首选的。
- 类型
-
array
11.1.7. .spec.affinity.nodeAffinity.preferredDuringSchedulingIgnoredDuringExecution[]
- 描述
- 空白的首选调度术语与带有隐式权重 0 (例如,它的一个 no-op)的所有对象匹配。空首选调度术语不匹配任何对象(例如,也是 no-op)。
- 类型
-
object
- 必填
-
preference
-
weight
-
属性 | 类型 | 描述 |
---|---|---|
|
| 与对应权重关联的节点选择器术语。 |
|
| 与对应 nodeSelectorTerm 关联的权重,范围为 1-100。 |
11.1.8. .spec.affinity.nodeAffinity.preferredDuringSchedulingIgnoredDuringExecution[].preference
- 描述
- 与对应权重关联的节点选择器术语。
- 类型
-
object
属性 | 类型 | 描述 |
---|---|---|
|
| 按节点标签划分的节点选择器要求列表。 |
|
| 节点选择器要求是一个选择器,其中包含与键和值相关的值、键和值。 |
|
| 按节点字段划分的节点选择器要求列表。 |
|
| 节点选择器要求是一个选择器,其中包含与键和值相关的值、键和值。 |
11.1.9. .spec.affinity.nodeAffinity.preferredDuringSchedulingIgnoredDuringExecution[].preference.matchExpressions
- 描述
- 按节点标签划分的节点选择器要求列表。
- 类型
-
array
11.1.10. .spec.affinity.nodeAffinity.preferredDuringSchedulingIgnoredDuringExecution[].preference.matchExpressions[]
- 描述
- 节点选择器要求是一个选择器,其中包含与键和值相关的值、键和值。
- 类型
-
object
- 必填
-
key
-
operator
-
属性 | 类型 | 描述 |
---|---|---|
|
| 选择器应用到的标签键。 |
|
| 代表键与一组值的关系。有效的运算符为 In、NotIn、Exists、DoesNotExist。gt 和 Lt. |
|
| 字符串值数组。如果运算符是 In 或 NotIn,则值数组必须是非空的。如果运算符是 Exists 或 DoesNotExist,则值数组必须为空。如果运算符是 Gt 或 Lt,则值数组必须具有单个元素,它将解释为整数。这个数组会在策略性合并补丁中被替换。 |
11.1.11. .spec.affinity.nodeAffinity.preferredDuringSchedulingIgnoredDuringExecution[].preference.matchFields
- 描述
- 按节点字段划分的节点选择器要求列表。
- 类型
-
array
11.1.12. .spec.affinity.nodeAffinity.preferredDuringSchedulingIgnoredDuringExecution[].preference.matchFields[]
- 描述
- 节点选择器要求是一个选择器,其中包含与键和值相关的值、键和值。
- 类型
-
object
- 必填
-
key
-
operator
-
属性 | 类型 | 描述 |
---|---|---|
|
| 选择器应用到的标签键。 |
|
| 代表键与一组值的关系。有效的运算符为 In、NotIn、Exists、DoesNotExist。gt 和 Lt. |
|
| 字符串值数组。如果运算符是 In 或 NotIn,则值数组必须是非空的。如果运算符是 Exists 或 DoesNotExist,则值数组必须为空。如果运算符是 Gt 或 Lt,则值数组必须具有单个元素,它将解释为整数。这个数组会在策略性合并补丁中被替换。 |
11.1.13. .spec.affinity.nodeAffinity.requiredDuringSchedulingIgnoredDuringExecution
- 描述
- 如果在调度时没有满足此字段指定的关联性要求,则 pod 不会被调度到该节点上。如果此字段指定的关联性要求在 pod 执行期间某一点满足(例如,由于更新),则系统可能或可能无法最终从其节点驱除 pod。
- 类型
-
object
- 必填
-
nodeSelectorTerms
-
属性 | 类型 | 描述 |
---|---|---|
|
| 必需。节点选择器术语列表。术语为 ORed。 |
|
| null 或空节点选择器术语不匹配任何对象。它们的要求是 AND。TopologySelectorTerm 类型实现 NodeSelectorTerm 的子集。 |
11.1.14. .spec.affinity.nodeAffinity.requiredDuringSchedulingIgnoredDuringExecution.nodeSelectorTerms
- 描述
- 必需。节点选择器术语列表。术语为 ORed。
- 类型
-
array
11.1.15. .spec.affinity.nodeAffinity.requiredDuringSchedulingIgnoredDuringExecution.nodeSelectorTerms[]
- 描述
- null 或空节点选择器术语不匹配任何对象。它们的要求是 AND。TopologySelectorTerm 类型实现 NodeSelectorTerm 的子集。
- 类型
-
object
属性 | 类型 | 描述 |
---|---|---|
|
| 按节点标签划分的节点选择器要求列表。 |
|
| 节点选择器要求是一个选择器,其中包含与键和值相关的值、键和值。 |
|
| 按节点字段划分的节点选择器要求列表。 |
|
| 节点选择器要求是一个选择器,其中包含与键和值相关的值、键和值。 |
11.1.16. .spec.affinity.nodeAffinity.requiredDuringSchedulingIgnoredDuringExecution.nodeSelectorTerms[].matchExpressions
- 描述
- 按节点标签划分的节点选择器要求列表。
- 类型
-
array
11.1.17. .spec.affinity.nodeAffinity.requiredDuringSchedulingIgnoredDuringExecution.nodeSelectorTerms[].matchExpressions[]
- 描述
- 节点选择器要求是一个选择器,其中包含与键和值相关的值、键和值。
- 类型
-
object
- 必填
-
key
-
operator
-
属性 | 类型 | 描述 |
---|---|---|
|
| 选择器应用到的标签键。 |
|
| 代表键与一组值的关系。有效的运算符为 In、NotIn、Exists、DoesNotExist。gt 和 Lt. |
|
| 字符串值数组。如果运算符是 In 或 NotIn,则值数组必须是非空的。如果运算符是 Exists 或 DoesNotExist,则值数组必须为空。如果运算符是 Gt 或 Lt,则值数组必须具有单个元素,它将解释为整数。这个数组会在策略性合并补丁中被替换。 |
11.1.18. .spec.affinity.nodeAffinity.requiredDuringSchedulingIgnoredDuringExecution.nodeSelectorTerms[].matchFields
- 描述
- 按节点字段划分的节点选择器要求列表。
- 类型
-
array
11.1.19. .spec.affinity.nodeAffinity.requiredDuringSchedulingIgnoredDuringExecution.nodeSelectorTerms[].matchFields[]
- 描述
- 节点选择器要求是一个选择器,其中包含与键和值相关的值、键和值。
- 类型
-
object
- 必填
-
key
-
operator
-
属性 | 类型 | 描述 |
---|---|---|
|
| 选择器应用到的标签键。 |
|
| 代表键与一组值的关系。有效的运算符为 In、NotIn、Exists、DoesNotExist。gt 和 Lt. |
|
| 字符串值数组。如果运算符是 In 或 NotIn,则值数组必须是非空的。如果运算符是 Exists 或 DoesNotExist,则值数组必须为空。如果运算符是 Gt 或 Lt,则值数组必须具有单个元素,它将解释为整数。这个数组会在策略性合并补丁中被替换。 |
11.1.20. .spec.affinity.podAffinity
- 描述
- 描述 pod 关联性调度规则(例如,将这个 pod 位于同一个节点、区等)中。
- 类型
-
object
属性 | 类型 | 描述 |
---|---|---|
|
| 调度程序更喜欢将 pod 调度到满足此字段指定的关联性表达式的节点,但可能会选择违反一个或多个表达式的节点。最首选的节点是具有最大权重总和的节点(即,对于满足所有调度要求的节点(resource request、requiredDuringScheduling 关联性表达式等)的每个节点,计算并迭代此字段元素,并在节点具有与对应 podAffinityTerm 匹配的 pod 时,将"weight"添加到总和(如果节点具有最高 podAffinityTerm)、具有最高总和最高的节点是首选。 |
|
| 所有匹配的 WeightedPodAffinityTerm 字段的权重添加到每个节点,以查找最首选节点。 |
|
| 如果在调度时没有满足此字段指定的关联性要求,则 pod 不会被调度到该节点上。如果此字段指定的关联性要求在 pod 执行期间某一点满足(例如,由于 pod 标签更新),则系统可能或可能无法最终从其节点驱除 pod。当有多个元素时,与每个 podAffinityTerm 对应的节点列表都会被交集,例如必须满足所有术语。 |
|
| 定义一组 pod (即,与给定命名空间相对 labelSelector 匹配的 labelSelector ),该 pod 应该与 pod 共同定位(反关联性)或没有共同定位(反关联性)的节点上运行,其中 co-located 在具有键 <topologyKey> 标签的节点上运行,它与其上运行一组 pod 的 pod 匹配。 |
11.1.21. .spec.affinity.podAffinity.preferredDuringSchedulingIgnoredDuringExecution
- 描述
- 调度程序更喜欢将 pod 调度到满足此字段指定的关联性表达式的节点,但可能会选择违反一个或多个表达式的节点。最首选的节点是具有最大权重总和的节点(即,对于满足所有调度要求的节点(resource request、requiredDuringScheduling 关联性表达式等)的每个节点,计算并迭代此字段元素,并在节点具有与对应 podAffinityTerm 匹配的 pod 时,将"weight"添加到总和(如果节点具有最高 podAffinityTerm)、具有最高总和最高的节点是首选。
- 类型
-
array
11.1.22. .spec.affinity.podAffinity.preferredDuringSchedulingIgnoredDuringExecution[]
- 描述
- 所有匹配的 WeightedPodAffinityTerm 字段的权重添加到每个节点,以查找最首选节点。
- 类型
-
object
- 必填
-
podAffinityTerm
-
weight
-
属性 | 类型 | 描述 |
---|---|---|
|
| 必需。与对应权重关联的 pod 关联性术语。 |
|
| 与对应的 podAffinityTerm 关联的权重,范围为 1-100。 |
11.1.23. .spec.affinity.podAffinity.preferredDuringSchedulingIgnoredDuringExecution[].podAffinityTerm
- 描述
- 必需。与对应权重关联的 pod 关联性术语。
- 类型
-
object
- 必填
-
topologyKey
-
属性 | 类型 | 描述 |
---|---|---|
|
| 对一组资源进行标签查询,本例中为 pod。如果为空,则此 PodAffinityTerm 与任何 Pod 匹配。 |
|
|
matchLabelKeys 是一组 pod 标签键,用于选择要考虑哪些 pod。键用于从传入的 pod 标签中查找值,这些键值标签与 |
|
|
MismatchLabelKeys 是一组 pod 标签键,用于选择要考虑哪些 pod。键用于从传入的 pod 标签中查找值,这些键值标签与 |
|
| 术语适用的命名空间集合上的标签查询。术语应用于此字段选定的命名空间的 union,以及 namespaces 字段中列出的命名空间。null selector 和 null 或空命名空间列表表示"此 pod 的命名空间"。空选择器({})匹配所有命名空间。 |
|
| namespaces 指定术语应用到的命名空间名称的静态列表。术语应用到此字段中列出的命名空间的 union,namespaceSelector 选择的命名空间列表和 null namespaceSelector 表示 " this pod 的命名空间"。 |
|
| 此 pod 应该在指定命名空间中与 labelSelector 匹配的 pod 共存(反关联性),其中 co-located 定义为在运行所选 pod 的节点的值为 running 的节点上运行。不允许为空 topologyKey。 |
11.1.24. .spec.affinity.podAffinity.preferredDuringSchedulingIgnoredDuringExecution[].podAffinityTerm.labelSelector
- 描述
- 对一组资源进行标签查询,本例中为 pod。如果为空,则此 PodAffinityTerm 与任何 Pod 匹配。
- 类型
-
object
属性 | 类型 | 描述 |
---|---|---|
|
| matchExpressions 是标签选择器要求列表。要求的逻辑关系是 AND。 |
|
| 标签选择器要求是一个选择器,其中包含与键和值相关的值、键和值。 |
|
| matchLabels 是 {key,value} 对的映射。MatchLabels 映射中的单个 {key,value} 等同于 matchExpressions 的一个元素,其 key 字段是 "key",运算符是 "In",值数组仅包含 "value"。要求的逻辑关系是 AND。 |
11.1.25. .spec.affinity.podAffinity.preferredDuringSchedulingIgnoredDuringExecution[].podAffinityTerm.labelSelector.matchExpressions
- 描述
- matchExpressions 是标签选择器要求列表。要求的逻辑关系是 AND。
- 类型
-
array
11.1.26. .spec.affinity.podAffinity.preferredDuringSchedulingIgnoredDuringExecution[].podAffinityTerm.labelSelector.matchExpressions[]
- 描述
- 标签选择器要求是一个选择器,其中包含与键和值相关的值、键和值。
- 类型
-
object
- 必填
-
key
-
operator
-
属性 | 类型 | 描述 |
---|---|---|
|
| key 是选择器应用到的标签键。 |
|
| 运算符代表一个键与一组值的关系。有效的运算符是 In、NotIn、Exists 和 DoesNotExist。 |
|
| 值是字符串值的数组。如果运算符是 In 或 NotIn,则值数组必须是非空的。如果运算符是 Exists 或 DoesNotExist,则值数组必须为空。这个数组会在策略性合并补丁中被替换。 |
11.1.27. .spec.affinity.podAffinity.preferredDuringSchedulingIgnoredDuringExecution[].podAffinityTerm.namespaceSelector
- 描述
- 术语适用的命名空间集合上的标签查询。术语应用于此字段选定的命名空间的 union,以及 namespaces 字段中列出的命名空间。null selector 和 null 或空命名空间列表表示"此 pod 的命名空间"。空选择器({})匹配所有命名空间。
- 类型
-
object
属性 | 类型 | 描述 |
---|---|---|
|
| matchExpressions 是标签选择器要求列表。要求的逻辑关系是 AND。 |
|
| 标签选择器要求是一个选择器,其中包含与键和值相关的值、键和值。 |
|
| matchLabels 是 {key,value} 对的映射。MatchLabels 映射中的单个 {key,value} 等同于 matchExpressions 的一个元素,其 key 字段是 "key",运算符是 "In",值数组仅包含 "value"。要求的逻辑关系是 AND。 |
11.1.28. .spec.affinity.podAffinity.preferredDuringSchedulingIgnoredDuringExecution[].podAffinityTerm.namespaceSelector.matchExpressions
- 描述
- matchExpressions 是标签选择器要求列表。要求的逻辑关系是 AND。
- 类型
-
array
11.1.29. .spec.affinity.podAffinity.preferredDuringSchedulingIgnoredDuringExecution[].podAffinityTerm.namespaceSelector.matchExpressions[]
- 描述
- 标签选择器要求是一个选择器,其中包含与键和值相关的值、键和值。
- 类型
-
object
- 必填
-
key
-
operator
-
属性 | 类型 | 描述 |
---|---|---|
|
| key 是选择器应用到的标签键。 |
|
| 运算符代表一个键与一组值的关系。有效的运算符是 In、NotIn、Exists 和 DoesNotExist。 |
|
| 值是字符串值的数组。如果运算符是 In 或 NotIn,则值数组必须是非空的。如果运算符是 Exists 或 DoesNotExist,则值数组必须为空。这个数组会在策略性合并补丁中被替换。 |
11.1.30. .spec.affinity.podAffinity.requiredDuringSchedulingIgnoredDuringExecution
- 描述
- 如果在调度时没有满足此字段指定的关联性要求,则 pod 不会被调度到该节点上。如果此字段指定的关联性要求在 pod 执行期间某一点满足(例如,由于 pod 标签更新),则系统可能或可能无法最终从其节点驱除 pod。当有多个元素时,与每个 podAffinityTerm 对应的节点列表都会被交集,例如必须满足所有术语。
- 类型
-
array
11.1.31. .spec.affinity.podAffinity.requiredDuringSchedulingIgnoredDuringExecution[]
- 描述
- 定义一组 pod (即,与给定命名空间相对 labelSelector 匹配的 labelSelector ),该 pod 应该与 pod 共同定位(反关联性)或没有共同定位(反关联性)的节点上运行,其中 co-located 在具有键 <topologyKey> 标签的节点上运行,它与其上运行一组 pod 的 pod 匹配。
- 类型
-
object
- 必填
-
topologyKey
-
属性 | 类型 | 描述 |
---|---|---|
|
| 对一组资源进行标签查询,本例中为 pod。如果为空,则此 PodAffinityTerm 与任何 Pod 匹配。 |
|
|
matchLabelKeys 是一组 pod 标签键,用于选择要考虑哪些 pod。键用于从传入的 pod 标签中查找值,这些键值标签与 |
|
|
MismatchLabelKeys 是一组 pod 标签键,用于选择要考虑哪些 pod。键用于从传入的 pod 标签中查找值,这些键值标签与 |
|
| 术语适用的命名空间集合上的标签查询。术语应用于此字段选定的命名空间的 union,以及 namespaces 字段中列出的命名空间。null selector 和 null 或空命名空间列表表示"此 pod 的命名空间"。空选择器({})匹配所有命名空间。 |
|
| namespaces 指定术语应用到的命名空间名称的静态列表。术语应用到此字段中列出的命名空间的 union,namespaceSelector 选择的命名空间列表和 null namespaceSelector 表示 " this pod 的命名空间"。 |
|
| 此 pod 应该在指定命名空间中与 labelSelector 匹配的 pod 共存(反关联性),其中 co-located 定义为在运行所选 pod 的节点的值为 running 的节点上运行。不允许为空 topologyKey。 |
11.1.32. .spec.affinity.podAffinity.requiredDuringSchedulingIgnoredDuringExecution[].labelSelector
- 描述
- 对一组资源进行标签查询,本例中为 pod。如果为空,则此 PodAffinityTerm 与任何 Pod 匹配。
- 类型
-
object
属性 | 类型 | 描述 |
---|---|---|
|
| matchExpressions 是标签选择器要求列表。要求的逻辑关系是 AND。 |
|
| 标签选择器要求是一个选择器,其中包含与键和值相关的值、键和值。 |
|
| matchLabels 是 {key,value} 对的映射。MatchLabels 映射中的单个 {key,value} 等同于 matchExpressions 的一个元素,其 key 字段是 "key",运算符是 "In",值数组仅包含 "value"。要求的逻辑关系是 AND。 |
11.1.33. .spec.affinity.podAffinity.requiredDuringSchedulingIgnoredDuringExecution[].labelSelector.matchExpressions
- 描述
- matchExpressions 是标签选择器要求列表。要求的逻辑关系是 AND。
- 类型
-
array
11.1.34. .spec.affinity.podAffinity.requiredDuringSchedulingIgnoredDuringExecution[].labelSelector.matchExpressions[]
- 描述
- 标签选择器要求是一个选择器,其中包含与键和值相关的值、键和值。
- 类型
-
object
- 必填
-
key
-
operator
-
属性 | 类型 | 描述 |
---|---|---|
|
| key 是选择器应用到的标签键。 |
|
| 运算符代表一个键与一组值的关系。有效的运算符是 In、NotIn、Exists 和 DoesNotExist。 |
|
| 值是字符串值的数组。如果运算符是 In 或 NotIn,则值数组必须是非空的。如果运算符是 Exists 或 DoesNotExist,则值数组必须为空。这个数组会在策略性合并补丁中被替换。 |
11.1.35. .spec.affinity.podAffinity.requiredDuringSchedulingIgnoredDuringExecution[].namespaceSelector
- 描述
- 术语适用的命名空间集合上的标签查询。术语应用于此字段选定的命名空间的 union,以及 namespaces 字段中列出的命名空间。null selector 和 null 或空命名空间列表表示"此 pod 的命名空间"。空选择器({})匹配所有命名空间。
- 类型
-
object
属性 | 类型 | 描述 |
---|---|---|
|
| matchExpressions 是标签选择器要求列表。要求的逻辑关系是 AND。 |
|
| 标签选择器要求是一个选择器,其中包含与键和值相关的值、键和值。 |
|
| matchLabels 是 {key,value} 对的映射。MatchLabels 映射中的单个 {key,value} 等同于 matchExpressions 的一个元素,其 key 字段是 "key",运算符是 "In",值数组仅包含 "value"。要求的逻辑关系是 AND。 |
11.1.36. .spec.affinity.podAffinity.requiredDuringSchedulingIgnoredDuringExecution[].namespaceSelector.matchExpressions
- 描述
- matchExpressions 是标签选择器要求列表。要求的逻辑关系是 AND。
- 类型
-
array
11.1.37. .spec.affinity.podAffinity.requiredDuringSchedulingIgnoredDuringExecution[].namespaceSelector.matchExpressions[]
- 描述
- 标签选择器要求是一个选择器,其中包含与键和值相关的值、键和值。
- 类型
-
object
- 必填
-
key
-
operator
-
属性 | 类型 | 描述 |
---|---|---|
|
| key 是选择器应用到的标签键。 |
|
| 运算符代表一个键与一组值的关系。有效的运算符是 In、NotIn、Exists 和 DoesNotExist。 |
|
| 值是字符串值的数组。如果运算符是 In 或 NotIn,则值数组必须是非空的。如果运算符是 Exists 或 DoesNotExist,则值数组必须为空。这个数组会在策略性合并补丁中被替换。 |
11.1.38. .spec.affinity.podAntiAffinity
- 描述
- 描述 pod 反关联性调度规则(例如,避免将此 pod 放置到同一个节点、区等)。
- 类型
-
object
属性 | 类型 | 描述 |
---|---|---|
|
| 调度程序更喜欢将 pod 调度到满足此字段指定的反关联性表达式的节点,但可能会选择违反一个或多个表达式的节点。最首选的节点是具有最大权重总和的节点,即对于满足所有调度要求(资源请求、requiredDuringScheduling 反关联性表达式等)的每个节点,计算通过此字段元素来计算总和总和(如果节点具有与对应的 podAffinityTerm 匹配的 pod)的总和。 |
|
| 所有匹配的 WeightedPodAffinityTerm 字段的权重添加到每个节点,以查找最首选节点。 |
|
| 如果在调度时没有满足此字段指定的反关联性要求,则 pod 不会被调度到该节点上。如果此字段指定的反关联性要求在 Pod 执行期间某一点满足(例如,由于 pod 标签更新),则系统可能或可能无法最终从其节点驱除 pod。当有多个元素时,与每个 podAffinityTerm 对应的节点列表都会被交集,例如必须满足所有术语。 |
|
| 定义一组 pod (即,与给定命名空间相对 labelSelector 匹配的 labelSelector ),该 pod 应该与 pod 共同定位(反关联性)或没有共同定位(反关联性)的节点上运行,其中 co-located 在具有键 <topologyKey> 标签的节点上运行,它与其上运行一组 pod 的 pod 匹配。 |
11.1.39. .spec.affinity.podAntiAffinity.preferredDuringSchedulingIgnoredDuringExecution
- 描述
- 调度程序更喜欢将 pod 调度到满足此字段指定的反关联性表达式的节点,但可能会选择违反一个或多个表达式的节点。最首选的节点是具有最大权重总和的节点,即对于满足所有调度要求(资源请求、requiredDuringScheduling 反关联性表达式等)的每个节点,计算通过此字段元素来计算总和总和(如果节点具有与对应的 podAffinityTerm 匹配的 pod)的总和。
- 类型
-
array
11.1.40. .spec.affinity.podAntiAffinity.preferredDuringSchedulingIgnoredDuringExecution[]
- 描述
- 所有匹配的 WeightedPodAffinityTerm 字段的权重添加到每个节点,以查找最首选节点。
- 类型
-
object
- 必填
-
podAffinityTerm
-
weight
-
属性 | 类型 | 描述 |
---|---|---|
|
| 必需。与对应权重关联的 pod 关联性术语。 |
|
| 与对应的 podAffinityTerm 关联的权重,范围为 1-100。 |
11.1.41. .spec.affinity.podAntiAffinity.preferredDuringSchedulingIgnoredDuringExecution[].podAffinityTerm
- 描述
- 必需。与对应权重关联的 pod 关联性术语。
- 类型
-
object
- 必填
-
topologyKey
-
属性 | 类型 | 描述 |
---|---|---|
|
| 对一组资源进行标签查询,本例中为 pod。如果为空,则此 PodAffinityTerm 与任何 Pod 匹配。 |
|
|
matchLabelKeys 是一组 pod 标签键,用于选择要考虑哪些 pod。键用于从传入的 pod 标签中查找值,这些键值标签与 |
|
|
MismatchLabelKeys 是一组 pod 标签键,用于选择要考虑哪些 pod。键用于从传入的 pod 标签中查找值,这些键值标签与 |
|
| 术语适用的命名空间集合上的标签查询。术语应用于此字段选定的命名空间的 union,以及 namespaces 字段中列出的命名空间。null selector 和 null 或空命名空间列表表示"此 pod 的命名空间"。空选择器({})匹配所有命名空间。 |
|
| namespaces 指定术语应用到的命名空间名称的静态列表。术语应用到此字段中列出的命名空间的 union,namespaceSelector 选择的命名空间列表和 null namespaceSelector 表示 " this pod 的命名空间"。 |
|
| 此 pod 应该在指定命名空间中与 labelSelector 匹配的 pod 共存(反关联性),其中 co-located 定义为在运行所选 pod 的节点的值为 running 的节点上运行。不允许为空 topologyKey。 |
11.1.42. .spec.affinity.podAntiAffinity.preferredDuringSchedulingIgnoredDuringExecution[].podAffinityTerm.labelSelector
- 描述
- 对一组资源进行标签查询,本例中为 pod。如果为空,则此 PodAffinityTerm 与任何 Pod 匹配。
- 类型
-
object
属性 | 类型 | 描述 |
---|---|---|
|
| matchExpressions 是标签选择器要求列表。要求的逻辑关系是 AND。 |
|
| 标签选择器要求是一个选择器,其中包含与键和值相关的值、键和值。 |
|
| matchLabels 是 {key,value} 对的映射。MatchLabels 映射中的单个 {key,value} 等同于 matchExpressions 的一个元素,其 key 字段是 "key",运算符是 "In",值数组仅包含 "value"。要求的逻辑关系是 AND。 |
11.1.43. .spec.affinity.podAntiAffinity.preferredDuringSchedulingIgnoredDuringExecution[].podAffinityTerm.labelSelector.matchExpressions
- 描述
- matchExpressions 是标签选择器要求列表。要求的逻辑关系是 AND。
- 类型
-
array
11.1.44. .spec.affinity.podAntiAffinity.preferredDuringSchedulingIgnoredDuringExecution[].podAffinityTerm.labelSelector.matchExpressions[]
- 描述
- 标签选择器要求是一个选择器,其中包含与键和值相关的值、键和值。
- 类型
-
object
- 必填
-
key
-
operator
-
属性 | 类型 | 描述 |
---|---|---|
|
| key 是选择器应用到的标签键。 |
|
| 运算符代表一个键与一组值的关系。有效的运算符是 In、NotIn、Exists 和 DoesNotExist。 |
|
| 值是字符串值的数组。如果运算符是 In 或 NotIn,则值数组必须是非空的。如果运算符是 Exists 或 DoesNotExist,则值数组必须为空。这个数组会在策略性合并补丁中被替换。 |
11.1.45. .spec.affinity.podAntiAffinity.preferredDuringSchedulingIgnoredDuringExecution[].podAffinityTerm.namespaceSelector
- 描述
- 术语适用的命名空间集合上的标签查询。术语应用于此字段选定的命名空间的 union,以及 namespaces 字段中列出的命名空间。null selector 和 null 或空命名空间列表表示"此 pod 的命名空间"。空选择器({})匹配所有命名空间。
- 类型
-
object
属性 | 类型 | 描述 |
---|---|---|
|
| matchExpressions 是标签选择器要求列表。要求的逻辑关系是 AND。 |
|
| 标签选择器要求是一个选择器,其中包含与键和值相关的值、键和值。 |
|
| matchLabels 是 {key,value} 对的映射。MatchLabels 映射中的单个 {key,value} 等同于 matchExpressions 的一个元素,其 key 字段是 "key",运算符是 "In",值数组仅包含 "value"。要求的逻辑关系是 AND。 |
11.1.46. .spec.affinity.podAntiAffinity.preferredDuringSchedulingIgnoredDuringExecution[].podAffinityTerm.namespaceSelector.matchExpressions
- 描述
- matchExpressions 是标签选择器要求列表。要求的逻辑关系是 AND。
- 类型
-
array
11.1.47. .spec.affinity.podAntiAffinity.preferredDuringSchedulingIgnoredDuringExecution[].podAffinityTerm.namespaceSelector.matchExpressions[]
- 描述
- 标签选择器要求是一个选择器,其中包含与键和值相关的值、键和值。
- 类型
-
object
- 必填
-
key
-
operator
-
属性 | 类型 | 描述 |
---|---|---|
|
| key 是选择器应用到的标签键。 |
|
| 运算符代表一个键与一组值的关系。有效的运算符是 In、NotIn、Exists 和 DoesNotExist。 |
|
| 值是字符串值的数组。如果运算符是 In 或 NotIn,则值数组必须是非空的。如果运算符是 Exists 或 DoesNotExist,则值数组必须为空。这个数组会在策略性合并补丁中被替换。 |
11.1.48. .spec.affinity.podAntiAffinity.requiredDuringSchedulingIgnoredDuringExecution
- 描述
- 如果在调度时没有满足此字段指定的反关联性要求,则 pod 不会被调度到该节点上。如果此字段指定的反关联性要求在 Pod 执行期间某一点满足(例如,由于 pod 标签更新),则系统可能或可能无法最终从其节点驱除 pod。当有多个元素时,与每个 podAffinityTerm 对应的节点列表都会被交集,例如必须满足所有术语。
- 类型
-
array
11.1.49. .spec.affinity.podAntiAffinity.requiredDuringSchedulingIgnoredDuringExecution[]
- 描述
- 定义一组 pod (即,与给定命名空间相对 labelSelector 匹配的 labelSelector ),该 pod 应该与 pod 共同定位(反关联性)或没有共同定位(反关联性)的节点上运行,其中 co-located 在具有键 <topologyKey> 标签的节点上运行,它与其上运行一组 pod 的 pod 匹配。
- 类型
-
object
- 必填
-
topologyKey
-
属性 | 类型 | 描述 |
---|---|---|
|
| 对一组资源进行标签查询,本例中为 pod。如果为空,则此 PodAffinityTerm 与任何 Pod 匹配。 |
|
|
matchLabelKeys 是一组 pod 标签键,用于选择要考虑哪些 pod。键用于从传入的 pod 标签中查找值,这些键值标签与 |
|
|
MismatchLabelKeys 是一组 pod 标签键,用于选择要考虑哪些 pod。键用于从传入的 pod 标签中查找值,这些键值标签与 |
|
| 术语适用的命名空间集合上的标签查询。术语应用于此字段选定的命名空间的 union,以及 namespaces 字段中列出的命名空间。null selector 和 null 或空命名空间列表表示"此 pod 的命名空间"。空选择器({})匹配所有命名空间。 |
|
| namespaces 指定术语应用到的命名空间名称的静态列表。术语应用到此字段中列出的命名空间的 union,namespaceSelector 选择的命名空间列表和 null namespaceSelector 表示 " this pod 的命名空间"。 |
|
| 此 pod 应该在指定命名空间中与 labelSelector 匹配的 pod 共存(反关联性),其中 co-located 定义为在运行所选 pod 的节点的值为 running 的节点上运行。不允许为空 topologyKey。 |
11.1.50. .spec.affinity.podAntiAffinity.requiredDuringSchedulingIgnoredDuringExecution[].labelSelector
- 描述
- 对一组资源进行标签查询,本例中为 pod。如果为空,则此 PodAffinityTerm 与任何 Pod 匹配。
- 类型
-
object
属性 | 类型 | 描述 |
---|---|---|
|
| matchExpressions 是标签选择器要求列表。要求的逻辑关系是 AND。 |
|
| 标签选择器要求是一个选择器,其中包含与键和值相关的值、键和值。 |
|
| matchLabels 是 {key,value} 对的映射。MatchLabels 映射中的单个 {key,value} 等同于 matchExpressions 的一个元素,其 key 字段是 "key",运算符是 "In",值数组仅包含 "value"。要求的逻辑关系是 AND。 |
11.1.51. .spec.affinity.podAntiAffinity.requiredDuringSchedulingIgnoredDuringExecution[].labelSelector.matchExpressions
- 描述
- matchExpressions 是标签选择器要求列表。要求的逻辑关系是 AND。
- 类型
-
array
11.1.52. .spec.affinity.podAntiAffinity.requiredDuringSchedulingIgnoredDuringExecution[].labelSelector.matchExpressions[]
- 描述
- 标签选择器要求是一个选择器,其中包含与键和值相关的值、键和值。
- 类型
-
object
- 必填
-
key
-
operator
-
属性 | 类型 | 描述 |
---|---|---|
|
| key 是选择器应用到的标签键。 |
|
| 运算符代表一个键与一组值的关系。有效的运算符是 In、NotIn、Exists 和 DoesNotExist。 |
|
| 值是字符串值的数组。如果运算符是 In 或 NotIn,则值数组必须是非空的。如果运算符是 Exists 或 DoesNotExist,则值数组必须为空。这个数组会在策略性合并补丁中被替换。 |
11.1.53. .spec.affinity.podAntiAffinity.requiredDuringSchedulingIgnoredDuringExecution[].namespaceSelector
- 描述
- 术语适用的命名空间集合上的标签查询。术语应用于此字段选定的命名空间的 union,以及 namespaces 字段中列出的命名空间。null selector 和 null 或空命名空间列表表示"此 pod 的命名空间"。空选择器({})匹配所有命名空间。
- 类型
-
object
属性 | 类型 | 描述 |
---|---|---|
|
| matchExpressions 是标签选择器要求列表。要求的逻辑关系是 AND。 |
|
| 标签选择器要求是一个选择器,其中包含与键和值相关的值、键和值。 |
|
| matchLabels 是 {key,value} 对的映射。MatchLabels 映射中的单个 {key,value} 等同于 matchExpressions 的一个元素,其 key 字段是 "key",运算符是 "In",值数组仅包含 "value"。要求的逻辑关系是 AND。 |
11.1.54. .spec.affinity.podAntiAffinity.requiredDuringSchedulingIgnoredDuringExecution[].namespaceSelector.matchExpressions
- 描述
- matchExpressions 是标签选择器要求列表。要求的逻辑关系是 AND。
- 类型
-
array
11.1.55. .spec.affinity.podAntiAffinity.requiredDuringSchedulingIgnoredDuringExecution[].namespaceSelector.matchExpressions[]
- 描述
- 标签选择器要求是一个选择器,其中包含与键和值相关的值、键和值。
- 类型
-
object
- 必填
-
key
-
operator
-
属性 | 类型 | 描述 |
---|---|---|
|
| key 是选择器应用到的标签键。 |
|
| 运算符代表一个键与一组值的关系。有效的运算符是 In、NotIn、Exists 和 DoesNotExist。 |
|
| 值是字符串值的数组。如果运算符是 In 或 NotIn,则值数组必须是非空的。如果运算符是 Exists 或 DoesNotExist,则值数组必须为空。这个数组会在策略性合并补丁中被替换。 |
11.1.56. .spec.alertRelabelConfigs
- 描述
- AlertRelabelConfigs 配置 ThanosRuler 中的警报重新标记。警报重新标记配置必须具有在官方 Prometheus 文档中指定的表单: https://prometheus.io/docs/prometheus/latest/configuration/configuration/#alert_relabel_configs 替代 AlertRelabelConfigFile,以及低顺序优先级。
- 类型
-
object
- 必填
-
key
-
属性 | 类型 | 描述 |
---|---|---|
|
| 要从中选择的 secret 的密钥。必须是一个有效的 secret 密钥。 |
|
|
引用的名称。有效地需要此字段,但因为允许向后兼容为空。这里具有空值的此类实例几乎是错误的。TODO:添加其他有用的字段。apiVersion、kind、uid?更多信息: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names TODO: 当 controller-gen 不需要 https://github.com/kubernetes-sigs/kubebuilder/issues/3896 时,Drop |
|
| 指定是否需要定义 Secret 还是其密钥 |
11.1.57. .spec.alertmanagersConfig
- 描述
-
定义连接到 alertmanager 的配置。仅适用于 thanos v0.10.0 及更高版本。映射到
alertmanagers.config
arg。 - 类型
-
object
- 必填
-
key
-
属性 | 类型 | 描述 |
---|---|---|
|
| 要从中选择的 secret 的密钥。必须是一个有效的 secret 密钥。 |
|
|
引用的名称。有效地需要此字段,但因为允许向后兼容为空。这里具有空值的此类实例几乎是错误的。TODO:添加其他有用的字段。apiVersion、kind、uid?更多信息: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names TODO: 当 controller-gen 不需要 https://github.com/kubernetes-sigs/kubebuilder/issues/3896 时,Drop |
|
| 指定是否需要定义 Secret 还是其密钥 |
11.1.58. .spec.containers
- 描述
-
容器允许注入其他容器或修改操作器生成的容器。这可用于允许将身份验证代理添加到 ThanosRuler pod 中,或更改 Operator 生成的容器的行为。这里描述的容器如果操作器共享相同的名称和修改,则修改通过战略合并补丁来完成。当前容器名称为:
thanos-ruler
和config-reloader
。覆盖容器完全超出维护人员将支持什么范围,通过这样做,您可以接受这种行为,而无需通知。 - 类型
-
array
11.1.59. .spec.containers[]
- 描述
- 要在 pod 中运行的单一应用程序容器。
- 类型
-
object
- 必填
-
name
-
属性 | 类型 | 描述 |
---|---|---|
|
| 入口点的参数。如果没有提供,则使用容器镜像的 CMD。变量引用 $(VAR_NAME)使用容器的环境扩展。如果无法解析变量,则输入字符串中的引用将保持不变。双引号被缩减为单个 $,它允许转义 $(VAR_NAME)语法:即 " (VAR_NAME) " 将生成字符串 literal "$(VAR_NAME) "。转义的引用永远不会扩展,无论变量是否存在。无法更新。更多信息: https://kubernetes.io/docs/tasks/inject-data-application/define-command-argument-container/#running-a-command-in-a-shell |
|
| ENTRYPOINT 数组.没有在 shell 中执行。如果未提供此容器镜像,则使用容器镜像的 ENTRYPOINT。变量引用 $(VAR_NAME)使用容器的环境扩展。如果无法解析变量,则输入字符串中的引用将保持不变。双引号被缩减为单个 $,它允许转义 $(VAR_NAME)语法:即 " (VAR_NAME) " 将生成字符串 literal "$(VAR_NAME) "。转义的引用永远不会扩展,无论变量是否存在。无法更新。更多信息: https://kubernetes.io/docs/tasks/inject-data-application/define-command-argument-container/#running-a-command-in-a-shell |
|
| 容器中要设置的环境变量列表。无法更新。 |
|
| EnvVar 代表容器中存在的环境变量。 |
|
| 在容器中填充环境变量的源列表。源中定义的键必须是 C_IDENTIFIER。当容器启动时,所有无效密钥都会被报告为事件。当多个源中存在键时,与最后一个源关联的值将具有优先权。由带有重复键的 Env 定义的值将具有优先权。无法更新。 |
|
| EnvFromSource 代表一组 ConfigMap 的源 |
|
| 容器镜像名称。更多信息: https://kubernetes.io/docs/concepts/containers/images 此字段是可选的,允许更高级别的配置管理默认或覆盖工作负载控制器(如 Deployments 和 StatefulSets)中的容器镜像。 |
|
| 镜像拉取(pull)策略。Always, Never, IfNotPresent 之一。如果指定了 :latest 标签,则默认为 Always,否则则默认为 IfNotPresent。无法更新。更多信息: https://kubernetes.io/docs/concepts/containers/images#updating-images |
|
| 管理系统应采取的操作来响应容器生命周期事件。无法更新。 |
|
| 容器存活度探测.如果探测失败,容器将重启。无法更新。更多信息: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes |
|
| 指定为 DNS_LABEL 的容器名称。pod 中的每个容器都必须具有唯一的名称(DNS_LABEL)。无法更新。 |
|
| 从容器公开的端口列表。这里没有指定端口不会阻止公开该端口。所有正在侦听容器内默认"0.0.0.0"地址的端口均可从网络访问。使用策略合并补丁修改阵列可能会破坏数据。如需更多信息,请参阅 https://github.com/kubernetes/kubernetes/issues/108255。无法更新。 |
|
| containerPort 代表单个容器中的网络端口。 |
|
| 容器服务的定期探测到就绪状态。如果探测失败,容器将从服务端点中删除。无法更新。更多信息: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes |
|
| 容器的资源重新定义策略。 |
|
| ContainerResizePolicy 代表容器的资源重新定义策略。 |
|
| 此容器所需的计算资源。无法更新。更多信息: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/ |
|
| 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.io/docs/tasks/configure-pod-container/security-context/ |
|
| startupProbe 表示 Pod 已成功初始化。如果指定,则不会执行其他探测,直到成功完成为止。如果这个探测失败,则 Pod 将重启,就像 livenessProbe 失败一样。这可用于在 Pod 生命周期开始时提供不同的探测参数,当可能需要很长时间才能加载数据或温缓存时,而不是在 steady-state 操作过程中提供不同的探测参数。这不能更新。更多信息: https://kubernetes.io/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。无法更新。 |
|
| 指明应当如何填充终止消息。文件将使用 terminationMessagePath 的内容在成功或失败时填充容器状态消息。如果终止消息文件为空,则 FallbackToLogsOnError 将使用容器日志输出的最后块,并且容器退出并显示错误。日志输出限制为 2048 字节或 80 行,以较小者。默认为 File。无法更新。 |
|
| 此容器是否应为自己分配 TTY,也要求 'stdin' 为 true。默认为 false。 |
|
| volumeDevices 是容器要使用的块设备列表。 |
|
| volumeDevice 描述了容器中原始块设备的映射。 |
|
| 要挂载到容器文件系统的 Pod 卷。无法更新。 |
|
| VolumeMount 描述了容器内卷挂载。 |
|
| 容器的工作目录。如果未指定,则将使用容器运行时的默认值,该默认值可能在容器镜像中配置。无法更新。 |
11.1.60. .spec.containers[].env
- 描述
- 容器中要设置的环境变量列表。无法更新。
- 类型
-
array
11.1.61. .spec.containers[].env[]
- 描述
- EnvVar 代表容器中存在的环境变量。
- 类型
-
object
- 必填
-
name
-
属性 | 类型 | 描述 |
---|---|---|
|
| 环境变量的名称。必须是 C_IDENTIFIER。 |
|
| 变量引用 $(VAR_NAME)使用容器中之前定义的环境变量以及任何服务环境变量进行扩展。如果无法解析变量,则输入字符串中的引用将保持不变。双引号被缩减为单个 $,它允许转义 $(VAR_NAME)语法:即 " (VAR_NAME) " 将生成字符串 literal "$(VAR_NAME) "。转义的引用永远不会扩展,无论变量是否存在。默认为 ""。 |
|
| 环境变量的值的源。如果值不为空,则无法使用。 |
11.1.62. .spec.containers[].env[].valueFrom
- 描述
- 环境变量的值的源。如果值不为空,则无法使用。
- 类型
-
object
属性 | 类型 | 描述 |
---|---|---|
|
| 选择 ConfigMap 的键。 |
|
|
选择 pod 的字段:支持 metadata.name、metadata.namespace、 |
|
| 选择容器的资源:当前仅支持资源限值和请求(limits.cpu, limits.memory, limits.ephemeral-storage, requests.cpu, requests.memory and requests.ephemeral-storage)。 |
|
| 在 pod 命名空间中选择 secret 的键 |
11.1.63. .spec.containers[].env[].valueFrom.configMapKeyRef
- 描述
- 选择 ConfigMap 的键。
- 类型
-
object
- 必填
-
key
-
属性 | 类型 | 描述 |
---|---|---|
|
| 要选择的密钥。 |
|
|
引用的名称。有效地需要此字段,但因为允许向后兼容为空。这里具有空值的此类实例几乎是错误的。TODO:添加其他有用的字段。apiVersion、kind、uid?更多信息: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names TODO: 当 controller-gen 不需要 https://github.com/kubernetes-sigs/kubebuilder/issues/3896 时,Drop |
|
| 指定是否必须定义 ConfigMap 还是其键 |
11.1.64. .spec.containers[].env[].valueFrom.fieldRef
- 描述
-
选择 pod 的字段:支持 metadata.name、metadata.namespace、
metadata.labels['<KEY>']
,metadata.annotations['<KEY>']
, spec.nodeName, spec.serviceAccountName, status.hostIP, status.podIP, status.podIPs. - 类型
-
object
- 必填
-
fieldPath
-
属性 | 类型 | 描述 |
---|---|---|
|
| 模式的版本是按术语编写的 FieldPath,默认为 "v1"。 |
|
| 在指定 API 版本中选择的字段路径。 |
11.1.65. .spec.containers[].env[].valueFrom.resourceFieldRef
- 描述
- 选择容器的资源:当前仅支持资源限值和请求(limits.cpu, limits.memory, limits.ephemeral-storage, requests.cpu, requests.memory and requests.ephemeral-storage)。
- 类型
-
object
- 必填
-
resource
-
属性 | 类型 | 描述 |
---|---|---|
|
| 容器名称:卷需要,对于 env vars是可选的 |
|
| 指定公开资源的输出格式,默认为 "1" |
|
| 必需:要选择的资源 |
11.1.66. .spec.containers[].env[].valueFrom.secretKeyRef
- 描述
- 在 pod 命名空间中选择 secret 的键
- 类型
-
object
- 必填
-
key
-
属性 | 类型 | 描述 |
---|---|---|
|
| 要从中选择的 secret 的密钥。必须是一个有效的 secret 密钥。 |
|
|
引用的名称。有效地需要此字段,但因为允许向后兼容为空。这里具有空值的此类实例几乎是错误的。TODO:添加其他有用的字段。apiVersion、kind、uid?更多信息: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names TODO: 当 controller-gen 不需要 https://github.com/kubernetes-sigs/kubebuilder/issues/3896 时,Drop |
|
| 指定是否需要定义 Secret 还是其密钥 |
11.1.67. .spec.containers[].envFrom
- 描述
- 在容器中填充环境变量的源列表。源中定义的键必须是 C_IDENTIFIER。当容器启动时,所有无效密钥都会被报告为事件。当多个源中存在键时,与最后一个源关联的值将具有优先权。由带有重复键的 Env 定义的值将具有优先权。无法更新。
- 类型
-
array
11.1.68. .spec.containers[].envFrom[]
- 描述
- EnvFromSource 代表一组 ConfigMap 的源
- 类型
-
object
属性 | 类型 | 描述 |
---|---|---|
|
| 要从中选择的 ConfigMap |
|
| 要添加到 ConfigMap 中每个键的可选标识符。必须是 C_IDENTIFIER。 |
|
| 要从中选择的 Secret |
11.1.69. .spec.containers[].envFrom[].configMapRef
- 描述
- 要从中选择的 ConfigMap
- 类型
-
object
属性 | 类型 | 描述 |
---|---|---|
|
|
引用的名称。有效地需要此字段,但因为允许向后兼容为空。这里具有空值的此类实例几乎是错误的。TODO:添加其他有用的字段。apiVersion、kind、uid?更多信息: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names TODO: 当 controller-gen 不需要 https://github.com/kubernetes-sigs/kubebuilder/issues/3896 时,Drop |
|
| 指定是否必须定义 ConfigMap |
11.1.70. .spec.containers[].envFrom[].secretRef
- 描述
- 要从中选择的 Secret
- 类型
-
object
属性 | 类型 | 描述 |
---|---|---|
|
|
引用的名称。有效地需要此字段,但因为允许向后兼容为空。这里具有空值的此类实例几乎是错误的。TODO:添加其他有用的字段。apiVersion、kind、uid?更多信息: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names TODO: 当 controller-gen 不需要 https://github.com/kubernetes-sigs/kubebuilder/issues/3896 时,Drop |
|
| 指定是否必须定义 Secret |
11.1.71. .spec.containers[].lifecycle
- 描述
- 管理系统应采取的操作来响应容器生命周期事件。无法更新。
- 类型
-
object
属性 | 类型 | 描述 |
---|---|---|
|
| postStart 在容器被创建后立即调用。如果处理程序失败,则容器将根据其重启策略终止并重启。容器块的其他管理,直到 hook 完成为止。更多信息: https://kubernetes.io/docs/concepts/containers/container-lifecycle-hooks/#container-hooks |
|
| preStop 在因为 API 请求或管理事件而终止容器前马上调用,如存活度/启动探测失败、抢占、资源争用等。如果容器崩溃或退出,则不会调用处理程序。Pod 的终止宽限期倒计时开始,然后再执行 PreStop hook。无论处理程序的结果是什么,容器最终都会在 Pod 的终止宽限期内终止(除非被终结器造成延迟)。容器的其他管理块直到 hook 完成或直至到达终止宽限期为止。更多信息: https://kubernetes.io/docs/concepts/containers/container-lifecycle-hooks/#container-hooks |
11.1.72. .spec.containers[].lifecycle.postStart
- 描述
- postStart 在容器被创建后立即调用。如果处理程序失败,则容器将根据其重启策略终止并重启。容器块的其他管理,直到 hook 完成为止。更多信息: https://kubernetes.io/docs/concepts/containers/container-lifecycle-hooks/#container-hooks
- 类型
-
object
属性 | 类型 | 描述 |
---|---|---|
|
| exec 指定要执行的操作。 |
|
| httpGet 指定要执行的 http 请求。 |
|
| sleep 代表容器在被终止前应休眠的持续时间。 |
|
| 已弃用。tcpSocket 不支持作为 LifecycleHandler,并且保持向后兼容性。指定 tcp 处理程序时,没有此字段的验证和生命周期 hook 将在运行时失败。 |
11.1.73. .spec.containers[].lifecycle.postStart.exec
- 描述
- exec 指定要执行的操作。
- 类型
-
object
属性 | 类型 | 描述 |
---|---|---|
|
| 命令是在容器内执行的命令行,而 命令的工作目录是容器文件系统中的 root ('/')。命令只是 exec'd,它不会在 shell 中运行,因此传统的 shell 指令('|' 等)将无法工作。要使用 shell,您需要明确调用该 shell。0 的退出状态被视为 live/healthy,非零不健康。 |
11.1.74. .spec.containers[].lifecycle.postStart.httpGet
- 描述
- httpGet 指定要执行的 http 请求。
- 类型
-
object
- 必填
-
port
-
属性 | 类型 | 描述 |
---|---|---|
|
| 要连接到的主机名,默认为 pod IP。您可能想在 httpHeaders 中设置"主机"。 |
|
| 在请求中设置的自定义标头。HTTP 允许重复的标头。 |
|
| HTTPHeader 描述了在 HTTP 探测中使用的自定义标头 |
|
| 在 HTTP 服务器上访问的路径。 |
|
| 用于访问容器的端口的名称或编号。number 必须在 1 到 65535 之间。名称必须是 IANA_SVC_NAME。 |
|
| 用于连接到主机的方案。默认为 HTTP。 |
11.1.75. .spec.containers[].lifecycle.postStart.httpGet.httpHeaders
- 描述
- 在请求中设置的自定义标头。HTTP 允许重复的标头。
- 类型
-
array
11.1.76. .spec.containers[].lifecycle.postStart.httpGet.httpHeaders[]
- 描述
- HTTPHeader 描述了在 HTTP 探测中使用的自定义标头
- 类型
-
object
- 必填
-
name
-
value
-
属性 | 类型 | 描述 |
---|---|---|
|
| 标头字段名称。这将在输出时规范,因此理解 case-variant 名称与相同的标头一样。 |
|
| 标头字段值 |
11.1.77. .spec.containers[].lifecycle.postStart.sleep
- 描述
- sleep 代表容器在被终止前应休眠的持续时间。
- 类型
-
object
- 必填
-
SECONDS
-
属性 | 类型 | 描述 |
---|---|---|
|
| seconds 是睡眠的秒数。 |
11.1.78. .spec.containers[].lifecycle.postStart.tcpSocket
- 描述
- 已弃用。tcpSocket 不支持作为 LifecycleHandler,并且保持向后兼容性。指定 tcp 处理程序时,没有此字段的验证和生命周期 hook 将在运行时失败。
- 类型
-
object
- 必填
-
port
-
属性 | 类型 | 描述 |
---|---|---|
|
| 可选:要连接到的主机名,默认为 pod IP。 |
|
| 用于访问容器的端口的编号或名称。number 必须在 1 到 65535 之间。名称必须是 IANA_SVC_NAME。 |
11.1.79. .spec.containers[].lifecycle.preStop
- 描述
- preStop 在因为 API 请求或管理事件而终止容器前马上调用,如存活度/启动探测失败、抢占、资源争用等。如果容器崩溃或退出,则不会调用处理程序。Pod 的终止宽限期倒计时开始,然后再执行 PreStop hook。无论处理程序的结果是什么,容器最终都会在 Pod 的终止宽限期内终止(除非被终结器造成延迟)。容器的其他管理块直到 hook 完成或直至到达终止宽限期为止。更多信息: https://kubernetes.io/docs/concepts/containers/container-lifecycle-hooks/#container-hooks
- 类型
-
object
属性 | 类型 | 描述 |
---|---|---|
|
| exec 指定要执行的操作。 |
|
| httpGet 指定要执行的 http 请求。 |
|
| sleep 代表容器在被终止前应休眠的持续时间。 |
|
| 已弃用。tcpSocket 不支持作为 LifecycleHandler,并且保持向后兼容性。指定 tcp 处理程序时,没有此字段的验证和生命周期 hook 将在运行时失败。 |
11.1.80. .spec.containers[].lifecycle.preStop.exec
- 描述
- exec 指定要执行的操作。
- 类型
-
object
属性 | 类型 | 描述 |
---|---|---|
|
| 命令是在容器内执行的命令行,而 命令的工作目录是容器文件系统中的 root ('/')。命令只是 exec'd,它不会在 shell 中运行,因此传统的 shell 指令('|' 等)将无法工作。要使用 shell,您需要明确调用该 shell。0 的退出状态被视为 live/healthy,非零不健康。 |
11.1.81. .spec.containers[].lifecycle.preStop.httpGet
- 描述
- httpGet 指定要执行的 http 请求。
- 类型
-
object
- 必填
-
port
-
属性 | 类型 | 描述 |
---|---|---|
|
| 要连接到的主机名,默认为 pod IP。您可能想在 httpHeaders 中设置"主机"。 |
|
| 在请求中设置的自定义标头。HTTP 允许重复的标头。 |
|
| HTTPHeader 描述了在 HTTP 探测中使用的自定义标头 |
|
| 在 HTTP 服务器上访问的路径。 |
|
| 用于访问容器的端口的名称或编号。number 必须在 1 到 65535 之间。名称必须是 IANA_SVC_NAME。 |
|
| 用于连接到主机的方案。默认为 HTTP。 |
11.1.82. .spec.containers[].lifecycle.preStop.httpGet.httpHeaders
- 描述
- 在请求中设置的自定义标头。HTTP 允许重复的标头。
- 类型
-
array
11.1.83. .spec.containers[].lifecycle.preStop.httpGet.httpHeaders[]
- 描述
- HTTPHeader 描述了在 HTTP 探测中使用的自定义标头
- 类型
-
object
- 必填
-
name
-
value
-
属性 | 类型 | 描述 |
---|---|---|
|
| 标头字段名称。这将在输出时规范,因此理解 case-variant 名称与相同的标头一样。 |
|
| 标头字段值 |
11.1.84. .spec.containers[].lifecycle.preStop.sleep
- 描述
- sleep 代表容器在被终止前应休眠的持续时间。
- 类型
-
object
- 必填
-
SECONDS
-
属性 | 类型 | 描述 |
---|---|---|
|
| seconds 是睡眠的秒数。 |
11.1.85. .spec.containers[].lifecycle.preStop.tcpSocket
- 描述
- 已弃用。tcpSocket 不支持作为 LifecycleHandler,并且保持向后兼容性。指定 tcp 处理程序时,没有此字段的验证和生命周期 hook 将在运行时失败。
- 类型
-
object
- 必填
-
port
-
属性 | 类型 | 描述 |
---|---|---|
|
| 可选:要连接到的主机名,默认为 pod IP。 |
|
| 用于访问容器的端口的编号或名称。number 必须在 1 到 65535 之间。名称必须是 IANA_SVC_NAME。 |
11.1.86. .spec.containers[].livenessProbe
- 描述
- 容器存活度探测.如果探测失败,容器将重启。无法更新。更多信息: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes
- 类型
-
object
属性 | 类型 | 描述 |
---|---|---|
|
| exec 指定要执行的操作。 |
|
| 在成功后,探测被视为失败的最小连续失败。默认值为 3。最小值为 1。 |
|
| GRPC 指定涉及 GRPC 端口的操作。 |
|
| httpGet 指定要执行的 http 请求。 |
|
| 容器启动存活度探测前的秒数。更多信息: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes |
|
| 执行探测的频率(以秒为单位)。默认值为 10 秒。最小值为 1。 |
|
| 在失败后,探测至少连续成功会被视为成功。默认为 1。对于存活度和启动,必须为 1。最小值为 1。 |
|
| tcpSocket 指定涉及 TCP 端口的操作。 |
|
| pod 在探测失败时安全终止所需的可选持续时间(以秒为单位)。宽限期是 pod 中运行的进程发送终止信号和进程被强制停止使用 kill 信号的时间(以秒为单位)。为您的进程设置这个值超过预期清理时间。如果这个值是 nil,则使用 pod 的 terminationGracePeriodSeconds。否则,这个值会覆盖 pod 规格提供的值。值必须是非负整数。值为零表示立即通过终止信号停止(没有关闭的机会)。这是一个 beta 字段,需要启用 ProbeTerminationGracePeriod 功能门。如果未设置,则使用最小值为 1. spec.terminationGracePeriodSeconds。 |
|
| 探测超时的秒数。默认值为 1 秒。最小值为 1。更多信息: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes |
11.1.87. .spec.containers[].livenessProbe.exec
- 描述
- exec 指定要执行的操作。
- 类型
-
object
属性 | 类型 | 描述 |
---|---|---|
|
| 命令是在容器内执行的命令行,而 命令的工作目录是容器文件系统中的 root ('/')。命令只是 exec'd,它不会在 shell 中运行,因此传统的 shell 指令('|' 等)将无法工作。要使用 shell,您需要明确调用该 shell。0 的退出状态被视为 live/healthy,非零不健康。 |
11.1.88. .spec.containers[].livenessProbe.grpc
- 描述
- GRPC 指定涉及 GRPC 端口的操作。
- 类型
-
object
- 必填
-
port
-
属性 | 类型 | 描述 |
---|---|---|
|
| gRPC 服务的端口号。number 必须在 1 到 65535 之间。 |
|
| service 是要放入 gRPC HealthCheckRequest 中的服务名称(请参阅 https://github.com/grpc/grpc/blob/master/doc/health-checking.md)。 如果没有指定,则默认行为由 gRPC 定义。 |
11.1.89. .spec.containers[].livenessProbe.httpGet
- 描述
- httpGet 指定要执行的 http 请求。
- 类型
-
object
- 必填
-
port
-
属性 | 类型 | 描述 |
---|---|---|
|
| 要连接到的主机名,默认为 pod IP。您可能想在 httpHeaders 中设置"主机"。 |
|
| 在请求中设置的自定义标头。HTTP 允许重复的标头。 |
|
| HTTPHeader 描述了在 HTTP 探测中使用的自定义标头 |
|
| 在 HTTP 服务器上访问的路径。 |
|
| 用于访问容器的端口的名称或编号。number 必须在 1 到 65535 之间。名称必须是 IANA_SVC_NAME。 |
|
| 用于连接到主机的方案。默认为 HTTP。 |
11.1.90. .spec.containers[].livenessProbe.httpGet.httpHeaders
- 描述
- 在请求中设置的自定义标头。HTTP 允许重复的标头。
- 类型
-
array
11.1.91. .spec.containers[].livenessProbe.httpGet.httpHeaders[]
- 描述
- HTTPHeader 描述了在 HTTP 探测中使用的自定义标头
- 类型
-
object
- 必填
-
name
-
value
-
属性 | 类型 | 描述 |
---|---|---|
|
| 标头字段名称。这将在输出时规范,因此理解 case-variant 名称与相同的标头一样。 |
|
| 标头字段值 |
11.1.92. .spec.containers[].livenessProbe.tcpSocket
- 描述
- tcpSocket 指定涉及 TCP 端口的操作。
- 类型
-
object
- 必填
-
port
-
属性 | 类型 | 描述 |
---|---|---|
|
| 可选:要连接到的主机名,默认为 pod IP。 |
|
| 用于访问容器的端口的编号或名称。number 必须在 1 到 65535 之间。名称必须是 IANA_SVC_NAME。 |
11.1.93. .spec.containers[].ports
- 描述
- 从容器公开的端口列表。这里没有指定端口不会阻止公开该端口。所有正在侦听容器内默认"0.0.0.0"地址的端口均可从网络访问。使用策略合并补丁修改阵列可能会破坏数据。如需更多信息,请参阅 https://github.com/kubernetes/kubernetes/issues/108255。无法更新。
- 类型
-
array
11.1.94. .spec.containers[].ports[]
- 描述
- containerPort 代表单个容器中的网络端口。
- 类型
-
object
- 必填
-
containerPort
-
属性 | 类型 | 描述 |
---|---|---|
|
| pod IP 地址上公开的端口号。这必须是有效的端口号 0 < x < 65536。 |
|
| 将外部端口绑定到的主机 IP。 |
|
| 主机上公开的端口号。如果指定,这必须是有效的端口号 0 < x < 65536。如果指定了 HostNetwork,它必须与 ContainerPort 匹配。大多数容器都不需要这样做。 |
|
| 如果指定,这必须是 IANA_SVC_NAME,在 pod 中唯一。pod 中的每个命名端口都必须具有唯一的名称。服务可以引用的端口的名称。 |
|
| 端口的协议。必须是 UDP、TCP 或 SCTP。默认为 "TCP"。 |
11.1.95. .spec.containers[].readinessProbe
- 描述
- 容器服务的定期探测到就绪状态。如果探测失败,容器将从服务端点中删除。无法更新。更多信息: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes
- 类型
-
object
属性 | 类型 | 描述 |
---|---|---|
|
| exec 指定要执行的操作。 |
|
| 在成功后,探测被视为失败的最小连续失败。默认值为 3。最小值为 1。 |
|
| GRPC 指定涉及 GRPC 端口的操作。 |
|
| httpGet 指定要执行的 http 请求。 |
|
| 容器启动存活度探测前的秒数。更多信息: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes |
|
| 执行探测的频率(以秒为单位)。默认值为 10 秒。最小值为 1。 |
|
| 在失败后,探测至少连续成功会被视为成功。默认为 1。对于存活度和启动,必须为 1。最小值为 1。 |
|
| tcpSocket 指定涉及 TCP 端口的操作。 |
|
| pod 在探测失败时安全终止所需的可选持续时间(以秒为单位)。宽限期是 pod 中运行的进程发送终止信号和进程被强制停止使用 kill 信号的时间(以秒为单位)。为您的进程设置这个值超过预期清理时间。如果这个值是 nil,则使用 pod 的 terminationGracePeriodSeconds。否则,这个值会覆盖 pod 规格提供的值。值必须是非负整数。值为零表示立即通过终止信号停止(没有关闭的机会)。这是一个 beta 字段,需要启用 ProbeTerminationGracePeriod 功能门。如果未设置,则使用最小值为 1. spec.terminationGracePeriodSeconds。 |
|
| 探测超时的秒数。默认值为 1 秒。最小值为 1。更多信息: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes |
11.1.96. .spec.containers[].readinessProbe.exec
- 描述
- exec 指定要执行的操作。
- 类型
-
object
属性 | 类型 | 描述 |
---|---|---|
|
| 命令是在容器内执行的命令行,而 命令的工作目录是容器文件系统中的 root ('/')。命令只是 exec'd,它不会在 shell 中运行,因此传统的 shell 指令('|' 等)将无法工作。要使用 shell,您需要明确调用该 shell。0 的退出状态被视为 live/healthy,非零不健康。 |
11.1.97. .spec.containers[].readinessProbe.grpc
- 描述
- GRPC 指定涉及 GRPC 端口的操作。
- 类型
-
object
- 必填
-
port
-
属性 | 类型 | 描述 |
---|---|---|
|
| gRPC 服务的端口号。number 必须在 1 到 65535 之间。 |
|
| service 是要放入 gRPC HealthCheckRequest 中的服务名称(请参阅 https://github.com/grpc/grpc/blob/master/doc/health-checking.md)。 如果没有指定,则默认行为由 gRPC 定义。 |
11.1.98. .spec.containers[].readinessProbe.httpGet
- 描述
- httpGet 指定要执行的 http 请求。
- 类型
-
object
- 必填
-
port
-
属性 | 类型 | 描述 |
---|---|---|
|
| 要连接到的主机名,默认为 pod IP。您可能想在 httpHeaders 中设置"主机"。 |
|
| 在请求中设置的自定义标头。HTTP 允许重复的标头。 |
|
| HTTPHeader 描述了在 HTTP 探测中使用的自定义标头 |
|
| 在 HTTP 服务器上访问的路径。 |
|
| 用于访问容器的端口的名称或编号。number 必须在 1 到 65535 之间。名称必须是 IANA_SVC_NAME。 |
|
| 用于连接到主机的方案。默认为 HTTP。 |
11.1.99. .spec.containers[].readinessProbe.httpGet.httpHeaders
- 描述
- 在请求中设置的自定义标头。HTTP 允许重复的标头。
- 类型
-
array
11.1.100. .spec.containers[].readinessProbe.httpGet.httpHeaders[]
- 描述
- HTTPHeader 描述了在 HTTP 探测中使用的自定义标头
- 类型
-
object
- 必填
-
name
-
value
-
属性 | 类型 | 描述 |
---|---|---|
|
| 标头字段名称。这将在输出时规范,因此理解 case-variant 名称与相同的标头一样。 |
|
| 标头字段值 |
11.1.101. .spec.containers[].readinessProbe.tcpSocket
- 描述
- tcpSocket 指定涉及 TCP 端口的操作。
- 类型
-
object
- 必填
-
port
-
属性 | 类型 | 描述 |
---|---|---|
|
| 可选:要连接到的主机名,默认为 pod IP。 |
|
| 用于访问容器的端口的编号或名称。number 必须在 1 到 65535 之间。名称必须是 IANA_SVC_NAME。 |
11.1.102. .spec.containers[].resizePolicy
- 描述
- 容器的资源重新定义策略。
- 类型
-
数组
11.1.103. .spec.containers[].resizePolicy[]
- 描述
- ContainerResizePolicy 代表容器的资源重新定义策略。
- 类型
-
object
- 必填
-
resourceName
-
restartPolicy
-
属性 | 类型 | 描述 |
---|---|---|
|
| 此资源重新定义策略应用到的资源的名称。支持的值有:cpu、memory。 |
|
| 在指定资源调整大小时,重启策略会被应用。如果没有指定,则默认为 NotRequired。 |
11.1.104. .spec.containers[].resources
- 描述
- 此容器所需的计算资源。无法更新。更多信息: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/
- 类型
-
object
属性 | 类型 | 描述 |
---|---|---|
|
| claim 列出此容器使用的 spec.resourceClaims 中定义的资源名称。 这是一个 alpha 字段,需要启用 DynamicResourceAllocation 功能门。 此字段不可变。它只能为容器设置。 |
|
| ResourceClaim 引用 PodSpec.ResourceClaims 中的一个条目。 |
|
| 限制描述了允许的最大计算资源量。更多信息: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/ |
|
| Requests 描述了所需的最少计算资源。如果容器省略了 Requests,则默认为 Limits (如果明确指定),否则默认为实现定义的值。请求不能超过限值。更多信息: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/ |
11.1.105. .spec.containers[].resources.claims
- 描述
claim 列出此容器使用的 spec.resourceClaims 中定义的资源名称。
这是一个 alpha 字段,需要启用 DynamicResourceAllocation 功能门。
此字段不可变。它只能为容器设置。
- 类型
-
数组
11.1.106. .spec.containers[].resources.claims[]
- 描述
- ResourceClaim 引用 PodSpec.ResourceClaims 中的一个条目。
- 类型
-
object
- 必填
-
name
-
属性 | 类型 | 描述 |
---|---|---|
|
| name 必须与使用此字段的 Pod 的 pod.spec.resourceClaims 中的一个条目的名称匹配。它允许容器内部使用该资源。 |
11.1.107. .spec.containers[].securityContext
- 描述
- securityContext 定义容器应运行的安全选项。如果设置,SecurityContext 的字段会覆盖 PodSecurityContext 的等效字段。更多信息: https://kubernetes.io/docs/tasks/configure-pod-container/security-context/
- 类型
-
object
属性 | 类型 | 描述 |
---|---|---|
|
| allowPrivilegeEscalation 控制进程是否可以比其父进程获得更多特权。此 bool 直接控制容器进程上是否设置了 no_new_privs 标志。当容器是 : 1)作为 CAP_SYS_ADMIN 具有 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 时无法设置此字段。 |
|
| 此容器是否具有只读 root 文件系统。默认为 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 选项。如果 seccomp 选项同时在 pod 和容器级别上提供,则容器选项会覆盖 pod 选项。请注意,当 spec.os.name 是 windows 时无法设置此字段。 |
|
| 应用到所有容器的 Windows 特定设置。如果未指定,则使用 PodSecurityContext 中的选项。如果在 SecurityContext 和 PodSecurityContext 中设置,则 SecurityContext 中指定的值具有优先权。请注意,当 spec.os.name 是 linux 时,不能设置此字段。 |
11.1.108. .spec.containers[].securityContext.appArmorProfile
- 描述
- appArmorProfile 是此容器使用的 AppArmor 选项。如果设置,此配置集会覆盖 pod 的 appArmorProfile。请注意,当 spec.os.name 是 windows 时无法设置此字段。
- 类型
-
object
- 必填
-
type
-
属性 | 类型 | 描述 |
---|---|---|
|
| localhostProfile 表示节点上载入的配置集。该配置集必须在节点上预先配置才能正常工作。必须与配置文件的加载名称匹配。只在 type 为 "Localhost" 时,才应设置。 |
|
| Type 表示将应用哪些类型的 AppArmor 配置集。有效选项包括: Localhost - 节点上的配置文件预加载。RuntimeDefault - 容器运行时的默认配置集。unconfined - 无 AppArmor 强制。 |
11.1.109. .spec.containers[].securityContext.capabilities
- 描述
- 运行容器时添加/丢弃的功能。默认为容器运行时授予的默认功能集。请注意,当 spec.os.name 是 windows 时无法设置此字段。
- 类型
-
object
属性 | 类型 | 描述 |
---|---|---|
|
| 添加了功能 |
|
| 删除的功能 |
11.1.110. .spec.containers[].securityContext.seLinuxOptions
- 描述
- 要应用到容器的 SELinux 上下文。如果未指定,容器运行时将为每个容器分配一个随机 SELinux 上下文。也可以在 PodSecurityContext 中设置。如果在 SecurityContext 和 PodSecurityContext 中设置,则 SecurityContext 中指定的值具有优先权。请注意,当 spec.os.name 是 windows 时无法设置此字段。
- 类型
-
object
属性 | 类型 | 描述 |
---|---|---|
|
| level 是适用于容器的 SELinux 级别标签。 |
|
| role 是适用于容器的 SELinux 角色标签。 |
|
| type 是适用于容器的 SELinux 类型标签。 |
|
| user 是适用于容器的 SELinux 用户标签。 |
11.1.111. .spec.containers[].securityContext.seccompProfile
- 描述
- 此容器使用的 seccomp 选项。如果 seccomp 选项同时在 pod 和容器级别上提供,则容器选项会覆盖 pod 选项。请注意,当 spec.os.name 是 windows 时无法设置此字段。
- 类型
-
object
- 必填
-
type
-
属性 | 类型 | 描述 |
---|---|---|
|
| localhostProfile 表示应使用节点上文件中定义的配置集。该配置集必须在节点上预先配置才能正常工作。必须是一个降序路径,相对于 kubelet 配置的 seccomp 配置集位置。如果类型为"Localhost",则必须设置。不得为任何其他类型设置。 |
|
| Type 表示将应用了哪些 seccomp 配置集。有效选项有: localhost - 应该使用节点上文件中定义的配置文件。RuntimeDefault - 应使用容器运行时默认配置集。unconfined - 不应应用配置集。 |
11.1.112. .spec.containers[].securityContext.windowsOptions
- 描述
- 应用到所有容器的 Windows 特定设置。如果未指定,则使用 PodSecurityContext 中的选项。如果在 SecurityContext 和 PodSecurityContext 中设置,则 SecurityContext 中指定的值具有优先权。请注意,当 spec.os.name 是 linux 时,不能设置此字段。
- 类型
-
object
属性 | 类型 | 描述 |
---|---|---|
|
| GMSACredentialSpec 是 GMSA 准入 Webhook (https://github.com/kubernetes-sigs/windows-gmsa)内联由 GMSACredentialSpec 命名的 GMSA 凭证规格的内容。 |
|
| GMSACredentialSpecName 是要使用的 GMSA 凭证规格的名称。 |
|
| HostProcess 确定容器是否应作为"主机进程"容器运行。所有 Pod 的容器都必须具有相同的有效的 HostProcess 值(不允许混合 HostProcess 容器和非主机进程容器)。另外,如果 HostProcess 为 true,则 HostNetwork 也必须设置为 true。 |
|
| Windows 中的 UserName,以运行容器进程的入口点。如果未指定,则默认为在镜像元数据中指定的用户。也可以在 PodSecurityContext 中设置。如果在 SecurityContext 和 PodSecurityContext 中设置,则 SecurityContext 中指定的值具有优先权。 |
11.1.113. .spec.containers[].startupProbe
- 描述
- startupProbe 表示 Pod 已成功初始化。如果指定,则不会执行其他探测,直到成功完成为止。如果这个探测失败,则 Pod 将重启,就像 livenessProbe 失败一样。这可用于在 Pod 生命周期开始时提供不同的探测参数,当可能需要很长时间才能加载数据或温缓存时,而不是在 steady-state 操作过程中提供不同的探测参数。这不能更新。更多信息: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes
- 类型
-
object
属性 | 类型 | 描述 |
---|---|---|
|
| exec 指定要执行的操作。 |
|
| 在成功后,探测被视为失败的最小连续失败。默认值为 3。最小值为 1。 |
|
| GRPC 指定涉及 GRPC 端口的操作。 |
|
| httpGet 指定要执行的 http 请求。 |
|
| 容器启动存活度探测前的秒数。更多信息: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes |
|
| 执行探测的频率(以秒为单位)。默认值为 10 秒。最小值为 1。 |
|
| 在失败后,探测至少连续成功会被视为成功。默认为 1。对于存活度和启动,必须为 1。最小值为 1。 |
|
| tcpSocket 指定涉及 TCP 端口的操作。 |
|
| pod 在探测失败时安全终止所需的可选持续时间(以秒为单位)。宽限期是 pod 中运行的进程发送终止信号和进程被强制停止使用 kill 信号的时间(以秒为单位)。为您的进程设置这个值超过预期清理时间。如果这个值是 nil,则使用 pod 的 terminationGracePeriodSeconds。否则,这个值会覆盖 pod 规格提供的值。值必须是非负整数。值为零表示立即通过终止信号停止(没有关闭的机会)。这是一个 beta 字段,需要启用 ProbeTerminationGracePeriod 功能门。如果未设置,则使用最小值为 1. spec.terminationGracePeriodSeconds。 |
|
| 探测超时的秒数。默认值为 1 秒。最小值为 1。更多信息: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes |
11.1.114. .spec.containers[].startupProbe.exec
- 描述
- exec 指定要执行的操作。
- 类型
-
object
属性 | 类型 | 描述 |
---|---|---|
|
| 命令是在容器内执行的命令行,而 命令的工作目录是容器文件系统中的 root ('/')。命令只是 exec'd,它不会在 shell 中运行,因此传统的 shell 指令('|' 等)将无法工作。要使用 shell,您需要明确调用该 shell。0 的退出状态被视为 live/healthy,非零不健康。 |
11.1.115. .spec.containers[].startupProbe.grpc
- 描述
- GRPC 指定涉及 GRPC 端口的操作。
- 类型
-
object
- 必填
-
port
-
属性 | 类型 | 描述 |
---|---|---|
|
| gRPC 服务的端口号。number 必须在 1 到 65535 之间。 |
|
| service 是要放入 gRPC HealthCheckRequest 中的服务名称(请参阅 https://github.com/grpc/grpc/blob/master/doc/health-checking.md)。 如果没有指定,则默认行为由 gRPC 定义。 |
11.1.116. .spec.containers[].startupProbe.httpGet
- 描述
- httpGet 指定要执行的 http 请求。
- 类型
-
object
- 必填
-
port
-
属性 | 类型 | 描述 |
---|---|---|
|
| 要连接到的主机名,默认为 pod IP。您可能想在 httpHeaders 中设置"主机"。 |
|
| 在请求中设置的自定义标头。HTTP 允许重复的标头。 |
|
| HTTPHeader 描述了在 HTTP 探测中使用的自定义标头 |
|
| 在 HTTP 服务器上访问的路径。 |
|
| 用于访问容器的端口的名称或编号。number 必须在 1 到 65535 之间。名称必须是 IANA_SVC_NAME。 |
|
| 用于连接到主机的方案。默认为 HTTP。 |
11.1.117. .spec.containers[].startupProbe.httpGet.httpHeaders
- 描述
- 在请求中设置的自定义标头。HTTP 允许重复的标头。
- 类型
-
array
11.1.118. .spec.containers[].startupProbe.httpGet.httpHeaders[]
- 描述
- HTTPHeader 描述了在 HTTP 探测中使用的自定义标头
- 类型
-
object
- 必填
-
name
-
value
-
属性 | 类型 | 描述 |
---|---|---|
|
| 标头字段名称。这将在输出时规范,因此理解 case-variant 名称与相同的标头一样。 |
|
| 标头字段值 |
11.1.119. .spec.containers[].startupProbe.tcpSocket
- 描述
- tcpSocket 指定涉及 TCP 端口的操作。
- 类型
-
object
- 必填
-
port
-
属性 | 类型 | 描述 |
---|---|---|
|
| 可选:要连接到的主机名,默认为 pod IP。 |
|
| 用于访问容器的端口的编号或名称。number 必须在 1 到 65535 之间。名称必须是 IANA_SVC_NAME。 |
11.1.120. .spec.containers[].volumeDevices
- 描述
- volumeDevices 是容器要使用的块设备列表。
- 类型
-
array
11.1.121. .spec.containers[].volumeDevices[]
- 描述
- volumeDevice 描述了容器中原始块设备的映射。
- 类型
-
object
- 必填
-
devicePath
-
name
-
属性 | 类型 | 描述 |
---|---|---|
|
| DevicePath 是该设备要映射到的容器内的路径。 |
|
| name 必须与 pod 中 persistentVolumeClaim 的名称匹配 |
11.1.122. .spec.containers[].volumeMounts
- 描述
- 要挂载到容器文件系统的 Pod 卷。无法更新。
- 类型
-
array
11.1.123. .spec.containers[].volumeMounts[]
- 描述
- VolumeMount 描述了容器内卷挂载。
- 类型
-
object
- 必填
-
mountPath
-
name
-
属性 | 类型 | 描述 |
---|---|---|
|
| 应挂载卷的容器中的路径。不得包含 ':'。 |
|
| mountPropagation 决定挂载如何从主机传播到容器以及反向传播。如果没有设置,则使用 MountPropagationNone。此字段在 1.10 中是 beta。当 RecursiveReadOnly 设置为 IfPossible 或 Enabled 时,mountPropagation 必须是 None 或未指定(默认为 None)。 |
|
| 这必须与卷的 Name 匹配。 |
|
| 如果为 true,则以只读方式挂载,否则读写(false 或未指定)。默认为false。 |
|
| RecursiveReadOnly 指定是否应递归处理只读挂载。 如果 ReadOnly 为 false,则此字段没有意义,必须未指定。 如果 ReadOnly 为 true,且此字段设置为 Disabled,则不会递归只读挂载。如果将此字段设置为 IfPossible,则挂载将递归只读(如果容器运行时支持)。如果此字段设置为 Enabled,则挂载将在容器运行时支持时递归只读,否则不会启动 pod,并生成错误来指示原因。 如果将此字段设置为 IfPossible 或 Enabled,则 MountPropagation 必须设为 None (或未指定,默认为 None)。 如果没有指定此字段,它将被视为与 Disabled 的等效值。 |
|
| 应从中挂载容器卷的卷中的路径。默认为 "" (卷的 root)。 |
|
| 在应该挂载容器卷的卷中扩展路径。行为与 SubPath 类似,但环境变量引用 $(VAR_NAME)使用容器的环境扩展。默认为 "" (卷的 root)。SubPathExpr 和 SubPath 是互斥的。 |
11.1.124. .spec.excludedFromEnforcement
- 描述
- 在强制原始命名空间标签中排除的 PrometheusRule 对象的引用列表。仅在 enforcedNamespaceLabel 设置为 true 时才适用。
- 类型
-
数组
11.1.125. .spec.excludedFromEnforcement[]
- 描述
- ObjectReference 引用 PodMonitor、ServiceMonitor、Probe 或 PrometheusRule 对象。
- 类型
-
object
- 必填
-
namespace
-
resource
-
属性 | 类型 | 描述 |
---|---|---|
|
|
引用的组。如果没有指定,则默认为 |
|
| 引用的名称。如果没有设置,则命名空间中的所有资源都匹配。 |
|
| 引用的命名空间。更多信息: https://kubernetes.io/docs/concepts/overview/working-with-objects/namespaces/ |
|
| 引用的资源。 |
11.1.126. .spec.grpcServerTlsConfig
- 描述
- grpcServerTlsConfig 配置 gRPC 服务器,Thanos Querier 从中读取记录的规则数据。注: 目前只支持 CAFile、CertFile 和 KeyFile 字段。映射到 '--grpc-server-tls github' CLI args。
- 类型
-
object
属性 | 类型 | 描述 |
---|---|---|
|
| 验证服务器证书时使用的证书颁发机构。 |
|
| Prometheus 容器中用于目标的 CA 证书的路径。 |
|
| 执行 client-authentication 时要出现的客户端证书。 |
|
| 目标的 Prometheus 容器中客户端证书文件的路径。 |
|
| 禁用目标证书验证。 |
|
| 目标的 Prometheus 容器中客户端密钥文件的路径。 |
|
| 包含目标客户端密钥文件的 secret。 |
|
| 用于验证目标的主机名。 |
11.1.127. .spec.grpcServerTlsConfig.ca
- 描述
- 验证服务器证书时使用的证书颁发机构。
- 类型
-
object
属性 | 类型 | 描述 |
---|---|---|
|
| 包含用于目标的数据的 ConfigMap。 |
|
| 包含用于目标的数据的 secret。 |
11.1.128. .spec.grpcServerTlsConfig.ca.configMap
- 描述
- 包含用于目标的数据的 ConfigMap。
- 类型
-
object
- 必填
-
key
-
属性 | 类型 | 描述 |
---|---|---|
|
| 要选择的密钥。 |
|
|
引用的名称。有效地需要此字段,但因为允许向后兼容为空。这里具有空值的此类实例几乎是错误的。TODO:添加其他有用的字段。apiVersion、kind、uid?更多信息: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names TODO: 当 controller-gen 不需要 https://github.com/kubernetes-sigs/kubebuilder/issues/3896 时,Drop |
|
| 指定是否必须定义 ConfigMap 还是其键 |
11.1.129. .spec.grpcServerTlsConfig.ca.secret
- 描述
- 包含用于目标的数据的 secret。
- 类型
-
object
- 必填
-
key
-
属性 | 类型 | 描述 |
---|---|---|
|
| 要从中选择的 secret 的密钥。必须是一个有效的 secret 密钥。 |
|
|
引用的名称。有效地需要此字段,但因为允许向后兼容为空。这里具有空值的此类实例几乎是错误的。TODO:添加其他有用的字段。apiVersion、kind、uid?更多信息: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names TODO: 当 controller-gen 不需要 https://github.com/kubernetes-sigs/kubebuilder/issues/3896 时,Drop |
|
| 指定是否需要定义 Secret 还是其密钥 |
11.1.130. .spec.grpcServerTlsConfig.cert
- 描述
- 执行 client-authentication 时要出现的客户端证书。
- 类型
-
object
属性 | 类型 | 描述 |
---|---|---|
|
| 包含用于目标的数据的 ConfigMap。 |
|
| 包含用于目标的数据的 secret。 |
11.1.131. .spec.grpcServerTlsConfig.cert.configMap
- 描述
- 包含用于目标的数据的 ConfigMap。
- 类型
-
object
- 必填
-
key
-
属性 | 类型 | 描述 |
---|---|---|
|
| 要选择的密钥。 |
|
|
引用的名称。有效地需要此字段,但因为允许向后兼容为空。这里具有空值的此类实例几乎是错误的。TODO:添加其他有用的字段。apiVersion、kind、uid?更多信息: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names TODO: 当 controller-gen 不需要 https://github.com/kubernetes-sigs/kubebuilder/issues/3896 时,Drop |
|
| 指定是否必须定义 ConfigMap 还是其键 |
11.1.132. .spec.grpcServerTlsConfig.cert.secret
- 描述
- 包含用于目标的数据的 secret。
- 类型
-
object
- 必填
-
key
-
属性 | 类型 | 描述 |
---|---|---|
|
| 要从中选择的 secret 的密钥。必须是一个有效的 secret 密钥。 |
|
|
引用的名称。有效地需要此字段,但因为允许向后兼容为空。这里具有空值的此类实例几乎是错误的。TODO:添加其他有用的字段。apiVersion、kind、uid?更多信息: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names TODO: 当 controller-gen 不需要 https://github.com/kubernetes-sigs/kubebuilder/issues/3896 时,Drop |
|
| 指定是否需要定义 Secret 还是其密钥 |
11.1.133. .spec.grpcServerTlsConfig.keySecret
- 描述
- 包含目标客户端密钥文件的 secret。
- 类型
-
object
- 必填
-
key
-
属性 | 类型 | 描述 |
---|---|---|
|
| 要从中选择的 secret 的密钥。必须是一个有效的 secret 密钥。 |
|
|
引用的名称。有效地需要此字段,但因为允许向后兼容为空。这里具有空值的此类实例几乎是错误的。TODO:添加其他有用的字段。apiVersion、kind、uid?更多信息: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names TODO: 当 controller-gen 不需要 https://github.com/kubernetes-sigs/kubebuilder/issues/3896 时,Drop |
|
| 指定是否需要定义 Secret 还是其密钥 |
11.1.134. .spec.hostAliases
- 描述
- Pod 的 hostAliases 配置
- 类型
-
数组
11.1.135. .spec.hostAliases[]
- 描述
- HostAlias 包含 IP 和主机名之间的映射,这些映射将作为 pod 的主机文件中的条目注入。
- 类型
-
object
- 必填
-
主机名
-
ip
-
属性 | 类型 | 描述 |
---|---|---|
|
| 以上 IP 地址的主机名。 |
|
| 主机文件条目的 IP 地址。 |
11.1.136. .spec.imagePullSecrets
- 描述
- 从 registry 中对同一命名空间中的 secret 的引用列表,用于从 registry 中拉取 thanos 镜像,请参阅 http://kubernetes.io/docs/user-guide/images#specifying-imagepullsecrets-on-a-pod
- 类型
-
array
11.1.137. .spec.imagePullSecrets[]
- 描述
- LocalObjectReference 包含足够信息,供您在同一命名空间中找到引用的对象。
- 类型
-
object
属性 | 类型 | 描述 |
---|---|---|
|
|
引用的名称。有效地需要此字段,但因为允许向后兼容为空。这里具有空值的此类实例几乎是错误的。TODO:添加其他有用的字段。apiVersion、kind、uid?更多信息: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names TODO: 当 controller-gen 不需要 https://github.com/kubernetes-sigs/kubebuilder/issues/3896 时,Drop |
11.1.138. .spec.initContainers
- 描述
- initContainers 允许将 initContainers 添加到 pod 定义中。它们可用于从外部来源获取用于注入 ThanosRuler 配置的 secret。执行 initContainer 期间的任何错误将导致重启 Pod。更多信息: https://kubernetes.io/docs/concepts/workloads/pods/init-containers/ 将 initContainers 用于任何用例,然后 secret 获取完全超出维护人员将支持什么范围,通过这样做,您可以接受这些行为随时可能中断,而无需通知。
- 类型
-
array
11.1.139. .spec.initContainers[]
- 描述
- 要在 pod 中运行的单一应用程序容器。
- 类型
-
object
- 必填
-
name
-
属性 | 类型 | 描述 |
---|---|---|
|
| 入口点的参数。如果没有提供,则使用容器镜像的 CMD。变量引用 $(VAR_NAME)使用容器的环境扩展。如果无法解析变量,则输入字符串中的引用将保持不变。双引号被缩减为单个 $,它允许转义 $(VAR_NAME)语法:即 " (VAR_NAME) " 将生成字符串 literal "$(VAR_NAME) "。转义的引用永远不会扩展,无论变量是否存在。无法更新。更多信息: https://kubernetes.io/docs/tasks/inject-data-application/define-command-argument-container/#running-a-command-in-a-shell |
|
| ENTRYPOINT 数组.没有在 shell 中执行。如果未提供此容器镜像,则使用容器镜像的 ENTRYPOINT。变量引用 $(VAR_NAME)使用容器的环境扩展。如果无法解析变量,则输入字符串中的引用将保持不变。双引号被缩减为单个 $,它允许转义 $(VAR_NAME)语法:即 " (VAR_NAME) " 将生成字符串 literal "$(VAR_NAME) "。转义的引用永远不会扩展,无论变量是否存在。无法更新。更多信息: https://kubernetes.io/docs/tasks/inject-data-application/define-command-argument-container/#running-a-command-in-a-shell |
|
| 容器中要设置的环境变量列表。无法更新。 |
|
| EnvVar 代表容器中存在的环境变量。 |
|
| 在容器中填充环境变量的源列表。源中定义的键必须是 C_IDENTIFIER。当容器启动时,所有无效密钥都会被报告为事件。当多个源中存在键时,与最后一个源关联的值将具有优先权。由带有重复键的 Env 定义的值将具有优先权。无法更新。 |
|
| EnvFromSource 代表一组 ConfigMap 的源 |
|
| 容器镜像名称。更多信息: https://kubernetes.io/docs/concepts/containers/images 此字段是可选的,允许更高级别的配置管理默认或覆盖工作负载控制器(如 Deployments 和 StatefulSets)中的容器镜像。 |
|
| 镜像拉取(pull)策略。Always, Never, IfNotPresent 之一。如果指定了 :latest 标签,则默认为 Always,否则则默认为 IfNotPresent。无法更新。更多信息: https://kubernetes.io/docs/concepts/containers/images#updating-images |
|
| 管理系统应采取的操作来响应容器生命周期事件。无法更新。 |
|
| 容器存活度探测.如果探测失败,容器将重启。无法更新。更多信息: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes |
|
| 指定为 DNS_LABEL 的容器名称。pod 中的每个容器都必须具有唯一的名称(DNS_LABEL)。无法更新。 |
|
| 从容器公开的端口列表。这里没有指定端口不会阻止公开该端口。所有正在侦听容器内默认"0.0.0.0"地址的端口均可从网络访问。使用策略合并补丁修改阵列可能会破坏数据。如需更多信息,请参阅 https://github.com/kubernetes/kubernetes/issues/108255。无法更新。 |
|
| containerPort 代表单个容器中的网络端口。 |
|
| 容器服务的定期探测到就绪状态。如果探测失败,容器将从服务端点中删除。无法更新。更多信息: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes |
|
| 容器的资源重新定义策略。 |
|
| ContainerResizePolicy 代表容器的资源重新定义策略。 |
|
| 此容器所需的计算资源。无法更新。更多信息: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/ |
|
| 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.io/docs/tasks/configure-pod-container/security-context/ |
|
| startupProbe 表示 Pod 已成功初始化。如果指定,则不会执行其他探测,直到成功完成为止。如果这个探测失败,则 Pod 将重启,就像 livenessProbe 失败一样。这可用于在 Pod 生命周期开始时提供不同的探测参数,当可能需要很长时间才能加载数据或温缓存时,而不是在 steady-state 操作过程中提供不同的探测参数。这不能更新。更多信息: https://kubernetes.io/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。无法更新。 |
|
| 指明应当如何填充终止消息。文件将使用 terminationMessagePath 的内容在成功或失败时填充容器状态消息。如果终止消息文件为空,则 FallbackToLogsOnError 将使用容器日志输出的最后块,并且容器退出并显示错误。日志输出限制为 2048 字节或 80 行,以较小者。默认为 File。无法更新。 |
|
| 此容器是否应为自己分配 TTY,也要求 'stdin' 为 true。默认为 false。 |
|
| volumeDevices 是容器要使用的块设备列表。 |
|
| volumeDevice 描述了容器中原始块设备的映射。 |
|
| 要挂载到容器文件系统的 Pod 卷。无法更新。 |
|
| VolumeMount 描述了容器内卷挂载。 |
|
| 容器的工作目录。如果未指定,则将使用容器运行时的默认值,该默认值可能在容器镜像中配置。无法更新。 |
11.1.140. .spec.initContainers[].env
- 描述
- 容器中要设置的环境变量列表。无法更新。
- 类型
-
array
11.1.141. .spec.initContainers[].env[]
- 描述
- EnvVar 代表容器中存在的环境变量。
- 类型
-
object
- 必填
-
name
-
属性 | 类型 | 描述 |
---|---|---|
|
| 环境变量的名称。必须是 C_IDENTIFIER。 |
|
| 变量引用 $(VAR_NAME)使用容器中之前定义的环境变量以及任何服务环境变量进行扩展。如果无法解析变量,则输入字符串中的引用将保持不变。双引号被缩减为单个 $,它允许转义 $(VAR_NAME)语法:即 " (VAR_NAME) " 将生成字符串 literal "$(VAR_NAME) "。转义的引用永远不会扩展,无论变量是否存在。默认为 ""。 |
|
| 环境变量的值的源。如果值不为空,则无法使用。 |
11.1.142. .spec.initContainers[].env[].valueFrom
- 描述
- 环境变量的值的源。如果值不为空,则无法使用。
- 类型
-
object
属性 | 类型 | 描述 |
---|---|---|
|
| 选择 ConfigMap 的键。 |
|
|
选择 pod 的字段:支持 metadata.name、metadata.namespace、 |
|
| 选择容器的资源:当前仅支持资源限值和请求(limits.cpu, limits.memory, limits.ephemeral-storage, requests.cpu, requests.memory and requests.ephemeral-storage)。 |
|
| 在 pod 命名空间中选择 secret 的键 |
11.1.143. .spec.initContainers[].env[].valueFrom.configMapKeyRef
- 描述
- 选择 ConfigMap 的键。
- 类型
-
object
- 必填
-
key
-
属性 | 类型 | 描述 |
---|---|---|
|
| 要选择的密钥。 |
|
|
引用的名称。有效地需要此字段,但因为允许向后兼容为空。这里具有空值的此类实例几乎是错误的。TODO:添加其他有用的字段。apiVersion、kind、uid?更多信息: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names TODO: 当 controller-gen 不需要 https://github.com/kubernetes-sigs/kubebuilder/issues/3896 时,Drop |
|
| 指定是否必须定义 ConfigMap 还是其键 |
11.1.144. .spec.initContainers[].env[].valueFrom.fieldRef
- 描述
-
选择 pod 的字段:支持 metadata.name、metadata.namespace、
metadata.labels['<KEY>']
,metadata.annotations['<KEY>']
, spec.nodeName, spec.serviceAccountName, status.hostIP, status.podIP, status.podIPs. - 类型
-
object
- 必填
-
fieldPath
-
属性 | 类型 | 描述 |
---|---|---|
|
| 模式的版本是按术语编写的 FieldPath,默认为 "v1"。 |
|
| 在指定 API 版本中选择的字段路径。 |
11.1.145. .spec.initContainers[].env[].valueFrom.resourceFieldRef
- 描述
- 选择容器的资源:当前仅支持资源限值和请求(limits.cpu, limits.memory, limits.ephemeral-storage, requests.cpu, requests.memory and requests.ephemeral-storage)。
- 类型
-
object
- 必填
-
resource
-
属性 | 类型 | 描述 |
---|---|---|
|
| 容器名称:卷需要,对于 env vars是可选的 |
|
| 指定公开资源的输出格式,默认为 "1" |
|
| 必需:要选择的资源 |
11.1.146. .spec.initContainers[].env[].valueFrom.secretKeyRef
- 描述
- 在 pod 命名空间中选择 secret 的键
- 类型
-
object
- 必填
-
key
-
属性 | 类型 | 描述 |
---|---|---|
|
| 要从中选择的 secret 的密钥。必须是一个有效的 secret 密钥。 |
|
|
引用的名称。有效地需要此字段,但因为允许向后兼容为空。这里具有空值的此类实例几乎是错误的。TODO:添加其他有用的字段。apiVersion、kind、uid?更多信息: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names TODO: 当 controller-gen 不需要 https://github.com/kubernetes-sigs/kubebuilder/issues/3896 时,Drop |
|
| 指定是否需要定义 Secret 还是其密钥 |
11.1.147. .spec.initContainers[].envFrom
- 描述
- 在容器中填充环境变量的源列表。源中定义的键必须是 C_IDENTIFIER。当容器启动时,所有无效密钥都会被报告为事件。当多个源中存在键时,与最后一个源关联的值将具有优先权。由带有重复键的 Env 定义的值将具有优先权。无法更新。
- 类型
-
array
11.1.148. .spec.initContainers[].envFrom[]
- 描述
- EnvFromSource 代表一组 ConfigMap 的源
- 类型
-
object
属性 | 类型 | 描述 |
---|---|---|
|
| 要从中选择的 ConfigMap |
|
| 要添加到 ConfigMap 中每个键的可选标识符。必须是 C_IDENTIFIER。 |
|
| 要从中选择的 Secret |
11.1.149. .spec.initContainers[].envFrom[].configMapRef
- 描述
- 要从中选择的 ConfigMap
- 类型
-
object
属性 | 类型 | 描述 |
---|---|---|
|
|
引用的名称。有效地需要此字段,但因为允许向后兼容为空。这里具有空值的此类实例几乎是错误的。TODO:添加其他有用的字段。apiVersion、kind、uid?更多信息: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names TODO: 当 controller-gen 不需要 https://github.com/kubernetes-sigs/kubebuilder/issues/3896 时,Drop |
|
| 指定是否必须定义 ConfigMap |
11.1.150. .spec.initContainers[].envFrom[].secretRef
- 描述
- 要从中选择的 Secret
- 类型
-
object
属性 | 类型 | 描述 |
---|---|---|
|
|
引用的名称。有效地需要此字段,但因为允许向后兼容为空。这里具有空值的此类实例几乎是错误的。TODO:添加其他有用的字段。apiVersion、kind、uid?更多信息: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names TODO: 当 controller-gen 不需要 https://github.com/kubernetes-sigs/kubebuilder/issues/3896 时,Drop |
|
| 指定是否必须定义 Secret |
11.1.151. .spec.initContainers[].lifecycle
- 描述
- 管理系统应采取的操作来响应容器生命周期事件。无法更新。
- 类型
-
object
属性 | 类型 | 描述 |
---|---|---|
|
| postStart 在容器被创建后立即调用。如果处理程序失败,则容器将根据其重启策略终止并重启。容器块的其他管理,直到 hook 完成为止。更多信息: https://kubernetes.io/docs/concepts/containers/container-lifecycle-hooks/#container-hooks |
|
| preStop 在因为 API 请求或管理事件而终止容器前马上调用,如存活度/启动探测失败、抢占、资源争用等。如果容器崩溃或退出,则不会调用处理程序。Pod 的终止宽限期倒计时开始,然后再执行 PreStop hook。无论处理程序的结果是什么,容器最终都会在 Pod 的终止宽限期内终止(除非被终结器造成延迟)。容器的其他管理块直到 hook 完成或直至到达终止宽限期为止。更多信息: https://kubernetes.io/docs/concepts/containers/container-lifecycle-hooks/#container-hooks |
11.1.152. .spec.initContainers[].lifecycle.postStart
- 描述
- postStart 在容器被创建后立即调用。如果处理程序失败,则容器将根据其重启策略终止并重启。容器块的其他管理,直到 hook 完成为止。更多信息: https://kubernetes.io/docs/concepts/containers/container-lifecycle-hooks/#container-hooks
- 类型
-
object
属性 | 类型 | 描述 |
---|---|---|
|
| exec 指定要执行的操作。 |
|
| httpGet 指定要执行的 http 请求。 |
|
| sleep 代表容器在被终止前应休眠的持续时间。 |
|
| 已弃用。tcpSocket 不支持作为 LifecycleHandler,并且保持向后兼容性。指定 tcp 处理程序时,没有此字段的验证和生命周期 hook 将在运行时失败。 |
11.1.153. .spec.initContainers[].lifecycle.postStart.exec
- 描述
- exec 指定要执行的操作。
- 类型
-
object
属性 | 类型 | 描述 |
---|---|---|
|
| 命令是在容器内执行的命令行,而 命令的工作目录是容器文件系统中的 root ('/')。命令只是 exec'd,它不会在 shell 中运行,因此传统的 shell 指令('|' 等)将无法工作。要使用 shell,您需要明确调用该 shell。0 的退出状态被视为 live/healthy,非零不健康。 |
11.1.154. .spec.initContainers[].lifecycle.postStart.httpGet
- 描述
- httpGet 指定要执行的 http 请求。
- 类型
-
object
- 必填
-
port
-
属性 | 类型 | 描述 |
---|---|---|
|
| 要连接到的主机名,默认为 pod IP。您可能想在 httpHeaders 中设置"主机"。 |
|
| 在请求中设置的自定义标头。HTTP 允许重复的标头。 |
|
| HTTPHeader 描述了在 HTTP 探测中使用的自定义标头 |
|
| 在 HTTP 服务器上访问的路径。 |
|
| 用于访问容器的端口的名称或编号。number 必须在 1 到 65535 之间。名称必须是 IANA_SVC_NAME。 |
|
| 用于连接到主机的方案。默认为 HTTP。 |
11.1.155. .spec.initContainers[].lifecycle.postStart.httpGet.httpHeaders
- 描述
- 在请求中设置的自定义标头。HTTP 允许重复的标头。
- 类型
-
array
11.1.156. .spec.initContainers[].lifecycle.postStart.httpGet.httpHeaders[]
- 描述
- HTTPHeader 描述了在 HTTP 探测中使用的自定义标头
- 类型
-
object
- 必填
-
name
-
value
-
属性 | 类型 | 描述 |
---|---|---|
|
| 标头字段名称。这将在输出时规范,因此理解 case-variant 名称与相同的标头一样。 |
|
| 标头字段值 |
11.1.157. .spec.initContainers[].lifecycle.postStart.sleep
- 描述
- sleep 代表容器在被终止前应休眠的持续时间。
- 类型
-
object
- 必填
-
SECONDS
-
属性 | 类型 | 描述 |
---|---|---|
|
| seconds 是睡眠的秒数。 |
11.1.158. .spec.initContainers[].lifecycle.postStart.tcpSocket
- 描述
- 已弃用。tcpSocket 不支持作为 LifecycleHandler,并且保持向后兼容性。指定 tcp 处理程序时,没有此字段的验证和生命周期 hook 将在运行时失败。
- 类型
-
object
- 必填
-
port
-
属性 | 类型 | 描述 |
---|---|---|
|
| 可选:要连接到的主机名,默认为 pod IP。 |
|
| 用于访问容器的端口的编号或名称。number 必须在 1 到 65535 之间。名称必须是 IANA_SVC_NAME。 |
11.1.159. .spec.initContainers[].lifecycle.preStop
- 描述
- preStop 在因为 API 请求或管理事件而终止容器前马上调用,如存活度/启动探测失败、抢占、资源争用等。如果容器崩溃或退出,则不会调用处理程序。Pod 的终止宽限期倒计时开始,然后再执行 PreStop hook。无论处理程序的结果是什么,容器最终都会在 Pod 的终止宽限期内终止(除非被终结器造成延迟)。容器的其他管理块直到 hook 完成或直至到达终止宽限期为止。更多信息: https://kubernetes.io/docs/concepts/containers/container-lifecycle-hooks/#container-hooks
- 类型
-
object
属性 | 类型 | 描述 |
---|---|---|
|
| exec 指定要执行的操作。 |
|
| httpGet 指定要执行的 http 请求。 |
|
| sleep 代表容器在被终止前应休眠的持续时间。 |
|
| 已弃用。tcpSocket 不支持作为 LifecycleHandler,并且保持向后兼容性。指定 tcp 处理程序时,没有此字段的验证和生命周期 hook 将在运行时失败。 |
11.1.160. .spec.initContainers[].lifecycle.preStop.exec
- 描述
- exec 指定要执行的操作。
- 类型
-
object
属性 | 类型 | 描述 |
---|---|---|
|
| 命令是在容器内执行的命令行,而 命令的工作目录是容器文件系统中的 root ('/')。命令只是 exec'd,它不会在 shell 中运行,因此传统的 shell 指令('|' 等)将无法工作。要使用 shell,您需要明确调用该 shell。0 的退出状态被视为 live/healthy,非零不健康。 |
11.1.161. .spec.initContainers[].lifecycle.preStop.httpGet
- 描述
- httpGet 指定要执行的 http 请求。
- 类型
-
object
- 必填
-
port
-
属性 | 类型 | 描述 |
---|---|---|
|
| 要连接到的主机名,默认为 pod IP。您可能想在 httpHeaders 中设置"主机"。 |
|
| 在请求中设置的自定义标头。HTTP 允许重复的标头。 |
|
| HTTPHeader 描述了在 HTTP 探测中使用的自定义标头 |
|
| 在 HTTP 服务器上访问的路径。 |
|
| 用于访问容器的端口的名称或编号。number 必须在 1 到 65535 之间。名称必须是 IANA_SVC_NAME。 |
|
| 用于连接到主机的方案。默认为 HTTP。 |
11.1.162. .spec.initContainers[].lifecycle.preStop.httpGet.httpHeaders
- 描述
- 在请求中设置的自定义标头。HTTP 允许重复的标头。
- 类型
-
array
11.1.163. .spec.initContainers[].lifecycle.preStop.httpGet.httpHeaders[]
- 描述
- HTTPHeader 描述了在 HTTP 探测中使用的自定义标头
- 类型
-
object
- 必填
-
name
-
value
-
属性 | 类型 | 描述 |
---|---|---|
|
| 标头字段名称。这将在输出时规范,因此理解 case-variant 名称与相同的标头一样。 |
|
| 标头字段值 |
11.1.164. .spec.initContainers[].lifecycle.preStop.sleep
- 描述
- sleep 代表容器在被终止前应休眠的持续时间。
- 类型
-
object
- 必填
-
SECONDS
-
属性 | 类型 | 描述 |
---|---|---|
|
| seconds 是睡眠的秒数。 |
11.1.165. .spec.initContainers[].lifecycle.preStop.tcpSocket
- 描述
- 已弃用。tcpSocket 不支持作为 LifecycleHandler,并且保持向后兼容性。指定 tcp 处理程序时,没有此字段的验证和生命周期 hook 将在运行时失败。
- 类型
-
object
- 必填
-
port
-
属性 | 类型 | 描述 |
---|---|---|
|
| 可选:要连接到的主机名,默认为 pod IP。 |
|
| 用于访问容器的端口的编号或名称。number 必须在 1 到 65535 之间。名称必须是 IANA_SVC_NAME。 |
11.1.166. .spec.initContainers[].livenessProbe
- 描述
- 容器存活度探测.如果探测失败,容器将重启。无法更新。更多信息: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes
- 类型
-
object
属性 | 类型 | 描述 |
---|---|---|
|
| exec 指定要执行的操作。 |
|
| 在成功后,探测被视为失败的最小连续失败。默认值为 3。最小值为 1。 |
|
| GRPC 指定涉及 GRPC 端口的操作。 |
|
| httpGet 指定要执行的 http 请求。 |
|
| 容器启动存活度探测前的秒数。更多信息: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes |
|
| 执行探测的频率(以秒为单位)。默认值为 10 秒。最小值为 1。 |
|
| 在失败后,探测至少连续成功会被视为成功。默认为 1。对于存活度和启动,必须为 1。最小值为 1。 |
|
| tcpSocket 指定涉及 TCP 端口的操作。 |
|
| pod 在探测失败时安全终止所需的可选持续时间(以秒为单位)。宽限期是 pod 中运行的进程发送终止信号和进程被强制停止使用 kill 信号的时间(以秒为单位)。为您的进程设置这个值超过预期清理时间。如果这个值是 nil,则使用 pod 的 terminationGracePeriodSeconds。否则,这个值会覆盖 pod 规格提供的值。值必须是非负整数。值为零表示立即通过终止信号停止(没有关闭的机会)。这是一个 beta 字段,需要启用 ProbeTerminationGracePeriod 功能门。如果未设置,则使用最小值为 1. spec.terminationGracePeriodSeconds。 |
|
| 探测超时的秒数。默认值为 1 秒。最小值为 1。更多信息: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes |
11.1.167. .spec.initContainers[].livenessProbe.exec
- 描述
- exec 指定要执行的操作。
- 类型
-
object
属性 | 类型 | 描述 |
---|---|---|
|
| 命令是在容器内执行的命令行,而 命令的工作目录是容器文件系统中的 root ('/')。命令只是 exec'd,它不会在 shell 中运行,因此传统的 shell 指令('|' 等)将无法工作。要使用 shell,您需要明确调用该 shell。0 的退出状态被视为 live/healthy,非零不健康。 |
11.1.168. .spec.initContainers[].livenessProbe.grpc
- 描述
- GRPC 指定涉及 GRPC 端口的操作。
- 类型
-
object
- 必填
-
port
-
属性 | 类型 | 描述 |
---|---|---|
|
| gRPC 服务的端口号。number 必须在 1 到 65535 之间。 |
|
| service 是要放入 gRPC HealthCheckRequest 中的服务名称(请参阅 https://github.com/grpc/grpc/blob/master/doc/health-checking.md)。 如果没有指定,则默认行为由 gRPC 定义。 |
11.1.169. .spec.initContainers[].livenessProbe.httpGet
- 描述
- httpGet 指定要执行的 http 请求。
- 类型
-
object
- 必填
-
port
-
属性 | 类型 | 描述 |
---|---|---|
|
| 要连接到的主机名,默认为 pod IP。您可能想在 httpHeaders 中设置"主机"。 |
|
| 在请求中设置的自定义标头。HTTP 允许重复的标头。 |
|
| HTTPHeader 描述了在 HTTP 探测中使用的自定义标头 |
|
| 在 HTTP 服务器上访问的路径。 |
|
| 用于访问容器的端口的名称或编号。number 必须在 1 到 65535 之间。名称必须是 IANA_SVC_NAME。 |
|
| 用于连接到主机的方案。默认为 HTTP。 |
11.1.170. .spec.initContainers[].livenessProbe.httpGet.httpHeaders
- 描述
- 在请求中设置的自定义标头。HTTP 允许重复的标头。
- 类型
-
array
11.1.171. .spec.initContainers[].livenessProbe.httpGet.httpHeaders[]
- 描述
- HTTPHeader 描述了在 HTTP 探测中使用的自定义标头
- 类型
-
object
- 必填
-
name
-
value
-
属性 | 类型 | 描述 |
---|---|---|
|
| 标头字段名称。这将在输出时规范,因此理解 case-variant 名称与相同的标头一样。 |
|
| 标头字段值 |
11.1.172. .spec.initContainers[].livenessProbe.tcpSocket
- 描述
- tcpSocket 指定涉及 TCP 端口的操作。
- 类型
-
object
- 必填
-
port
-
属性 | 类型 | 描述 |
---|---|---|
|
| 可选:要连接到的主机名,默认为 pod IP。 |
|
| 用于访问容器的端口的编号或名称。number 必须在 1 到 65535 之间。名称必须是 IANA_SVC_NAME。 |
11.1.173. .spec.initContainers[].ports
- 描述
- 从容器公开的端口列表。这里没有指定端口不会阻止公开该端口。所有正在侦听容器内默认"0.0.0.0"地址的端口均可从网络访问。使用策略合并补丁修改阵列可能会破坏数据。如需更多信息,请参阅 https://github.com/kubernetes/kubernetes/issues/108255。无法更新。
- 类型
-
array
11.1.174. .spec.initContainers[].ports[]
- 描述
- containerPort 代表单个容器中的网络端口。
- 类型
-
object
- 必填
-
containerPort
-
属性 | 类型 | 描述 |
---|---|---|
|
| pod IP 地址上公开的端口号。这必须是有效的端口号 0 < x < 65536。 |
|
| 将外部端口绑定到的主机 IP。 |
|
| 主机上公开的端口号。如果指定,这必须是有效的端口号 0 < x < 65536。如果指定了 HostNetwork,它必须与 ContainerPort 匹配。大多数容器都不需要这样做。 |
|
| 如果指定,这必须是 IANA_SVC_NAME,在 pod 中唯一。pod 中的每个命名端口都必须具有唯一的名称。服务可以引用的端口的名称。 |
|
| 端口的协议。必须是 UDP、TCP 或 SCTP。默认为 "TCP"。 |
11.1.175. .spec.initContainers[].readinessProbe
- 描述
- 容器服务的定期探测到就绪状态。如果探测失败,容器将从服务端点中删除。无法更新。更多信息: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes
- 类型
-
object
属性 | 类型 | 描述 |
---|---|---|
|
| exec 指定要执行的操作。 |
|
| 在成功后,探测被视为失败的最小连续失败。默认值为 3。最小值为 1。 |
|
| GRPC 指定涉及 GRPC 端口的操作。 |
|
| httpGet 指定要执行的 http 请求。 |
|
| 容器启动存活度探测前的秒数。更多信息: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes |
|
| 执行探测的频率(以秒为单位)。默认值为 10 秒。最小值为 1。 |
|
| 在失败后,探测至少连续成功会被视为成功。默认为 1。对于存活度和启动,必须为 1。最小值为 1。 |
|
| tcpSocket 指定涉及 TCP 端口的操作。 |
|
| pod 在探测失败时安全终止所需的可选持续时间(以秒为单位)。宽限期是 pod 中运行的进程发送终止信号和进程被强制停止使用 kill 信号的时间(以秒为单位)。为您的进程设置这个值超过预期清理时间。如果这个值是 nil,则使用 pod 的 terminationGracePeriodSeconds。否则,这个值会覆盖 pod 规格提供的值。值必须是非负整数。值为零表示立即通过终止信号停止(没有关闭的机会)。这是一个 beta 字段,需要启用 ProbeTerminationGracePeriod 功能门。如果未设置,则使用最小值为 1. spec.terminationGracePeriodSeconds。 |
|
| 探测超时的秒数。默认值为 1 秒。最小值为 1。更多信息: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes |
11.1.176. .spec.initContainers[].readinessProbe.exec
- 描述
- exec 指定要执行的操作。
- 类型
-
object
属性 | 类型 | 描述 |
---|---|---|
|
| 命令是在容器内执行的命令行,而 命令的工作目录是容器文件系统中的 root ('/')。命令只是 exec'd,它不会在 shell 中运行,因此传统的 shell 指令('|' 等)将无法工作。要使用 shell,您需要明确调用该 shell。0 的退出状态被视为 live/healthy,非零不健康。 |
11.1.177. .spec.initContainers[].readinessProbe.grpc
- 描述
- GRPC 指定涉及 GRPC 端口的操作。
- 类型
-
object
- 必填
-
port
-
属性 | 类型 | 描述 |
---|---|---|
|
| gRPC 服务的端口号。number 必须在 1 到 65535 之间。 |
|
| service 是要放入 gRPC HealthCheckRequest 中的服务名称(请参阅 https://github.com/grpc/grpc/blob/master/doc/health-checking.md)。 如果没有指定,则默认行为由 gRPC 定义。 |
11.1.178. .spec.initContainers[].readinessProbe.httpGet
- 描述
- httpGet 指定要执行的 http 请求。
- 类型
-
object
- 必填
-
port
-
属性 | 类型 | 描述 |
---|---|---|
|
| 要连接到的主机名,默认为 pod IP。您可能想在 httpHeaders 中设置"主机"。 |
|
| 在请求中设置的自定义标头。HTTP 允许重复的标头。 |
|
| HTTPHeader 描述了在 HTTP 探测中使用的自定义标头 |
|
| 在 HTTP 服务器上访问的路径。 |
|
| 用于访问容器的端口的名称或编号。number 必须在 1 到 65535 之间。名称必须是 IANA_SVC_NAME。 |
|
| 用于连接到主机的方案。默认为 HTTP。 |
11.1.179. .spec.initContainers[].readinessProbe.httpGet.httpHeaders
- 描述
- 在请求中设置的自定义标头。HTTP 允许重复的标头。
- 类型
-
array
11.1.180. .spec.initContainers[].readinessProbe.httpGet.httpHeaders[]
- 描述
- HTTPHeader 描述了在 HTTP 探测中使用的自定义标头
- 类型
-
object
- 必填
-
name
-
value
-
属性 | 类型 | 描述 |
---|---|---|
|
| 标头字段名称。这将在输出时规范,因此理解 case-variant 名称与相同的标头一样。 |
|
| 标头字段值 |
11.1.181. .spec.initContainers[].readinessProbe.tcpSocket
- 描述
- tcpSocket 指定涉及 TCP 端口的操作。
- 类型
-
object
- 必填
-
port
-
属性 | 类型 | 描述 |
---|---|---|
|
| 可选:要连接到的主机名,默认为 pod IP。 |
|
| 用于访问容器的端口的编号或名称。number 必须在 1 到 65535 之间。名称必须是 IANA_SVC_NAME。 |
11.1.182. .spec.initContainers[].resizePolicy
- 描述
- 容器的资源重新定义策略。
- 类型
-
数组
11.1.183. .spec.initContainers[].resizePolicy[]
- 描述
- ContainerResizePolicy 代表容器的资源重新定义策略。
- 类型
-
object
- 必填
-
resourceName
-
restartPolicy
-
属性 | 类型 | 描述 |
---|---|---|
|
| 此资源重新定义策略应用到的资源的名称。支持的值有:cpu、memory。 |
|
| 在指定资源调整大小时,重启策略会被应用。如果没有指定,则默认为 NotRequired。 |
11.1.184. .spec.initContainers[].resources
- 描述
- 此容器所需的计算资源。无法更新。更多信息: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/
- 类型
-
object
属性 | 类型 | 描述 |
---|---|---|
|
| claim 列出此容器使用的 spec.resourceClaims 中定义的资源名称。 这是一个 alpha 字段,需要启用 DynamicResourceAllocation 功能门。 此字段不可变。它只能为容器设置。 |
|
| ResourceClaim 引用 PodSpec.ResourceClaims 中的一个条目。 |
|
| 限制描述了允许的最大计算资源量。更多信息: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/ |
|
| Requests 描述了所需的最少计算资源。如果容器省略了 Requests,则默认为 Limits (如果明确指定),否则默认为实现定义的值。请求不能超过限值。更多信息: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/ |
11.1.185. .spec.initContainers[].resources.claims
- 描述
claim 列出此容器使用的 spec.resourceClaims 中定义的资源名称。
这是一个 alpha 字段,需要启用 DynamicResourceAllocation 功能门。
此字段不可变。它只能为容器设置。
- 类型
-
数组
11.1.186. .spec.initContainers[].resources.claims[]
- 描述
- ResourceClaim 引用 PodSpec.ResourceClaims 中的一个条目。
- 类型
-
object
- 必填
-
name
-
属性 | 类型 | 描述 |
---|---|---|
|
| name 必须与使用此字段的 Pod 的 pod.spec.resourceClaims 中的一个条目的名称匹配。它允许容器内部使用该资源。 |
11.1.187. .spec.initContainers[].securityContext
- 描述
- securityContext 定义容器应运行的安全选项。如果设置,SecurityContext 的字段会覆盖 PodSecurityContext 的等效字段。更多信息: https://kubernetes.io/docs/tasks/configure-pod-container/security-context/
- 类型
-
object
属性 | 类型 | 描述 |
---|---|---|
|
| allowPrivilegeEscalation 控制进程是否可以比其父进程获得更多特权。此 bool 直接控制容器进程上是否设置了 no_new_privs 标志。当容器是 : 1)作为 CAP_SYS_ADMIN 具有 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 时无法设置此字段。 |
|
| 此容器是否具有只读 root 文件系统。默认为 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 选项。如果 seccomp 选项同时在 pod 和容器级别上提供,则容器选项会覆盖 pod 选项。请注意,当 spec.os.name 是 windows 时无法设置此字段。 |
|
| 应用到所有容器的 Windows 特定设置。如果未指定,则使用 PodSecurityContext 中的选项。如果在 SecurityContext 和 PodSecurityContext 中设置,则 SecurityContext 中指定的值具有优先权。请注意,当 spec.os.name 是 linux 时,不能设置此字段。 |
11.1.188. .spec.initContainers[].securityContext.appArmorProfile
- 描述
- appArmorProfile 是此容器使用的 AppArmor 选项。如果设置,此配置集会覆盖 pod 的 appArmorProfile。请注意,当 spec.os.name 是 windows 时无法设置此字段。
- 类型
-
object
- 必填
-
type
-
属性 | 类型 | 描述 |
---|---|---|
|
| localhostProfile 表示节点上载入的配置集。该配置集必须在节点上预先配置才能正常工作。必须与配置文件的加载名称匹配。只在 type 为 "Localhost" 时,才应设置。 |
|
| Type 表示将应用哪些类型的 AppArmor 配置集。有效选项包括: Localhost - 节点上的配置文件预加载。RuntimeDefault - 容器运行时的默认配置集。unconfined - 无 AppArmor 强制。 |
11.1.189. .spec.initContainers[].securityContext.capabilities
- 描述
- 运行容器时添加/丢弃的功能。默认为容器运行时授予的默认功能集。请注意,当 spec.os.name 是 windows 时无法设置此字段。
- 类型
-
object
属性 | 类型 | 描述 |
---|---|---|
|
| 添加了功能 |
|
| 删除的功能 |
11.1.190. .spec.initContainers[].securityContext.seLinuxOptions
- 描述
- 要应用到容器的 SELinux 上下文。如果未指定,容器运行时将为每个容器分配一个随机 SELinux 上下文。也可以在 PodSecurityContext 中设置。如果在 SecurityContext 和 PodSecurityContext 中设置,则 SecurityContext 中指定的值具有优先权。请注意,当 spec.os.name 是 windows 时无法设置此字段。
- 类型
-
object
属性 | 类型 | 描述 |
---|---|---|
|
| level 是适用于容器的 SELinux 级别标签。 |
|
| role 是适用于容器的 SELinux 角色标签。 |
|
| type 是适用于容器的 SELinux 类型标签。 |
|
| user 是适用于容器的 SELinux 用户标签。 |
11.1.191. .spec.initContainers[].securityContext.seccompProfile
- 描述
- 此容器使用的 seccomp 选项。如果 seccomp 选项同时在 pod 和容器级别上提供,则容器选项会覆盖 pod 选项。请注意,当 spec.os.name 是 windows 时无法设置此字段。
- 类型
-
object
- 必填
-
type
-
属性 | 类型 | 描述 |
---|---|---|
|
| localhostProfile 表示应使用节点上文件中定义的配置集。该配置集必须在节点上预先配置才能正常工作。必须是一个降序路径,相对于 kubelet 配置的 seccomp 配置集位置。如果类型为"Localhost",则必须设置。不得为任何其他类型设置。 |
|
| Type 表示将应用了哪些 seccomp 配置集。有效选项有: localhost - 应该使用节点上文件中定义的配置文件。RuntimeDefault - 应使用容器运行时默认配置集。unconfined - 不应应用配置集。 |
11.1.192. .spec.initContainers[].securityContext.windowsOptions
- 描述
- 应用到所有容器的 Windows 特定设置。如果未指定,则使用 PodSecurityContext 中的选项。如果在 SecurityContext 和 PodSecurityContext 中设置,则 SecurityContext 中指定的值具有优先权。请注意,当 spec.os.name 是 linux 时,不能设置此字段。
- 类型
-
object
属性 | 类型 | 描述 |
---|---|---|
|
| GMSACredentialSpec 是 GMSA 准入 Webhook (https://github.com/kubernetes-sigs/windows-gmsa)内联由 GMSACredentialSpec 命名的 GMSA 凭证规格的内容。 |
|
| GMSACredentialSpecName 是要使用的 GMSA 凭证规格的名称。 |
|
| HostProcess 确定容器是否应作为"主机进程"容器运行。所有 Pod 的容器都必须具有相同的有效的 HostProcess 值(不允许混合 HostProcess 容器和非主机进程容器)。另外,如果 HostProcess 为 true,则 HostNetwork 也必须设置为 true。 |
|
| Windows 中的 UserName,以运行容器进程的入口点。如果未指定,则默认为在镜像元数据中指定的用户。也可以在 PodSecurityContext 中设置。如果在 SecurityContext 和 PodSecurityContext 中设置,则 SecurityContext 中指定的值具有优先权。 |
11.1.193. .spec.initContainers[].startupProbe
- 描述
- startupProbe 表示 Pod 已成功初始化。如果指定,则不会执行其他探测,直到成功完成为止。如果这个探测失败,则 Pod 将重启,就像 livenessProbe 失败一样。这可用于在 Pod 生命周期开始时提供不同的探测参数,当可能需要很长时间才能加载数据或温缓存时,而不是在 steady-state 操作过程中提供不同的探测参数。这不能更新。更多信息: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes
- 类型
-
object
属性 | 类型 | 描述 |
---|---|---|
|
| exec 指定要执行的操作。 |
|
| 在成功后,探测被视为失败的最小连续失败。默认值为 3。最小值为 1。 |
|
| GRPC 指定涉及 GRPC 端口的操作。 |
|
| httpGet 指定要执行的 http 请求。 |
|
| 容器启动存活度探测前的秒数。更多信息: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes |
|
| 执行探测的频率(以秒为单位)。默认值为 10 秒。最小值为 1。 |
|
| 在失败后,探测至少连续成功会被视为成功。默认为 1。对于存活度和启动,必须为 1。最小值为 1。 |
|
| tcpSocket 指定涉及 TCP 端口的操作。 |
|
| pod 在探测失败时安全终止所需的可选持续时间(以秒为单位)。宽限期是 pod 中运行的进程发送终止信号和进程被强制停止使用 kill 信号的时间(以秒为单位)。为您的进程设置这个值超过预期清理时间。如果这个值是 nil,则使用 pod 的 terminationGracePeriodSeconds。否则,这个值会覆盖 pod 规格提供的值。值必须是非负整数。值为零表示立即通过终止信号停止(没有关闭的机会)。这是一个 beta 字段,需要启用 ProbeTerminationGracePeriod 功能门。如果未设置,则使用最小值为 1. spec.terminationGracePeriodSeconds。 |
|
| 探测超时的秒数。默认值为 1 秒。最小值为 1。更多信息: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes |
11.1.194. .spec.initContainers[].startupProbe.exec
- 描述
- exec 指定要执行的操作。
- 类型
-
object
属性 | 类型 | 描述 |
---|---|---|
|
| 命令是在容器内执行的命令行,而 命令的工作目录是容器文件系统中的 root ('/')。命令只是 exec'd,它不会在 shell 中运行,因此传统的 shell 指令('|' 等)将无法工作。要使用 shell,您需要明确调用该 shell。0 的退出状态被视为 live/healthy,非零不健康。 |
11.1.195. .spec.initContainers[].startupProbe.grpc
- 描述
- GRPC 指定涉及 GRPC 端口的操作。
- 类型
-
object
- 必填
-
port
-
属性 | 类型 | 描述 |
---|---|---|
|
| gRPC 服务的端口号。number 必须在 1 到 65535 之间。 |
|
| service 是要放入 gRPC HealthCheckRequest 中的服务名称(请参阅 https://github.com/grpc/grpc/blob/master/doc/health-checking.md)。 如果没有指定,则默认行为由 gRPC 定义。 |
11.1.196. .spec.initContainers[].startupProbe.httpGet
- 描述
- httpGet 指定要执行的 http 请求。
- 类型
-
object
- 必填
-
port
-
属性 | 类型 | 描述 |
---|---|---|
|
| 要连接到的主机名,默认为 pod IP。您可能想在 httpHeaders 中设置"主机"。 |
|
| 在请求中设置的自定义标头。HTTP 允许重复的标头。 |
|
| HTTPHeader 描述了在 HTTP 探测中使用的自定义标头 |
|
| 在 HTTP 服务器上访问的路径。 |
|
| 用于访问容器的端口的名称或编号。number 必须在 1 到 65535 之间。名称必须是 IANA_SVC_NAME。 |
|
| 用于连接到主机的方案。默认为 HTTP。 |
11.1.197. .spec.initContainers[].startupProbe.httpGet.httpHeaders
- 描述
- 在请求中设置的自定义标头。HTTP 允许重复的标头。
- 类型
-
array
11.1.198. .spec.initContainers[].startupProbe.httpGet.httpHeaders[]
- 描述
- HTTPHeader 描述了在 HTTP 探测中使用的自定义标头
- 类型
-
object
- 必填
-
name
-
value
-
属性 | 类型 | 描述 |
---|---|---|
|
| 标头字段名称。这将在输出时规范,因此理解 case-variant 名称与相同的标头一样。 |
|
| 标头字段值 |
11.1.199. .spec.initContainers[].startupProbe.tcpSocket
- 描述
- tcpSocket 指定涉及 TCP 端口的操作。
- 类型
-
object
- 必填
-
port
-
属性 | 类型 | 描述 |
---|---|---|
|
| 可选:要连接到的主机名,默认为 pod IP。 |
|
| 用于访问容器的端口的编号或名称。number 必须在 1 到 65535 之间。名称必须是 IANA_SVC_NAME。 |
11.1.200. .spec.initContainers[].volumeDevices
- 描述
- volumeDevices 是容器要使用的块设备列表。
- 类型
-
array
11.1.201. .spec.initContainers[].volumeDevices[]
- 描述
- volumeDevice 描述了容器中原始块设备的映射。
- 类型
-
object
- 必填
-
devicePath
-
name
-
属性 | 类型 | 描述 |
---|---|---|
|
| DevicePath 是该设备要映射到的容器内的路径。 |
|
| name 必须与 pod 中 persistentVolumeClaim 的名称匹配 |
11.1.202. .spec.initContainers[].volumeMounts
- 描述
- 要挂载到容器文件系统的 Pod 卷。无法更新。
- 类型
-
array
11.1.203. .spec.initContainers[].volumeMounts[]
- 描述
- VolumeMount 描述了容器内卷挂载。
- 类型
-
object
- 必填
-
mountPath
-
name
-
属性 | 类型 | 描述 |
---|---|---|
|
| 应挂载卷的容器中的路径。不得包含 ':'。 |
|
| mountPropagation 决定挂载如何从主机传播到容器以及反向传播。如果没有设置,则使用 MountPropagationNone。此字段在 1.10 中是 beta。当 RecursiveReadOnly 设置为 IfPossible 或 Enabled 时,mountPropagation 必须是 None 或未指定(默认为 None)。 |
|
| 这必须与卷的 Name 匹配。 |
|
| 如果为 true,则以只读方式挂载,否则读写(false 或未指定)。默认为false。 |
|
| RecursiveReadOnly 指定是否应递归处理只读挂载。 如果 ReadOnly 为 false,则此字段没有意义,必须未指定。 如果 ReadOnly 为 true,且此字段设置为 Disabled,则不会递归只读挂载。如果将此字段设置为 IfPossible,则挂载将递归只读(如果容器运行时支持)。如果此字段设置为 Enabled,则挂载将在容器运行时支持时递归只读,否则不会启动 pod,并生成错误来指示原因。 如果将此字段设置为 IfPossible 或 Enabled,则 MountPropagation 必须设为 None (或未指定,默认为 None)。 如果没有指定此字段,它将被视为与 Disabled 的等效值。 |
|
| 应从中挂载容器卷的卷中的路径。默认为 "" (卷的 root)。 |
|
| 在应该挂载容器卷的卷中扩展路径。行为与 SubPath 类似,但环境变量引用 $(VAR_NAME)使用容器的环境扩展。默认为 "" (卷的 root)。SubPathExpr 和 SubPath 是互斥的。 |
11.1.204. .spec.objectStorageConfig
- 描述
- objectStorageConfig 在 Thanos 中配置对象存储。ObjectStorageConfigFile 以及较低的顺序优先级。
- 类型
-
object
- 必填
-
key
-
属性 | 类型 | 描述 |
---|---|---|
|
| 要从中选择的 secret 的密钥。必须是一个有效的 secret 密钥。 |
|
|
引用的名称。有效地需要此字段,但因为允许向后兼容为空。这里具有空值的此类实例几乎是错误的。TODO:添加其他有用的字段。apiVersion、kind、uid?更多信息: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names TODO: 当 controller-gen 不需要 https://github.com/kubernetes-sigs/kubebuilder/issues/3896 时,Drop |
|
| 指定是否需要定义 Secret 还是其密钥 |
11.1.205. .spec.podMetadata
- 描述
podMetadata 配置传播到 ThanosRuler pod 的标签和注解。
以下项目会被保留且无法覆盖:* "app.kubernetes.io/name" 标签,设置为 "thanos-ruler"。* "app.kubernetes.io/managed-by" 标签,设置为 "prometheus-operator"。* "app.kubernetes.io/instance" 标签,设置为 ThanosRuler 实例的名称。* "Thanos-ruler" 标签,设置为 ThanosRuler 实例的名称。* "kubectl.kubernetes.io/default-container" annotation, set to "thanos-ruler".
- 类型
-
object
属性 | 类型 | 描述 |
---|---|---|
|
| annotations 是一个无结构的键值映射,它存储有资源,可通过外部工具存储和检索任意元数据。它们不可查询,应在修改对象时保留。更多信息: http://kubernetes.io/docs/user-guide/annotations |
|
| 可用于组织和分类(范围和选择)对象的字符串键和值映射。可能与复制控制器和服务选择器匹配。更多信息: http://kubernetes.io/docs/user-guide/labels |
|
| 名称在命名空间中必须是唯一的。创建资源时需要一些资源,但有些资源可能会允许客户端自动请求生成适当名称。name 主要用于创建 idempotence 和配置定义。无法更新。更多信息: http://kubernetes.io/docs/user-guide/identifiers#names |
11.1.206. .spec.prometheusRulesExcludedFromEnforce
- 描述
- prometheusRulesExcludedFromEnforce - 从 enforcing 添加命名空间标签中排除的 Prometheus 规则列表。只有在 enforcedNamespaceLabel 设置为 true 时才可以正常工作。确保为每个对已弃用设置了 ruleNamespace 和 ruleName :使用 excludedFromEnforcement。
- 类型
-
array
11.1.207. .spec.prometheusRulesExcludedFromEnforce[]
- 描述
- PrometheusRuleExcludeConfig 允许用户配置排除的 PrometheusRule 名称及其命名空间,同时为警报和指标强制执行命名空间标签。
- 类型
-
object
- 必填
-
ruleName
-
ruleNamespace
-
属性 | 类型 | 描述 |
---|---|---|
|
| 排除的 PrometheusRule 对象的名称。 |
|
| 排除的 PrometheusRule 对象的命名空间。 |
11.1.208. .spec.queryConfig
- 描述
-
定义用于连接 thanos 查询实例的配置。如果定义了它,则忽略 QueryEndpoints 字段。映射到
query.config
CLI 参数。仅适用于 thanos v0.11.0 及更高版本。 - 类型
-
object
- 必填
-
key
-
属性 | 类型 | 描述 |
---|---|---|
|
| 要从中选择的 secret 的密钥。必须是一个有效的 secret 密钥。 |
|
|
引用的名称。有效地需要此字段,但因为允许向后兼容为空。这里具有空值的此类实例几乎是错误的。TODO:添加其他有用的字段。apiVersion、kind、uid?更多信息: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names TODO: 当 controller-gen 不需要 https://github.com/kubernetes-sigs/kubebuilder/issues/3896 时,Drop |
|
| 指定是否需要定义 Secret 还是其密钥 |
11.1.209. .spec.resources
- 描述
- 资源定义单个 Pod 的资源要求。如果没有提供,则不会设置 requests/limits
- 类型
-
object
属性 | 类型 | 描述 |
---|---|---|
|
| claim 列出此容器使用的 spec.resourceClaims 中定义的资源名称。 这是一个 alpha 字段,需要启用 DynamicResourceAllocation 功能门。 此字段不可变。它只能为容器设置。 |
|
| ResourceClaim 引用 PodSpec.ResourceClaims 中的一个条目。 |
|
| 限制描述了允许的最大计算资源量。更多信息: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/ |
|
| Requests 描述了所需的最少计算资源。如果容器省略了 Requests,则默认为 Limits (如果明确指定),否则默认为实现定义的值。请求不能超过限值。更多信息: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/ |
11.1.210. .spec.resources.claims
- 描述
claim 列出此容器使用的 spec.resourceClaims 中定义的资源名称。
这是一个 alpha 字段,需要启用 DynamicResourceAllocation 功能门。
此字段不可变。它只能为容器设置。
- 类型
-
数组
11.1.211. .spec.resources.claims[]
- 描述
- ResourceClaim 引用 PodSpec.ResourceClaims 中的一个条目。
- 类型
-
object
- 必填
-
name
-
属性 | 类型 | 描述 |
---|---|---|
|
| name 必须与使用此字段的 Pod 的 pod.spec.resourceClaims 中的一个条目的名称匹配。它允许容器内部使用该资源。 |
11.1.212. .spec.ruleNamespaceSelector
- 描述
- 为规则发现选择的命名空间。如果未指定,则使用与 ThanosRuler 对象相同的命名空间中。
- 类型
-
object
属性 | 类型 | 描述 |
---|---|---|
|
| matchExpressions 是标签选择器要求列表。要求的逻辑关系是 AND。 |
|
| 标签选择器要求是一个选择器,其中包含与键和值相关的值、键和值。 |
|
| matchLabels 是 {key,value} 对的映射。MatchLabels 映射中的单个 {key,value} 等同于 matchExpressions 的一个元素,其 key 字段是 "key",运算符是 "In",值数组仅包含 "value"。要求的逻辑关系是 AND。 |
11.1.213. .spec.ruleNamespaceSelector.matchExpressions
- 描述
- matchExpressions 是标签选择器要求列表。要求的逻辑关系是 AND。
- 类型
-
array
11.1.214. .spec.ruleNamespaceSelector.matchExpressions[]
- 描述
- 标签选择器要求是一个选择器,其中包含与键和值相关的值、键和值。
- 类型
-
object
- 必填
-
key
-
operator
-
属性 | 类型 | 描述 |
---|---|---|
|
| key 是选择器应用到的标签键。 |
|
| 运算符代表一个键与一组值的关系。有效的运算符是 In、NotIn、Exists 和 DoesNotExist。 |
|
| 值是字符串值的数组。如果运算符是 In 或 NotIn,则值数组必须是非空的。如果运算符是 Exists 或 DoesNotExist,则值数组必须为空。这个数组会在策略性合并补丁中被替换。 |
11.1.215. .spec.ruleSelector
- 描述
- 用于选择为警报和记录挂载哪些 PrometheusRules 的标签选择器。
- 类型
-
object
属性 | 类型 | 描述 |
---|---|---|
|
| matchExpressions 是标签选择器要求列表。要求的逻辑关系是 AND。 |
|
| 标签选择器要求是一个选择器,其中包含与键和值相关的值、键和值。 |
|
| matchLabels 是 {key,value} 对的映射。MatchLabels 映射中的单个 {key,value} 等同于 matchExpressions 的一个元素,其 key 字段是 "key",运算符是 "In",值数组仅包含 "value"。要求的逻辑关系是 AND。 |
11.1.216. .spec.ruleSelector.matchExpressions
- 描述
- matchExpressions 是标签选择器要求列表。要求的逻辑关系是 AND。
- 类型
-
array
11.1.217. .spec.ruleSelector.matchExpressions[]
- 描述
- 标签选择器要求是一个选择器,其中包含与键和值相关的值、键和值。
- 类型
-
object
- 必填
-
key
-
operator
-
属性 | 类型 | 描述 |
---|---|---|
|
| key 是选择器应用到的标签键。 |
|
| 运算符代表一个键与一组值的关系。有效的运算符是 In、NotIn、Exists 和 DoesNotExist。 |
|
| 值是字符串值的数组。如果运算符是 In 或 NotIn,则值数组必须是非空的。如果运算符是 Exists 或 DoesNotExist,则值数组必须为空。这个数组会在策略性合并补丁中被替换。 |
11.1.218. .spec.securityContext
- 描述
- securityContext 包含 pod 级别的安全属性和通用容器设置。默认为默认的 PodSecurityContext。
- 类型
-
object
属性 | 类型 | 描述 |
---|---|---|
|
| appArmorProfile 是此 pod 中的容器使用的 AppArmor 选项。请注意,当 spec.os.name 是 windows 时无法设置此字段。 |
|
| 适用于 pod 中所有容器的特殊补充组。有些卷类型允许 Kubelet 将该卷的所有权更改为由 pod 所有: 1.拥有的 GID 为 FSGroup 2。设置 setgid 位(卷中创建的新文件将归 FSGroup 所有)3。权限位是 OR'd with rw-rw--- 如果未设置,Kubelet 不会修改任何卷的所有权和权限。请注意,当 spec.os.name 是 windows 时无法设置此字段。 |
|
| fsGroupChangePolicy 定义在 Pod 内公开卷之前更改卷的所有权和权限的行为。此字段将只适用于支持基于 fsGroup 的所有权(和权限)的卷类型。它对临时卷类型没有影响,如 secret、configmap 和 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 时无法设置此字段。 |
|
| sysctl 包含用于 pod 的命名空间 sysctl 列表。带有不支持 sysctl (容器运行时)的 Pod 可能无法启动。请注意,当 spec.os.name 是 windows 时无法设置此字段。 |
|
| sysctl 定义要设置的内核参数 |
|
| 应用到所有容器的 Windows 特定设置。如果未指定,则使用容器的 SecurityContext 中的选项。如果在 SecurityContext 和 PodSecurityContext 中设置,则 SecurityContext 中指定的值具有优先权。请注意,当 spec.os.name 是 linux 时,不能设置此字段。 |
11.1.219. .spec.securityContext.appArmorProfile
- 描述
- appArmorProfile 是此 pod 中的容器使用的 AppArmor 选项。请注意,当 spec.os.name 是 windows 时无法设置此字段。
- 类型
-
object
- 必填
-
type
-
属性 | 类型 | 描述 |
---|---|---|
|
| localhostProfile 表示节点上载入的配置集。该配置集必须在节点上预先配置才能正常工作。必须与配置文件的加载名称匹配。只在 type 为 "Localhost" 时,才应设置。 |
|
| Type 表示将应用哪些类型的 AppArmor 配置集。有效选项包括: Localhost - 节点上的配置文件预加载。RuntimeDefault - 容器运行时的默认配置集。unconfined - 无 AppArmor 强制。 |
11.1.220. .spec.securityContext.seLinuxOptions
- 描述
- 要应用到所有容器的 SELinux 上下文。如果未指定,容器运行时将为每个容器分配一个随机 SELinux 上下文。还可能会在 SecurityContext 中设置。如果在 SecurityContext 和 PodSecurityContext 中设置,则 SecurityContext 中指定的值优先于该容器。请注意,当 spec.os.name 是 windows 时无法设置此字段。
- 类型
-
object
属性 | 类型 | 描述 |
---|---|---|
|
| level 是适用于容器的 SELinux 级别标签。 |
|
| role 是适用于容器的 SELinux 角色标签。 |
|
| type 是适用于容器的 SELinux 类型标签。 |
|
| user 是适用于容器的 SELinux 用户标签。 |
11.1.221. .spec.securityContext.seccompProfile
- 描述
- 此 pod 中容器使用的 seccomp 选项。请注意,当 spec.os.name 是 windows 时无法设置此字段。
- 类型
-
object
- 必填
-
type
-
属性 | 类型 | 描述 |
---|---|---|
|
| localhostProfile 表示应使用节点上文件中定义的配置集。该配置集必须在节点上预先配置才能正常工作。必须是一个降序路径,相对于 kubelet 配置的 seccomp 配置集位置。如果类型为"Localhost",则必须设置。不得为任何其他类型设置。 |
|
| Type 表示将应用了哪些 seccomp 配置集。有效选项有: localhost - 应该使用节点上文件中定义的配置文件。RuntimeDefault - 应使用容器运行时默认配置集。unconfined - 不应应用配置集。 |
11.1.222. .spec.securityContext.sysctls
- 描述
- sysctl 包含用于 pod 的命名空间 sysctl 列表。带有不支持 sysctl (容器运行时)的 Pod 可能无法启动。请注意,当 spec.os.name 是 windows 时无法设置此字段。
- 类型
-
array
11.1.223. .spec.securityContext.sysctls[]
- 描述
- sysctl 定义要设置的内核参数
- 类型
-
object
- 必填
-
name
-
value
-
属性 | 类型 | 描述 |
---|---|---|
|
| 要设置的属性的名称 |
|
| 要设置的属性值 |
11.1.224. .spec.securityContext.windowsOptions
- 描述
- 应用到所有容器的 Windows 特定设置。如果未指定,则使用容器的 SecurityContext 中的选项。如果在 SecurityContext 和 PodSecurityContext 中设置,则 SecurityContext 中指定的值具有优先权。请注意,当 spec.os.name 是 linux 时,不能设置此字段。
- 类型
-
object
属性 | 类型 | 描述 |
---|---|---|
|
| GMSACredentialSpec 是 GMSA 准入 Webhook (https://github.com/kubernetes-sigs/windows-gmsa)内联由 GMSACredentialSpec 命名的 GMSA 凭证规格的内容。 |
|
| GMSACredentialSpecName 是要使用的 GMSA 凭证规格的名称。 |
|
| HostProcess 确定容器是否应作为"主机进程"容器运行。所有 Pod 的容器都必须具有相同的有效的 HostProcess 值(不允许混合 HostProcess 容器和非主机进程容器)。另外,如果 HostProcess 为 true,则 HostNetwork 也必须设置为 true。 |
|
| Windows 中的 UserName,以运行容器进程的入口点。如果未指定,则默认为在镜像元数据中指定的用户。也可以在 PodSecurityContext 中设置。如果在 SecurityContext 和 PodSecurityContext 中设置,则 SecurityContext 中指定的值具有优先权。 |
11.1.225. .spec.storage
- 描述
- 存储规格以指定如何使用存储。
- 类型
-
object
属性 | 类型 | 描述 |
---|---|---|
|
| 弃用: 在以后的发行版本中会删除 subPath 用量。 |
|
|
StatefulSet 使用的 EmptyDirVolumeSource。如果指定,它优先于 |
|
| StatefulSet 使用的 EphemeralVolumeSource。这是 k8s 1.21 和 1.15 中的 beta 字段。对于较低版本,从 k8s 1.19 开始,它需要启用 GenericEphemeralVolume 功能门。更多信息: https://kubernetes.io/docs/concepts/storage/ephemeral-volumes/#generic-ephemeral-volumes |
|
| 定义 Prometheus StatefulSets 使用的 PVC spec。使用无法自动置备的卷的最简单方法是使用带有手动创建的 PersistentVolume 的标签选择器。 |
11.1.226. .spec.storage.emptyDir
- 描述
-
StatefulSet 使用的 EmptyDirVolumeSource。如果指定,它优先于
ephemeral
和volumeClaimTemplate
。更多信息: https://kubernetes.io/docs/concepts/storage/volumes/#emptydir - 类型
-
object
属性 | 类型 | 描述 |
---|---|---|
|
| Medium 代表存储介质类型应支持这个目录。默认值为 "",这意味着使用节点的默认介质。必须是空字符串(默认)或 Memory。更多信息: https://kubernetes.io/docs/concepts/storage/volumes#emptydir |
|
| sizeLimit 是这个 EmptyDir 卷所需的本地存储总量。大小限制也适用于内存介质。内存用量的最大使用量为此处指定的 SizeLimit 和 pod 中所有容器的内存限值总和。默认值为 nil,这意味着限制未定义。更多信息: https://kubernetes.io/docs/concepts/storage/volumes#emptydir |
11.1.227. .spec.storage.ephemeral
- 描述
- StatefulSet 使用的 EphemeralVolumeSource。这是 k8s 1.21 和 1.15 中的 beta 字段。对于较低版本,从 k8s 1.19 开始,它需要启用 GenericEphemeralVolume 功能门。更多信息: https://kubernetes.io/docs/concepts/storage/ephemeral-volumes/#generic-ephemeral-volumes
- 类型
-
object
属性 | 类型 | 描述 |
---|---|---|
|
|
将用于创建独立 PVC 来置备卷。嵌入此 EphemeralVolumeSource 的 pod 将是 PVC 的所有者,即 PVC 将与 pod 一起删除。PVC 的名称将是 < 具有名称不归 pod 所有的现有 PVC 将不会 用于 pod,以避免错误地使用不相关的卷。然后,启动 pod 会被阻断,直到删除不相关的 PVC。如果 pod 使用这样的预先创建的 PVC,则必须在 pod 存在后使用对 pod 的所有者引用来更新 PVC。通常,这应该不需要,但手动重建一个有问题的集群时可能会很有用。 此字段是只读的,Kubernetes 在创建后不会对 PVC 进行任何更改。 必需,不能是 nil。 |
11.1.228. .spec.storage.ephemeral.volumeClaimTemplate
- 描述
将用于创建独立 PVC 来置备卷。嵌入此 EphemeralVolumeSource 的 pod 将是 PVC 的所有者,即 PVC 将与 pod 一起删除。PVC 的名称将是 <
pod name>-<volume name>
,其中<volume
name> 是PodSpec.Volumes
数组条目中的名称。如果串联的名称对 PVC 无效(例如,太长),pod 验证将拒绝 pod。具有名称不归 pod 所有的现有 PVC 将不会 用于 pod,以避免错误地使用不相关的卷。然后,启动 pod 会被阻断,直到删除不相关的 PVC。如果 pod 使用这样的预先创建的 PVC,则必须在 pod 存在后使用对 pod 的所有者引用来更新 PVC。通常,这应该不需要,但手动重建一个有问题的集群时可能会很有用。
此字段是只读的,Kubernetes 在创建后不会对 PVC 进行任何更改。
必需,不能是 nil。
- 类型
-
object
- 必填
-
spec
-
属性 | 类型 | 描述 |
---|---|---|
|
| 可能包含创建 PVC 时将复制到 PVC 的标签和注解。不允许其他字段,并在验证过程中被拒绝。 |
|
| PersistentVolumeClaim 的规格。整个内容保持不变复制到从该模板创建的 PVC 中。PersistentVolumeClaim 中与 相同的字段也有效。 |
11.1.229. .spec.storage.ephemeral.volumeClaimTemplate.metadata
- 描述
- 可能包含创建 PVC 时将复制到 PVC 的标签和注解。不允许其他字段,并在验证过程中被拒绝。
- 类型
-
object
11.1.230. .spec.storage.ephemeral.volumeClaimTemplate.spec
- 描述
- PersistentVolumeClaim 的规格。整个内容保持不变复制到从该模板创建的 PVC 中。PersistentVolumeClaim 中与 相同的字段也有效。
- 类型
-
object
属性 | 类型 | 描述 |
---|---|---|
|
| accessModes 包含卷应具有所需的访问模式。更多信息: https://kubernetes.io/docs/concepts/storage/persistent-volumes#access-modes-1 |
|
| Datasource 字段可以用来指定:* 一个现有的 VolumeSnapshot 对象(snapshot.storage.k8s.io/VolumeSnapshot)* 一个现有的 PVC (PersistentVolumeClaim),如果置备程序或外部控制器可以支持指定的数据源,它将基于指定数据源的内容创建一个新卷。当启用 AnyVolumeDataSource 功能门时,dataSource 内容将复制到 dataSourceRef 中,当未指定 dataSourceRef.namespace 时,dataSourceRef 内容将复制到 dataSource 中。如果指定了 namespace,则不会将 dataSourceRef 复制到 dataSource 中。 |
|
| 如果需要非空卷,则 dataSourceRef 指定要使用数据填充卷的对象。这可以是来自非空 API 组(非核心对象)或 PersistentVolumeClaim 对象的任何对象。当指定对象的类型与某些安装的卷填充或动态置备程序匹配时,卷绑定才会成功。此字段将替换 dataSource 字段的功能,如果两个字段都不是空的,则它们必须具有相同的值。为了向后兼容,当命名空间没有在 dataSourceRef 中指定时,如果其中一个为空,则两个字段(dataSource 和 dataSourceRef)都会自动设置为相同的值,另一个是非空的。当在 dataSourceRef 中指定 namespace 时,dataSource 不设置为相同的值,必须为空。dataSource 和 dataSourceRef 之间有三个重要区别:* While dataSource 只允许两种特定类型的对象,dataSourceRef 允许任何非核心对象,以及 PersistentVolumeClaim 对象。* 虽然 dataSource 忽略了禁止的值(丢弃它们),dataSourceRef 保留所有值,并在指定禁止的值时生成错误。* 虽然 dataSource 只允许本地对象,dataSourceRef 允许任何命名空间中的对象。(beta)使用此字段需要启用 AnyVolumeDataSource 功能门。(alpha)使用 dataSourceRef 的 namespace 字段需要启用 CrossNamespaceVolumeDataSource 功能门。 |
|
| resources 代表卷应具有的最小资源。如果启用了 RecoverVolumeExpansionFailure 功能,用户可以指定小于之前值的资源要求,但仍必须高于声明的 status 字段中记录的容量。更多信息: https://kubernetes.io/docs/concepts/storage/persistent-volumes#resources |
|
| selector 是要考虑绑定的卷的标签查询。 |
|
| storageClassName 是声明所需的 StorageClass 的名称。更多信息: https://kubernetes.io/docs/concepts/storage/persistent-volumes#class-1 |
|
| volumeAttributesClassName 可用于设置此声明使用的 VolumeAttributesClass。如果指定,CSI 驱动程序将使用对应的 VolumeAttributesClass 中定义的属性创建或更新卷。这有一个不同于 storageClassName 的目的,可在创建声明后更改。空字符串表示,不会将 VolumeAttributesClass 应用到声明,但不允许在设置后将此字段重置为空字符串。如果未指定,并且 PersistentVolumeClaim 为 unbound,则 persistentvolume 控制器将设置默认的 VolumeAttributesClass (如果存在)。如果 volumeAttributesClass 引用的资源不存在,则这个 PersistentVolumeClaim 将被设置为 Pending 状态,如 modifyVolumeStatus 字段反映,直到资源存在为止。更多信息: https://kubernetes.io/docs/concepts/storage/volume-attributes-classes/ (Alpha)使用此字段需要启用 VolumeAttributesClass 功能门。 |
|
| volumeMode 定义声明需要哪些卷类型。当未包含在 claim spec 中时,文件系统的值会被表示。 |
|
| volumeName 是对此声明支持的 PersistentVolume 的绑定引用。 |
11.1.231. .spec.storage.ephemeral.volumeClaimTemplate.spec.dataSource
- 描述
- Datasource 字段可以用来指定:* 一个现有的 VolumeSnapshot 对象(snapshot.storage.k8s.io/VolumeSnapshot)* 一个现有的 PVC (PersistentVolumeClaim),如果置备程序或外部控制器可以支持指定的数据源,它将基于指定数据源的内容创建一个新卷。当启用 AnyVolumeDataSource 功能门时,dataSource 内容将复制到 dataSourceRef 中,当未指定 dataSourceRef.namespace 时,dataSourceRef 内容将复制到 dataSource 中。如果指定了 namespace,则不会将 dataSourceRef 复制到 dataSource 中。
- 类型
-
object
- 必填
-
kind
-
name
-
属性 | 类型 | 描述 |
---|---|---|
|
| APIGroup 是所引用资源的组。如果没有指定 APIGroup,则指定的 Kind 必须位于 core API 组中。对于任何其他第三方类型,需要 APIGroup。 |
|
| kind 是被引用的资源类型 |
|
| name 是被引用的资源的名称 |
11.1.232. .spec.storage.ephemeral.volumeClaimTemplate.spec.dataSourceRef
- 描述
- 如果需要非空卷,则 dataSourceRef 指定要使用数据填充卷的对象。这可以是来自非空 API 组(非核心对象)或 PersistentVolumeClaim 对象的任何对象。当指定对象的类型与某些安装的卷填充或动态置备程序匹配时,卷绑定才会成功。此字段将替换 dataSource 字段的功能,如果两个字段都不是空的,则它们必须具有相同的值。为了向后兼容,当命名空间没有在 dataSourceRef 中指定时,如果其中一个为空,则两个字段(dataSource 和 dataSourceRef)都会自动设置为相同的值,另一个是非空的。当在 dataSourceRef 中指定 namespace 时,dataSource 不设置为相同的值,必须为空。dataSource 和 dataSourceRef 之间有三个重要区别:* While dataSource 只允许两种特定类型的对象,dataSourceRef 允许任何非核心对象,以及 PersistentVolumeClaim 对象。* 虽然 dataSource 忽略了禁止的值(丢弃它们),dataSourceRef 保留所有值,并在指定禁止的值时生成错误。* 虽然 dataSource 只允许本地对象,dataSourceRef 允许任何命名空间中的对象。(beta)使用此字段需要启用 AnyVolumeDataSource 功能门。(alpha)使用 dataSourceRef 的 namespace 字段需要启用 CrossNamespaceVolumeDataSource 功能门。
- 类型
-
object
- 必填
-
kind
-
name
-
属性 | 类型 | 描述 |
---|---|---|
|
| APIGroup 是所引用资源的组。如果没有指定 APIGroup,则指定的 Kind 必须位于 core API 组中。对于任何其他第三方类型,需要 APIGroup。 |
|
| kind 是被引用的资源类型 |
|
| name 是被引用的资源的名称 |
|
| 命名空间是被引用的资源的命名空间,请注意,当指定命名空间时,引用命名空间中需要一个 gateway.networking.k8s.io/ReferenceGrant 对象来允许该命名空间的所有者接受引用。详情请查看 ReferenceGrant 文档。(alpha)此字段需要启用 CrossNamespaceVolumeDataSource 功能门。 |
11.1.233. .spec.storage.ephemeral.volumeClaimTemplate.spec.resources
- 描述
- resources 代表卷应具有的最小资源。如果启用了 RecoverVolumeExpansionFailure 功能,用户可以指定小于之前值的资源要求,但仍必须高于声明的 status 字段中记录的容量。更多信息: https://kubernetes.io/docs/concepts/storage/persistent-volumes#resources
- 类型
-
object
属性 | 类型 | 描述 |
---|---|---|
|
| 限制描述了允许的最大计算资源量。更多信息: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/ |
|
| Requests 描述了所需的最少计算资源。如果容器省略了 Requests,则默认为 Limits (如果明确指定),否则默认为实现定义的值。请求不能超过限值。更多信息: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/ |
11.1.234. .spec.storage.ephemeral.volumeClaimTemplate.spec.selector
- 描述
- selector 是要考虑绑定的卷的标签查询。
- 类型
-
object
属性 | 类型 | 描述 |
---|---|---|
|
| matchExpressions 是标签选择器要求列表。要求的逻辑关系是 AND。 |
|
| 标签选择器要求是一个选择器,其中包含与键和值相关的值、键和值。 |
|
| matchLabels 是 {key,value} 对的映射。MatchLabels 映射中的单个 {key,value} 等同于 matchExpressions 的一个元素,其 key 字段是 "key",运算符是 "In",值数组仅包含 "value"。要求的逻辑关系是 AND。 |
11.1.235. .spec.storage.ephemeral.volumeClaimTemplate.spec.selector.matchExpressions
- 描述
- matchExpressions 是标签选择器要求列表。要求的逻辑关系是 AND。
- 类型
-
数组
11.1.236. .spec.storage.ephemeral.volumeClaimTemplate.spec.selector.matchExpressions[]
- 描述
- 标签选择器要求是一个选择器,其中包含与键和值相关的值、键和值。
- 类型
-
object
- 必填
-
key
-
operator
-
属性 | 类型 | 描述 |
---|---|---|
|
| key 是选择器应用到的标签键。 |
|
| 运算符代表一个键与一组值的关系。有效的运算符是 In、NotIn、Exists 和 DoesNotExist。 |
|
| 值是字符串值的数组。如果运算符是 In 或 NotIn,则值数组必须是非空的。如果运算符是 Exists 或 DoesNotExist,则值数组必须为空。这个数组会在策略性合并补丁中被替换。 |
11.1.237. .spec.storage.volumeClaimTemplate
- 描述
- 定义 Prometheus StatefulSets 使用的 PVC spec。使用无法自动置备的卷的最简单方法是使用带有手动创建的 PersistentVolume 的标签选择器。
- 类型
-
object
属性 | 类型 | 描述 |
---|---|---|
|
| APIVersion 定义对象的这个表示法的版本化的 schema。服务器应该将识别的模式转换为最新的内部值,并可拒绝未识别的值。更多信息: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources |
|
| kind 是一个字符串值,代表此对象所代表的 REST 资源。服务器可以从客户端向其提交请求的端点推断。无法更新。采用驼峰拼写法 (CamelCase)。更多信息: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds |
|
| EmbeddedMetadata 包含与 EmbeddedResource 相关的元数据。 |
|
| 定义 Pod 作者请求的卷所需的特征。更多信息: https://kubernetes.io/docs/concepts/storage/persistent-volumes#persistentvolumeclaims |
|
| deprecated: 此字段永不设置。 |
11.1.238. .spec.storage.volumeClaimTemplate.metadata
- 描述
- EmbeddedMetadata 包含与 EmbeddedResource 相关的元数据。
- 类型
-
object
属性 | 类型 | 描述 |
---|---|---|
|
| annotations 是一个无结构的键值映射,它存储有资源,可通过外部工具存储和检索任意元数据。它们不可查询,应在修改对象时保留。更多信息: http://kubernetes.io/docs/user-guide/annotations |
|
| 可用于组织和分类(范围和选择)对象的字符串键和值映射。可能与复制控制器和服务选择器匹配。更多信息: http://kubernetes.io/docs/user-guide/labels |
|
| 名称在命名空间中必须是唯一的。创建资源时需要一些资源,但有些资源可能会允许客户端自动请求生成适当名称。name 主要用于创建 idempotence 和配置定义。无法更新。更多信息: http://kubernetes.io/docs/user-guide/identifiers#names |
11.1.239. .spec.storage.volumeClaimTemplate.spec
- 描述
- 定义 Pod 作者请求的卷所需的特征。更多信息: https://kubernetes.io/docs/concepts/storage/persistent-volumes#persistentvolumeclaims
- 类型
-
object
属性 | 类型 | 描述 |
---|---|---|
|
| accessModes 包含卷应具有所需的访问模式。更多信息: https://kubernetes.io/docs/concepts/storage/persistent-volumes#access-modes-1 |
|
| Datasource 字段可以用来指定:* 一个现有的 VolumeSnapshot 对象(snapshot.storage.k8s.io/VolumeSnapshot)* 一个现有的 PVC (PersistentVolumeClaim),如果置备程序或外部控制器可以支持指定的数据源,它将基于指定数据源的内容创建一个新卷。当启用 AnyVolumeDataSource 功能门时,dataSource 内容将复制到 dataSourceRef 中,当未指定 dataSourceRef.namespace 时,dataSourceRef 内容将复制到 dataSource 中。如果指定了 namespace,则不会将 dataSourceRef 复制到 dataSource 中。 |
|
| 如果需要非空卷,则 dataSourceRef 指定要使用数据填充卷的对象。这可以是来自非空 API 组(非核心对象)或 PersistentVolumeClaim 对象的任何对象。当指定对象的类型与某些安装的卷填充或动态置备程序匹配时,卷绑定才会成功。此字段将替换 dataSource 字段的功能,如果两个字段都不是空的,则它们必须具有相同的值。为了向后兼容,当命名空间没有在 dataSourceRef 中指定时,如果其中一个为空,则两个字段(dataSource 和 dataSourceRef)都会自动设置为相同的值,另一个是非空的。当在 dataSourceRef 中指定 namespace 时,dataSource 不设置为相同的值,必须为空。dataSource 和 dataSourceRef 之间有三个重要区别:* While dataSource 只允许两种特定类型的对象,dataSourceRef 允许任何非核心对象,以及 PersistentVolumeClaim 对象。* 虽然 dataSource 忽略了禁止的值(丢弃它们),dataSourceRef 保留所有值,并在指定禁止的值时生成错误。* 虽然 dataSource 只允许本地对象,dataSourceRef 允许任何命名空间中的对象。(beta)使用此字段需要启用 AnyVolumeDataSource 功能门。(alpha)使用 dataSourceRef 的 namespace 字段需要启用 CrossNamespaceVolumeDataSource 功能门。 |
|
| resources 代表卷应具有的最小资源。如果启用了 RecoverVolumeExpansionFailure 功能,用户可以指定小于之前值的资源要求,但仍必须高于声明的 status 字段中记录的容量。更多信息: https://kubernetes.io/docs/concepts/storage/persistent-volumes#resources |
|
| selector 是要考虑绑定的卷的标签查询。 |
|
| storageClassName 是声明所需的 StorageClass 的名称。更多信息: https://kubernetes.io/docs/concepts/storage/persistent-volumes#class-1 |
|
| volumeAttributesClassName 可用于设置此声明使用的 VolumeAttributesClass。如果指定,CSI 驱动程序将使用对应的 VolumeAttributesClass 中定义的属性创建或更新卷。这有一个不同于 storageClassName 的目的,可在创建声明后更改。空字符串表示,不会将 VolumeAttributesClass 应用到声明,但不允许在设置后将此字段重置为空字符串。如果未指定,并且 PersistentVolumeClaim 为 unbound,则 persistentvolume 控制器将设置默认的 VolumeAttributesClass (如果存在)。如果 volumeAttributesClass 引用的资源不存在,则这个 PersistentVolumeClaim 将被设置为 Pending 状态,如 modifyVolumeStatus 字段反映,直到资源存在为止。更多信息: https://kubernetes.io/docs/concepts/storage/volume-attributes-classes/ (Alpha)使用此字段需要启用 VolumeAttributesClass 功能门。 |
|
| volumeMode 定义声明需要哪些卷类型。当未包含在 claim spec 中时,文件系统的值会被表示。 |
|
| volumeName 是对此声明支持的 PersistentVolume 的绑定引用。 |
11.1.240. .spec.storage.volumeClaimTemplate.spec.dataSource
- 描述
- Datasource 字段可以用来指定:* 一个现有的 VolumeSnapshot 对象(snapshot.storage.k8s.io/VolumeSnapshot)* 一个现有的 PVC (PersistentVolumeClaim),如果置备程序或外部控制器可以支持指定的数据源,它将基于指定数据源的内容创建一个新卷。当启用 AnyVolumeDataSource 功能门时,dataSource 内容将复制到 dataSourceRef 中,当未指定 dataSourceRef.namespace 时,dataSourceRef 内容将复制到 dataSource 中。如果指定了 namespace,则不会将 dataSourceRef 复制到 dataSource 中。
- 类型
-
object
- 必填
-
kind
-
name
-
属性 | 类型 | 描述 |
---|---|---|
|
| APIGroup 是所引用资源的组。如果没有指定 APIGroup,则指定的 Kind 必须位于 core API 组中。对于任何其他第三方类型,需要 APIGroup。 |
|
| kind 是被引用的资源类型 |
|
| name 是被引用的资源的名称 |
11.1.241. .spec.storage.volumeClaimTemplate.spec.dataSourceRef
- 描述
- 如果需要非空卷,则 dataSourceRef 指定要使用数据填充卷的对象。这可以是来自非空 API 组(非核心对象)或 PersistentVolumeClaim 对象的任何对象。当指定对象的类型与某些安装的卷填充或动态置备程序匹配时,卷绑定才会成功。此字段将替换 dataSource 字段的功能,如果两个字段都不是空的,则它们必须具有相同的值。为了向后兼容,当命名空间没有在 dataSourceRef 中指定时,如果其中一个为空,则两个字段(dataSource 和 dataSourceRef)都会自动设置为相同的值,另一个是非空的。当在 dataSourceRef 中指定 namespace 时,dataSource 不设置为相同的值,必须为空。dataSource 和 dataSourceRef 之间有三个重要区别:* While dataSource 只允许两种特定类型的对象,dataSourceRef 允许任何非核心对象,以及 PersistentVolumeClaim 对象。* 虽然 dataSource 忽略了禁止的值(丢弃它们),dataSourceRef 保留所有值,并在指定禁止的值时生成错误。* 虽然 dataSource 只允许本地对象,dataSourceRef 允许任何命名空间中的对象。(beta)使用此字段需要启用 AnyVolumeDataSource 功能门。(alpha)使用 dataSourceRef 的 namespace 字段需要启用 CrossNamespaceVolumeDataSource 功能门。
- 类型
-
object
- 必填
-
kind
-
name
-
属性 | 类型 | 描述 |
---|---|---|
|
| APIGroup 是所引用资源的组。如果没有指定 APIGroup,则指定的 Kind 必须位于 core API 组中。对于任何其他第三方类型,需要 APIGroup。 |
|
| kind 是被引用的资源类型 |
|
| name 是被引用的资源的名称 |
|
| 命名空间是被引用的资源的命名空间,请注意,当指定命名空间时,引用命名空间中需要一个 gateway.networking.k8s.io/ReferenceGrant 对象来允许该命名空间的所有者接受引用。详情请查看 ReferenceGrant 文档。(alpha)此字段需要启用 CrossNamespaceVolumeDataSource 功能门。 |
11.1.242. .spec.storage.volumeClaimTemplate.spec.resources
- 描述
- resources 代表卷应具有的最小资源。如果启用了 RecoverVolumeExpansionFailure 功能,用户可以指定小于之前值的资源要求,但仍必须高于声明的 status 字段中记录的容量。更多信息: https://kubernetes.io/docs/concepts/storage/persistent-volumes#resources
- 类型
-
object
属性 | 类型 | 描述 |
---|---|---|
|
| 限制描述了允许的最大计算资源量。更多信息: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/ |
|
| Requests 描述了所需的最少计算资源。如果容器省略了 Requests,则默认为 Limits (如果明确指定),否则默认为实现定义的值。请求不能超过限值。更多信息: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/ |
11.1.243. .spec.storage.volumeClaimTemplate.spec.selector
- 描述
- selector 是要考虑绑定的卷的标签查询。
- 类型
-
object
属性 | 类型 | 描述 |
---|---|---|
|
| matchExpressions 是标签选择器要求列表。要求的逻辑关系是 AND。 |
|
| 标签选择器要求是一个选择器,其中包含与键和值相关的值、键和值。 |
|
| matchLabels 是 {key,value} 对的映射。MatchLabels 映射中的单个 {key,value} 等同于 matchExpressions 的一个元素,其 key 字段是 "key",运算符是 "In",值数组仅包含 "value"。要求的逻辑关系是 AND。 |
11.1.244. .spec.storage.volumeClaimTemplate.spec.selector.matchExpressions
- 描述
- matchExpressions 是标签选择器要求列表。要求的逻辑关系是 AND。
- 类型
-
array
11.1.245. .spec.storage.volumeClaimTemplate.spec.selector.matchExpressions[]
- 描述
- 标签选择器要求是一个选择器,其中包含与键和值相关的值、键和值。
- 类型
-
object
- 必填
-
key
-
operator
-
属性 | 类型 | 描述 |
---|---|---|
|
| key 是选择器应用到的标签键。 |
|
| 运算符代表一个键与一组值的关系。有效的运算符是 In、NotIn、Exists 和 DoesNotExist。 |
|
| 值是字符串值的数组。如果运算符是 In 或 NotIn,则值数组必须是非空的。如果运算符是 Exists 或 DoesNotExist,则值数组必须为空。这个数组会在策略性合并补丁中被替换。 |
11.1.246. .spec.storage.volumeClaimTemplate.status
- 描述
- deprecated: 此字段永不设置。
- 类型
-
object
属性 | 类型 | 描述 |
---|---|---|
|
| accessModes 包含 PVC 支持的卷的实际访问模式。更多信息: https://kubernetes.io/docs/concepts/storage/persistent-volumes#access-modes-1 |
|
| allocatedResourceStatuses 存储给定 PVC 的大小的资源状态。键名称遵循标准 Kubernetes 标签语法。有效值为:* Un-prefixed 键: - storage - 卷的容量。* 自定义资源必须使用定义实现的前缀前缀名称,如 "example.com/my-custom-resource" 除以上值外 - 未前缀或具有 kubernetes.io 前缀的密钥被视为保留,因此可能无法使用。 ClaimResourceStatus 可以处于以下状态: - ControllerResizeInProgress: 当重新定义 control-plane 大小调整卷大小时 State set。- ControllerResizeFailed: 在重新定义控制器大小失败时,State set 会失败,并显示终端错误。- NodeResizePending: 当重新定义控制器调整卷的大小时 State 设置,但节点上需要进一步重新定义卷大小。- NodeResizeInProgress: 当 kubelet 开始重新定义卷的大小时设置 State。- NodeResizeFailed: 当 kubelet 中调整大小失败并显示终端错误时,State 设置。临时错误没有设置 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" When this field is not set, 这意味着,给定 PVC 没有调整大小的操作。 接收之前未知 resourceName 或 ClaimResourceStatus 的 PVC 更新的控制器应忽略其设计的用途的更新。例如 - 仅负责重新定义卷大小调整容量的控制器,应忽略更改与 PVC 相关的其他有效资源的 PVC 更新。 这是一个 alpha 字段,需要启用 RecoverVolumeExpansionFailure 功能。 |
|
| allocatedResources 跟踪分配给 PVC 的资源,包括其容量。键名称遵循标准 Kubernetes 标签语法。有效值为:* Un-prefixed 键: - storage - 卷的容量。* 自定义资源必须使用定义实现的前缀前缀名称,如 "example.com/my-custom-resource" 除以上值外 - 未前缀或具有 kubernetes.io 前缀的密钥被视为保留,因此可能无法使用。 当请求卷扩展操作时,此处报告的容量可能大于实际容量。对于存储配额,使用来自 allocatedResources 和 PVC.spec.resources 的值。如果没有设置 allocatedResources,则单独使用 PVC.spec.resources 进行配额计算。如果卷扩展容量请求较低,则只有当实际卷容量相等或低于请求的容量时,才会降低 allocatedResources。 接收之前未知 resourceName 的 PVC 更新的控制器应忽略其目的的更新。例如 - 仅负责重新定义卷大小调整容量的控制器,应忽略更改与 PVC 相关的其他有效资源的 PVC 更新。 这是一个 alpha 字段,需要启用 RecoverVolumeExpansionFailure 功能。 |
|
| capacity 代表底层卷的实际资源。 |
|
| 条件是持久性卷声明的当前条件。如果底层持久性卷被调整大小,则条件将设置为 'Resizing'。 |
|
| PersistentVolumeClaimCondition 包含有关 pvc 状态的详细信息 |
|
| currentVolumeAttributesClassName 是 PVC 正在使用的 VolumeAttributesClass 的当前名称。当取消设置时,没有应用到此 PersistentVolumeClaim 的 VolumeAttributeClass。这是一个 alpha 字段,需要启用 VolumeAttributesClass 功能。 |
|
| ModifyVolumeStatus 代表 ControllerModifyVolume 操作的状态对象。当这未设置时,不会尝试 ModifyVolume 操作。这是一个 alpha 字段,需要启用 VolumeAttributesClass 功能。 |
|
| phase 代表 PersistentVolumeClaim 的当前阶段。 |
11.1.247. .spec.storage.volumeClaimTemplate.status.conditions
- 描述
- 条件是持久性卷声明的当前条件。如果底层持久性卷被调整大小,则条件将设置为 'Resizing'。
- 类型
-
array
11.1.248. .spec.storage.volumeClaimTemplate.status.conditions[]
- 描述
- PersistentVolumeClaimCondition 包含有关 pvc 状态的详细信息
- 类型
-
object
- 必填
-
status
-
type
-
属性 | 类型 | 描述 |
---|---|---|
|
| lastProbeTime 是我们探测到条件的时间。 |
|
| lastTransitionTime 是条件从一个状态转换到另一个状态的时间。 |
|
| Message 是人类可读的消息,指示最后一次转换的详细信息。 |
|
| 原因是唯一的,这应该是一个简短的机器理解字符串,给出了条件最后一次转换的原因。如果报告"重新调整",则表示已调整底层持久性卷的大小。 |
|
| |
|
| PersistentVolumeClaimConditionType 是 PersistentVolumeClaimCondition.Type 的有效值 |
11.1.249. .spec.storage.volumeClaimTemplate.status.modifyVolumeStatus
- 描述
- ModifyVolumeStatus 代表 ControllerModifyVolume 操作的状态对象。当这未设置时,不会尝试 ModifyVolume 操作。这是一个 alpha 字段,需要启用 VolumeAttributesClass 功能。
- 类型
-
object
- 必填
-
status
-
属性 | 类型 | 描述 |
---|---|---|
|
| status 是 ControllerModifyVolume 操作的状态。它可以处于以下状态: - Pending Pending 表示因为未处理的要求(如指定的 VolumeAttributesClass 不存在)- InProgress InProgress 表示卷被修改。- 不可联邦表示请求已被修改为无效的 CSI 驱动程序。要解决错误,需要指定一个有效的 VolumeAttributesClass。注: 以后可以添加新状态。消费者应检查未知状态并正确失败。 |
|
| targetVolumeAttributesClassName 是当前被协调的 PVC 的 VolumeAttributesClass 的名称 |
11.1.250. .spec.tolerations
- 描述
- 如果指定,pod 的容限。
- 类型
-
array
11.1.251. .spec.tolerations[]
- 描述
- 此 Toleration 附加到 pod,以使用匹配的 operator <operator> 容许与 triple <key,value,effect> 匹配的任何污点。
- 类型
-
object
属性 | 类型 | 描述 |
---|---|---|
|
| effect 表示要匹配的污点效果。空意味着匹配所有污点效果。指定后,允许的值为 NoSchedule,PreferNoSchedule 和 NoExecute。 |
|
| key 是容限应用到的污点键。empty 表示与所有污点键匹配。如果键为空,则必须存在运算符;组合意味着匹配所有值和所有键。 |
|
| Operator 代表键与值的关系。有效的运算符是 Exists 和 Equal。默认值为 Equal。exists 等同于值的通配符,以便 pod 可以容忍特定类别的所有污点。 |
|
| tolerationSeconds 代表容限的期间(必须生效 NoExecute,否则此字段将被忽略)可以容忍污点。默认情况下,它不会被设置,这意味着容许任何污点(不要驱除)。零值和负值将被视为 0 (立即删除)。 |
|
| value 是容限匹配的污点值。如果运算符是 Exists,则该值应该为空,否则仅是一个常规字符串。 |
11.1.252. .spec.topologySpreadConstraints
- 描述
- 如果指定,pod 的拓扑分布限制。
- 类型
-
array
11.1.253. .spec.topologySpreadConstraints[]
- 描述
- TopologySpreadConstraint 指定如何在给定的拓扑中分布匹配的 pod。
- 类型
-
object
- 必填
-
maxSkew
-
topologyKey
-
whenUnsatisfiable
-
属性 | 类型 | 描述 |
---|---|---|
|
| labelSelector 用于查找匹配的 pod。与此标签选择器匹配的 Pod 被计算,以确定其对应拓扑域中的 pod 数量。 |
|
| matchLabelKeys 是一组 pod 标签键,用于选择要在其中计算分布的 pod。这些键用于从传入的 pod 标签中查找值,这些键值标签由 labelSelector 匹配,以选择现有 pod 的组,用于为传入的 pod 计算。匹配键被禁止在 MatchLabelKeys 和 LabelSelector 中。当 LabelSelector 没有设置时,无法设置 matchLabelKeys。传入的 pod 标签中不存在的键将被忽略。null 或空列表表示仅与 labelSelector 匹配。 这是一个 beta 字段,需要启用 MatchLabelKeysInPodTopologySpread 功能门(默认启用)。 |
|
|
maxSkew 描述了 pod 可能没有被均匀分布的程度。当 |
|
| MinDomains 表示合格的域数量。当具有匹配拓扑键的合格域数量小于 minDomains 时,Pod Topology Spread 会将"global minimum"视为 0,然后执行 Skew 的计算。当匹配拓扑键等于或大于 minDomains 的合格域数量时,这个值不会影响调度。因此,当有资格的域数量小于 minDomains 时,调度程序不会将超过 maxSkew Pod 的调度到这些域。如果值为 nil,则约束的行为就像 MinDomains 等于 1 一样。有效值为大于 0 的整数。如果值不是 nil,WhenUnsatisfiable 必须是 DoNotSchedule。 例如,在一个 3 个区集群中,MaxSkew 设置为 2,MinDomains 被设置为 5,且带有与 2/2/2: | zone1 | zone2 | zone2 | zone2 | zone3 | P P | P | P P | P P | P P | P P | 数量的域的数量小于 5 (MinDomains),因此"global minimum"被视为 0。在这种情况下,如果新 Pod 调度到任何三个区域,则无法调度具有相同 labelSelector 的新 pod,因为 computed skew 将为 3 (3 - 0),它将违反 MaxSkew。 |
|
| NodeAffinityPolicy 表示在计算 pod 拓扑分布偏移时,我们将如何处理 Pod 的 nodeAffinity/nodeSelector。选项为:- Honor:只有与 nodeAffinity/nodeSelector 匹配的节点才会包含在计算中。- Ignore: nodeAffinity/nodeSelector 会被忽略。所有节点都包含在计算中。 如果这个值是 nil,则行为等同于 Honor 策略。这是 NodeInclusionPolicyInPodTopologySpread 功能默认启用的 beta 级别功能。 |
|
| NodeTaintsPolicy 指示在计算 pod 拓扑分布偏移时如何对待节点污点。选项为:- Honor: 没有污点的节点,以及传入的 pod 具有容限的污点节点。- Ignore: node taint are ignored.所有节点都包括在内。 如果这个值是 nil,则行为等同于 Ignore 策略。这是 NodeInclusionPolicyInPodTopologySpread 功能默认启用的 beta 级别功能。 |
|
| topologyKey 是节点标签的密钥。带有具有此键和相同值标签的节点被视为在同一拓扑中。我们把每个 <key, value> 视为 "bucket",并尝试将均衡的 pod 数量放在每个存储桶中。我们将域定义为拓扑的特定实例。另外,我们将一个有资格的域定义为节点满足 nodeAffinityPolicy 和 nodeTaintsPolicy 的要求的域。例如,如果 TopologyKey 为 "kubernetes.io/hostname",则每个节点都是该拓扑的域。如果 TopologyKey 是 "topology.kubernetes.io/zone",每个区都是该拓扑的域。这是必填字段。 |
|
| whenUnsatisfiable 表示如何在不满足分散约束的情况下处理 pod。- DoNotSchedule (default)告知调度程序不调度它。- ScheduleAnyway 告知调度程序将 pod 调度到任何位置,但为拓扑赋予更高优先级,有助于减少偏差。如果每个可能的节点分配都会在某些拓扑上违反"MaxSkew",则约束被视为"不satisfiable"。例如,在一个 3 区集群中,MaxSkew 设置为 1,而具有与 3/1/1: | zone1 | zone2 | zone2 | zone3 | P P | P | P | P | P | P | P | P | P | WhenUnsatisfiable 设置为 DoNotSchedule 的 pod 只能调度到 zone2 (zone3)要成为 3/2/1 (3/1/2),在 zone2 (zone3)中以 ActualSkew (2-1)满足 MaxSkew (1)。换句话说,集群仍然可以实现平衡,但调度程序不会使其更不平衡。这是必填字段。 |
11.1.254. .spec.topologySpreadConstraints[].labelSelector
- 描述
- labelSelector 用于查找匹配的 pod。与此标签选择器匹配的 Pod 被计算,以确定其对应拓扑域中的 pod 数量。
- 类型
-
object
属性 | 类型 | 描述 |
---|---|---|
|
| matchExpressions 是标签选择器要求列表。要求的逻辑关系是 AND。 |
|
| 标签选择器要求是一个选择器,其中包含与键和值相关的值、键和值。 |
|
| matchLabels 是 {key,value} 对的映射。MatchLabels 映射中的单个 {key,value} 等同于 matchExpressions 的一个元素,其 key 字段是 "key",运算符是 "In",值数组仅包含 "value"。要求的逻辑关系是 AND。 |
11.1.255. .spec.topologySpreadConstraints[].labelSelector.matchExpressions
- 描述
- matchExpressions 是标签选择器要求列表。要求的逻辑关系是 AND。
- 类型
-
array
11.1.256. .spec.topologySpreadConstraints[].labelSelector.matchExpressions[]
- 描述
- 标签选择器要求是一个选择器,其中包含与键和值相关的值、键和值。
- 类型
-
object
- 必填
-
key
-
operator
-
属性 | 类型 | 描述 |
---|---|---|
|
| key 是选择器应用到的标签键。 |
|
| 运算符代表一个键与一组值的关系。有效的运算符是 In、NotIn、Exists 和 DoesNotExist。 |
|
| 值是字符串值的数组。如果运算符是 In 或 NotIn,则值数组必须是非空的。如果运算符是 Exists 或 DoesNotExist,则值数组必须为空。这个数组会在策略性合并补丁中被替换。 |
11.1.257. .spec.tracingConfig
- 描述
tracingConfig 在 Thanos 中配置追踪。
tracingConfigFile
优先于此字段。这是一个 实验性功能,它可能会以中断的方式改变任何即将推出的版本。
- 类型
-
object
- 必填
-
key
-
属性 | 类型 | 描述 |
---|---|---|
|
| 要从中选择的 secret 的密钥。必须是一个有效的 secret 密钥。 |
|
|
引用的名称。有效地需要此字段,但因为允许向后兼容为空。这里具有空值的此类实例几乎是错误的。TODO:添加其他有用的字段。apiVersion、kind、uid?更多信息: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names TODO: 当 controller-gen 不需要 https://github.com/kubernetes-sigs/kubebuilder/issues/3896 时,Drop |
|
| 指定是否需要定义 Secret 还是其密钥 |
11.1.258. .spec.volumeMounts
- 描述
- volumeMounts 允许在输出 StatefulSet 定义上配置额外的 VolumeMount。指定的 volumeMounts 将附加到 ruler 容器中的其他 VolumeMount,这是 StorageSpec 对象生成的。
- 类型
-
array
11.1.259. .spec.volumeMounts[]
- 描述
- VolumeMount 描述了容器内卷挂载。
- 类型
-
object
- 必填
-
mountPath
-
name
-
属性 | 类型 | 描述 |
---|---|---|
|
| 应挂载卷的容器中的路径。不得包含 ':'。 |
|
| mountPropagation 决定挂载如何从主机传播到容器以及反向传播。如果没有设置,则使用 MountPropagationNone。此字段在 1.10 中是 beta。当 RecursiveReadOnly 设置为 IfPossible 或 Enabled 时,mountPropagation 必须是 None 或未指定(默认为 None)。 |
|
| 这必须与卷的 Name 匹配。 |
|
| 如果为 true,则以只读方式挂载,否则读写(false 或未指定)。默认为false。 |
|
| RecursiveReadOnly 指定是否应递归处理只读挂载。 如果 ReadOnly 为 false,则此字段没有意义,必须未指定。 如果 ReadOnly 为 true,且此字段设置为 Disabled,则不会递归只读挂载。如果将此字段设置为 IfPossible,则挂载将递归只读(如果容器运行时支持)。如果此字段设置为 Enabled,则挂载将在容器运行时支持时递归只读,否则不会启动 pod,并生成错误来指示原因。 如果将此字段设置为 IfPossible 或 Enabled,则 MountPropagation 必须设为 None (或未指定,默认为 None)。 如果没有指定此字段,它将被视为与 Disabled 的等效值。 |
|
| 应从中挂载容器卷的卷中的路径。默认为 "" (卷的 root)。 |
|
| 在应该挂载容器卷的卷中扩展路径。行为与 SubPath 类似,但环境变量引用 $(VAR_NAME)使用容器的环境扩展。默认为 "" (卷的 root)。SubPathExpr 和 SubPath 是互斥的。 |
11.1.260. .spec.volumes
- 描述
- 卷允许在输出 StatefulSet 定义中配置额外的卷。指定的卷将附加到作为 StorageSpec 对象生成的其他卷。
- 类型
-
array
11.1.261. .spec.volumes[]
- 描述
- 卷代表 pod 中的指定卷,可以被 pod 中的任何容器访问。
- 类型
-
object
- 必填
-
name
-
属性 | 类型 | 描述 |
---|---|---|
|
| awsElasticBlockStore 代表一个 AWS Disk 资源,附加到 kubelet 的主机机器,然后公开给 pod。更多信息: https://kubernetes.io/docs/concepts/storage/volumes#awselasticblockstore |
|
| azureDisk 代表主机上的 Azure Data Disk 挂载,并绑定到 pod。 |
|
| azureFile 代表主机上的 Azure File Service 挂载,并绑定到 pod。 |
|
| CephFS 代表共享 pod 生命周期的主机上的 Ceph FS 挂载 |
|
| Cinder 代表附加并挂载到 kubelet 主机机器上的 cinder 卷。更多信息: https://examples.k8s.io/mysql-cinder-pd/README.md |
|
| ConfigMap 代表应填充此卷的 configMap |
|
| CSI (Container Storage Interface)代表由特定外部 CSI 驱动程序(Beta 功能)处理的临时存储。 |
|
| downwardAPI 代表应填充此卷的 pod 的 Downward API |
|
| emptyDir 代表共享 pod 生命周期的临时目录。更多信息: https://kubernetes.io/docs/concepts/storage/volumes#emptydir |
|
| ephemeral 代表由集群存储驱动程序处理的卷。卷的生命周期与定义它的 pod 关联 - 将在 pod 启动前创建,并在 pod 被删除时删除。 如果 pod 运行(如需要从快照或容量跟踪中恢复)正常卷时,才需要这个卷。c)通过存储类指定存储驱动程序,以及 d)存储驱动程序支持通过 PersistentVolumeClaim 进行动态卷置备(请参阅 EphemeralVolumeSource 以了解有关这个卷类型和 PersistentVolumeClaim 间的连接的更多信息。 对于保留的时间超过单个 pod 的生命周期,使用 PersistentVolumeClaim 或特定于供应商的 API 之一。 如果使用 CSI 驱动程序,使用 CSI 驱动程序来轻量级本地临时卷 - 如需更多信息,请参阅驱动程序文档。 pod 可以同时使用两种类型的临时卷和持久性卷。 |
|
| FC 代表附加到 kubelet 主机机器的光纤通道资源,然后公开给 pod。 |
|
| FlexVolume 代表使用基于 exec 的插件置备的/附加的通用卷资源。 |
|
| flocker 代表附加到 kubelet 主机机器的 Flocker 卷。这取决于正在运行的 Flocker 控制服务 |
|
| gcePersistentDisk 代表一个 GCE Disk 资源,该资源附加到 kubelet 的主机机器,然后公开给 pod。更多信息: https://kubernetes.io/docs/concepts/storage/volumes#gcepersistentdisk |
|
| gitRepo 代表特定修订版本中的 git 存储库。DEPRECATED: GitRepo 已被弃用。要使用 git 存储库置备容器,请将 EmptyDir 挂载到使用 git 克隆存储库的 InitContainer 中,然后将 EmptyDir 挂载到 Pod 的容器中。 |
|
| GlusterFS 代表共享 pod 生命周期的主机上的 Glusterfs 挂载。更多信息: https://examples.k8s.io/volumes/glusterfs/README.md |
|
| hostpath 代表主机机器上直接公开给容器的已存在的文件或目录。这通常用于系统代理或其他允许查看主机机器的特权事情。大多数容器都不需要这样做。更多信息: https://kubernetes.io/docs/concepts/storage/volumes#hostpath -- TODO (jonesdl)我们需要限制哪些人可以使用主机目录挂载,以及谁可以/不能将主机目录挂载为读/写。 |
|
| iSCSI 代表附加到 kubelet 主机机器的 ISCSI Disk 资源,然后公开给 pod。更多信息: https://examples.k8s.io/volumes/iscsi/README.md |
|
| 卷的名称。必须是 DNS_LABEL,且必须在 pod 中唯一。更多信息: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names |
|
| NFS 代表共享 pod 生命周期更多信息的主机上 NFS 挂载: https://kubernetes.io/docs/concepts/storage/volumes#nfs |
|
| persistentVolumeClaimVolumeSource 代表对同一命名空间中的 PersistentVolumeClaim 的引用。更多信息: https://kubernetes.io/docs/concepts/storage/persistent-volumes#persistentvolumeclaims |
|
| photonPersistentDisk 代表附加并挂载到 kubelets 主机上的 PhotonController 持久磁盘 |
|
| portworxVolume 代表附加并挂载到 kubelets 主机上的 portworx 卷 |
|
| 一个资源 secret、configmap 和 Downward API 中所有的项目项目 |
|
| quobyte 代表共享 pod 生命周期的主机上执行 Quobyte 挂载 |
|
| RBD 代表共享 pod 生命周期的主机上 Rados 块设备挂载。更多信息: https://examples.k8s.io/volumes/rbd/README.md |
|
| scaleIO 代表附加并挂载到 Kubernetes 节点上的 ScaleIO 持久性卷。 |
|
| Secret 代表应填充此卷的 secret。更多信息: https://kubernetes.io/docs/concepts/storage/volumes#secret |
|
| storageos 代表附加并挂载到 Kubernetes 节点上的 StorageOS 卷。 |
|
| vsphereVolume 代表附加并挂载到 kubelets 主机上的 vSphere 卷 |
11.1.262. .spec.volumes[].awsElasticBlockStore
- 描述
- awsElasticBlockStore 代表一个 AWS Disk 资源,附加到 kubelet 的主机机器,然后公开给 pod。更多信息: https://kubernetes.io/docs/concepts/storage/volumes#awselasticblockstore
- 类型
-
object
- 必填
-
volumeID
-
属性 | 类型 | 描述 |
---|---|---|
|
| fstype 是您要挂载的卷的文件系统类型。提示: 确保主机操作系统支持文件系统类型。示例:"ext4", "xfs", "ntfs"。如果未指定,则隐式推断为 "ext4"。更多信息: https://kubernetes.io/docs/concepts/storage/volumes#awselasticblockstore TODO:如何防止文件系统中的错误影响机器 |
|
| partition 是您要挂载的卷中的分区。如果省略,则默认使用卷名称来挂载。示例: 对于卷 /dev/sda1,您可以将分区指定为 "1"。同样,/dev/sda 的卷分区是"0" (或者您可以将属性留空)。 |
|
| readonly 值 true 将强制 VolumeMount 中的 readOnly 设置。更多信息: https://kubernetes.io/docs/concepts/storage/volumes#awselasticblockstore |
|
| VolumeId 是 AWS (Amazon EBS 卷)中持久磁盘资源的唯一 ID。更多信息: https://kubernetes.io/docs/concepts/storage/volumes#awselasticblockstore |
11.1.263. .spec.volumes[].azureDisk
- 描述
- azureDisk 代表主机上的 Azure Data Disk 挂载,并绑定到 pod。
- 类型
-
object
- 必填
-
diskName
-
diskURI
-
属性 | 类型 | 描述 |
---|---|---|
|
| cachingMode 是主机缓存模式: None、Read Only、Read Write。 |
|
| diskname 是 blob 存储中的数据磁盘的 Name |
|
| diskURI 是 blob 存储中的数据磁盘的 URI |
|
| fstype 是要挂载的 Filesystem 类型。必须是主机操作系统支持的文件系统类型。Ex. "ext4", "xfs", "ntfs".如果未指定,则隐式推断为 "ext4"。 |
|
| kind 预期值为 Shared: 每个存储帐户 Dedicated 有多个 blob 磁盘:每个存储帐户 Managed: azure managed data disk (only on managed availability set). 默认为 shared |
|
| readonly Defaults to false (read/write)。此处的 readonly 将强制 VolumeMount 中的 ReadOnly 设置。 |
11.1.264. .spec.volumes[].azureFile
- 描述
- azureFile 代表主机上的 Azure File Service 挂载,并绑定到 pod。
- 类型
-
object
- 必填
-
secretName
-
shareName
-
属性 | 类型 | 描述 |
---|---|---|
|
| readonly 默认为 false (读/写)。此处的 readonly 将强制 VolumeMount 中的 ReadOnly 设置。 |
|
| secretName 是包含 Azure Storage Account Name 和 Key 的 secret 名称 |
|
| sharename 是 azure 共享名称 |
11.1.265. .spec.volumes[].cephfs
- 描述
- CephFS 代表共享 pod 生命周期的主机上的 Ceph FS 挂载
- 类型
-
object
- 必填
-
monitor
-
属性 | 类型 | 描述 |
---|---|---|
|
| monitor 是必需的: monitor 是 Ceph 监视器更多信息的集合: https://examples.k8s.io/volumes/cephfs/README.md#how-to-use-it |
|
| 路径为可选:作为挂载的 root 使用,而不是完整的 Ceph 树,默认为 / |
|
| readonly 为 Optional: Defaults to false (read/write)。此处的 readonly 将强制 VolumeMount 中的 ReadOnly 设置。更多信息: https://examples.k8s.io/volumes/cephfs/README.md#how-to-use-it |
|
| secretfile 为 Optional: SecretFile 是用户密钥环的路径,默认为 /etc/ceph/user.secret 更多信息 :https://examples.k8s.io/volumes/cephfs/README.md#how-to-use-it |
|
| secretRef 为 Optional: SecretRef 对 User 的身份验证 secret 的引用,默认为空。更多信息: https://examples.k8s.io/volumes/cephfs/README.md#how-to-use-it |
|
| User 是可选的:用户是 rados 用户名,默认为 admin 更多信息: https://examples.k8s.io/volumes/cephfs/README.md#how-to-use-it |
11.1.266. .spec.volumes[].cephfs.secretRef
- 描述
- secretRef 为 Optional: SecretRef 对 User 的身份验证 secret 的引用,默认为空。更多信息: https://examples.k8s.io/volumes/cephfs/README.md#how-to-use-it
- 类型
-
object
属性 | 类型 | 描述 |
---|---|---|
|
|
引用的名称。有效地需要此字段,但因为允许向后兼容为空。这里具有空值的此类实例几乎是错误的。TODO:添加其他有用的字段。apiVersion、kind、uid?更多信息: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names TODO: 当 controller-gen 不需要 https://github.com/kubernetes-sigs/kubebuilder/issues/3896 时,Drop |
11.1.267. .spec.volumes[].cinder
- 描述
- Cinder 代表附加并挂载到 kubelet 主机机器上的 cinder 卷。更多信息: https://examples.k8s.io/mysql-cinder-pd/README.md
- 类型
-
object
- 必填
-
volumeID
-
属性 | 类型 | 描述 |
---|---|---|
|
| fstype 是要挂载的文件系统类型。必须是主机操作系统支持的文件系统类型。示例:"ext4", "xfs", "ntfs"。如果未指定,则隐式推断为 "ext4"。更多信息: https://examples.k8s.io/mysql-cinder-pd/README.md |
|
| readonly 默认为 false (读/写)。此处的 readonly 将强制 VolumeMount 中的 ReadOnly 设置。更多信息: https://examples.k8s.io/mysql-cinder-pd/README.md |
|
| secretRef 是可选的:指向包含用于连接到 OpenStack 的参数的 secret 对象。 |
|
| 用于识别 cinder 中的卷的 VolumeId。更多信息: https://examples.k8s.io/mysql-cinder-pd/README.md |
11.1.268. .spec.volumes[].cinder.secretRef
- 描述
- secretRef 是可选的:指向包含用于连接到 OpenStack 的参数的 secret 对象。
- 类型
-
object
属性 | 类型 | 描述 |
---|---|---|
|
|
引用的名称。有效地需要此字段,但因为允许向后兼容为空。这里具有空值的此类实例几乎是错误的。TODO:添加其他有用的字段。apiVersion、kind、uid?更多信息: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names TODO: 当 controller-gen 不需要 https://github.com/kubernetes-sigs/kubebuilder/issues/3896 时,Drop |
11.1.269. .spec.volumes[].configMap
- 描述
- ConfigMap 代表应填充此卷的 configMap
- 类型
-
object
属性 | 类型 | 描述 |
---|---|---|
|
| defaultMode 是可选的:默认用于在创建的文件上设置权限的模式位。必须是 0000 到 0777 之间的数值,或者 0 到 511 之间的十进制值。YAML 接受八进制和十进制值,JSON 需要模式位的十进制值。默认值为 0644。路径中的目录不受此设置的影响。这可能与影响文件模式的其他选项(如 fsGroup )冲突,结果可以是其他模式位。 |
|
| 如果未指定,则引用的 ConfigMap 的 Data 字段中每个键值对将投射到卷中,其名称是键,内容是值。如果指定,列出的键将投射到指定的路径中,并且不会出现未列出的键。如果指定了没有存在于 ConfigMap 中的键,则卷设置将失败,除非标记为可选。路径必须是相对的,且不能包含 '..' 路径,或者以 '..' 开始。 |
|
| 将字符串键映射到卷中的路径。 |
|
|
引用的名称。有效地需要此字段,但因为允许向后兼容为空。这里具有空值的此类实例几乎是错误的。TODO:添加其他有用的字段。apiVersion、kind、uid?更多信息: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names TODO: 当 controller-gen 不需要 https://github.com/kubernetes-sigs/kubebuilder/issues/3896 时,Drop |
|
| 可选指定是否必须定义 ConfigMap 还是其键 |
11.1.270. .spec.volumes[].configMap.items
- 描述
- 如果未指定,则引用的 ConfigMap 的 Data 字段中每个键值对将投射到卷中,其名称是键,内容是值。如果指定,列出的键将投射到指定的路径中,并且不会出现未列出的键。如果指定了没有存在于 ConfigMap 中的键,则卷设置将失败,除非标记为可选。路径必须是相对的,且不能包含 '..' 路径,或者以 '..' 开始。
- 类型
-
array
11.1.271. .spec.volumes[].configMap.items[]
- 描述
- 将字符串键映射到卷中的路径。
- 类型
-
object
- 必填
-
key
-
path
-
属性 | 类型 | 描述 |
---|---|---|
|
| key 是项目的关键。 |
|
| 模式为可选:用于设置此文件权限的模式位。必须是 0000 到 0777 之间的数值,或者 0 到 511 之间的十进制值。YAML 接受八进制和十进制值,JSON 需要模式位的十进制值。如果没有指定,则使用卷 defaultMode。这可能与影响文件模式的其他选项(如 fsGroup )冲突,结果可以是其他模式位。 |
|
| path 是将键映射到的文件的相对路径。可能不是绝对路径。不得包含路径元素 '..'。不得以字符串 '..' 开头。 |
11.1.272. .spec.volumes[].csi
- 描述
- CSI (Container Storage Interface)代表由特定外部 CSI 驱动程序(Beta 功能)处理的临时存储。
- 类型
-
object
- 必填
-
driver
-
属性 | 类型 | 描述 |
---|---|---|
|
| driver 是处理此卷的 CSI 驱动程序的名称。请参考您的 admin,了解集群中注册的正确名称。 |
|
| 要挂载的 fstype。Ex. "ext4", "xfs", "ntfs".如果没有提供,则会将空值传递给关联的 CSI 驱动程序,该驱动程序将决定要应用的默认文件系统。 |
|
| nodePublishSecretRef 是包含敏感信息的 secret 对象的引用,以传递给 CSI 驱动程序,以完成 CSI NodePublishVolume 和 NodeUnpublishVolume 调用。此字段是可选的,如果不需要 secret,则可能会为空。如果 secret 对象包含多个 secret,则会传递所有 secret 引用。 |
|
| readonly 为卷指定只读配置。默认为 false (读/写)。 |
|
| volumeAttributes 存储传递给 CSI 驱动程序的驱动程序特定属性。有关支持的值,请参阅驱动程序的文档。 |
11.1.273. .spec.volumes[].csi.nodePublishSecretRef
- 描述
- nodePublishSecretRef 是包含敏感信息的 secret 对象的引用,以传递给 CSI 驱动程序,以完成 CSI NodePublishVolume 和 NodeUnpublishVolume 调用。此字段是可选的,如果不需要 secret,则可能会为空。如果 secret 对象包含多个 secret,则会传递所有 secret 引用。
- 类型
-
object
属性 | 类型 | 描述 |
---|---|---|
|
|
引用的名称。有效地需要此字段,但因为允许向后兼容为空。这里具有空值的此类实例几乎是错误的。TODO:添加其他有用的字段。apiVersion、kind、uid?更多信息: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names TODO: 当 controller-gen 不需要 https://github.com/kubernetes-sigs/kubebuilder/issues/3896 时,Drop |
11.1.274. .spec.volumes[].downwardAPI
- 描述
- downwardAPI 代表应填充此卷的 pod 的 Downward API
- 类型
-
object
属性 | 类型 | 描述 |
---|---|---|
|
| 可选:默认在创建的文件上使用模式位。必须是 Optional: 模式位,用于默认对创建的文件设置权限。必须是 0000 到 0777 之间的数值,或者 0 到 511 之间的十进制值。YAML 接受八进制和十进制值,JSON 需要模式位的十进制值。默认值为 0644。路径中的目录不受此设置的影响。这可能与影响文件模式的其他选项(如 fsGroup )冲突,结果可以是其他模式位。 |
|
| items 是 Downward API 卷文件的列表 |
|
| DownwardAPIVolumeFile 代表创建包含 pod 字段的文件的信息 |
11.1.275. .spec.volumes[].downwardAPI.items
- 描述
- items 是 Downward API 卷文件的列表
- 类型
-
array
11.1.276. .spec.volumes[].downwardAPI.items[]
- 描述
- DownwardAPIVolumeFile 代表创建包含 pod 字段的文件的信息
- 类型
-
object
- 必填
-
path
-
属性 | 类型 | 描述 |
---|---|---|
|
| 必需:支持选择 pod 的字段:只支持注解、标签、名称、命名空间和 uid。 |
|
| 可选:用于设置此文件权限的模式位,必须是 0000 到 0777 之间的数值,或 0 到 511 之间的十进制值。YAML 接受八进制和十进制值,JSON 需要模式位的十进制值。如果没有指定,则使用卷 defaultMode。这可能与影响文件模式的其他选项(如 fsGroup )冲突,结果可以是其他模式位。 |
|
| 必需:Path 是要创建的文件的相对路径名称。不能是绝对的,也不能包含 '..' 路径。必须经过 utf-8 编码。相对路径的第一个项不能以 '..' 开头。 |
|
| 选择容器的资源:目前只支持资源限值和请求(limits.cpu、limits.memory、requests.cpu 和 requests.memory)。 |
11.1.277. .spec.volumes[].downwardAPI.items[].fieldRef
- 描述
- 必需:支持选择 pod 的字段:只支持注解、标签、名称、命名空间和 uid。
- 类型
-
object
- 必填
-
fieldPath
-
属性 | 类型 | 描述 |
---|---|---|
|
| 模式的版本是按术语编写的 FieldPath,默认为 "v1"。 |
|
| 在指定 API 版本中选择的字段路径。 |
11.1.278. .spec.volumes[].downwardAPI.items[].resourceFieldRef
- 描述
- 选择容器的资源:目前只支持资源限值和请求(limits.cpu、limits.memory、requests.cpu 和 requests.memory)。
- 类型
-
object
- 必填
-
resource
-
属性 | 类型 | 描述 |
---|---|---|
|
| 容器名称:卷需要,对于 env vars是可选的 |
|
| 指定公开资源的输出格式,默认为 "1" |
|
| 必需:要选择的资源 |
11.1.279. .spec.volumes[].emptyDir
- 描述
- emptyDir 代表共享 pod 生命周期的临时目录。更多信息: https://kubernetes.io/docs/concepts/storage/volumes#emptydir
- 类型
-
object
属性 | 类型 | 描述 |
---|---|---|
|
| Medium 代表存储介质类型应支持这个目录。默认值为 "",这意味着使用节点的默认介质。必须是空字符串(默认)或 Memory。更多信息: https://kubernetes.io/docs/concepts/storage/volumes#emptydir |
|
| sizeLimit 是这个 EmptyDir 卷所需的本地存储总量。大小限制也适用于内存介质。内存用量的最大使用量为此处指定的 SizeLimit 和 pod 中所有容器的内存限值总和。默认值为 nil,这意味着限制未定义。更多信息: https://kubernetes.io/docs/concepts/storage/volumes#emptydir |
11.1.280. .spec.volumes[].ephemeral
- 描述
ephemeral 代表由集群存储驱动程序处理的卷。卷的生命周期与定义它的 pod 关联 - 将在 pod 启动前创建,并在 pod 被删除时删除。
如果 pod 运行(如需要从快照或容量跟踪中恢复)正常卷时,才需要这个卷。c)通过存储类指定存储驱动程序,以及 d)存储驱动程序支持通过 PersistentVolumeClaim 进行动态卷置备(请参阅 EphemeralVolumeSource 以了解有关这个卷类型和 PersistentVolumeClaim 间的连接的更多信息。
对于保留的时间超过单个 pod 的生命周期,使用 PersistentVolumeClaim 或特定于供应商的 API 之一。
如果使用 CSI 驱动程序,使用 CSI 驱动程序来轻量级本地临时卷 - 如需更多信息,请参阅驱动程序文档。
pod 可以同时使用两种类型的临时卷和持久性卷。
- 类型
-
object
属性 | 类型 | 描述 |
---|---|---|
|
|
将用于创建独立 PVC 来置备卷。嵌入此 EphemeralVolumeSource 的 pod 将是 PVC 的所有者,即 PVC 将与 pod 一起删除。PVC 的名称将是 < 具有名称不归 pod 所有的现有 PVC 将不会 用于 pod,以避免错误地使用不相关的卷。然后,启动 pod 会被阻断,直到删除不相关的 PVC。如果 pod 使用这样的预先创建的 PVC,则必须在 pod 存在后使用对 pod 的所有者引用来更新 PVC。通常,这应该不需要,但手动重建一个有问题的集群时可能会很有用。 此字段是只读的,Kubernetes 在创建后不会对 PVC 进行任何更改。 必需,不能是 nil。 |
11.1.281. .spec.volumes[].ephemeral.volumeClaimTemplate
- 描述
将用于创建独立 PVC 来置备卷。嵌入此 EphemeralVolumeSource 的 pod 将是 PVC 的所有者,即 PVC 将与 pod 一起删除。PVC 的名称将是 <
pod name>-<volume name>
,其中<volume
name> 是PodSpec.Volumes
数组条目中的名称。如果串联的名称对 PVC 无效(例如,太长),pod 验证将拒绝 pod。具有名称不归 pod 所有的现有 PVC 将不会 用于 pod,以避免错误地使用不相关的卷。然后,启动 pod 会被阻断,直到删除不相关的 PVC。如果 pod 使用这样的预先创建的 PVC,则必须在 pod 存在后使用对 pod 的所有者引用来更新 PVC。通常,这应该不需要,但手动重建一个有问题的集群时可能会很有用。
此字段是只读的,Kubernetes 在创建后不会对 PVC 进行任何更改。
必需,不能是 nil。
- 类型
-
object
- 必填
-
spec
-
属性 | 类型 | 描述 |
---|---|---|
|
| 可能包含创建 PVC 时将复制到 PVC 的标签和注解。不允许其他字段,并在验证过程中被拒绝。 |
|
| PersistentVolumeClaim 的规格。整个内容保持不变复制到从该模板创建的 PVC 中。PersistentVolumeClaim 中与 相同的字段也有效。 |
11.1.282. .spec.volumes[].ephemeral.volumeClaimTemplate.metadata
- 描述
- 可能包含创建 PVC 时将复制到 PVC 的标签和注解。不允许其他字段,并在验证过程中被拒绝。
- 类型
-
object
11.1.283. .spec.volumes[].ephemeral.volumeClaimTemplate.spec
- 描述
- PersistentVolumeClaim 的规格。整个内容保持不变复制到从该模板创建的 PVC 中。PersistentVolumeClaim 中与 相同的字段也有效。
- 类型
-
object
属性 | 类型 | 描述 |
---|---|---|
|
| accessModes 包含卷应具有所需的访问模式。更多信息: https://kubernetes.io/docs/concepts/storage/persistent-volumes#access-modes-1 |
|
| Datasource 字段可以用来指定:* 一个现有的 VolumeSnapshot 对象(snapshot.storage.k8s.io/VolumeSnapshot)* 一个现有的 PVC (PersistentVolumeClaim),如果置备程序或外部控制器可以支持指定的数据源,它将基于指定数据源的内容创建一个新卷。当启用 AnyVolumeDataSource 功能门时,dataSource 内容将复制到 dataSourceRef 中,当未指定 dataSourceRef.namespace 时,dataSourceRef 内容将复制到 dataSource 中。如果指定了 namespace,则不会将 dataSourceRef 复制到 dataSource 中。 |
|
| 如果需要非空卷,则 dataSourceRef 指定要使用数据填充卷的对象。这可以是来自非空 API 组(非核心对象)或 PersistentVolumeClaim 对象的任何对象。当指定对象的类型与某些安装的卷填充或动态置备程序匹配时,卷绑定才会成功。此字段将替换 dataSource 字段的功能,如果两个字段都不是空的,则它们必须具有相同的值。为了向后兼容,当命名空间没有在 dataSourceRef 中指定时,如果其中一个为空,则两个字段(dataSource 和 dataSourceRef)都会自动设置为相同的值,另一个是非空的。当在 dataSourceRef 中指定 namespace 时,dataSource 不设置为相同的值,必须为空。dataSource 和 dataSourceRef 之间有三个重要区别:* While dataSource 只允许两种特定类型的对象,dataSourceRef 允许任何非核心对象,以及 PersistentVolumeClaim 对象。* 虽然 dataSource 忽略了禁止的值(丢弃它们),dataSourceRef 保留所有值,并在指定禁止的值时生成错误。* 虽然 dataSource 只允许本地对象,dataSourceRef 允许任何命名空间中的对象。(beta)使用此字段需要启用 AnyVolumeDataSource 功能门。(alpha)使用 dataSourceRef 的 namespace 字段需要启用 CrossNamespaceVolumeDataSource 功能门。 |
|
| resources 代表卷应具有的最小资源。如果启用了 RecoverVolumeExpansionFailure 功能,用户可以指定小于之前值的资源要求,但仍必须高于声明的 status 字段中记录的容量。更多信息: https://kubernetes.io/docs/concepts/storage/persistent-volumes#resources |
|
| selector 是要考虑绑定的卷的标签查询。 |
|
| storageClassName 是声明所需的 StorageClass 的名称。更多信息: https://kubernetes.io/docs/concepts/storage/persistent-volumes#class-1 |
|
| volumeAttributesClassName 可用于设置此声明使用的 VolumeAttributesClass。如果指定,CSI 驱动程序将使用对应的 VolumeAttributesClass 中定义的属性创建或更新卷。这有一个不同于 storageClassName 的目的,可在创建声明后更改。空字符串表示,不会将 VolumeAttributesClass 应用到声明,但不允许在设置后将此字段重置为空字符串。如果未指定,并且 PersistentVolumeClaim 为 unbound,则 persistentvolume 控制器将设置默认的 VolumeAttributesClass (如果存在)。如果 volumeAttributesClass 引用的资源不存在,则这个 PersistentVolumeClaim 将被设置为 Pending 状态,如 modifyVolumeStatus 字段反映,直到资源存在为止。更多信息: https://kubernetes.io/docs/concepts/storage/volume-attributes-classes/ (Alpha)使用此字段需要启用 VolumeAttributesClass 功能门。 |
|
| volumeMode 定义声明需要哪些卷类型。当未包含在 claim spec 中时,文件系统的值会被表示。 |
|
| volumeName 是对此声明支持的 PersistentVolume 的绑定引用。 |
11.1.284. .spec.volumes[].ephemeral.volumeClaimTemplate.spec.dataSource
- 描述
- Datasource 字段可以用来指定:* 一个现有的 VolumeSnapshot 对象(snapshot.storage.k8s.io/VolumeSnapshot)* 一个现有的 PVC (PersistentVolumeClaim),如果置备程序或外部控制器可以支持指定的数据源,它将基于指定数据源的内容创建一个新卷。当启用 AnyVolumeDataSource 功能门时,dataSource 内容将复制到 dataSourceRef 中,当未指定 dataSourceRef.namespace 时,dataSourceRef 内容将复制到 dataSource 中。如果指定了 namespace,则不会将 dataSourceRef 复制到 dataSource 中。
- 类型
-
object
- 必填
-
kind
-
name
-
属性 | 类型 | 描述 |
---|---|---|
|
| APIGroup 是所引用资源的组。如果没有指定 APIGroup,则指定的 Kind 必须位于 core API 组中。对于任何其他第三方类型,需要 APIGroup。 |
|
| kind 是被引用的资源类型 |
|
| name 是被引用的资源的名称 |
11.1.285. .spec.volumes[].ephemeral.volumeClaimTemplate.spec.dataSourceRef
- 描述
- 如果需要非空卷,则 dataSourceRef 指定要使用数据填充卷的对象。这可以是来自非空 API 组(非核心对象)或 PersistentVolumeClaim 对象的任何对象。当指定对象的类型与某些安装的卷填充或动态置备程序匹配时,卷绑定才会成功。此字段将替换 dataSource 字段的功能,如果两个字段都不是空的,则它们必须具有相同的值。为了向后兼容,当命名空间没有在 dataSourceRef 中指定时,如果其中一个为空,则两个字段(dataSource 和 dataSourceRef)都会自动设置为相同的值,另一个是非空的。当在 dataSourceRef 中指定 namespace 时,dataSource 不设置为相同的值,必须为空。dataSource 和 dataSourceRef 之间有三个重要区别:* While dataSource 只允许两种特定类型的对象,dataSourceRef 允许任何非核心对象,以及 PersistentVolumeClaim 对象。* 虽然 dataSource 忽略了禁止的值(丢弃它们),dataSourceRef 保留所有值,并在指定禁止的值时生成错误。* 虽然 dataSource 只允许本地对象,dataSourceRef 允许任何命名空间中的对象。(beta)使用此字段需要启用 AnyVolumeDataSource 功能门。(alpha)使用 dataSourceRef 的 namespace 字段需要启用 CrossNamespaceVolumeDataSource 功能门。
- 类型
-
object
- 必填
-
kind
-
name
-
属性 | 类型 | 描述 |
---|---|---|
|
| APIGroup 是所引用资源的组。如果没有指定 APIGroup,则指定的 Kind 必须位于 core API 组中。对于任何其他第三方类型,需要 APIGroup。 |
|
| kind 是被引用的资源类型 |
|
| name 是被引用的资源的名称 |
|
| 命名空间是被引用的资源的命名空间,请注意,当指定命名空间时,引用命名空间中需要一个 gateway.networking.k8s.io/ReferenceGrant 对象来允许该命名空间的所有者接受引用。详情请查看 ReferenceGrant 文档。(alpha)此字段需要启用 CrossNamespaceVolumeDataSource 功能门。 |
11.1.286. .spec.volumes[].ephemeral.volumeClaimTemplate.spec.resources
- 描述
- resources 代表卷应具有的最小资源。如果启用了 RecoverVolumeExpansionFailure 功能,用户可以指定小于之前值的资源要求,但仍必须高于声明的 status 字段中记录的容量。更多信息: https://kubernetes.io/docs/concepts/storage/persistent-volumes#resources
- 类型
-
object
属性 | 类型 | 描述 |
---|---|---|
|
| 限制描述了允许的最大计算资源量。更多信息: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/ |
|
| Requests 描述了所需的最少计算资源。如果容器省略了 Requests,则默认为 Limits (如果明确指定),否则默认为实现定义的值。请求不能超过限值。更多信息: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/ |
11.1.287. .spec.volumes[].ephemeral.volumeClaimTemplate.spec.selector
- 描述
- selector 是要考虑绑定的卷的标签查询。
- 类型
-
object
属性 | 类型 | 描述 |
---|---|---|
|
| matchExpressions 是标签选择器要求列表。要求的逻辑关系是 AND。 |
|
| 标签选择器要求是一个选择器,其中包含与键和值相关的值、键和值。 |
|
| matchLabels 是 {key,value} 对的映射。MatchLabels 映射中的单个 {key,value} 等同于 matchExpressions 的一个元素,其 key 字段是 "key",运算符是 "In",值数组仅包含 "value"。要求的逻辑关系是 AND。 |
11.1.288. .spec.volumes[].ephemeral.volumeClaimTemplate.spec.selector.matchExpressions
- 描述
- matchExpressions 是标签选择器要求列表。要求的逻辑关系是 AND。
- 类型
-
数组
11.1.289. .spec.volumes[].ephemeral.volumeClaimTemplate.spec.selector.matchExpressions[]
- 描述
- 标签选择器要求是一个选择器,其中包含与键和值相关的值、键和值。
- 类型
-
object
- 必填
-
key
-
operator
-
属性 | 类型 | 描述 |
---|---|---|
|
| key 是选择器应用到的标签键。 |
|
| 运算符代表一个键与一组值的关系。有效的运算符是 In、NotIn、Exists 和 DoesNotExist。 |
|
| 值是字符串值的数组。如果运算符是 In 或 NotIn,则值数组必须是非空的。如果运算符是 Exists 或 DoesNotExist,则值数组必须为空。这个数组会在策略性合并补丁中被替换。 |
11.1.290. .spec.volumes[].fc
- 描述
- FC 代表附加到 kubelet 主机机器的光纤通道资源,然后公开给 pod。
- 类型
-
object
属性 | 类型 | 描述 |
---|---|---|
|
| fstype 是要挂载的文件系统类型。必须是主机操作系统支持的文件系统类型。Ex. "ext4", "xfs", "ntfs".如果未指定,则隐式推断为 "ext4"。TODO:如何防止文件系统中的错误破坏计算机 |
|
| LUN 是可选的:FC 目标 lun 号 |
|
| readonly 为 Optional: Defaults to false (read/write)。此处的 readonly 将强制 VolumeMount 中的 ReadOnly 设置。 |
|
| targetWWNs 是可选:FC 目标全球名称(WWN) |
|
| wwids 可选:FC 卷全局范围标识符(wwids) Either wwids 或 targetWWN 和 lun 的组合必须被设置,但不能同时设置。 |
11.1.291. .spec.volumes[].flexVolume
- 描述
- FlexVolume 代表使用基于 exec 的插件置备的/附加的通用卷资源。
- 类型
-
object
- 必填
-
driver
-
属性 | 类型 | 描述 |
---|---|---|
|
| driver 是用于此卷的驱动程序的名称。 |
|
| fstype 是要挂载的文件系统类型。必须是主机操作系统支持的文件系统类型。Ex. "ext4", "xfs", "ntfs".默认文件系统依赖于 FlexVolume 脚本。 |
|
| 选项为 Optional:此字段包含额外的命令选项(若有)。 |
|
| readonly 为 Optional: 默认为 false (读/写)。此处的 readonly 将强制 VolumeMount 中的 ReadOnly 设置。 |
|
| secretRef 是 Optional: secretRef 引用了包含敏感信息的 secret 对象,以传递给插件脚本。如果没有指定 secret 对象,这可能为空。如果 secret 对象包含多个 secret,则所有 secret 都会传递给插件脚本。 |
11.1.292. .spec.volumes[].flexVolume.secretRef
- 描述
- secretRef 是 Optional: secretRef 引用了包含敏感信息的 secret 对象,以传递给插件脚本。如果没有指定 secret 对象,这可能为空。如果 secret 对象包含多个 secret,则所有 secret 都会传递给插件脚本。
- 类型
-
object
属性 | 类型 | 描述 |
---|---|---|
|
|
引用的名称。有效地需要此字段,但因为允许向后兼容为空。这里具有空值的此类实例几乎是错误的。TODO:添加其他有用的字段。apiVersion、kind、uid?更多信息: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names TODO: 当 controller-gen 不需要 https://github.com/kubernetes-sigs/kubebuilder/issues/3896 时,Drop |
11.1.293. .spec.volumes[].flocker
- 描述
- flocker 代表附加到 kubelet 主机机器的 Flocker 卷。这取决于正在运行的 Flocker 控制服务
- 类型
-
object
属性 | 类型 | 描述 |
---|---|---|
|
| datasetName 是数据存储为 Flocker dataset 上的 metadata → name 的 Name,应被视为已弃用 |
|
| datasetUUID 是 dataset 的 UUID。这是 Flocker 数据集的唯一标识符 |
11.1.294. .spec.volumes[].gcePersistentDisk
- 描述
- gcePersistentDisk 代表一个 GCE Disk 资源,该资源附加到 kubelet 的主机机器,然后公开给 pod。更多信息: https://kubernetes.io/docs/concepts/storage/volumes#gcepersistentdisk
- 类型
-
object
- 必填
-
pdName
-
属性 | 类型 | 描述 |
---|---|---|
|
| fstype 是您要挂载的卷的文件系统类型。提示: 确保主机操作系统支持文件系统类型。示例:"ext4", "xfs", "ntfs"。如果未指定,则隐式推断为 "ext4"。更多信息: https://kubernetes.io/docs/concepts/storage/volumes#gcepersistentdisk TODO:如何防止文件系统中的错误影响机器 |
|
| partition 是您要挂载的卷中的分区。如果省略,则默认使用卷名称来挂载。示例: 对于卷 /dev/sda1,您可以将分区指定为 "1"。同样,/dev/sda 的卷分区是"0" (或者您可以将属性留空)。更多信息: https://kubernetes.io/docs/concepts/storage/volumes#gcepersistentdisk |
|
| pdName 是 GCE 中的 PD 资源的唯一名称。用于识别 GCE 中的磁盘。更多信息: https://kubernetes.io/docs/concepts/storage/volumes#gcepersistentdisk |
|
| 此处的 readonly 将强制 VolumeMount 中的 ReadOnly 设置。默认为false。更多信息: https://kubernetes.io/docs/concepts/storage/volumes#gcepersistentdisk |
11.1.295. .spec.volumes[].gitRepo
- 描述
- gitRepo 代表特定修订版本中的 git 存储库。DEPRECATED: GitRepo 已被弃用。要使用 git 存储库置备容器,请将 EmptyDir 挂载到使用 git 克隆存储库的 InitContainer 中,然后将 EmptyDir 挂载到 Pod 的容器中。
- 类型
-
object
- 必填
-
软件仓库
-
属性 | 类型 | 描述 |
---|---|---|
|
| directory 是目标目录名称。不得包含或以 '..' 开头。如果提供了 '.',则卷目录将是 git 存储库。否则,如果指定,卷将在带有给定名称的子目录中包含 git 存储库。 |
|
| repository 是 URL |
|
| revision 是指定修订版本的提交哈希。 |
11.1.296. .spec.volumes[].glusterfs
- 描述
- GlusterFS 代表共享 pod 生命周期的主机上的 Glusterfs 挂载。更多信息: https://examples.k8s.io/volumes/glusterfs/README.md
- 类型
-
object
- 必填
-
端点
-
path
-
属性 | 类型 | 描述 |
---|---|---|
|
| 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 |
11.1.297. .spec.volumes[].hostPath
- 描述
- hostpath 代表主机机器上直接公开给容器的已存在的文件或目录。这通常用于系统代理或其他允许查看主机机器的特权事情。大多数容器都不需要这样做。更多信息: https://kubernetes.io/docs/concepts/storage/volumes#hostpath -- TODO (jonesdl)我们需要限制哪些人可以使用主机目录挂载,以及谁可以/不能将主机目录挂载为读/写。
- 类型
-
object
- 必填
-
path
-
属性 | 类型 | 描述 |
---|---|---|
|
| 主机上目录的路径。如果路径是符号链接,它将遵循指向实际路径的链接。更多信息: https://kubernetes.io/docs/concepts/storage/volumes#hostpath |
|
| HostPath Volume 默认为 "" 更多信息: https://kubernetes.io/docs/concepts/storage/volumes#hostpath |
11.1.298. .spec.volumes[].iscsi
- 描述
- iSCSI 代表附加到 kubelet 主机机器的 ISCSI Disk 资源,然后公开给 pod。更多信息: https://examples.k8s.io/volumes/iscsi/README.md
- 类型
-
object
- 必填
-
iqn
-
lun
-
targetPortal
-
属性 | 类型 | 描述 |
---|---|---|
|
| chapAuthDiscovery 定义是否支持 iSCSI Discovery CHAP 身份验证 |
|
| chapAuthSession 定义是否支持 iSCSI 会话 CHAP 身份验证 |
|
| fstype 是您要挂载的卷的文件系统类型。提示: 确保主机操作系统支持文件系统类型。示例:"ext4", "xfs", "ntfs"。如果未指定,则隐式推断为 "ext4"。更多信息: https://kubernetes.io/docs/concepts/storage/volumes#iscsi TODO:如何防止文件系统中的错误影响机器 |
|
| initiatorname 是自定义 iSCSI 启动器名称。如果同时使用 iscsiInterface 指定 initiatorName,则会为连接创建新的 iSCSI 接口 <target portal>:<volume name>。 |
|
| IQN 是目标 iSCSI 限定名称。 |
|
| iscsiInterface 是使用 iSCSI 传输的接口名称。默认为 'default'(tcp)。 |
|
| LUN 表示 iSCSI 目标 Lun 编号。 |
|
| 门户是 iSCSI 目标门户列表。如果端口不是默认值(通常为 TCP 端口 860 和 3260),则门户是 IP 或 ip_addr:port。 |
|
| 此处的 readonly 将强制 VolumeMount 中的 ReadOnly 设置。默认为false。 |
|
| secretRef 是 iSCSI 目标和发起方身份验证的 CHAP Secret |
|
| targetPortal 是 iSCSI 目标门户。如果端口不是默认值(通常为 TCP 端口 860 和 3260),则门户是 IP 或 ip_addr:port。 |
11.1.299. .spec.volumes[].iscsi.secretRef
- 描述
- secretRef 是 iSCSI 目标和发起方身份验证的 CHAP Secret
- 类型
-
object
属性 | 类型 | 描述 |
---|---|---|
|
|
引用的名称。有效地需要此字段,但因为允许向后兼容为空。这里具有空值的此类实例几乎是错误的。TODO:添加其他有用的字段。apiVersion、kind、uid?更多信息: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names TODO: 当 controller-gen 不需要 https://github.com/kubernetes-sigs/kubebuilder/issues/3896 时,Drop |
11.1.300. .spec.volumes[].nfs
- 描述
- NFS 代表共享 pod 生命周期更多信息的主机上 NFS 挂载: https://kubernetes.io/docs/concepts/storage/volumes#nfs
- 类型
-
object
- 必填
-
path
-
server
-
属性 | 类型 | 描述 |
---|---|---|
|
| NFS 服务器导出的路径。更多信息: https://kubernetes.io/docs/concepts/storage/volumes#nfs |
|
| 此处的只读将强制使用只读权限挂载 NFS 导出。默认为false。更多信息: https://kubernetes.io/docs/concepts/storage/volumes#nfs |
|
| server 是 NFS 服务器的主机名或 IP 地址。更多信息: https://kubernetes.io/docs/concepts/storage/volumes#nfs |
11.1.301. .spec.volumes[].persistentVolumeClaim
- 描述
- persistentVolumeClaimVolumeSource 代表对同一命名空间中的 PersistentVolumeClaim 的引用。更多信息: https://kubernetes.io/docs/concepts/storage/persistent-volumes#persistentvolumeclaims
- 类型
-
object
- 必填
-
claimName
-
属性 | 类型 | 描述 |
---|---|---|
|
| claimName 是与使用这个卷的 pod 相同的命名空间中的 PersistentVolumeClaim 的名称。更多信息: https://kubernetes.io/docs/concepts/storage/persistent-volumes#persistentvolumeclaims |
|
| readonly 将强制 VolumeMount 中的 ReadOnly 设置。默认 false。 |
11.1.302. .spec.volumes[].photonPersistentDisk
- 描述
- photonPersistentDisk 代表附加并挂载到 kubelets 主机上的 PhotonController 持久磁盘
- 类型
-
object
- 必填
-
pdID
-
属性 | 类型 | 描述 |
---|---|---|
|
| fstype 是要挂载的文件系统类型。必须是主机操作系统支持的文件系统类型。Ex. "ext4", "xfs", "ntfs".如果未指定,则隐式推断为 "ext4"。 |
|
| pdID 是标识 Photon Controller 持久磁盘的 ID |
11.1.303. .spec.volumes[].portworxVolume
- 描述
- portworxVolume 代表附加并挂载到 kubelets 主机上的 portworx 卷
- 类型
-
object
- 必填
-
volumeID
-
属性 | 类型 | 描述 |
---|---|---|
|
| fstype 代表要挂载的文件系统类型必须是主机操作系统支持的文件系统类型。Ex. "ext4", "xfs".如果未指定,则隐式推断为 "ext4"。 |
|
| readonly 默认为 false (读/写)。此处的 readonly 将强制 VolumeMount 中的 ReadOnly 设置。 |
|
| VolumeId 唯一标识 Portworx 卷 |
11.1.304. .spec.volumes[].projected
- 描述
- 一个资源 secret、configmap 和 Downward API 中所有的项目项目
- 类型
-
object
属性 | 类型 | 描述 |
---|---|---|
|
| defaultMode 是默认用于在创建的文件上设置权限的模式位。必须是 0000 到 0777 之间的数值,或者 0 到 511 之间的十进制值。YAML 接受八进制和十进制值,JSON 需要模式位的十进制值。路径中的目录不受此设置的影响。这可能与影响文件模式的其他选项(如 fsGroup )冲突,结果可以是其他模式位。 |
|
| sources 是卷投射列表 |
|
| 可投射以及其他支持的卷类型的预测 |
11.1.305. .spec.volumes[].projected.sources
- 描述
- sources 是卷投射列表
- 类型
-
array
11.1.306. .spec.volumes[].projected.sources[]
- 描述
- 可投射以及其他支持的卷类型的预测
- 类型
-
object
属性 | 类型 | 描述 |
---|---|---|
|
|
ClusterTrustBundle 允许 pod 访问自动更新文件中的 ClusterTrustBundle 对象的 alpha,由 ClusterTrustBundleProjection 功能门实现。 ClusterTrustBundle 对象可以按名称选择,或者通过 signer 名称和标签选择器的组合来选择。 kubelet 对写入 pod 文件系统的 PEM 内容进行积极规范化。esoteric PEM 功能(如 inter-block 注释和块标头)将被剥离。证书会被重复数据删除。文件中的证书排序是任意的,Kubelet 可能会随时间更改顺序。 |
|
| 有关项目的 configMap 数据的 ConfigMap 信息 |
|
| downwardAPI 有关项目的 downwardAPI 数据的信息 |
|
| 有关项目的 secret 数据的 secret 信息 |
|
| serviceAccountToken 是与项目的 serviceAccountToken 数据相关的信息 |
11.1.307. .spec.volumes[].projected.sources[].clusterTrustBundle
- 描述
ClusterTrustBundle 允许 pod 访问自动更新文件中的 ClusterTrustBundle 对象的
.spec.trustBundle
字段。alpha,由 ClusterTrustBundleProjection 功能门实现。
ClusterTrustBundle 对象可以按名称选择,或者通过 signer 名称和标签选择器的组合来选择。
kubelet 对写入 pod 文件系统的 PEM 内容进行积极规范化。esoteric PEM 功能(如 inter-block 注释和块标头)将被剥离。证书会被重复数据删除。文件中的证书排序是任意的,Kubelet 可能会随时间更改顺序。
- 类型
-
object
- 必填
-
path
-
属性 | 类型 | 描述 |
---|---|---|
|
| 选择与这个标签选择器匹配的所有 ClusterTrustBundles。仅在设置了 signerName 时生效。使用名称互斥器.如果未设置,则解释为"匹配任何内容"。如果设置但为空,则解释为"匹配所有内容"。 |
|
| 按对象名称选择单个 ClusterTrustBundle。与 signerName 和 labelSelector 相互排斥. |
|
| 如果为 true,如果引用的 ClusterTrustBundle 不可用,则不阻止 pod 启动。如果使用 name,则允许命名 ClusterTrustBundle 不存在。如果使用 signerName,则允许 signerName 和 labelSelector 的组合匹配零 ClusterTrustBundles。 |
|
| 卷根的相对路径以写入捆绑包。 |
|
| 选择与这个签名者名称匹配的所有 ClusterTrustBundles。使用名称互斥器.所有所选 ClusterTrustBundles 的内容将统一并去除重复数据。 |
11.1.308. .spec.volumes[].projected.sources[].clusterTrustBundle.labelSelector
- 描述
- 选择与这个标签选择器匹配的所有 ClusterTrustBundles。仅在设置了 signerName 时生效。使用名称互斥器.如果未设置,则解释为"匹配任何内容"。如果设置但为空,则解释为"匹配所有内容"。
- 类型
-
object
属性 | 类型 | 描述 |
---|---|---|
|
| matchExpressions 是标签选择器要求列表。要求的逻辑关系是 AND。 |
|
| 标签选择器要求是一个选择器,其中包含与键和值相关的值、键和值。 |
|
| matchLabels 是 {key,value} 对的映射。MatchLabels 映射中的单个 {key,value} 等同于 matchExpressions 的一个元素,其 key 字段是 "key",运算符是 "In",值数组仅包含 "value"。要求的逻辑关系是 AND。 |
11.1.309. .spec.volumes[].projected.sources[].clusterTrustBundle.labelSelector.matchExpressions
- 描述
- matchExpressions 是标签选择器要求列表。要求的逻辑关系是 AND。
- 类型
-
数组
11.1.310. .spec.volumes[].projected.sources[].clusterTrustBundle.labelSelector.matchExpressions[]
- 描述
- 标签选择器要求是一个选择器,其中包含与键和值相关的值、键和值。
- 类型
-
object
- 必填
-
key
-
operator
-
属性 | 类型 | 描述 |
---|---|---|
|
| key 是选择器应用到的标签键。 |
|
| 运算符代表一个键与一组值的关系。有效的运算符是 In、NotIn、Exists 和 DoesNotExist。 |
|
| 值是字符串值的数组。如果运算符是 In 或 NotIn,则值数组必须是非空的。如果运算符是 Exists 或 DoesNotExist,则值数组必须为空。这个数组会在策略性合并补丁中被替换。 |
11.1.311. .spec.volumes[].projected.sources[].configMap
- 描述
- 有关项目的 configMap 数据的 ConfigMap 信息
- 类型
-
object
属性 | 类型 | 描述 |
---|---|---|
|
| 如果未指定,则引用的 ConfigMap 的 Data 字段中每个键值对将投射到卷中,其名称是键,内容是值。如果指定,列出的键将投射到指定的路径中,并且不会出现未列出的键。如果指定了没有存在于 ConfigMap 中的键,则卷设置将失败,除非标记为可选。路径必须是相对的,且不能包含 '..' 路径,或者以 '..' 开始。 |
|
| 将字符串键映射到卷中的路径。 |
|
|
引用的名称。有效地需要此字段,但因为允许向后兼容为空。这里具有空值的此类实例几乎是错误的。TODO:添加其他有用的字段。apiVersion、kind、uid?更多信息: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names TODO: 当 controller-gen 不需要 https://github.com/kubernetes-sigs/kubebuilder/issues/3896 时,Drop |
|
| 可选指定是否必须定义 ConfigMap 还是其键 |
11.1.312. .spec.volumes[].projected.sources[].configMap.items
- 描述
- 如果未指定,则引用的 ConfigMap 的 Data 字段中每个键值对将投射到卷中,其名称是键,内容是值。如果指定,列出的键将投射到指定的路径中,并且不会出现未列出的键。如果指定了没有存在于 ConfigMap 中的键,则卷设置将失败,除非标记为可选。路径必须是相对的,且不能包含 '..' 路径,或者以 '..' 开始。
- 类型
-
array
11.1.313. .spec.volumes[].projected.sources[].configMap.items[]
- 描述
- 将字符串键映射到卷中的路径。
- 类型
-
object
- 必填
-
key
-
path
-
属性 | 类型 | 描述 |
---|---|---|
|
| key 是项目的关键。 |
|
| 模式为可选:用于设置此文件权限的模式位。必须是 0000 到 0777 之间的数值,或者 0 到 511 之间的十进制值。YAML 接受八进制和十进制值,JSON 需要模式位的十进制值。如果没有指定,则使用卷 defaultMode。这可能与影响文件模式的其他选项(如 fsGroup )冲突,结果可以是其他模式位。 |
|
| path 是将键映射到的文件的相对路径。可能不是绝对路径。不得包含路径元素 '..'。不得以字符串 '..' 开头。 |
11.1.314. .spec.volumes[].projected.sources[].downwardAPI
- 描述
- downwardAPI 有关项目的 downwardAPI 数据的信息
- 类型
-
object
属性 | 类型 | 描述 |
---|---|---|
|
| items 是 DownwardAPIVolume 文件列表 |
|
| DownwardAPIVolumeFile 代表创建包含 pod 字段的文件的信息 |
11.1.315. .spec.volumes[].projected.sources[].downwardAPI.items
- 描述
- items 是 DownwardAPIVolume 文件列表
- 类型
-
array
11.1.316. .spec.volumes[].projected.sources[].downwardAPI.items[]
- 描述
- DownwardAPIVolumeFile 代表创建包含 pod 字段的文件的信息
- 类型
-
object
- 必填
-
path
-
属性 | 类型 | 描述 |
---|---|---|
|
| 必需:支持选择 pod 的字段:只支持注解、标签、名称、命名空间和 uid。 |
|
| 可选:用于设置此文件权限的模式位,必须是 0000 到 0777 之间的数值,或 0 到 511 之间的十进制值。YAML 接受八进制和十进制值,JSON 需要模式位的十进制值。如果没有指定,则使用卷 defaultMode。这可能与影响文件模式的其他选项(如 fsGroup )冲突,结果可以是其他模式位。 |
|
| 必需:Path 是要创建的文件的相对路径名称。不能是绝对的,也不能包含 '..' 路径。必须经过 utf-8 编码。相对路径的第一个项不能以 '..' 开头。 |
|
| 选择容器的资源:目前只支持资源限值和请求(limits.cpu、limits.memory、requests.cpu 和 requests.memory)。 |
11.1.317. .spec.volumes[].projected.sources[].downwardAPI.items[].fieldRef
- 描述
- 必需:支持选择 pod 的字段:只支持注解、标签、名称、命名空间和 uid。
- 类型
-
object
- 必填
-
fieldPath
-
属性 | 类型 | 描述 |
---|---|---|
|
| 模式的版本是按术语编写的 FieldPath,默认为 "v1"。 |
|
| 在指定 API 版本中选择的字段路径。 |
11.1.318. .spec.volumes[].projected.sources[].downwardAPI.items[].resourceFieldRef
- 描述
- 选择容器的资源:目前只支持资源限值和请求(limits.cpu、limits.memory、requests.cpu 和 requests.memory)。
- 类型
-
object
- 必填
-
resource
-
属性 | 类型 | 描述 |
---|---|---|
|
| 容器名称:卷需要,对于 env vars是可选的 |
|
| 指定公开资源的输出格式,默认为 "1" |
|
| 必需:要选择的资源 |
11.1.319. .spec.volumes[].projected.sources[].secret
- 描述
- 有关项目的 secret 数据的 secret 信息
- 类型
-
object
属性 | 类型 | 描述 |
---|---|---|
|
| 如果未指定,则引用 Secret 的 Data 字段中的每个键值对将投射到卷中,其名称是键,内容是值。如果指定,列出的键将投射到指定的路径中,并且不会出现未列出的键。如果指定了没有存在于 Secret 中的密钥,则卷设置将出错,除非标记为可选。路径必须是相对的,且不能包含 '..' 路径,或者以 '..' 开始。 |
|
| 将字符串键映射到卷中的路径。 |
|
|
引用的名称。有效地需要此字段,但因为允许向后兼容为空。这里具有空值的此类实例几乎是错误的。TODO:添加其他有用的字段。apiVersion、kind、uid?更多信息: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names TODO: 当 controller-gen 不需要 https://github.com/kubernetes-sigs/kubebuilder/issues/3896 时,Drop |
|
| 可选字段指定是否必须定义 Secret 或其密钥 |
11.1.320. .spec.volumes[].projected.sources[].secret.items
- 描述
- 如果未指定,则引用 Secret 的 Data 字段中的每个键值对将投射到卷中,其名称是键,内容是值。如果指定,列出的键将投射到指定的路径中,并且不会出现未列出的键。如果指定了没有存在于 Secret 中的密钥,则卷设置将出错,除非标记为可选。路径必须是相对的,且不能包含 '..' 路径,或者以 '..' 开始。
- 类型
-
array
11.1.321. .spec.volumes[].projected.sources[].secret.items[]
- 描述
- 将字符串键映射到卷中的路径。
- 类型
-
object
- 必填
-
key
-
path
-
属性 | 类型 | 描述 |
---|---|---|
|
| key 是项目的关键。 |
|
| 模式为可选:用于设置此文件权限的模式位。必须是 0000 到 0777 之间的数值,或者 0 到 511 之间的十进制值。YAML 接受八进制和十进制值,JSON 需要模式位的十进制值。如果没有指定,则使用卷 defaultMode。这可能与影响文件模式的其他选项(如 fsGroup )冲突,结果可以是其他模式位。 |
|
| path 是将键映射到的文件的相对路径。可能不是绝对路径。不得包含路径元素 '..'。不得以字符串 '..' 开头。 |
11.1.322. .spec.volumes[].projected.sources[].serviceAccountToken
- 描述
- serviceAccountToken 是与项目的 serviceAccountToken 数据相关的信息
- 类型
-
object
- 必填
-
path
-
属性 | 类型 | 描述 |
---|---|---|
|
| 受众是令牌的预期使用者。令牌的接收者必须使用令牌使用者中指定的标识符来识别其自身,否则应拒绝令牌。受众默认为 apiserver 的标识符。 |
|
| expirationSeconds 是服务帐户令牌的请求的有效期。当令牌接近过期时,kubelet 卷插件会主动轮转服务帐户令牌。如果令牌的时间超过 80%,或者令牌早于 24 小时,则 kubelet 将开始尝试轮转令牌。默认为 1 小时,且必须至少为 10 分钟。 |
|
| path 是与文件挂载点相关的路径,用于将令牌放入其中。 |
11.1.323. .spec.volumes[].quobyte
- 描述
- quobyte 代表共享 pod 生命周期的主机上执行 Quobyte 挂载
- 类型
-
object
- 必填
-
registry
-
卷
-
属性 | 类型 | 描述 |
---|---|---|
|
| 将卷访问映射到 Default 的组没有组 |
|
| 此处的 readonly 将强制使用只读权限挂载 Quobyte 卷。默认为false。 |
|
| registry 代表单个或多个 Quobyte Registry 服务,它指定为 host:port 对(多个条目用逗号分开),它充当卷的中央 registry |
|
| 在带有动态置备 Quobyte 卷的后端使用中拥有给定 Quobyte 卷的租户,由插件设置 |
|
| 用户,将卷访问权限映射到 Defaults 到 serivceaccount 用户 |
|
| volume 是按名称引用已创建 Quobyte 卷的字符串。 |
11.1.324. .spec.volumes[].rbd
- 描述
- RBD 代表共享 pod 生命周期的主机上 Rados 块设备挂载。更多信息: https://examples.k8s.io/volumes/rbd/README.md
- 类型
-
object
- 必填
-
image
-
monitor
-
属性 | 类型 | 描述 |
---|---|---|
|
| fstype 是您要挂载的卷的文件系统类型。提示: 确保主机操作系统支持文件系统类型。示例:"ext4", "xfs", "ntfs"。如果未指定,则隐式推断为 "ext4"。更多信息: https://kubernetes.io/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 |
|
| monitor 是 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 将强制 VolumeMount 中的 ReadOnly 设置。默认为false。更多信息: https://examples.k8s.io/volumes/rbd/README.md#how-to-use-it |
|
| secretRef 是 RBDUser 的身份验证 secret 的名称。如果提供的会覆盖密钥环。默认为 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 |
11.1.325. .spec.volumes[].rbd.secretRef
- 描述
- secretRef 是 RBDUser 的身份验证 secret 的名称。如果提供的会覆盖密钥环。默认为 nil。更多信息: https://examples.k8s.io/volumes/rbd/README.md#how-to-use-it
- 类型
-
object
属性 | 类型 | 描述 |
---|---|---|
|
|
引用的名称。有效地需要此字段,但因为允许向后兼容为空。这里具有空值的此类实例几乎是错误的。TODO:添加其他有用的字段。apiVersion、kind、uid?更多信息: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names TODO: 当 controller-gen 不需要 https://github.com/kubernetes-sigs/kubebuilder/issues/3896 时,Drop |
11.1.326. .spec.volumes[].scaleIO
- 描述
- scaleIO 代表附加并挂载到 Kubernetes 节点上的 ScaleIO 持久性卷。
- 类型
-
object
- 必填
-
gateway
-
secretRef
-
system
-
属性 | 类型 | 描述 |
---|---|---|
|
| fstype 是要挂载的文件系统类型。必须是主机操作系统支持的文件系统类型。Ex. "ext4", "xfs", "ntfs".默认为 "xfs"。 |
|
| gateway 是 ScaleIO API 网关的主机地址。 |
|
| protectionDomain 是配置存储的 ScaleIO 保护域的名称。 |
|
| readonly Defaults to false (read/write)。此处的 readonly 将强制 VolumeMount 中的 ReadOnly 设置。 |
|
| secretRef 引用 ScaleIO 用户和其他敏感信息的 secret。如果没有提供,则登录操作将失败。 |
|
| sslEnabled Flag 启用/禁用与网关的 SSL 通信,默认为 false |
|
| storageMode 指示卷的存储是否应 ThickProvisioned 或 ThinProvisioned。默认为 ThinProvisioned。 |
|
| StoragePool 是与保护域关联的 ScaleIO 存储池。 |
|
| system 是 ScaleIO 中配置的存储系统的名称。 |
|
| volumeName 是在与这个卷源关联的 ScaleIO 系统中创建的卷的名称。 |
11.1.327. .spec.volumes[].scaleIO.secretRef
- 描述
- secretRef 引用 ScaleIO 用户和其他敏感信息的 secret。如果没有提供,则登录操作将失败。
- 类型
-
object
属性 | 类型 | 描述 |
---|---|---|
|
|
引用的名称。有效地需要此字段,但因为允许向后兼容为空。这里具有空值的此类实例几乎是错误的。TODO:添加其他有用的字段。apiVersion、kind、uid?更多信息: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names TODO: 当 controller-gen 不需要 https://github.com/kubernetes-sigs/kubebuilder/issues/3896 时,Drop |
11.1.328. .spec.volumes[].secret
- 描述
- Secret 代表应填充此卷的 secret。更多信息: https://kubernetes.io/docs/concepts/storage/volumes#secret
- 类型
-
object
属性 | 类型 | 描述 |
---|---|---|
|
| defaultMode 是可选:默认用于设置创建文件的权限的模式位。必须是 0000 到 0777 之间的数值,或者 0 到 511 之间的十进制值。YAML 接受八进制和十进制值,JSON 需要模式位的十进制值。默认值为 0644。路径中的目录不受此设置的影响。这可能与影响文件模式的其他选项(如 fsGroup )冲突,结果可以是其他模式位。 |
|
| 如果未指定项目,则引用 Secret 的 Data 字段中的每个键值对将投射到卷中,其名称是键,内容是值。如果指定,列出的键将投射到指定的路径中,并且不会出现未列出的键。如果指定了没有存在于 Secret 中的密钥,则卷设置将出错,除非标记为可选。路径必须是相对的,且不能包含 '..' 路径,或者以 '..' 开始。 |
|
| 将字符串键映射到卷中的路径。 |
|
| 可选字段指定是否必须定义 Secret 或其密钥 |
|
| secretName 是要使用的 pod 命名空间中的 secret 名称。更多信息: https://kubernetes.io/docs/concepts/storage/volumes#secret |
11.1.329. .spec.volumes[].secret.items
- 描述
- 如果未指定项目,则引用 Secret 的 Data 字段中的每个键值对将投射到卷中,其名称是键,内容是值。如果指定,列出的键将投射到指定的路径中,并且不会出现未列出的键。如果指定了没有存在于 Secret 中的密钥,则卷设置将出错,除非标记为可选。路径必须是相对的,且不能包含 '..' 路径,或者以 '..' 开始。
- 类型
-
array
11.1.330. .spec.volumes[].secret.items[]
- 描述
- 将字符串键映射到卷中的路径。
- 类型
-
object
- 必填
-
key
-
path
-
属性 | 类型 | 描述 |
---|---|---|
|
| key 是项目的关键。 |
|
| 模式为可选:用于设置此文件权限的模式位。必须是 0000 到 0777 之间的数值,或者 0 到 511 之间的十进制值。YAML 接受八进制和十进制值,JSON 需要模式位的十进制值。如果没有指定,则使用卷 defaultMode。这可能与影响文件模式的其他选项(如 fsGroup )冲突,结果可以是其他模式位。 |
|
| path 是将键映射到的文件的相对路径。可能不是绝对路径。不得包含路径元素 '..'。不得以字符串 '..' 开头。 |
11.1.331. .spec.volumes[].storageos
- 描述
- storageos 代表附加并挂载到 Kubernetes 节点上的 StorageOS 卷。
- 类型
-
object
属性 | 类型 | 描述 |
---|---|---|
|
| fstype 是要挂载的文件系统类型。必须是主机操作系统支持的文件系统类型。Ex. "ext4", "xfs", "ntfs".如果未指定,则隐式推断为 "ext4"。 |
|
| readonly 默认为 false (读/写)。此处的 readonly 将强制 VolumeMount 中的 ReadOnly 设置。 |
|
| secretRef 指定用于获取 StorageOS API 凭证的 secret。如果没有指定,则会尝试默认值。 |
|
| volumeName 是 StorageOS 卷的人类可读名称。卷名称仅在命名空间中唯一。 |
|
| volumeNamespace 指定 StorageOS 中的卷范围。如果没有指定命名空间,则使用 Pod 的命名空间。这允许在 StorageOS 中镜像 Kubernetes 名称进行更紧密的集成。将 VolumeName 设置为任何名称,以覆盖默认的行为。如果没有在 StorageOS 中使用命名空间,则设置为 "default"。将创建在 StorageOS 中没有预先存在的命名空间。 |
11.1.332. .spec.volumes[].storageos.secretRef
- 描述
- secretRef 指定用于获取 StorageOS API 凭证的 secret。如果没有指定,则会尝试默认值。
- 类型
-
object
属性 | 类型 | 描述 |
---|---|---|
|
|
引用的名称。有效地需要此字段,但因为允许向后兼容为空。这里具有空值的此类实例几乎是错误的。TODO:添加其他有用的字段。apiVersion、kind、uid?更多信息: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names TODO: 当 controller-gen 不需要 https://github.com/kubernetes-sigs/kubebuilder/issues/3896 时,Drop |
11.1.333. .spec.volumes[].vsphereVolume
- 描述
- vsphereVolume 代表附加并挂载到 kubelets 主机上的 vSphere 卷
- 类型
-
object
- 必填
-
volumePath
-
属性 | 类型 | 描述 |
---|---|---|
|
| fstype 是要挂载的文件系统类型。必须是主机操作系统支持的文件系统类型。Ex. "ext4", "xfs", "ntfs".如果未指定,则隐式推断为 "ext4"。 |
|
| storagePolicyID 是与 StoragePolicyName 关联的存储策略 Based Management (SPBM)配置集 ID。 |
|
| StoragePolicyName 是存储基于策略的管理(SPBM)配置集名称。 |
|
| volumePath 是标识 vSphere 卷 vmdk 的路径 |
11.1.334. .spec.web
- 描述
- 定义 ThanosRuler web 服务器的配置。
- 类型
-
object
属性 | 类型 | 描述 |
---|---|---|
|
| 定义 Web 服务器的 HTTP 参数。 |
|
| 定义 HTTPS 的 TLS 参数。 |
11.1.335. .spec.web.httpConfig
- 描述
- 定义 Web 服务器的 HTTP 参数。
- 类型
-
object
属性 | 类型 | 描述 |
---|---|---|
|
| 可添加到 HTTP 响应中的标头列表。 |
|
| 启用 HTTP/2 支持。请注意,只有 TLS 支持 HTTP/2。如果没有配置 TLSConfig,则禁用 HTTP/2。每当字段更改时,将触发滚动更新。 |
11.1.336. .spec.web.httpConfig.headers
- 描述
- 可添加到 HTTP 响应中的标头列表。
- 类型
-
object
属性 | 类型 | 描述 |
---|---|---|
|
| 将 Content-Security-Policy 标头设置为 HTTP 响应。如果为空,则取消设置。 |
|
| 将 Strict-Transport-Security 标头设置为 HTTP 响应。如果为空,则取消设置。请确定您谨慎使用此标头,因为这个标头可能会强制浏览器加载 Prometheus,以及通过 HTTPS 在同一域和子域上托管的其他应用程序。https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/Strict-Transport-Security |
|
| 将 X-Content-Type-Options 标头设置为 HTTP 响应。如果为空,则取消设置。接受的值是 nosniff。https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/X-Content-Type-Options |
|
| 将 X-Frame-Options 标头设置为 HTTP 响应。如果为空,则取消设置。接受的值是 deny 和 sameorigin。https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/X-Frame-Options |
|
| 将 X-XSS-Protection 标头设置为所有响应。如果为空,则取消设置。https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/X-XSS-Protection |
11.1.337. .spec.web.tlsConfig
- 描述
- 定义 HTTPS 的 TLS 参数。
- 类型
-
object
- 必填
-
cert
-
keySecret
-
属性 | 类型 | 描述 |
---|---|---|
|
| 包含服务器的 TLS 证书。 |
|
| TLS 版本支持的密码套件列表,最高为 TLS 1.2。如果为空,则使用 Go 默认密码套件。可用的密码套件记录在以下文档 :https://golang.org/pkg/crypto/tls/#pkg-constants |
|
| 用于客户端身份验证的服务器策略。映射到 ClientAuth 策略。有关 clientAuth 选项的详情: https://golang.org/pkg/crypto/tls/#ClientAuthType |
|
| 包含服务器客户端证书身份验证的 CA 证书。 |
|
| 按偏好顺序在 ECDHE 握手中使用的 Elliptic curves。可用的 curves 记录在以下文档 :https://golang.org/pkg/crypto/tls/#CurveID |
|
| 包含服务器的 TLS 密钥的 secret。 |
|
| 可接受的最大 TLS 版本。默认为 TLS13。 |
|
| 可以接受的最低 TLS 版本。默认为 TLS12。 |
|
| 控制服务器是否选择客户端最首选密码套件,或者服务器最首选密码套件。如果为 true,则使用服务器的首选项,如 cipherSuites 中的元素顺序表示。 |
11.1.338. .spec.web.tlsConfig.cert
- 描述
- 包含服务器的 TLS 证书。
- 类型
-
object
属性 | 类型 | 描述 |
---|---|---|
|
| 包含用于目标的数据的 ConfigMap。 |
|
| 包含用于目标的数据的 secret。 |
11.1.339. .spec.web.tlsConfig.cert.configMap
- 描述
- 包含用于目标的数据的 ConfigMap。
- 类型
-
object
- 必填
-
key
-
属性 | 类型 | 描述 |
---|---|---|
|
| 要选择的密钥。 |
|
|
引用的名称。有效地需要此字段,但因为允许向后兼容为空。这里具有空值的此类实例几乎是错误的。TODO:添加其他有用的字段。apiVersion、kind、uid?更多信息: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names TODO: 当 controller-gen 不需要 https://github.com/kubernetes-sigs/kubebuilder/issues/3896 时,Drop |
|
| 指定是否必须定义 ConfigMap 还是其键 |
11.1.340. .spec.web.tlsConfig.cert.secret
- 描述
- 包含用于目标的数据的 secret。
- 类型
-
object
- 必填
-
key
-
属性 | 类型 | 描述 |
---|---|---|
|
| 要从中选择的 secret 的密钥。必须是一个有效的 secret 密钥。 |
|
|
引用的名称。有效地需要此字段,但因为允许向后兼容为空。这里具有空值的此类实例几乎是错误的。TODO:添加其他有用的字段。apiVersion、kind、uid?更多信息: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names TODO: 当 controller-gen 不需要 https://github.com/kubernetes-sigs/kubebuilder/issues/3896 时,Drop |
|
| 指定是否需要定义 Secret 还是其密钥 |
11.1.341. .spec.web.tlsConfig.client_ca
- 描述
- 包含服务器客户端证书身份验证的 CA 证书。
- 类型
-
object
属性 | 类型 | 描述 |
---|---|---|
|
| 包含用于目标的数据的 ConfigMap。 |
|
| 包含用于目标的数据的 secret。 |
11.1.342. .spec.web.tlsConfig.client_ca.configMap
- 描述
- 包含用于目标的数据的 ConfigMap。
- 类型
-
object
- 必填
-
key
-
属性 | 类型 | 描述 |
---|---|---|
|
| 要选择的密钥。 |
|
|
引用的名称。有效地需要此字段,但因为允许向后兼容为空。这里具有空值的此类实例几乎是错误的。TODO:添加其他有用的字段。apiVersion、kind、uid?更多信息: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names TODO: 当 controller-gen 不需要 https://github.com/kubernetes-sigs/kubebuilder/issues/3896 时,Drop |
|
| 指定是否必须定义 ConfigMap 还是其键 |
11.1.343. .spec.web.tlsConfig.client_ca.secret
- 描述
- 包含用于目标的数据的 secret。
- 类型
-
object
- 必填
-
key
-
属性 | 类型 | 描述 |
---|---|---|
|
| 要从中选择的 secret 的密钥。必须是一个有效的 secret 密钥。 |
|
|
引用的名称。有效地需要此字段,但因为允许向后兼容为空。这里具有空值的此类实例几乎是错误的。TODO:添加其他有用的字段。apiVersion、kind、uid?更多信息: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names TODO: 当 controller-gen 不需要 https://github.com/kubernetes-sigs/kubebuilder/issues/3896 时,Drop |
|
| 指定是否需要定义 Secret 还是其密钥 |
11.1.344. .spec.web.tlsConfig.keySecret
- 描述
- 包含服务器的 TLS 密钥的 secret。
- 类型
-
object
- 必填
-
key
-
属性 | 类型 | 描述 |
---|---|---|
|
| 要从中选择的 secret 的密钥。必须是一个有效的 secret 密钥。 |
|
|
引用的名称。有效地需要此字段,但因为允许向后兼容为空。这里具有空值的此类实例几乎是错误的。TODO:添加其他有用的字段。apiVersion、kind、uid?更多信息: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names TODO: 当 controller-gen 不需要 https://github.com/kubernetes-sigs/kubebuilder/issues/3896 时,Drop |
|
| 指定是否需要定义 Secret 还是其密钥 |
11.1.345. .status
- 描述
- ThanosRuler 集群最近观察到的状态。只读。更多信息: https://github.com/kubernetes/community/blob/master/contributors/devel/sig-architecture/api-conventions.md#spec-and-status
- 类型
-
object
- 必填
-
availableReplicas
-
paused
-
replicas
-
unavailableReplicas
-
updatedReplicas
-
属性 | 类型 | 描述 |
---|---|---|
|
| 此 ThanosRuler 部署的目标可用 pod 的总数(至少为 minReadySeconds)。 |
|
| Alertmanager 对象的当前状态。 |
|
| condition 代表与 Prometheus、Alertmanager 或 ThanosRuler 资源关联的资源的状态。 |
|
| 代表是否在执行底层受管对象的任何操作。只有 delete 操作才会执行。 |
|
| 此 ThanosRuler 部署的目标非确定 pod 的总数(标签与选择器匹配)。 |
|
| 此 ThanosRuler 部署目标不可用 pod 的总数。 |
|
| 此 ThanosRuler 部署目标为具有所需版本 spec 的非确定 pod 的总数。 |
11.1.346. .status.conditions
- 描述
- Alertmanager 对象的当前状态。
- 类型
-
array
11.1.347. .status.conditions[]
- 描述
- condition 代表与 Prometheus、Alertmanager 或 ThanosRuler 资源关联的资源的状态。
- 类型
-
object
- 必填
-
lastTransitionTime
-
status
-
type
-
属性 | 类型 | 描述 |
---|---|---|
|
| lastTransitionTime 是当前 status 属性最后一次更新的时间。 |
|
| 人类可读的消息,指示条件最后一次转换的详细信息。 |
|
|
observedGeneration 代表 .metadata.generation,条件基于这个条件。例如,如果 |
|
| 条件最后一次转换的原因。 |
|
| 条件的状态。 |
|
| 所报告条件的类型。 |
11.2. API 端点
可用的 API 端点如下:
/apis/monitoring.coreos.com/v1/thanosrulers
-
GET
: 列出类型为 ThanosRuler 的对象
-
/apis/monitoring.coreos.com/v1/namespaces/{namespace}/thanosrulers
-
DELETE
:删除 ThanosRuler 集合 -
GET
: 列出类型为 ThanosRuler 的对象 -
POST
:创建 ThanosRuler
-
/apis/monitoring.coreos.com/v1/namespaces/{namespace}/thanosrulers/{name}
-
DELETE
:删除 ThanosRuler -
GET
:读取指定的 ThanosRuler -
PATCH
: 部分更新指定的 ThanosRuler -
PUT
:替换指定的 ThanosRuler
-
/apis/monitoring.coreos.com/v1/namespaces/{namespace}/thanosrulers/{name}/status
-
GET
:指定 ThanosRuler 的读取状态 -
PATCH
: 部分更新指定 ThanosRuler 的状态 -
PUT
:替换指定 ThanosRuler 的状态
-
11.2.1. /apis/monitoring.coreos.com/v1/thanosrulers
- HTTP 方法
-
GET
- 描述
- 列出 ThanosRuler 类型的对象
HTTP 代码 | 响应正文 |
---|---|
200 - OK | |
401 - Unauthorized | 空 |
11.2.2. /apis/monitoring.coreos.com/v1/namespaces/{namespace}/thanosrulers
- HTTP 方法
-
DELETE
- 描述
- 删除 ThanosRuler 集合
HTTP 代码 | 响应正文 |
---|---|
200 - OK |
|
401 - Unauthorized | 空 |
- HTTP 方法
-
GET
- 描述
- 列出 ThanosRuler 类型的对象
HTTP 代码 | 响应正文 |
---|---|
200 - OK | |
401 - Unauthorized | 空 |
- HTTP 方法
-
POST
- 描述
- 创建 ThanosRuler
参数 | 类型 | 描述 |
---|---|---|
|
| 出现时,表示不应保留修改。无效的或未被识别的 dryRun 指令将导致错误响应,且请求不会被进一步处理。有效值为: - All: 所有预演阶段都将被处理 |
|
| fieldValidation 指示服务器如何处理包含了未知或重复字段的请求 (POST/PUT/PATCH) 中的对象。有效值为: - Ignore :忽略从对象中静默丢弃的未知字段,并将忽略所有除最后一个重复字段以外的所有字段。这是 v1.23 版本之前的默认行为- Warn: 这会通过标准的警告响应头为从对象丢弃的每个未知字段以及遇到的每个重复字段,发送警告。如果没有其他错误,请求仍会成功,且只保留重复字段的最后一个。这是 v1.23+ 的的默认行为 - Strict: 如果从对象中删除了任何未知字段,或者存在任何重复字段,请求将失败并带有 BadRequest 错误。从服务器返回的错误将包含遇到的,以及重复的字段。 |
参数 | 类型 | 描述 |
---|---|---|
|
|
HTTP 代码 | 响应正文 |
---|---|
200 - OK |
|
201 - Created |
|
202 - Accepted |
|
401 - Unauthorized | 空 |
11.2.3. /apis/monitoring.coreos.com/v1/namespaces/{namespace}/thanosrulers/{name}
参数 | 类型 | 描述 |
---|---|---|
|
| ThanosRuler 的名称 |
- HTTP 方法
-
DELETE
- 描述
- 删除 ThanosRuler
参数 | 类型 | 描述 |
---|---|---|
|
| 出现时,表示不应保留修改。无效的或未被识别的 dryRun 指令将导致错误响应,且请求不会被进一步处理。有效值为: - All: 所有预演阶段都将被处理 |
HTTP 代码 | 响应正文 |
---|---|
200 - OK |
|
202 - Accepted |
|
401 - Unauthorized | 空 |
- HTTP 方法
-
GET
- 描述
- 读取指定的 ThanosRuler
HTTP 代码 | 响应正文 |
---|---|
200 - OK |
|
401 - Unauthorized | 空 |
- HTTP 方法
-
PATCH
- 描述
- 部分更新指定的 ThanosRuler
参数 | 类型 | 描述 |
---|---|---|
|
| 出现时,表示不应保留修改。无效的或未被识别的 dryRun 指令将导致错误响应,且请求不会被进一步处理。有效值为: - All: 所有预演阶段都将被处理 |
|
| fieldValidation 指示服务器如何处理包含了未知或重复字段的请求 (POST/PUT/PATCH) 中的对象。有效值为: - Ignore :忽略从对象中静默丢弃的未知字段,并将忽略所有除最后一个重复字段以外的所有字段。这是 v1.23 版本之前的默认行为- Warn: 这会通过标准的警告响应头为从对象丢弃的每个未知字段以及遇到的每个重复字段,发送警告。如果没有其他错误,请求仍会成功,且只保留重复字段的最后一个。这是 v1.23+ 的的默认行为 - Strict: 如果从对象中删除了任何未知字段,或者存在任何重复字段,请求将失败并带有 BadRequest 错误。从服务器返回的错误将包含遇到的,以及重复的字段。 |
HTTP 代码 | 响应正文 |
---|---|
200 - OK |
|
401 - Unauthorized | 空 |
- HTTP 方法
-
PUT
- 描述
- 替换指定的 ThanosRuler
参数 | 类型 | 描述 |
---|---|---|
|
| 出现时,表示不应保留修改。无效的或未被识别的 dryRun 指令将导致错误响应,且请求不会被进一步处理。有效值为: - All: 所有预演阶段都将被处理 |
|
| fieldValidation 指示服务器如何处理包含了未知或重复字段的请求 (POST/PUT/PATCH) 中的对象。有效值为: - Ignore :忽略从对象中静默丢弃的未知字段,并将忽略所有除最后一个重复字段以外的所有字段。这是 v1.23 版本之前的默认行为- Warn: 这会通过标准的警告响应头为从对象丢弃的每个未知字段以及遇到的每个重复字段,发送警告。如果没有其他错误,请求仍会成功,且只保留重复字段的最后一个。这是 v1.23+ 的的默认行为 - Strict: 如果从对象中删除了任何未知字段,或者存在任何重复字段,请求将失败并带有 BadRequest 错误。从服务器返回的错误将包含遇到的,以及重复的字段。 |
参数 | 类型 | 描述 |
---|---|---|
|
|
HTTP 代码 | 响应正文 |
---|---|
200 - OK |
|
201 - Created |
|
401 - Unauthorized | 空 |
11.2.4. /apis/monitoring.coreos.com/v1/namespaces/{namespace}/thanosrulers/{name}/status
参数 | 类型 | 描述 |
---|---|---|
|
| ThanosRuler 的名称 |
- HTTP 方法
-
GET
- 描述
- 指定 ThanosRuler 的读取状态
HTTP 代码 | 响应正文 |
---|---|
200 - OK |
|
401 - Unauthorized | 空 |
- HTTP 方法
-
PATCH
- 描述
- 部分更新指定 ThanosRuler 的状态
参数 | 类型 | 描述 |
---|---|---|
|
| 出现时,表示不应保留修改。无效的或未被识别的 dryRun 指令将导致错误响应,且请求不会被进一步处理。有效值为: - All: 所有预演阶段都将被处理 |
|
| fieldValidation 指示服务器如何处理包含了未知或重复字段的请求 (POST/PUT/PATCH) 中的对象。有效值为: - Ignore :忽略从对象中静默丢弃的未知字段,并将忽略所有除最后一个重复字段以外的所有字段。这是 v1.23 版本之前的默认行为- Warn: 这会通过标准的警告响应头为从对象丢弃的每个未知字段以及遇到的每个重复字段,发送警告。如果没有其他错误,请求仍会成功,且只保留重复字段的最后一个。这是 v1.23+ 的的默认行为 - Strict: 如果从对象中删除了任何未知字段,或者存在任何重复字段,请求将失败并带有 BadRequest 错误。从服务器返回的错误将包含遇到的,以及重复的字段。 |
HTTP 代码 | 响应正文 |
---|---|
200 - OK |
|
401 - Unauthorized | 空 |
- HTTP 方法
-
PUT
- 描述
- 替换指定 ThanosRuler 的状态
参数 | 类型 | 描述 |
---|---|---|
|
| 出现时,表示不应保留修改。无效的或未被识别的 dryRun 指令将导致错误响应,且请求不会被进一步处理。有效值为: - All: 所有预演阶段都将被处理 |
|
| fieldValidation 指示服务器如何处理包含了未知或重复字段的请求 (POST/PUT/PATCH) 中的对象。有效值为: - Ignore :忽略从对象中静默丢弃的未知字段,并将忽略所有除最后一个重复字段以外的所有字段。这是 v1.23 版本之前的默认行为- Warn: 这会通过标准的警告响应头为从对象丢弃的每个未知字段以及遇到的每个重复字段,发送警告。如果没有其他错误,请求仍会成功,且只保留重复字段的最后一个。这是 v1.23+ 的的默认行为 - Strict: 如果从对象中删除了任何未知字段,或者存在任何重复字段,请求将失败并带有 BadRequest 错误。从服务器返回的错误将包含遇到的,以及重复的字段。 |
参数 | 类型 | 描述 |
---|---|---|
|
|
HTTP 代码 | 响应正文 |
---|---|
200 - OK |
|
201 - Created |
|
401 - Unauthorized | 空 |
第 12 章 NodeMetrics [metrics.k8s.io/v1beta1]
- 描述
- NodeMetrics 设置节点的资源使用量指标。
- 类型
-
object
- 必填
-
timestamp
-
window
-
usage
-
12.1. 规格
属性 | 类型 | 描述 |
---|---|---|
|
| APIVersion 定义对象的这个表示法的版本化的 schema。服务器应该将识别的模式转换为最新的内部值,并可拒绝未识别的值。更多信息: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources |
|
| kind 是一个字符串值,代表此对象所代表的 REST 资源。服务器可以从客户端向其提交请求的端点推断。无法更新。采用驼峰拼写法 (CamelCase)。更多信息: 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 | |
| 以下字段定义从间隔 [Timestamp-Window, Timestamp] 收集指标的时间间隔。 | |
| 内存用量是内存工作集。 | |
|
12.2. API 端点
可用的 API 端点如下:
/apis/metrics.k8s.io/v1beta1/nodes
-
GET
: 列出类型为 NodeMetrics 的对象
-
/apis/metrics.k8s.io/v1beta1/nodes/{name}
-
GET
:读取指定的 NodeMetrics
-
12.2.1. /apis/metrics.k8s.io/v1beta1/nodes
- HTTP 方法
-
GET
- 描述
- 列出 NodeMetrics 类型的对象
HTTP 代码 | 响应正文 |
---|---|
200 - OK |
|
12.2.2. /apis/metrics.k8s.io/v1beta1/nodes/{name}
参数 | 类型 | 描述 |
---|---|---|
|
| NodeMetrics 的名称 |
- HTTP 方法
-
GET
- 描述
- 阅读指定的 NodeMetrics
HTTP 代码 | 响应正文 |
---|---|
200 - OK |
|
第 13 章 PodMetrics [metrics.k8s.io/v1beta1]
- 描述
- PodMetrics 设置 pod 的资源使用量指标。
- 类型
-
object
- 必填
-
timestamp
-
window
-
containers
-
13.1. 规格
属性 | 类型 | 描述 |
---|---|---|
|
| APIVersion 定义对象的这个表示法的版本化的 schema。服务器应该将识别的模式转换为最新的内部值,并可拒绝未识别的值。更多信息: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources |
|
| 所有容器的指标在同一时间窗内收集。 |
|
| ContainerMetrics 设置容器的资源使用量指标。 |
|
| kind 是一个字符串值,代表此对象所代表的 REST 资源。服务器可以从客户端向其提交请求的端点推断。无法更新。采用驼峰拼写法 (CamelCase)。更多信息: 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 | |
| 以下字段定义从间隔 [Timestamp-Window, Timestamp] 收集指标的时间间隔。 | |
|
13.1.1. .containers
- 描述
- 所有容器的指标在同一时间窗内收集。
- 类型
-
数组
13.1.2. .containers[]
- 描述
- ContainerMetrics 设置容器的资源使用量指标。
- 类型
-
object
- 必填
-
名称
-
usage
-
属性 | 类型 | 描述 |
---|---|---|
|
| 与 pod.spec.containers 中对应的容器名称。 |
| 内存用量是内存工作集。 |
13.2. API 端点
可用的 API 端点如下:
/apis/metrics.k8s.io/v1beta1/pods
-
GET
: 列出类型为 PodMetrics 的对象
-
/apis/metrics.k8s.io/v1beta1/namespaces/{namespace}/pods
-
GET
: 列出类型为 PodMetrics 的对象
-
/apis/metrics.k8s.io/v1beta1/namespaces/{namespace}/pods/{name}
-
GET
:读取指定的 PodMetrics
-
13.2.1. /apis/metrics.k8s.io/v1beta1/pods
- HTTP 方法
-
GET
- 描述
- 列出 PodMetrics 类型的对象
HTTP 代码 | 响应正文 |
---|---|
200 - OK |
13.2.2. /apis/metrics.k8s.io/v1beta1/namespaces/{namespace}/pods
- HTTP 方法
-
GET
- 描述
- 列出 PodMetrics 类型的对象
HTTP 代码 | 响应正文 |
---|---|
200 - OK |
13.2.3. /apis/metrics.k8s.io/v1beta1/namespaces/{namespace}/pods/{name}
参数 | 类型 | 描述 |
---|---|---|
|
| PodMetrics 的名称 |
- HTTP 方法
-
GET
- 描述
- 阅读指定的 PodMetrics
HTTP 代码 | 响应正文 |
---|---|
200 - OK |
|
Legal Notice
Copyright © 2024 Red Hat, Inc.
OpenShift documentation is licensed under the Apache License 2.0 (https://www.apache.org/licenses/LICENSE-2.0).
Modified versions must remove all Red Hat trademarks.
Portions adapted from https://github.com/kubernetes-incubator/service-catalog/ with modifications by Red Hat.
Red Hat, Red Hat Enterprise Linux, the Red Hat logo, the Shadowman logo, JBoss, OpenShift, Fedora, the Infinity logo, and RHCE are trademarks of Red Hat, Inc., registered in the United States and other countries.
Linux® is the registered trademark of Linus Torvalds in the United States and other countries.
Java® is a registered trademark of Oracle and/or its affiliates.
XFS® is a trademark of Silicon Graphics International Corp. or its subsidiaries in the United States and/or other countries.
MySQL® is a registered trademark of MySQL AB in the United States, the European Union and other countries.
Node.js® is an official trademark of Joyent. Red Hat Software Collections is not formally related to or endorsed by the official Joyent Node.js open source or commercial project.
The OpenStack® Word Mark and OpenStack logo are either registered trademarks/service marks or trademarks/service marks of the OpenStack Foundation, in the United States and other countries and are used with the OpenStack Foundation’s permission. We are not affiliated with, endorsed or sponsored by the OpenStack Foundation, or the OpenStack community.
All other trademarks are the property of their respective owners.