第 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 集群的状态最近观察到的状态。只读。从 apiserver 请求时不包括,只有来自 Prometheus Operator API 本身。更多信息: 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 的调度限制。 |
|
| 为 AlertmanagerConfig 发现选择的命名空间。如果为 nil,则仅检查自己的命名空间。 |
|
| 要选择的 alertmanagerconfigs,用于合并并配置 Alertmanager。 |
|
|
EXPERIMENTAL: alertmanagerConfiguration 指定 Alertmanager 的配置。如果定义,它优先于 |
|
| 用于部署 pod 的基础镜像,没有标签。deprecated: 使用 'image' 替代 |
|
| ClusterAdvertiseAddress 是集群中要公告的显式地址。需要为非 RFC1918 [1] (公共)地址提供。[1] RFC1918: https://tools.ietf.org/html/rfc1918 |
|
| 在 gosip 尝试之间间隔。 |
|
| 集群对等的超时时间。 |
|
| 拉取尝试之间的间隔。 |
|
|
ConfigMap 是与 Alertmanager 对象相同的命名空间中的 ConfigMap 列表,该对象应挂载到 Alertmanager Pod 中。每个 ConfigMap 都作为名为 |
|
|
ConfigSecret 是与 Alertmanager 对象相同的命名空间中的 Kubernetes Secret 的名称,其中包含此 Alertmanager 实例的配置。如果为空,则默认为 |
|
|
容器允许注入其他容器。这是允许向 Alertmanager pod 添加身份验证代理。这里描述的容器如果操作器共享相同的名称和修改,则修改通过战略合并补丁来完成。当前容器名称为: |
|
| 要在 pod 中运行的单一应用程序容器。 |
|
| Alertmanager 实例将位于的外部 URL。这是生成正确 URL 所必需的。如果 Alertmanager 没有从 DNS 名称的根目录提供,则需要此项。 |
|
| ForceEnableClusterMode 可确保 Alertmanager 在使用单个副本运行时不会取消激活集群模式。用例是,例如在 Kubernetes 集群间生成 Alertmanager 集群,每个集群都有单个副本。 |
|
| Pod 的 hostAliases 配置 |
|
| HostAlias 包含 IP 和主机名之间的映射,这些映射将作为 pod 的主机文件中的条目注入。 |
|
| 如果指定,则镜像的优先级高于 baseImage、tag 和 sha 组合。仍然需要指定版本以确保 Prometheus Operator 知道要配置 Alertmanager 版本。 |
|
| 从 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 用于任何用例,然后 secret 获取完全超出维护人员将支持什么范围,通过这样做,您可以接受这些行为随时可能中断,而无需通知。 |
|
| 要在 pod 中运行的单一应用程序容器。 |
|
| ListenLocal 使 Alertmanager 服务器侦听回环,因此它不会绑定 Pod IP。请注意,这只适用于 Alertmanager UI,而不是 gossip 通信。 |
|
| 用于配置 Alertmanager 的日志格式。 |
|
| 用于配置 Alertmanager 的日志级别。 |
|
| 新创建的 pod 应该在不出现任何容器崩溃的情况下变为可用状态的最小秒数。默认为 0 (pod 在就绪后马上就可用)是一个 alpha 字段,需要启用 StatefulSetMinReadySeconds 功能门。 |
|
| 定义 Pod 调度到哪些节点上。 |
|
| 如果设置为 true,则不会执行底层受管对象的所有操作,但 delete 操作除外。 |
|
| podMetadata 配置传播到 alertmanager pod 的 Labels 和 Annotations。 |
|
| 用于 pod 和监管服务的端口名称。默认为 web |
|
| 分配给 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。 |
|
| 术语适用的命名空间集合上的标签查询。术语应用于此字段选定的命名空间的 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。
- 类型
-
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。 |
|
| 术语适用的命名空间集合上的标签查询。术语应用于此字段选定的命名空间的 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。
- 类型
-
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。 |
|
| 术语适用的命名空间集合上的标签查询。术语应用于此字段选定的命名空间的 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。
- 类型
-
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。 |
|
| 术语适用的命名空间集合上的标签查询。术语应用于此字段选定的命名空间的 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。
- 类型
-
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.alertmanagerConfigNamespaceSelector
- 描述
- 为 AlertmanagerConfig 发现选择的命名空间。如果为 nil,则仅检查自己的命名空间。
- 类型
-
object
属性 | 类型 | 描述 |
---|---|---|
|
| matchExpressions 是标签选择器要求列表。要求的逻辑关系是 AND。 |
|
| 标签选择器要求是一个选择器,其中包含与键和值相关的值、键和值。 |
|
| matchLabels 是 {key,value} 对的映射。MatchLabels 映射中的单个 {key,value} 等同于 matchExpressions 的一个元素,其 key 字段是 "key",运算符是 "In",值数组仅包含 "value"。要求的逻辑关系是 AND。 |
2.1.55. .spec.alertmanagerConfigNamespaceSelector.matchExpressions
- 描述
- matchExpressions 是标签选择器要求列表。要求的逻辑关系是 AND。
- 类型
-
array
2.1.56. .spec.alertmanagerConfigNamespaceSelector.matchExpressions[]
- 描述
- 标签选择器要求是一个选择器,其中包含与键和值相关的值、键和值。
- 类型
-
object
- 必填
-
key
-
operator
-
属性 | 类型 | 描述 |
---|---|---|
|
| key 是选择器应用到的标签键。 |
|
| 运算符代表一个键与一组值的关系。有效的运算符是 In、NotIn、Exists 和 DoesNotExist。 |
|
| 值是字符串值的数组。如果运算符是 In 或 NotIn,则值数组必须是非空的。如果运算符是 Exists 或 DoesNotExist,则值数组必须为空。这个数组会在策略性合并补丁中被替换。 |
2.1.57. .spec.alertmanagerConfigSelector
- 描述
- 要选择的 alertmanagerconfigs,用于合并并配置 Alertmanager。
- 类型
-
object
属性 | 类型 | 描述 |
---|---|---|
|
| matchExpressions 是标签选择器要求列表。要求的逻辑关系是 AND。 |
|
| 标签选择器要求是一个选择器,其中包含与键和值相关的值、键和值。 |
|
| matchLabels 是 {key,value} 对的映射。MatchLabels 映射中的单个 {key,value} 等同于 matchExpressions 的一个元素,其 key 字段是 "key",运算符是 "In",值数组仅包含 "value"。要求的逻辑关系是 AND。 |
2.1.58. .spec.alertmanagerConfigSelector.matchExpressions
- 描述
- matchExpressions 是标签选择器要求列表。要求的逻辑关系是 AND。
- 类型
-
array
2.1.59. .spec.alertmanagerConfigSelector.matchExpressions[]
- 描述
- 标签选择器要求是一个选择器,其中包含与键和值相关的值、键和值。
- 类型
-
object
- 必填
-
key
-
operator
-
属性 | 类型 | 描述 |
---|---|---|
|
| key 是选择器应用到的标签键。 |
|
| 运算符代表一个键与一组值的关系。有效的运算符是 In、NotIn、Exists 和 DoesNotExist。 |
|
| 值是字符串值的数组。如果运算符是 In 或 NotIn,则值数组必须是非空的。如果运算符是 Exists 或 DoesNotExist,则值数组必须为空。这个数组会在策略性合并补丁中被替换。 |
2.1.60. .spec.alertmanagerConfiguration
- 描述
-
EXPERIMENTAL: alertmanagerConfiguration 指定 Alertmanager 的配置。如果定义,它优先于
configSecret
字段。以后的发行版本中可能会改变此字段。 - 类型
-
object
属性 | 类型 | 描述 |
---|---|---|
|
| 定义 Alertmanager 配置的全局参数。 |
|
|
用于生成 Alertmanager 配置的 AlertmanagerConfig 资源的名称。它必须与 Alertmanager 对象在同一个命名空间中定义。Operator 不会为路由和禁止规则强制执行 |
|
| 自定义通知模板。 |
|
| SecretOrConfigMap 允许将数据指定为 Secret 或 ConfigMap。字段是互斥的。 |
2.1.61. .spec.alertmanagerConfiguration.global
- 描述
- 定义 Alertmanager 配置的全局参数。
- 类型
-
object
属性 | 类型 | 描述 |
---|---|---|
|
| HTTP 客户端配置。 |
|
| 如果警报不包含 EndsAt,则 ResolveTimeout 是 alertmanager 使用的默认值,在此时间通过后,它可以声明警报作为解析(如果尚未更新)。这不会影响 Prometheus 的警报,因为它们始终包含 EndsAt。 |
2.1.62. .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.63. .spec.alertmanagerConfiguration.global.httpConfig.authorization
- 描述
- 客户端的授权标头配置。这与 BasicAuth 相互排斥,且只能从 Alertmanager v0.22+ 开始。
- 类型
-
object
属性 | 类型 | 描述 |
---|---|---|
|
| 包含请求凭证的 secret 密钥 |
|
| 设置身份验证类型。默认为 Bearer,Basic 将导致错误 |
2.1.64. .spec.alertmanagerConfiguration.global.httpConfig.authorization.credentials
- 描述
- 包含请求凭证的 secret 密钥
- 类型
-
object
- 必填
-
key
-
属性 | 类型 | 描述 |
---|---|---|
|
| 要从中选择的 secret 的密钥。必须是一个有效的 secret 密钥。 |
|
| 引用的名称。更多信息: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names TODO: 添加其他有用的字段。apiVersion、kind、uid? |
|
| 指定是否需要定义 Secret 还是其密钥 |
2.1.65. .spec.alertmanagerConfiguration.global.httpConfig.basicAuth
- 描述
- 客户端的 basicAuth。这是与授权相互排斥的。如果定义了这两者,则 BasicAuth 优先。
- 类型
-
object
属性 | 类型 | 描述 |
---|---|---|
|
| 服务监控器命名空间中的 secret,其中包含用于身份验证的密码。 |
|
| 服务监控器命名空间中的 secret,其中包含用于身份验证的用户名。 |
2.1.66. .spec.alertmanagerConfiguration.global.httpConfig.basicAuth.password
- 描述
- 服务监控器命名空间中的 secret,其中包含用于身份验证的密码。
- 类型
-
object
- 必填
-
key
-
属性 | 类型 | 描述 |
---|---|---|
|
| 要从中选择的 secret 的密钥。必须是一个有效的 secret 密钥。 |
|
| 引用的名称。更多信息: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names TODO: 添加其他有用的字段。apiVersion、kind、uid? |
|
| 指定是否需要定义 Secret 还是其密钥 |
2.1.67. .spec.alertmanagerConfiguration.global.httpConfig.basicAuth.username
- 描述
- 服务监控器命名空间中的 secret,其中包含用于身份验证的用户名。
- 类型
-
object
- 必填
-
key
-
属性 | 类型 | 描述 |
---|---|---|
|
| 要从中选择的 secret 的密钥。必须是一个有效的 secret 密钥。 |
|
| 引用的名称。更多信息: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names TODO: 添加其他有用的字段。apiVersion、kind、uid? |
|
| 指定是否需要定义 Secret 还是其密钥 |
2.1.68. .spec.alertmanagerConfiguration.global.httpConfig.bearerTokenSecret
- 描述
- 包含客户端用于身份验证的 bearer 令牌的机密密钥。secret 需要与 Alertmanager 对象位于同一个命名空间中,并可以被 Prometheus Operator 访问。
- 类型
-
object
- 必填
-
key
-
属性 | 类型 | 描述 |
---|---|---|
|
| 要从中选择的 secret 的密钥。必须是一个有效的 secret 密钥。 |
|
| 引用的名称。更多信息: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names TODO: 添加其他有用的字段。apiVersion、kind、uid? |
|
| 指定是否需要定义 Secret 还是其密钥 |
2.1.69. .spec.alertmanagerConfiguration.global.httpConfig.oauth2
- 描述
- 用于获取目标令牌的 OAuth2 客户端凭据。
- 类型
-
object
- 必填
-
clientId
-
clientSecret
-
tokenUrl
-
属性 | 类型 | 描述 |
---|---|---|
|
| 包含 OAuth2 客户端 ID 的 secret 或 configmap |
|
| 包含 OAuth2 客户端 secret 的 secret |
|
| 附加到令牌 URL 的参数 |
|
| 用于令牌请求的 OAuth2 范围 |
|
| 从中获取令牌的 URL |
2.1.70. .spec.alertmanagerConfiguration.global.httpConfig.oauth2.clientId
- 描述
- 包含 OAuth2 客户端 ID 的 secret 或 configmap
- 类型
-
object
属性 | 类型 | 描述 |
---|---|---|
|
| 包含用于目标的数据的 ConfigMap。 |
|
| 包含用于目标的数据的 secret。 |
2.1.71. .spec.alertmanagerConfiguration.global.httpConfig.oauth2.clientId.configMap
- 描述
- 包含用于目标的数据的 ConfigMap。
- 类型
-
object
- 必填
-
key
-
属性 | 类型 | 描述 |
---|---|---|
|
| 要选择的密钥。 |
|
| 引用的名称。更多信息: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names TODO: 添加其他有用的字段。apiVersion、kind、uid? |
|
| 指定是否必须定义 ConfigMap 还是其键 |
2.1.72. .spec.alertmanagerConfiguration.global.httpConfig.oauth2.clientId.secret
- 描述
- 包含用于目标的数据的 secret。
- 类型
-
object
- 必填
-
key
-
属性 | 类型 | 描述 |
---|---|---|
|
| 要从中选择的 secret 的密钥。必须是一个有效的 secret 密钥。 |
|
| 引用的名称。更多信息: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names TODO: 添加其他有用的字段。apiVersion、kind、uid? |
|
| 指定是否需要定义 Secret 还是其密钥 |
2.1.73. .spec.alertmanagerConfiguration.global.httpConfig.oauth2.clientSecret
- 描述
- 包含 OAuth2 客户端 secret 的 secret
- 类型
-
object
- 必填
-
key
-
属性 | 类型 | 描述 |
---|---|---|
|
| 要从中选择的 secret 的密钥。必须是一个有效的 secret 密钥。 |
|
| 引用的名称。更多信息: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names TODO: 添加其他有用的字段。apiVersion、kind、uid? |
|
| 指定是否需要定义 Secret 还是其密钥 |
2.1.74. .spec.alertmanagerConfiguration.global.httpConfig.tlsConfig
- 描述
- 客户端的 TLS 配置。
- 类型
-
object
属性 | 类型 | 描述 |
---|---|---|
|
| 包含用于目标的 CA 证书的结构。 |
|
| 包含目标的客户端证书文件的结构。 |
|
| 禁用目标证书验证。 |
|
| 包含目标客户端密钥文件的 secret。 |
|
| 用于验证目标的主机名。 |
2.1.75. .spec.alertmanagerConfiguration.global.httpConfig.tlsConfig.ca
- 描述
- 包含用于目标的 CA 证书的结构。
- 类型
-
object
属性 | 类型 | 描述 |
---|---|---|
|
| 包含用于目标的数据的 ConfigMap。 |
|
| 包含用于目标的数据的 secret。 |
2.1.76. .spec.alertmanagerConfiguration.global.httpConfig.tlsConfig.ca.configMap
- 描述
- 包含用于目标的数据的 ConfigMap。
- 类型
-
object
- 必填
-
key
-
属性 | 类型 | 描述 |
---|---|---|
|
| 要选择的密钥。 |
|
| 引用的名称。更多信息: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names TODO: 添加其他有用的字段。apiVersion、kind、uid? |
|
| 指定是否必须定义 ConfigMap 还是其键 |
2.1.77. .spec.alertmanagerConfiguration.global.httpConfig.tlsConfig.ca.secret
- 描述
- 包含用于目标的数据的 secret。
- 类型
-
object
- 必填
-
key
-
属性 | 类型 | 描述 |
---|---|---|
|
| 要从中选择的 secret 的密钥。必须是一个有效的 secret 密钥。 |
|
| 引用的名称。更多信息: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names TODO: 添加其他有用的字段。apiVersion、kind、uid? |
|
| 指定是否需要定义 Secret 还是其密钥 |
2.1.78. .spec.alertmanagerConfiguration.global.httpConfig.tlsConfig.cert
- 描述
- 包含目标的客户端证书文件的结构。
- 类型
-
object
属性 | 类型 | 描述 |
---|---|---|
|
| 包含用于目标的数据的 ConfigMap。 |
|
| 包含用于目标的数据的 secret。 |
2.1.79. .spec.alertmanagerConfiguration.global.httpConfig.tlsConfig.cert.configMap
- 描述
- 包含用于目标的数据的 ConfigMap。
- 类型
-
object
- 必填
-
key
-
属性 | 类型 | 描述 |
---|---|---|
|
| 要选择的密钥。 |
|
| 引用的名称。更多信息: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names TODO: 添加其他有用的字段。apiVersion、kind、uid? |
|
| 指定是否必须定义 ConfigMap 还是其键 |
2.1.80. .spec.alertmanagerConfiguration.global.httpConfig.tlsConfig.cert.secret
- 描述
- 包含用于目标的数据的 secret。
- 类型
-
object
- 必填
-
key
-
属性 | 类型 | 描述 |
---|---|---|
|
| 要从中选择的 secret 的密钥。必须是一个有效的 secret 密钥。 |
|
| 引用的名称。更多信息: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names TODO: 添加其他有用的字段。apiVersion、kind、uid? |
|
| 指定是否需要定义 Secret 还是其密钥 |
2.1.81. .spec.alertmanagerConfiguration.global.httpConfig.tlsConfig.keySecret
- 描述
- 包含目标客户端密钥文件的 secret。
- 类型
-
object
- 必填
-
key
-
属性 | 类型 | 描述 |
---|---|---|
|
| 要从中选择的 secret 的密钥。必须是一个有效的 secret 密钥。 |
|
| 引用的名称。更多信息: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names TODO: 添加其他有用的字段。apiVersion、kind、uid? |
|
| 指定是否需要定义 Secret 还是其密钥 |
2.1.82. .spec.alertmanagerConfiguration.templates
- 描述
- 自定义通知模板。
- 类型
-
数组
2.1.83. .spec.alertmanagerConfiguration.templates[]
- 描述
- SecretOrConfigMap 允许将数据指定为 Secret 或 ConfigMap。字段是互斥的。
- 类型
-
object
属性 | 类型 | 描述 |
---|---|---|
|
| 包含用于目标的数据的 ConfigMap。 |
|
| 包含用于目标的数据的 secret。 |
2.1.84. .spec.alertmanagerConfiguration.templates[].configMap
- 描述
- 包含用于目标的数据的 ConfigMap。
- 类型
-
object
- 必填
-
key
-
属性 | 类型 | 描述 |
---|---|---|
|
| 要选择的密钥。 |
|
| 引用的名称。更多信息: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names TODO: 添加其他有用的字段。apiVersion、kind、uid? |
|
| 指定是否必须定义 ConfigMap 还是其键 |
2.1.85. .spec.alertmanagerConfiguration.templates[].secret
- 描述
- 包含用于目标的数据的 secret。
- 类型
-
object
- 必填
-
key
-
属性 | 类型 | 描述 |
---|---|---|
|
| 要从中选择的 secret 的密钥。必须是一个有效的 secret 密钥。 |
|
| 引用的名称。更多信息: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names TODO: 添加其他有用的字段。apiVersion、kind、uid? |
|
| 指定是否需要定义 Secret 还是其密钥 |
2.1.86. .spec.containers
- 描述
-
容器允许注入其他容器。这是允许向 Alertmanager pod 添加身份验证代理。这里描述的容器如果操作器共享相同的名称和修改,则修改通过战略合并补丁来完成。当前容器名称为:
alertmanager
和config-reloader
。覆盖容器完全超出维护人员将支持什么范围,通过这样做,您可以接受这种行为,而无需通知。 - 类型
-
array
2.1.87. .spec.containers[]
- 描述
- 要在 pod 中运行的单一应用程序容器。
- 类型
-
object
- 必填
-
name
-
属性 | 类型 | 描述 |
---|---|---|
|
| 入口点的参数。如果没有提供,则使用容器镜像的 CMD。变量引用 $(VAR_NAME)使用容器的环境扩展。如果无法解析变量,则输入字符串中的引用将保持不变。双引号被缩减为一个单个 $,它用于转义 $(VAR_NAME)语法:即 " (VAR_NAME) " 将生成字符串 "$(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) " 将生成字符串 "$(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 |
|
| 此容器所需的计算资源。无法更新。更多信息: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/ |
|
| 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.88. .spec.containers[].env
- 描述
- 容器中要设置的环境变量列表。无法更新。
- 类型
-
array
2.1.89. .spec.containers[].env[]
- 描述
- EnvVar 代表容器中存在的环境变量。
- 类型
-
object
- 必填
-
name
-
属性 | 类型 | 描述 |
---|---|---|
|
| 环境变量的名称。必须是 C_IDENTIFIER。 |
|
| 变量引用 $(VAR_NAME)使用容器中之前定义的环境变量以及任何服务环境变量进行扩展。如果无法解析变量,则输入字符串中的引用将保持不变。双引号被缩减为一个单个 $,它用于转义 $(VAR_NAME)语法:即 " (VAR_NAME) " 将生成字符串 "$(VAR_NAME) "。转义的引用永远不会扩展,无论变量是否存在。默认为 ""。 |
|
| 环境变量的值的源。如果值不为空,则无法使用。 |
2.1.90. .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.91. .spec.containers[].env[].valueFrom.configMapKeyRef
- 描述
- 选择 ConfigMap 的键。
- 类型
-
object
- 必填
-
key
-
属性 | 类型 | 描述 |
---|---|---|
|
| 要选择的密钥。 |
|
| 引用的名称。更多信息: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names TODO: 添加其他有用的字段。apiVersion、kind、uid? |
|
| 指定是否必须定义 ConfigMap 还是其键 |
2.1.92. .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.93. .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.94. .spec.containers[].env[].valueFrom.secretKeyRef
- 描述
- 在 pod 命名空间中选择 secret 的键
- 类型
-
object
- 必填
-
key
-
属性 | 类型 | 描述 |
---|---|---|
|
| 要从中选择的 secret 的密钥。必须是一个有效的 secret 密钥。 |
|
| 引用的名称。更多信息: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names TODO: 添加其他有用的字段。apiVersion、kind、uid? |
|
| 指定是否需要定义 Secret 还是其密钥 |
2.1.95. .spec.containers[].envFrom
- 描述
- 在容器中填充环境变量的源列表。源中定义的键必须是 C_IDENTIFIER。当容器启动时,所有无效密钥都会被报告为事件。当多个源中存在键时,与最后一个源关联的值将具有优先权。由带有重复键的 Env 定义的值将具有优先权。无法更新。
- 类型
-
array
2.1.96. .spec.containers[].envFrom[]
- 描述
- EnvFromSource 代表一组 ConfigMap 的源
- 类型
-
object
属性 | 类型 | 描述 |
---|---|---|
|
| 要从中选择的 ConfigMap |
|
| 要添加到 ConfigMap 中每个键的可选标识符。必须是 C_IDENTIFIER。 |
|
| 要从中选择的 Secret |
2.1.97. .spec.containers[].envFrom[].configMapRef
- 描述
- 要从中选择的 ConfigMap
- 类型
-
object
属性 | 类型 | 描述 |
---|---|---|
|
| 引用的名称。更多信息: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names TODO: 添加其他有用的字段。apiVersion、kind、uid? |
|
| 指定是否必须定义 ConfigMap |
2.1.98. .spec.containers[].envFrom[].secretRef
- 描述
- 要从中选择的 Secret
- 类型
-
object
属性 | 类型 | 描述 |
---|---|---|
|
| 引用的名称。更多信息: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names TODO: 添加其他有用的字段。apiVersion、kind、uid? |
|
| 指定是否必须定义 Secret |
2.1.99. .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.100. .spec.containers[].lifecycle.postStart
- 描述
- postStart 在容器被创建后立即调用。如果处理程序失败,则容器将根据其重启策略终止并重启。容器块的其他管理,直到 hook 完成为止。更多信息: https://kubernetes.io/docs/concepts/containers/container-lifecycle-hooks/#container-hooks
- 类型
-
object
属性 | 类型 | 描述 |
---|---|---|
|
| exec 指定要执行的操作。 |
|
| httpGet 指定要执行的 http 请求。 |
|
| 已弃用。tcpSocket 不支持作为 LifecycleHandler,并且保持向后兼容性。指定 tcp 处理程序时,没有此字段的验证和生命周期 hook 将在运行时失败。 |
2.1.101. .spec.containers[].lifecycle.postStart.exec
- 描述
- exec 指定要执行的操作。
- 类型
-
object
属性 | 类型 | 描述 |
---|---|---|
|
| 命令是在容器内执行的命令行,而 命令的工作目录是容器文件系统中的 root ('/')。命令只是 exec'd,它不会在 shell 中运行,因此传统的 shell 指令('|' 等)将无法工作。要使用 shell,您需要明确调用该 shell。0 的退出状态被视为 live/healthy,非零不健康。 |
2.1.102. .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.103. .spec.containers[].lifecycle.postStart.httpGet.httpHeaders
- 描述
- 在请求中设置的自定义标头。HTTP 允许重复的标头。
- 类型
-
array
2.1.104. .spec.containers[].lifecycle.postStart.httpGet.httpHeaders[]
- 描述
- HTTPHeader 描述了在 HTTP 探测中使用的自定义标头
- 类型
-
object
- 必填
-
name
-
value
-
属性 | 类型 | 描述 |
---|---|---|
|
| 标头字段名称 |
|
| 标头字段值 |
2.1.105. .spec.containers[].lifecycle.postStart.tcpSocket
- 描述
- 已弃用。tcpSocket 不支持作为 LifecycleHandler,并且保持向后兼容性。指定 tcp 处理程序时,没有此字段的验证和生命周期 hook 将在运行时失败。
- 类型
-
object
- 必填
-
port
-
属性 | 类型 | 描述 |
---|---|---|
|
| 可选:要连接到的主机名,默认为 pod IP。 |
|
| 用于访问容器的端口的编号或名称。number 必须在 1 到 65535 之间。名称必须是 IANA_SVC_NAME。 |
2.1.106. .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 请求。 |
|
| 已弃用。tcpSocket 不支持作为 LifecycleHandler,并且保持向后兼容性。指定 tcp 处理程序时,没有此字段的验证和生命周期 hook 将在运行时失败。 |
2.1.107. .spec.containers[].lifecycle.preStop.exec
- 描述
- exec 指定要执行的操作。
- 类型
-
object
属性 | 类型 | 描述 |
---|---|---|
|
| 命令是在容器内执行的命令行,而 命令的工作目录是容器文件系统中的 root ('/')。命令只是 exec'd,它不会在 shell 中运行,因此传统的 shell 指令('|' 等)将无法工作。要使用 shell,您需要明确调用该 shell。0 的退出状态被视为 live/healthy,非零不健康。 |
2.1.108. .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.109. .spec.containers[].lifecycle.preStop.httpGet.httpHeaders
- 描述
- 在请求中设置的自定义标头。HTTP 允许重复的标头。
- 类型
-
array
2.1.110. .spec.containers[].lifecycle.preStop.httpGet.httpHeaders[]
- 描述
- HTTPHeader 描述了在 HTTP 探测中使用的自定义标头
- 类型
-
object
- 必填
-
name
-
value
-
属性 | 类型 | 描述 |
---|---|---|
|
| 标头字段名称 |
|
| 标头字段值 |
2.1.111. .spec.containers[].lifecycle.preStop.tcpSocket
- 描述
- 已弃用。tcpSocket 不支持作为 LifecycleHandler,并且保持向后兼容性。指定 tcp 处理程序时,没有此字段的验证和生命周期 hook 将在运行时失败。
- 类型
-
object
- 必填
-
port
-
属性 | 类型 | 描述 |
---|---|---|
|
| 可选:要连接到的主机名,默认为 pod IP。 |
|
| 用于访问容器的端口的编号或名称。number 必须在 1 到 65535 之间。名称必须是 IANA_SVC_NAME。 |
2.1.112. .spec.containers[].livenessProbe
- 描述
- 容器存活度探测.如果探测失败,容器将重启。无法更新。更多信息: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes
- 类型
-
object
属性 | 类型 | 描述 |
---|---|---|
|
| exec 指定要执行的操作。 |
|
| 在成功后,探测被视为失败的最小连续失败。默认值为 3。最小值为 1。 |
|
| GRPC 指定涉及 GRPC 端口的操作。这是一个 beta 字段,需要启用 GRPCContainerProbe 功能门。 |
|
| 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.113. .spec.containers[].livenessProbe.exec
- 描述
- exec 指定要执行的操作。
- 类型
-
object
属性 | 类型 | 描述 |
---|---|---|
|
| 命令是在容器内执行的命令行,而 命令的工作目录是容器文件系统中的 root ('/')。命令只是 exec'd,它不会在 shell 中运行,因此传统的 shell 指令('|' 等)将无法工作。要使用 shell,您需要明确调用该 shell。0 的退出状态被视为 live/healthy,非零不健康。 |
2.1.114. .spec.containers[].livenessProbe.grpc
- 描述
- GRPC 指定涉及 GRPC 端口的操作。这是一个 beta 字段,需要启用 GRPCContainerProbe 功能门。
- 类型
-
object
- 必填
-
port
-
属性 | 类型 | 描述 |
---|---|---|
|
| gRPC 服务的端口号。number 必须在 1 到 65535 之间。 |
|
| service 是要放入 gRPC HealthCheckRequest 中的服务名称(请参阅 https://github.com/grpc/grpc/blob/master/doc/health-checking.md)。如果没有指定,则默认行为由 gRPC 定义。 |
2.1.115. .spec.containers[].livenessProbe.httpGet
- 描述
- httpGet 指定要执行的 http 请求。
- 类型
-
object
- 必填
-
port
-
属性 | 类型 | 描述 |
---|---|---|
|
| 要连接到的主机名,默认为 pod IP。您可能想在 httpHeaders 中设置"主机"。 |
|
| 在请求中设置的自定义标头。HTTP 允许重复的标头。 |
|
| HTTPHeader 描述了在 HTTP 探测中使用的自定义标头 |
|
| 在 HTTP 服务器上访问的路径。 |
|
| 用于访问容器的端口的名称或编号。number 必须在 1 到 65535 之间。名称必须是 IANA_SVC_NAME。 |
|
| 用于连接到主机的方案。默认为 HTTP。 |
2.1.116. .spec.containers[].livenessProbe.httpGet.httpHeaders
- 描述
- 在请求中设置的自定义标头。HTTP 允许重复的标头。
- 类型
-
array
2.1.117. .spec.containers[].livenessProbe.httpGet.httpHeaders[]
- 描述
- HTTPHeader 描述了在 HTTP 探测中使用的自定义标头
- 类型
-
object
- 必填
-
name
-
value
-
属性 | 类型 | 描述 |
---|---|---|
|
| 标头字段名称 |
|
| 标头字段值 |
2.1.118. .spec.containers[].livenessProbe.tcpSocket
- 描述
- tcpSocket 指定涉及 TCP 端口的操作。
- 类型
-
object
- 必填
-
port
-
属性 | 类型 | 描述 |
---|---|---|
|
| 可选:要连接到的主机名,默认为 pod IP。 |
|
| 用于访问容器的端口的编号或名称。number 必须在 1 到 65535 之间。名称必须是 IANA_SVC_NAME。 |
2.1.119. .spec.containers[].ports
- 描述
- 从容器公开的端口列表。这里没有指定端口不会阻止公开该端口。所有正在侦听容器内默认"0.0.0.0"地址的端口均可从网络访问。使用策略合并补丁修改阵列可能会破坏数据。如需更多信息,请参阅 https://github.com/kubernetes/kubernetes/issues/108255。无法更新。
- 类型
-
array
2.1.120. .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.121. .spec.containers[].readinessProbe
- 描述
- 容器服务的定期探测到就绪状态。如果探测失败,容器将从服务端点中删除。无法更新。更多信息: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes
- 类型
-
object
属性 | 类型 | 描述 |
---|---|---|
|
| exec 指定要执行的操作。 |
|
| 在成功后,探测被视为失败的最小连续失败。默认值为 3。最小值为 1。 |
|
| GRPC 指定涉及 GRPC 端口的操作。这是一个 beta 字段,需要启用 GRPCContainerProbe 功能门。 |
|
| 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.122. .spec.containers[].readinessProbe.exec
- 描述
- exec 指定要执行的操作。
- 类型
-
object
属性 | 类型 | 描述 |
---|---|---|
|
| 命令是在容器内执行的命令行,而 命令的工作目录是容器文件系统中的 root ('/')。命令只是 exec'd,它不会在 shell 中运行,因此传统的 shell 指令('|' 等)将无法工作。要使用 shell,您需要明确调用该 shell。0 的退出状态被视为 live/healthy,非零不健康。 |
2.1.123. .spec.containers[].readinessProbe.grpc
- 描述
- GRPC 指定涉及 GRPC 端口的操作。这是一个 beta 字段,需要启用 GRPCContainerProbe 功能门。
- 类型
-
object
- 必填
-
port
-
属性 | 类型 | 描述 |
---|---|---|
|
| gRPC 服务的端口号。number 必须在 1 到 65535 之间。 |
|
| service 是要放入 gRPC HealthCheckRequest 中的服务名称(请参阅 https://github.com/grpc/grpc/blob/master/doc/health-checking.md)。如果没有指定,则默认行为由 gRPC 定义。 |
2.1.124. .spec.containers[].readinessProbe.httpGet
- 描述
- httpGet 指定要执行的 http 请求。
- 类型
-
object
- 必填
-
port
-
属性 | 类型 | 描述 |
---|---|---|
|
| 要连接到的主机名,默认为 pod IP。您可能想在 httpHeaders 中设置"主机"。 |
|
| 在请求中设置的自定义标头。HTTP 允许重复的标头。 |
|
| HTTPHeader 描述了在 HTTP 探测中使用的自定义标头 |
|
| 在 HTTP 服务器上访问的路径。 |
|
| 用于访问容器的端口的名称或编号。number 必须在 1 到 65535 之间。名称必须是 IANA_SVC_NAME。 |
|
| 用于连接到主机的方案。默认为 HTTP。 |
2.1.125. .spec.containers[].readinessProbe.httpGet.httpHeaders
- 描述
- 在请求中设置的自定义标头。HTTP 允许重复的标头。
- 类型
-
array
2.1.126. .spec.containers[].readinessProbe.httpGet.httpHeaders[]
- 描述
- HTTPHeader 描述了在 HTTP 探测中使用的自定义标头
- 类型
-
object
- 必填
-
name
-
value
-
属性 | 类型 | 描述 |
---|---|---|
|
| 标头字段名称 |
|
| 标头字段值 |
2.1.127. .spec.containers[].readinessProbe.tcpSocket
- 描述
- tcpSocket 指定涉及 TCP 端口的操作。
- 类型
-
object
- 必填
-
port
-
属性 | 类型 | 描述 |
---|---|---|
|
| 可选:要连接到的主机名,默认为 pod IP。 |
|
| 用于访问容器的端口的编号或名称。number 必须在 1 到 65535 之间。名称必须是 IANA_SVC_NAME。 |
2.1.128. .spec.containers[].resources
- 描述
- 此容器所需的计算资源。无法更新。更多信息: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/
- 类型
-
object
属性 | 类型 | 描述 |
---|---|---|
|
| 限制描述了允许的最大计算资源量。更多信息: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/ |
|
| Requests 描述了所需的最少计算资源。如果容器省略了 Requests,则默认为 Limits (如果明确指定),否则默认为实现定义的值。更多信息: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/ |
2.1.129. .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 时,不能设置此字段。 |
|
| 运行容器时添加/丢弃的功能。默认为容器运行时授予的默认功能集。请注意,当 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.130. .spec.containers[].securityContext.capabilities
- 描述
- 运行容器时添加/丢弃的功能。默认为容器运行时授予的默认功能集。请注意,当 spec.os.name 是 windows 时无法设置此字段。
- 类型
-
object
属性 | 类型 | 描述 |
---|---|---|
|
| 添加了功能 |
|
| 删除的功能 |
2.1.131. .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.132. .spec.containers[].securityContext.seccompProfile
- 描述
- 此容器使用的 seccomp 选项。如果 seccomp 选项同时在 pod 和容器级别上提供,则容器选项会覆盖 pod 选项。请注意,当 spec.os.name 是 windows 时无法设置此字段。
- 类型
-
object
- 必填
-
type
-
属性 | 类型 | 描述 |
---|---|---|
|
| localhostProfile 表示应使用节点上文件中定义的配置集。该配置集必须在节点上预先配置才能正常工作。必须是一个降序路径,相对于 kubelet 配置的 seccomp 配置集位置。只有 type 为 "Localhost" 时,才应设置。 |
|
| Type 表示将应用了哪些 seccomp 配置集。有效选项包括: Localhost - 应该使用节点上文件中定义的配置文件。RuntimeDefault - 应使用容器运行时默认配置集。unconfined - 不应应用配置集。 |
2.1.133. .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 确定容器是否应作为"主机进程"容器运行。此字段是 alpha-level,仅包含启用 WindowsHostProcessContainers 功能标记的组件。在没有功能标记的情况下设置此字段将导致验证 Pod 时出现错误。所有 Pod 的容器都必须具有相同的有效的 HostProcess 值(不允许混合 HostProcess 容器和非主机进程容器)。另外,如果 HostProcess 为 true,则 HostNetwork 也必须设置为 true。 |
|
| Windows 中的 UserName,以运行容器进程的入口点。如果未指定,则默认为在镜像元数据中指定的用户。也可以在 PodSecurityContext 中设置。如果在 SecurityContext 和 PodSecurityContext 中设置,则 SecurityContext 中指定的值具有优先权。 |
2.1.134. .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 端口的操作。这是一个 beta 字段,需要启用 GRPCContainerProbe 功能门。 |
|
| 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.135. .spec.containers[].startupProbe.exec
- 描述
- exec 指定要执行的操作。
- 类型
-
object
属性 | 类型 | 描述 |
---|---|---|
|
| 命令是在容器内执行的命令行,而 命令的工作目录是容器文件系统中的 root ('/')。命令只是 exec'd,它不会在 shell 中运行,因此传统的 shell 指令('|' 等)将无法工作。要使用 shell,您需要明确调用该 shell。0 的退出状态被视为 live/healthy,非零不健康。 |
2.1.136. .spec.containers[].startupProbe.grpc
- 描述
- GRPC 指定涉及 GRPC 端口的操作。这是一个 beta 字段,需要启用 GRPCContainerProbe 功能门。
- 类型
-
object
- 必填
-
port
-
属性 | 类型 | 描述 |
---|---|---|
|
| gRPC 服务的端口号。number 必须在 1 到 65535 之间。 |
|
| service 是要放入 gRPC HealthCheckRequest 中的服务名称(请参阅 https://github.com/grpc/grpc/blob/master/doc/health-checking.md)。如果没有指定,则默认行为由 gRPC 定义。 |
2.1.137. .spec.containers[].startupProbe.httpGet
- 描述
- httpGet 指定要执行的 http 请求。
- 类型
-
object
- 必填
-
port
-
属性 | 类型 | 描述 |
---|---|---|
|
| 要连接到的主机名,默认为 pod IP。您可能想在 httpHeaders 中设置"主机"。 |
|
| 在请求中设置的自定义标头。HTTP 允许重复的标头。 |
|
| HTTPHeader 描述了在 HTTP 探测中使用的自定义标头 |
|
| 在 HTTP 服务器上访问的路径。 |
|
| 用于访问容器的端口的名称或编号。number 必须在 1 到 65535 之间。名称必须是 IANA_SVC_NAME。 |
|
| 用于连接到主机的方案。默认为 HTTP。 |
2.1.138. .spec.containers[].startupProbe.httpGet.httpHeaders
- 描述
- 在请求中设置的自定义标头。HTTP 允许重复的标头。
- 类型
-
array
2.1.139. .spec.containers[].startupProbe.httpGet.httpHeaders[]
- 描述
- HTTPHeader 描述了在 HTTP 探测中使用的自定义标头
- 类型
-
object
- 必填
-
name
-
value
-
属性 | 类型 | 描述 |
---|---|---|
|
| 标头字段名称 |
|
| 标头字段值 |
2.1.140. .spec.containers[].startupProbe.tcpSocket
- 描述
- tcpSocket 指定涉及 TCP 端口的操作。
- 类型
-
object
- 必填
-
port
-
属性 | 类型 | 描述 |
---|---|---|
|
| 可选:要连接到的主机名,默认为 pod IP。 |
|
| 用于访问容器的端口的编号或名称。number 必须在 1 到 65535 之间。名称必须是 IANA_SVC_NAME。 |
2.1.141. .spec.containers[].volumeDevices
- 描述
- volumeDevices 是容器要使用的块设备列表。
- 类型
-
array
2.1.142. .spec.containers[].volumeDevices[]
- 描述
- volumeDevice 描述了容器中原始块设备的映射。
- 类型
-
object
- 必填
-
devicePath
-
name
-
属性 | 类型 | 描述 |
---|---|---|
|
| DevicePath 是该设备要映射到的容器内的路径。 |
|
| name 必须与 pod 中 persistentVolumeClaim 的名称匹配 |
2.1.143. .spec.containers[].volumeMounts
- 描述
- 要挂载到容器文件系统的 Pod 卷。无法更新。
- 类型
-
array
2.1.144. .spec.containers[].volumeMounts[]
- 描述
- VolumeMount 描述了容器内卷挂载。
- 类型
-
object
- 必填
-
mountPath
-
name
-
属性 | 类型 | 描述 |
---|---|---|
|
| 应挂载卷的容器中的路径。不得包含 ':'。 |
|
| mountPropagation 决定挂载如何从主机传播到容器以及反向传播。如果没有设置,则使用 MountPropagationNone。此字段在 1.10 中是 beta。 |
|
| 这必须与卷的 Name 匹配。 |
|
| 如果为 true,则以只读方式挂载,否则读写(false 或未指定)。默认为false。 |
|
| 应从中挂载容器卷的卷中的路径。默认为 "" (卷的 root)。 |
|
| 在应该挂载容器卷的卷中扩展路径。行为与 SubPath 类似,但环境变量引用 $(VAR_NAME)使用容器的环境扩展。默认为 "" (卷的 root)。SubPathExpr 和 SubPath 是互斥的。 |
2.1.145. .spec.hostAliases
- 描述
- Pod 的 hostAliases 配置
- 类型
-
数组
2.1.146. .spec.hostAliases[]
- 描述
- HostAlias 包含 IP 和主机名之间的映射,这些映射将作为 pod 的主机文件中的条目注入。
- 类型
-
object
- 必填
-
主机名
-
ip
-
属性 | 类型 | 描述 |
---|---|---|
|
| 以上 IP 地址的主机名。 |
|
| 主机文件条目的 IP 地址。 |
2.1.147. .spec.imagePullSecrets
- 描述
- 从 registry 中对同一命名空间中的 secret 的引用列表,用于从 registry 中拉取 prometheus 和 alertmanager 镜像,请参阅 http://kubernetes.io/docs/user-guide/images#specifying-imagepullsecrets-on-a-pod
- 类型
-
array
2.1.148. .spec.imagePullSecrets[]
- 描述
- LocalObjectReference 包含足够信息,供您在同一命名空间中找到引用的对象。
- 类型
-
object
属性 | 类型 | 描述 |
---|---|---|
|
| 引用的名称。更多信息: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names TODO: 添加其他有用的字段。apiVersion、kind、uid? |
2.1.149. .spec.initContainers
- 描述
- initContainers 允许将 initContainers 添加到 pod 定义中。它们可用于从外部来源获取用于注入 Alertmanager 配置的 secret。执行 initContainer 期间的任何错误将导致重启 Pod。更多信息: https://kubernetes.io/docs/concepts/workloads/pods/init-containers/ 将 initContainers 用于任何用例,然后 secret 获取完全超出维护人员将支持什么范围,通过这样做,您可以接受这些行为随时可能中断,而无需通知。
- 类型
-
array
2.1.150. .spec.initContainers[]
- 描述
- 要在 pod 中运行的单一应用程序容器。
- 类型
-
object
- 必填
-
name
-
属性 | 类型 | 描述 |
---|---|---|
|
| 入口点的参数。如果没有提供,则使用容器镜像的 CMD。变量引用 $(VAR_NAME)使用容器的环境扩展。如果无法解析变量,则输入字符串中的引用将保持不变。双引号被缩减为一个单个 $,它用于转义 $(VAR_NAME)语法:即 " (VAR_NAME) " 将生成字符串 "$(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) " 将生成字符串 "$(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 |
|
| 此容器所需的计算资源。无法更新。更多信息: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/ |
|
| 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.151. .spec.initContainers[].env
- 描述
- 容器中要设置的环境变量列表。无法更新。
- 类型
-
array
2.1.152. .spec.initContainers[].env[]
- 描述
- EnvVar 代表容器中存在的环境变量。
- 类型
-
object
- 必填
-
name
-
属性 | 类型 | 描述 |
---|---|---|
|
| 环境变量的名称。必须是 C_IDENTIFIER。 |
|
| 变量引用 $(VAR_NAME)使用容器中之前定义的环境变量以及任何服务环境变量进行扩展。如果无法解析变量,则输入字符串中的引用将保持不变。双引号被缩减为一个单个 $,它用于转义 $(VAR_NAME)语法:即 " (VAR_NAME) " 将生成字符串 "$(VAR_NAME) "。转义的引用永远不会扩展,无论变量是否存在。默认为 ""。 |
|
| 环境变量的值的源。如果值不为空,则无法使用。 |
2.1.153. .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.154. .spec.initContainers[].env[].valueFrom.configMapKeyRef
- 描述
- 选择 ConfigMap 的键。
- 类型
-
object
- 必填
-
key
-
属性 | 类型 | 描述 |
---|---|---|
|
| 要选择的密钥。 |
|
| 引用的名称。更多信息: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names TODO: 添加其他有用的字段。apiVersion、kind、uid? |
|
| 指定是否必须定义 ConfigMap 还是其键 |
2.1.155. .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.156. .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.157. .spec.initContainers[].env[].valueFrom.secretKeyRef
- 描述
- 在 pod 命名空间中选择 secret 的键
- 类型
-
object
- 必填
-
key
-
属性 | 类型 | 描述 |
---|---|---|
|
| 要从中选择的 secret 的密钥。必须是一个有效的 secret 密钥。 |
|
| 引用的名称。更多信息: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names TODO: 添加其他有用的字段。apiVersion、kind、uid? |
|
| 指定是否需要定义 Secret 还是其密钥 |
2.1.158. .spec.initContainers[].envFrom
- 描述
- 在容器中填充环境变量的源列表。源中定义的键必须是 C_IDENTIFIER。当容器启动时,所有无效密钥都会被报告为事件。当多个源中存在键时,与最后一个源关联的值将具有优先权。由带有重复键的 Env 定义的值将具有优先权。无法更新。
- 类型
-
array
2.1.159. .spec.initContainers[].envFrom[]
- 描述
- EnvFromSource 代表一组 ConfigMap 的源
- 类型
-
object
属性 | 类型 | 描述 |
---|---|---|
|
| 要从中选择的 ConfigMap |
|
| 要添加到 ConfigMap 中每个键的可选标识符。必须是 C_IDENTIFIER。 |
|
| 要从中选择的 Secret |
2.1.160. .spec.initContainers[].envFrom[].configMapRef
- 描述
- 要从中选择的 ConfigMap
- 类型
-
object
属性 | 类型 | 描述 |
---|---|---|
|
| 引用的名称。更多信息: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names TODO: 添加其他有用的字段。apiVersion、kind、uid? |
|
| 指定是否必须定义 ConfigMap |
2.1.161. .spec.initContainers[].envFrom[].secretRef
- 描述
- 要从中选择的 Secret
- 类型
-
object
属性 | 类型 | 描述 |
---|---|---|
|
| 引用的名称。更多信息: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names TODO: 添加其他有用的字段。apiVersion、kind、uid? |
|
| 指定是否必须定义 Secret |
2.1.162. .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.163. .spec.initContainers[].lifecycle.postStart
- 描述
- postStart 在容器被创建后立即调用。如果处理程序失败,则容器将根据其重启策略终止并重启。容器块的其他管理,直到 hook 完成为止。更多信息: https://kubernetes.io/docs/concepts/containers/container-lifecycle-hooks/#container-hooks
- 类型
-
object
属性 | 类型 | 描述 |
---|---|---|
|
| exec 指定要执行的操作。 |
|
| httpGet 指定要执行的 http 请求。 |
|
| 已弃用。tcpSocket 不支持作为 LifecycleHandler,并且保持向后兼容性。指定 tcp 处理程序时,没有此字段的验证和生命周期 hook 将在运行时失败。 |
2.1.164. .spec.initContainers[].lifecycle.postStart.exec
- 描述
- exec 指定要执行的操作。
- 类型
-
object
属性 | 类型 | 描述 |
---|---|---|
|
| 命令是在容器内执行的命令行,而 命令的工作目录是容器文件系统中的 root ('/')。命令只是 exec'd,它不会在 shell 中运行,因此传统的 shell 指令('|' 等)将无法工作。要使用 shell,您需要明确调用该 shell。0 的退出状态被视为 live/healthy,非零不健康。 |
2.1.165. .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.166. .spec.initContainers[].lifecycle.postStart.httpGet.httpHeaders
- 描述
- 在请求中设置的自定义标头。HTTP 允许重复的标头。
- 类型
-
array
2.1.167. .spec.initContainers[].lifecycle.postStart.httpGet.httpHeaders[]
- 描述
- HTTPHeader 描述了在 HTTP 探测中使用的自定义标头
- 类型
-
object
- 必填
-
name
-
value
-
属性 | 类型 | 描述 |
---|---|---|
|
| 标头字段名称 |
|
| 标头字段值 |
2.1.168. .spec.initContainers[].lifecycle.postStart.tcpSocket
- 描述
- 已弃用。tcpSocket 不支持作为 LifecycleHandler,并且保持向后兼容性。指定 tcp 处理程序时,没有此字段的验证和生命周期 hook 将在运行时失败。
- 类型
-
object
- 必填
-
port
-
属性 | 类型 | 描述 |
---|---|---|
|
| 可选:要连接到的主机名,默认为 pod IP。 |
|
| 用于访问容器的端口的编号或名称。number 必须在 1 到 65535 之间。名称必须是 IANA_SVC_NAME。 |
2.1.169. .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 请求。 |
|
| 已弃用。tcpSocket 不支持作为 LifecycleHandler,并且保持向后兼容性。指定 tcp 处理程序时,没有此字段的验证和生命周期 hook 将在运行时失败。 |
2.1.170. .spec.initContainers[].lifecycle.preStop.exec
- 描述
- exec 指定要执行的操作。
- 类型
-
object
属性 | 类型 | 描述 |
---|---|---|
|
| 命令是在容器内执行的命令行,而 命令的工作目录是容器文件系统中的 root ('/')。命令只是 exec'd,它不会在 shell 中运行,因此传统的 shell 指令('|' 等)将无法工作。要使用 shell,您需要明确调用该 shell。0 的退出状态被视为 live/healthy,非零不健康。 |
2.1.171. .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.172. .spec.initContainers[].lifecycle.preStop.httpGet.httpHeaders
- 描述
- 在请求中设置的自定义标头。HTTP 允许重复的标头。
- 类型
-
array
2.1.173. .spec.initContainers[].lifecycle.preStop.httpGet.httpHeaders[]
- 描述
- HTTPHeader 描述了在 HTTP 探测中使用的自定义标头
- 类型
-
object
- 必填
-
name
-
value
-
属性 | 类型 | 描述 |
---|---|---|
|
| 标头字段名称 |
|
| 标头字段值 |
2.1.174. .spec.initContainers[].lifecycle.preStop.tcpSocket
- 描述
- 已弃用。tcpSocket 不支持作为 LifecycleHandler,并且保持向后兼容性。指定 tcp 处理程序时,没有此字段的验证和生命周期 hook 将在运行时失败。
- 类型
-
object
- 必填
-
port
-
属性 | 类型 | 描述 |
---|---|---|
|
| 可选:要连接到的主机名,默认为 pod IP。 |
|
| 用于访问容器的端口的编号或名称。number 必须在 1 到 65535 之间。名称必须是 IANA_SVC_NAME。 |
2.1.175. .spec.initContainers[].livenessProbe
- 描述
- 容器存活度探测.如果探测失败,容器将重启。无法更新。更多信息: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes
- 类型
-
object
属性 | 类型 | 描述 |
---|---|---|
|
| exec 指定要执行的操作。 |
|
| 在成功后,探测被视为失败的最小连续失败。默认值为 3。最小值为 1。 |
|
| GRPC 指定涉及 GRPC 端口的操作。这是一个 beta 字段,需要启用 GRPCContainerProbe 功能门。 |
|
| 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.176. .spec.initContainers[].livenessProbe.exec
- 描述
- exec 指定要执行的操作。
- 类型
-
object
属性 | 类型 | 描述 |
---|---|---|
|
| 命令是在容器内执行的命令行,而 命令的工作目录是容器文件系统中的 root ('/')。命令只是 exec'd,它不会在 shell 中运行,因此传统的 shell 指令('|' 等)将无法工作。要使用 shell,您需要明确调用该 shell。0 的退出状态被视为 live/healthy,非零不健康。 |
2.1.177. .spec.initContainers[].livenessProbe.grpc
- 描述
- GRPC 指定涉及 GRPC 端口的操作。这是一个 beta 字段,需要启用 GRPCContainerProbe 功能门。
- 类型
-
object
- 必填
-
port
-
属性 | 类型 | 描述 |
---|---|---|
|
| gRPC 服务的端口号。number 必须在 1 到 65535 之间。 |
|
| service 是要放入 gRPC HealthCheckRequest 中的服务名称(请参阅 https://github.com/grpc/grpc/blob/master/doc/health-checking.md)。如果没有指定,则默认行为由 gRPC 定义。 |
2.1.178. .spec.initContainers[].livenessProbe.httpGet
- 描述
- httpGet 指定要执行的 http 请求。
- 类型
-
object
- 必填
-
port
-
属性 | 类型 | 描述 |
---|---|---|
|
| 要连接到的主机名,默认为 pod IP。您可能想在 httpHeaders 中设置"主机"。 |
|
| 在请求中设置的自定义标头。HTTP 允许重复的标头。 |
|
| HTTPHeader 描述了在 HTTP 探测中使用的自定义标头 |
|
| 在 HTTP 服务器上访问的路径。 |
|
| 用于访问容器的端口的名称或编号。number 必须在 1 到 65535 之间。名称必须是 IANA_SVC_NAME。 |
|
| 用于连接到主机的方案。默认为 HTTP。 |
2.1.179. .spec.initContainers[].livenessProbe.httpGet.httpHeaders
- 描述
- 在请求中设置的自定义标头。HTTP 允许重复的标头。
- 类型
-
array
2.1.180. .spec.initContainers[].livenessProbe.httpGet.httpHeaders[]
- 描述
- HTTPHeader 描述了在 HTTP 探测中使用的自定义标头
- 类型
-
object
- 必填
-
name
-
value
-
属性 | 类型 | 描述 |
---|---|---|
|
| 标头字段名称 |
|
| 标头字段值 |
2.1.181. .spec.initContainers[].livenessProbe.tcpSocket
- 描述
- tcpSocket 指定涉及 TCP 端口的操作。
- 类型
-
object
- 必填
-
port
-
属性 | 类型 | 描述 |
---|---|---|
|
| 可选:要连接到的主机名,默认为 pod IP。 |
|
| 用于访问容器的端口的编号或名称。number 必须在 1 到 65535 之间。名称必须是 IANA_SVC_NAME。 |
2.1.182. .spec.initContainers[].ports
- 描述
- 从容器公开的端口列表。这里没有指定端口不会阻止公开该端口。所有正在侦听容器内默认"0.0.0.0"地址的端口均可从网络访问。使用策略合并补丁修改阵列可能会破坏数据。如需更多信息,请参阅 https://github.com/kubernetes/kubernetes/issues/108255。无法更新。
- 类型
-
array
2.1.183. .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.184. .spec.initContainers[].readinessProbe
- 描述
- 容器服务的定期探测到就绪状态。如果探测失败,容器将从服务端点中删除。无法更新。更多信息: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes
- 类型
-
object
属性 | 类型 | 描述 |
---|---|---|
|
| exec 指定要执行的操作。 |
|
| 在成功后,探测被视为失败的最小连续失败。默认值为 3。最小值为 1。 |
|
| GRPC 指定涉及 GRPC 端口的操作。这是一个 beta 字段,需要启用 GRPCContainerProbe 功能门。 |
|
| 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.185. .spec.initContainers[].readinessProbe.exec
- 描述
- exec 指定要执行的操作。
- 类型
-
object
属性 | 类型 | 描述 |
---|---|---|
|
| 命令是在容器内执行的命令行,而 命令的工作目录是容器文件系统中的 root ('/')。命令只是 exec'd,它不会在 shell 中运行,因此传统的 shell 指令('|' 等)将无法工作。要使用 shell,您需要明确调用该 shell。0 的退出状态被视为 live/healthy,非零不健康。 |
2.1.186. .spec.initContainers[].readinessProbe.grpc
- 描述
- GRPC 指定涉及 GRPC 端口的操作。这是一个 beta 字段,需要启用 GRPCContainerProbe 功能门。
- 类型
-
object
- 必填
-
port
-
属性 | 类型 | 描述 |
---|---|---|
|
| gRPC 服务的端口号。number 必须在 1 到 65535 之间。 |
|
| service 是要放入 gRPC HealthCheckRequest 中的服务名称(请参阅 https://github.com/grpc/grpc/blob/master/doc/health-checking.md)。如果没有指定,则默认行为由 gRPC 定义。 |
2.1.187. .spec.initContainers[].readinessProbe.httpGet
- 描述
- httpGet 指定要执行的 http 请求。
- 类型
-
object
- 必填
-
port
-
属性 | 类型 | 描述 |
---|---|---|
|
| 要连接到的主机名,默认为 pod IP。您可能想在 httpHeaders 中设置"主机"。 |
|
| 在请求中设置的自定义标头。HTTP 允许重复的标头。 |
|
| HTTPHeader 描述了在 HTTP 探测中使用的自定义标头 |
|
| 在 HTTP 服务器上访问的路径。 |
|
| 用于访问容器的端口的名称或编号。number 必须在 1 到 65535 之间。名称必须是 IANA_SVC_NAME。 |
|
| 用于连接到主机的方案。默认为 HTTP。 |
2.1.188. .spec.initContainers[].readinessProbe.httpGet.httpHeaders
- 描述
- 在请求中设置的自定义标头。HTTP 允许重复的标头。
- 类型
-
array
2.1.189. .spec.initContainers[].readinessProbe.httpGet.httpHeaders[]
- 描述
- HTTPHeader 描述了在 HTTP 探测中使用的自定义标头
- 类型
-
object
- 必填
-
name
-
value
-
属性 | 类型 | 描述 |
---|---|---|
|
| 标头字段名称 |
|
| 标头字段值 |
2.1.190. .spec.initContainers[].readinessProbe.tcpSocket
- 描述
- tcpSocket 指定涉及 TCP 端口的操作。
- 类型
-
object
- 必填
-
port
-
属性 | 类型 | 描述 |
---|---|---|
|
| 可选:要连接到的主机名,默认为 pod IP。 |
|
| 用于访问容器的端口的编号或名称。number 必须在 1 到 65535 之间。名称必须是 IANA_SVC_NAME。 |
2.1.191. .spec.initContainers[].resources
- 描述
- 此容器所需的计算资源。无法更新。更多信息: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/
- 类型
-
object
属性 | 类型 | 描述 |
---|---|---|
|
| 限制描述了允许的最大计算资源量。更多信息: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/ |
|
| Requests 描述了所需的最少计算资源。如果容器省略了 Requests,则默认为 Limits (如果明确指定),否则默认为实现定义的值。更多信息: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/ |
2.1.192. .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 时,不能设置此字段。 |
|
| 运行容器时添加/丢弃的功能。默认为容器运行时授予的默认功能集。请注意,当 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.193. .spec.initContainers[].securityContext.capabilities
- 描述
- 运行容器时添加/丢弃的功能。默认为容器运行时授予的默认功能集。请注意,当 spec.os.name 是 windows 时无法设置此字段。
- 类型
-
object
属性 | 类型 | 描述 |
---|---|---|
|
| 添加了功能 |
|
| 删除的功能 |
2.1.194. .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.195. .spec.initContainers[].securityContext.seccompProfile
- 描述
- 此容器使用的 seccomp 选项。如果 seccomp 选项同时在 pod 和容器级别上提供,则容器选项会覆盖 pod 选项。请注意,当 spec.os.name 是 windows 时无法设置此字段。
- 类型
-
object
- 必填
-
type
-
属性 | 类型 | 描述 |
---|---|---|
|
| localhostProfile 表示应使用节点上文件中定义的配置集。该配置集必须在节点上预先配置才能正常工作。必须是一个降序路径,相对于 kubelet 配置的 seccomp 配置集位置。只有 type 为 "Localhost" 时,才应设置。 |
|
| Type 表示将应用了哪些 seccomp 配置集。有效选项包括: Localhost - 应该使用节点上文件中定义的配置文件。RuntimeDefault - 应使用容器运行时默认配置集。unconfined - 不应应用配置集。 |
2.1.196. .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 确定容器是否应作为"主机进程"容器运行。此字段是 alpha-level,仅包含启用 WindowsHostProcessContainers 功能标记的组件。在没有功能标记的情况下设置此字段将导致验证 Pod 时出现错误。所有 Pod 的容器都必须具有相同的有效的 HostProcess 值(不允许混合 HostProcess 容器和非主机进程容器)。另外,如果 HostProcess 为 true,则 HostNetwork 也必须设置为 true。 |
|
| Windows 中的 UserName,以运行容器进程的入口点。如果未指定,则默认为在镜像元数据中指定的用户。也可以在 PodSecurityContext 中设置。如果在 SecurityContext 和 PodSecurityContext 中设置,则 SecurityContext 中指定的值具有优先权。 |
2.1.197. .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 端口的操作。这是一个 beta 字段,需要启用 GRPCContainerProbe 功能门。 |
|
| 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.198. .spec.initContainers[].startupProbe.exec
- 描述
- exec 指定要执行的操作。
- 类型
-
object
属性 | 类型 | 描述 |
---|---|---|
|
| 命令是在容器内执行的命令行,而 命令的工作目录是容器文件系统中的 root ('/')。命令只是 exec'd,它不会在 shell 中运行,因此传统的 shell 指令('|' 等)将无法工作。要使用 shell,您需要明确调用该 shell。0 的退出状态被视为 live/healthy,非零不健康。 |
2.1.199. .spec.initContainers[].startupProbe.grpc
- 描述
- GRPC 指定涉及 GRPC 端口的操作。这是一个 beta 字段,需要启用 GRPCContainerProbe 功能门。
- 类型
-
object
- 必填
-
port
-
属性 | 类型 | 描述 |
---|---|---|
|
| gRPC 服务的端口号。number 必须在 1 到 65535 之间。 |
|
| service 是要放入 gRPC HealthCheckRequest 中的服务名称(请参阅 https://github.com/grpc/grpc/blob/master/doc/health-checking.md)。如果没有指定,则默认行为由 gRPC 定义。 |
2.1.200. .spec.initContainers[].startupProbe.httpGet
- 描述
- httpGet 指定要执行的 http 请求。
- 类型
-
object
- 必填
-
port
-
属性 | 类型 | 描述 |
---|---|---|
|
| 要连接到的主机名,默认为 pod IP。您可能想在 httpHeaders 中设置"主机"。 |
|
| 在请求中设置的自定义标头。HTTP 允许重复的标头。 |
|
| HTTPHeader 描述了在 HTTP 探测中使用的自定义标头 |
|
| 在 HTTP 服务器上访问的路径。 |
|
| 用于访问容器的端口的名称或编号。number 必须在 1 到 65535 之间。名称必须是 IANA_SVC_NAME。 |
|
| 用于连接到主机的方案。默认为 HTTP。 |
2.1.201. .spec.initContainers[].startupProbe.httpGet.httpHeaders
- 描述
- 在请求中设置的自定义标头。HTTP 允许重复的标头。
- 类型
-
array
2.1.202. .spec.initContainers[].startupProbe.httpGet.httpHeaders[]
- 描述
- HTTPHeader 描述了在 HTTP 探测中使用的自定义标头
- 类型
-
object
- 必填
-
name
-
value
-
属性 | 类型 | 描述 |
---|---|---|
|
| 标头字段名称 |
|
| 标头字段值 |
2.1.203. .spec.initContainers[].startupProbe.tcpSocket
- 描述
- tcpSocket 指定涉及 TCP 端口的操作。
- 类型
-
object
- 必填
-
port
-
属性 | 类型 | 描述 |
---|---|---|
|
| 可选:要连接到的主机名,默认为 pod IP。 |
|
| 用于访问容器的端口的编号或名称。number 必须在 1 到 65535 之间。名称必须是 IANA_SVC_NAME。 |
2.1.204. .spec.initContainers[].volumeDevices
- 描述
- volumeDevices 是容器要使用的块设备列表。
- 类型
-
array
2.1.205. .spec.initContainers[].volumeDevices[]
- 描述
- volumeDevice 描述了容器中原始块设备的映射。
- 类型
-
object
- 必填
-
devicePath
-
name
-
属性 | 类型 | 描述 |
---|---|---|
|
| DevicePath 是该设备要映射到的容器内的路径。 |
|
| name 必须与 pod 中 persistentVolumeClaim 的名称匹配 |
2.1.206. .spec.initContainers[].volumeMounts
- 描述
- 要挂载到容器文件系统的 Pod 卷。无法更新。
- 类型
-
array
2.1.207. .spec.initContainers[].volumeMounts[]
- 描述
- VolumeMount 描述了容器内卷挂载。
- 类型
-
object
- 必填
-
mountPath
-
name
-
属性 | 类型 | 描述 |
---|---|---|
|
| 应挂载卷的容器中的路径。不得包含 ':'。 |
|
| mountPropagation 决定挂载如何从主机传播到容器以及反向传播。如果没有设置,则使用 MountPropagationNone。此字段在 1.10 中是 beta。 |
|
| 这必须与卷的 Name 匹配。 |
|
| 如果为 true,则以只读方式挂载,否则读写(false 或未指定)。默认为false。 |
|
| 应从中挂载容器卷的卷中的路径。默认为 "" (卷的 root)。 |
|
| 在应该挂载容器卷的卷中扩展路径。行为与 SubPath 类似,但环境变量引用 $(VAR_NAME)使用容器的环境扩展。默认为 "" (卷的 root)。SubPathExpr 和 SubPath 是互斥的。 |
2.1.208. .spec.podMetadata
- 描述
- podMetadata 配置传播到 alertmanager pod 的 Labels 和 Annotations。
- 类型
-
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.209. .spec.resources
- 描述
- 为单个 Pod 定义资源请求和限值。
- 类型
-
object
属性 | 类型 | 描述 |
---|---|---|
|
| 限制描述了允许的最大计算资源量。更多信息: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/ |
|
| Requests 描述了所需的最少计算资源。如果容器省略了 Requests,则默认为 Limits (如果明确指定),否则默认为实现定义的值。更多信息: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/ |
2.1.210. .spec.securityContext
- 描述
- securityContext 包含 pod 级别的安全属性和通用容器设置。默认为默认的 PodSecurityContext。
- 类型
-
object
属性 | 类型 | 描述 |
---|---|---|
|
| 适用于 pod 中所有容器的特殊补充组。有些卷类型允许 Kubelet 将该卷的所有权更改为 pod: 1 所有。拥有的 GID 为 FSGroup 2。设置 setgid 位(卷中创建的新文件将归 FSGroup 所有)3。权限位是 OR'd with rw-rw---- If unset,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 外,还应用于每个进程的第一个进程的组列表。如果未指定,则不会将任何组添加到任何容器中。请注意,当 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.211. .spec.securityContext.seLinuxOptions
- 描述
- 要应用到所有容器的 SELinux 上下文。如果未指定,容器运行时将为每个容器分配一个随机 SELinux 上下文。还可能会在 SecurityContext 中设置。如果在 SecurityContext 和 PodSecurityContext 中设置,则 SecurityContext 中指定的值优先于该容器。请注意,当 spec.os.name 是 windows 时无法设置此字段。
- 类型
-
object
属性 | 类型 | 描述 |
---|---|---|
|
| level 是适用于容器的 SELinux 级别标签。 |
|
| role 是适用于容器的 SELinux 角色标签。 |
|
| type 是适用于容器的 SELinux 类型标签。 |
|
| user 是适用于容器的 SELinux 用户标签。 |
2.1.212. .spec.securityContext.seccompProfile
- 描述
- 此 pod 中容器使用的 seccomp 选项。请注意,当 spec.os.name 是 windows 时无法设置此字段。
- 类型
-
object
- 必填
-
type
-
属性 | 类型 | 描述 |
---|---|---|
|
| localhostProfile 表示应使用节点上文件中定义的配置集。该配置集必须在节点上预先配置才能正常工作。必须是一个降序路径,相对于 kubelet 配置的 seccomp 配置集位置。只有 type 为 "Localhost" 时,才应设置。 |
|
| Type 表示将应用了哪些 seccomp 配置集。有效选项包括: Localhost - 应该使用节点上文件中定义的配置文件。RuntimeDefault - 应使用容器运行时默认配置集。unconfined - 不应应用配置集。 |
2.1.213. .spec.securityContext.sysctls
- 描述
- sysctl 包含用于 pod 的命名空间 sysctl 列表。带有不支持 sysctl (容器运行时)的 Pod 可能无法启动。请注意,当 spec.os.name 是 windows 时无法设置此字段。
- 类型
-
array
2.1.214. .spec.securityContext.sysctls[]
- 描述
- sysctl 定义要设置的内核参数
- 类型
-
object
- 必填
-
name
-
value
-
属性 | 类型 | 描述 |
---|---|---|
|
| 要设置的属性的名称 |
|
| 要设置的属性值 |
2.1.215. .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 确定容器是否应作为"主机进程"容器运行。此字段是 alpha-level,仅包含启用 WindowsHostProcessContainers 功能标记的组件。在没有功能标记的情况下设置此字段将导致验证 Pod 时出现错误。所有 Pod 的容器都必须具有相同的有效的 HostProcess 值(不允许混合 HostProcess 容器和非主机进程容器)。另外,如果 HostProcess 为 true,则 HostNetwork 也必须设置为 true。 |
|
| Windows 中的 UserName,以运行容器进程的入口点。如果未指定,则默认为在镜像元数据中指定的用户。也可以在 PodSecurityContext 中设置。如果在 SecurityContext 和 PodSecurityContext 中设置,则 SecurityContext 中指定的值具有优先权。 |
2.1.216. .spec.storage
- 描述
- 存储是 Alertmanager 实例如何使用存储的定义。
- 类型
-
object
属性 | 类型 | 描述 |
---|---|---|
|
| 弃用:在以后的发行版本中默认禁用 subPath 用法,这个选项会变得不必要的。DisableMountSubPath 允许删除卷挂载中的任何 subPath 使用量。 |
|
| Prometheus StatefulSets 使用的 EmptyDirVolumeSource。如果指定,则使用它代替任何 volumeClaimTemplate。更多信息: https://kubernetes.io/docs/concepts/storage/volumes/#emptydir |
|
| Prometheus StatefulSets 使用的 EphemeralVolumeSource。这是 k8s 1.21 中的 beta 字段,用于较低版本,从 k8s 1.19 开始,它需要启用 GenericEphemeralVolume 功能门。更多信息: https://kubernetes.io/docs/concepts/storage/ephemeral-volumes/#generic-ephemeral-volumes |
|
| Prometheus StatefulSets 使用的 PVC spec。 |
2.1.217. .spec.storage.emptyDir
- 描述
- Prometheus StatefulSets 使用的 EmptyDirVolumeSource。如果指定,则使用它代替任何 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,这意味着限制未定义。更多信息: http://kubernetes.io/docs/user-guide/volumes#emptydir |
2.1.218. .spec.storage.ephemeral
- 描述
- Prometheus StatefulSets 使用的 EphemeralVolumeSource。这是 k8s 1.21 中的 beta 字段,用于较低版本,从 k8s 1.19 开始,它需要启用 GenericEphemeralVolume 功能门。更多信息: https://kubernetes.io/docs/concepts/storage/ephemeral-volumes/#generic-ephemeral-volumes
- 类型
-
object
属性 | 类型 | 描述 |
---|---|---|
|
|
将用于创建独立 PVC 来置备卷。嵌入此 EphemeralVolumeSource 的 pod 将是 PVC 的所有者,即 PVC 将与 pod 一起删除。PVC 的名称将是 < |
2.1.219. .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.220. .spec.storage.ephemeral.volumeClaimTemplate.metadata
- 描述
- 可能包含创建 PVC 时将复制到 PVC 的标签和注解。不允许其他字段,并在验证过程中被拒绝。
- 类型
-
object
2.1.221. .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 功能门,此字段始终与 DataSourceRef 字段具有相同的内容。 |
|
| 如果需要非空卷,则 dataSourceRef 指定要使用数据填充卷的对象。这可能是来自非空 API 组(非核心对象)或 PersistentVolumeClaim 对象的任何本地对象。当指定对象的类型与某些安装的卷填充或动态置备程序匹配时,卷绑定才会成功。此字段将替换 DataSource 字段的功能,如果两个字段都不是空的,则它们必须具有相同的值。为向后兼容,如果其中一个字段为空,则两个字段(DataSource 和 DataSourceRef)将自动设置为相同的值,另一个是非空的。DataSource 和 DataSourceRef 之间有两个重要区别:* While DataSource 只允许两种特定类型的对象,DataSourceRef 允许任何非核心对象和 PersistentVolumeClaim 对象。* 虽然 DataSource 忽略了禁止的值(丢弃它们),DataSourceRef 保留所有值,并在指定禁止的值时生成错误。(Beta)使用此字段需要启用 AnyVolumeDataSource 功能门。 |
|
| 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 |
|
| volumeMode 定义声明需要哪些卷类型。当未包含在 claim spec 中时,文件系统的值会被表示。 |
|
| volumeName 是对此声明支持的 PersistentVolume 的绑定引用。 |
2.1.222. .spec.storage.ephemeral.volumeClaimTemplate.spec.dataSource
- 描述
- Datasource 字段可以用来指定:* 一个现有的 VolumeSnapshot 对象(snapshot.storage.k8s.io/VolumeSnapshot)* 一个现有的 PVC (PersistentVolumeClaim),如果置备程序或外部控制器可以支持指定的数据源,它将基于指定数据源的内容创建一个新卷。如果启用了 AnyVolumeDataSource 功能门,此字段始终与 DataSourceRef 字段具有相同的内容。
- 类型
-
object
- 必填
-
kind
-
name
-
属性 | 类型 | 描述 |
---|---|---|
|
| APIGroup 是所引用资源的组。如果没有指定 APIGroup,则指定的 Kind 必须位于 core API 组中。对于任何其他第三方类型,需要 APIGroup。 |
|
| kind 是被引用的资源类型 |
|
| name 是被引用的资源的名称 |
2.1.223. .spec.storage.ephemeral.volumeClaimTemplate.spec.dataSourceRef
- 描述
- 如果需要非空卷,则 dataSourceRef 指定要使用数据填充卷的对象。这可能是来自非空 API 组(非核心对象)或 PersistentVolumeClaim 对象的任何本地对象。当指定对象的类型与某些安装的卷填充或动态置备程序匹配时,卷绑定才会成功。此字段将替换 DataSource 字段的功能,如果两个字段都不是空的,则它们必须具有相同的值。为向后兼容,如果其中一个字段为空,则两个字段(DataSource 和 DataSourceRef)将自动设置为相同的值,另一个是非空的。DataSource 和 DataSourceRef 之间有两个重要区别:* While DataSource 只允许两种特定类型的对象,DataSourceRef 允许任何非核心对象和 PersistentVolumeClaim 对象。* 虽然 DataSource 忽略了禁止的值(丢弃它们),DataSourceRef 保留所有值,并在指定禁止的值时生成错误。(Beta)使用此字段需要启用 AnyVolumeDataSource 功能门。
- 类型
-
object
- 必填
-
kind
-
name
-
属性 | 类型 | 描述 |
---|---|---|
|
| APIGroup 是所引用资源的组。如果没有指定 APIGroup,则指定的 Kind 必须位于 core API 组中。对于任何其他第三方类型,需要 APIGroup。 |
|
| kind 是被引用的资源类型 |
|
| name 是被引用的资源的名称 |
2.1.224. .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.225. .spec.storage.ephemeral.volumeClaimTemplate.spec.selector
- 描述
- selector 是要考虑绑定的卷的标签查询。
- 类型
-
object
属性 | 类型 | 描述 |
---|---|---|
|
| matchExpressions 是标签选择器要求列表。要求的逻辑关系是 AND。 |
|
| 标签选择器要求是一个选择器,其中包含与键和值相关的值、键和值。 |
|
| matchLabels 是 {key,value} 对的映射。MatchLabels 映射中的单个 {key,value} 等同于 matchExpressions 的一个元素,其 key 字段是 "key",运算符是 "In",值数组仅包含 "value"。要求的逻辑关系是 AND。 |
2.1.226. .spec.storage.ephemeral.volumeClaimTemplate.spec.selector.matchExpressions
- 描述
- matchExpressions 是标签选择器要求列表。要求的逻辑关系是 AND。
- 类型
-
数组
2.1.227. .spec.storage.ephemeral.volumeClaimTemplate.spec.selector.matchExpressions[]
- 描述
- 标签选择器要求是一个选择器,其中包含与键和值相关的值、键和值。
- 类型
-
object
- 必填
-
key
-
operator
-
属性 | 类型 | 描述 |
---|---|---|
|
| key 是选择器应用到的标签键。 |
|
| 运算符代表一个键与一组值的关系。有效的运算符是 In、NotIn、Exists 和 DoesNotExist。 |
|
| 值是字符串值的数组。如果运算符是 In 或 NotIn,则值数组必须是非空的。如果运算符是 Exists 或 DoesNotExist,则值数组必须为空。这个数组会在策略性合并补丁中被替换。 |
2.1.228. .spec.storage.volumeClaimTemplate
- 描述
- Prometheus StatefulSets 使用的 PVC spec。
- 类型
-
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 相关的元数据。 |
|
| spec 定义 pod 作者请求的卷所需的特征。更多信息: https://kubernetes.io/docs/concepts/storage/persistent-volumes#persistentvolumeclaims |
|
| status 代表持久性卷声明的当前信息/状态。只读。更多信息: https://kubernetes.io/docs/concepts/storage/persistent-volumes#persistentvolumeclaims |
2.1.229. .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.230. .spec.storage.volumeClaimTemplate.spec
- 描述
- 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 功能门,此字段始终与 DataSourceRef 字段具有相同的内容。 |
|
| 如果需要非空卷,则 dataSourceRef 指定要使用数据填充卷的对象。这可能是来自非空 API 组(非核心对象)或 PersistentVolumeClaim 对象的任何本地对象。当指定对象的类型与某些安装的卷填充或动态置备程序匹配时,卷绑定才会成功。此字段将替换 DataSource 字段的功能,如果两个字段都不是空的,则它们必须具有相同的值。为向后兼容,如果其中一个字段为空,则两个字段(DataSource 和 DataSourceRef)将自动设置为相同的值,另一个是非空的。DataSource 和 DataSourceRef 之间有两个重要区别:* While DataSource 只允许两种特定类型的对象,DataSourceRef 允许任何非核心对象和 PersistentVolumeClaim 对象。* 虽然 DataSource 忽略了禁止的值(丢弃它们),DataSourceRef 保留所有值,并在指定禁止的值时生成错误。(Beta)使用此字段需要启用 AnyVolumeDataSource 功能门。 |
|
| 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 |
|
| volumeMode 定义声明需要哪些卷类型。当未包含在 claim spec 中时,文件系统的值会被表示。 |
|
| volumeName 是对此声明支持的 PersistentVolume 的绑定引用。 |
2.1.231. .spec.storage.volumeClaimTemplate.spec.dataSource
- 描述
- Datasource 字段可以用来指定:* 一个现有的 VolumeSnapshot 对象(snapshot.storage.k8s.io/VolumeSnapshot)* 一个现有的 PVC (PersistentVolumeClaim),如果置备程序或外部控制器可以支持指定的数据源,它将基于指定数据源的内容创建一个新卷。如果启用了 AnyVolumeDataSource 功能门,此字段始终与 DataSourceRef 字段具有相同的内容。
- 类型
-
object
- 必填
-
kind
-
name
-
属性 | 类型 | 描述 |
---|---|---|
|
| APIGroup 是所引用资源的组。如果没有指定 APIGroup,则指定的 Kind 必须位于 core API 组中。对于任何其他第三方类型,需要 APIGroup。 |
|
| kind 是被引用的资源类型 |
|
| name 是被引用的资源的名称 |
2.1.232. .spec.storage.volumeClaimTemplate.spec.dataSourceRef
- 描述
- 如果需要非空卷,则 dataSourceRef 指定要使用数据填充卷的对象。这可能是来自非空 API 组(非核心对象)或 PersistentVolumeClaim 对象的任何本地对象。当指定对象的类型与某些安装的卷填充或动态置备程序匹配时,卷绑定才会成功。此字段将替换 DataSource 字段的功能,如果两个字段都不是空的,则它们必须具有相同的值。为向后兼容,如果其中一个字段为空,则两个字段(DataSource 和 DataSourceRef)将自动设置为相同的值,另一个是非空的。DataSource 和 DataSourceRef 之间有两个重要区别:* While DataSource 只允许两种特定类型的对象,DataSourceRef 允许任何非核心对象和 PersistentVolumeClaim 对象。* 虽然 DataSource 忽略了禁止的值(丢弃它们),DataSourceRef 保留所有值,并在指定禁止的值时生成错误。(Beta)使用此字段需要启用 AnyVolumeDataSource 功能门。
- 类型
-
object
- 必填
-
kind
-
name
-
属性 | 类型 | 描述 |
---|---|---|
|
| APIGroup 是所引用资源的组。如果没有指定 APIGroup,则指定的 Kind 必须位于 core API 组中。对于任何其他第三方类型,需要 APIGroup。 |
|
| kind 是被引用的资源类型 |
|
| name 是被引用的资源的名称 |
2.1.233. .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.234. .spec.storage.volumeClaimTemplate.spec.selector
- 描述
- selector 是要考虑绑定的卷的标签查询。
- 类型
-
object
属性 | 类型 | 描述 |
---|---|---|
|
| matchExpressions 是标签选择器要求列表。要求的逻辑关系是 AND。 |
|
| 标签选择器要求是一个选择器,其中包含与键和值相关的值、键和值。 |
|
| matchLabels 是 {key,value} 对的映射。MatchLabels 映射中的单个 {key,value} 等同于 matchExpressions 的一个元素,其 key 字段是 "key",运算符是 "In",值数组仅包含 "value"。要求的逻辑关系是 AND。 |
2.1.235. .spec.storage.volumeClaimTemplate.spec.selector.matchExpressions
- 描述
- matchExpressions 是标签选择器要求列表。要求的逻辑关系是 AND。
- 类型
-
array
2.1.236. .spec.storage.volumeClaimTemplate.spec.selector.matchExpressions[]
- 描述
- 标签选择器要求是一个选择器,其中包含与键和值相关的值、键和值。
- 类型
-
object
- 必填
-
key
-
operator
-
属性 | 类型 | 描述 |
---|---|---|
|
| key 是选择器应用到的标签键。 |
|
| 运算符代表一个键与一组值的关系。有效的运算符是 In、NotIn、Exists 和 DoesNotExist。 |
|
| 值是字符串值的数组。如果运算符是 In 或 NotIn,则值数组必须是非空的。如果运算符是 Exists 或 DoesNotExist,则值数组必须为空。这个数组会在策略性合并补丁中被替换。 |
2.1.237. .spec.storage.volumeClaimTemplate.status
- 描述
- status 代表持久性卷声明的当前信息/状态。只读。更多信息: https://kubernetes.io/docs/concepts/storage/persistent-volumes#persistentvolumeclaims
- 类型
-
object
属性 | 类型 | 描述 |
---|---|---|
|
| accessModes 包含 PVC 支持的卷的实际访问模式。更多信息: https://kubernetes.io/docs/concepts/storage/persistent-volumes#access-modes-1 |
|
| allocatedResources 是 AllocatedResources 中的存储资源跟踪分配给 PVC 的容量。当请求卷扩展操作时,它可能大于实际容量。对于存储配额,使用来自 allocatedResources 和 PVC.spec.resources 的值。如果没有设置 allocatedResources,则单独使用 PVC.spec.resources 进行配额计算。如果卷扩展容量请求被较低,则只有当没有进行中的扩展操作或当实际卷容量相等或低于请求的容量时,才会降低 allocatedResources。这是一个 alpha 字段,需要启用 RecoverVolumeExpansionFailure 功能。 |
|
| capacity 代表底层卷的实际资源。 |
|
| conditions 是持久性卷声明的当前条件。如果底层持久性卷被调整大小,则条件将设置为 'ResizeStarted'。 |
|
| PersistentVolumeClaimCondition contails 有关 pvc 状态的详细信息 |
|
| phase 代表 PersistentVolumeClaim 的当前阶段。 |
|
| resizeStatus 存储调整大小操作的状态。默认不会设置 ResizeStatus,但当扩展完成 resizeStatus 时,通过调整 controller 或 kubelet 设置为空字符串。这是一个 alpha 字段,需要启用 RecoverVolumeExpansionFailure 功能。 |
2.1.238. .spec.storage.volumeClaimTemplate.status.conditions
- 描述
- conditions 是持久性卷声明的当前条件。如果底层持久性卷被调整大小,则条件将设置为 'ResizeStarted'。
- 类型
-
array
2.1.239. .spec.storage.volumeClaimTemplate.status.conditions[]
- 描述
- PersistentVolumeClaimCondition contails 有关 pvc 状态的详细信息
- 类型
-
object
- 必填
-
status
-
type
-
属性 | 类型 | 描述 |
---|---|---|
|
| lastProbeTime 是我们探测到条件的时间。 |
|
| lastTransitionTime 是条件从一个状态转换到另一个状态的时间。 |
|
| Message 是人类可读的消息,指示最后一次转换的详细信息。 |
|
| reason 是唯一的,这应该是一个简短的机器理解的字符串,给出了条件最后一次转换的原因。如果报告"ResizeStarted",则表示已调整底层持久性卷的大小。 |
|
| |
|
| PersistentVolumeClaimConditionType 是 PersistentVolumeClaimCondition.Type 的有效值 |
2.1.240. .spec.tolerations
- 描述
- 如果指定,pod 的容限。
- 类型
-
array
2.1.241. .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.242. .spec.topologySpreadConstraints
- 描述
- 如果指定,pod 的拓扑分布限制。
- 类型
-
array
2.1.243. .spec.topologySpreadConstraints[]
- 描述
- TopologySpreadConstraint 指定如何在给定的拓扑中分布匹配的 pod。
- 类型
-
object
- 必填
-
maxSkew
-
topologyKey
-
whenUnsatisfiable
-
属性 | 类型 | 描述 |
---|---|---|
|
| labelSelector 用于查找匹配的 pod。与此标签选择器匹配的 Pod 被计算,以确定其对应拓扑域中的 pod 数量。 |
|
| matchLabelKeys 是一组 pod 标签键,用于选择要在其中计算分布的 pod。这些键用于从传入的 pod 标签中查找值,这些键值标签由 labelSelector 匹配,以选择现有 pod 的组,用于为传入的 pod 计算。传入的 pod 标签中不存在的键将被忽略。null 或空列表表示仅与 labelSelector 匹配。 |
|
|
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。这是一个 beta 字段,需要启用 MinDomainsInPodTopologySpread 功能门(默认启用)。 |
|
| NodeAffinityPolicy 表示在计算 pod 拓扑分布偏移时,我们将如何处理 Pod 的 nodeAffinity/nodeSelector。选项为:- Honor:只有与 nodeAffinity/nodeSelector 匹配的节点才会包含在计算中。- Ignore: nodeAffinity/nodeSelector 会被忽略。所有节点都包含在计算中。如果这个值是 nil,则行为等同于 Honor 策略。这是 NodeInclusionPolicyInPodTopologySpread 功能启用的 alpha-level 功能。 |
|
| NodeTaintsPolicy 指示在计算 pod 拓扑分布偏移时如何对待节点污点。选项为:- Honor: 没有污点的节点,以及传入的 pod 具有容限的污点节点。- Ignore: node taint are ignored.所有节点都包括在内。如果这个值是 nil,则行为等同于 Ignore 策略。这是 NodeInclusionPolicyInPodTopologySpread 功能启用的 alpha-level 功能。 |
|
| 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.244. .spec.topologySpreadConstraints[].labelSelector
- 描述
- labelSelector 用于查找匹配的 pod。与此标签选择器匹配的 Pod 被计算,以确定其对应拓扑域中的 pod 数量。
- 类型
-
object
属性 | 类型 | 描述 |
---|---|---|
|
| matchExpressions 是标签选择器要求列表。要求的逻辑关系是 AND。 |
|
| 标签选择器要求是一个选择器,其中包含与键和值相关的值、键和值。 |
|
| matchLabels 是 {key,value} 对的映射。MatchLabels 映射中的单个 {key,value} 等同于 matchExpressions 的一个元素,其 key 字段是 "key",运算符是 "In",值数组仅包含 "value"。要求的逻辑关系是 AND。 |
2.1.245. .spec.topologySpreadConstraints[].labelSelector.matchExpressions
- 描述
- matchExpressions 是标签选择器要求列表。要求的逻辑关系是 AND。
- 类型
-
array
2.1.246. .spec.topologySpreadConstraints[].labelSelector.matchExpressions[]
- 描述
- 标签选择器要求是一个选择器,其中包含与键和值相关的值、键和值。
- 类型
-
object
- 必填
-
key
-
operator
-
属性 | 类型 | 描述 |
---|---|---|
|
| key 是选择器应用到的标签键。 |
|
| 运算符代表一个键与一组值的关系。有效的运算符是 In、NotIn、Exists 和 DoesNotExist。 |
|
| 值是字符串值的数组。如果运算符是 In 或 NotIn,则值数组必须是非空的。如果运算符是 Exists 或 DoesNotExist,则值数组必须为空。这个数组会在策略性合并补丁中被替换。 |
2.1.247. .spec.volumeMounts
- 描述
- volumeMounts 允许在输出 StatefulSet 定义上配置额外的 VolumeMount。指定 volumeMounts 将附加到 alertmanager 容器中的其他 VolumeMount,这些 VolumeMount 会根据 StorageSpec 对象生成的。
- 类型
-
array
2.1.248. .spec.volumeMounts[]
- 描述
- VolumeMount 描述了容器内卷挂载。
- 类型
-
object
- 必填
-
mountPath
-
name
-
属性 | 类型 | 描述 |
---|---|---|
|
| 应挂载卷的容器中的路径。不得包含 ':'。 |
|
| mountPropagation 决定挂载如何从主机传播到容器以及反向传播。如果没有设置,则使用 MountPropagationNone。此字段在 1.10 中是 beta。 |
|
| 这必须与卷的 Name 匹配。 |
|
| 如果为 true,则以只读方式挂载,否则读写(false 或未指定)。默认为false。 |
|
| 应从中挂载容器卷的卷中的路径。默认为 "" (卷的 root)。 |
|
| 在应该挂载容器卷的卷中扩展路径。行为与 SubPath 类似,但环境变量引用 $(VAR_NAME)使用容器的环境扩展。默认为 "" (卷的 root)。SubPathExpr 和 SubPath 是互斥的。 |
2.1.249. .spec.volumes
- 描述
- 卷允许在输出 StatefulSet 定义中配置额外的卷。指定的卷将附加到作为 StorageSpec 对象生成的其他卷。
- 类型
-
array
2.1.250. .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.251. .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.252. .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.253. .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.254. .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.255. .spec.volumes[].cephfs.secretRef
- 描述
- secretRef 为 Optional: SecretRef 对 User 的身份验证 secret 的引用,默认为空。更多信息: https://examples.k8s.io/volumes/cephfs/README.md#how-to-use-it
- 类型
-
object
属性 | 类型 | 描述 |
---|---|---|
|
| 引用的名称。更多信息: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names TODO: 添加其他有用的字段。apiVersion、kind、uid? |
2.1.256. .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.257. .spec.volumes[].cinder.secretRef
- 描述
- secretRef 是可选的:指向包含用于连接到 OpenStack 的参数的 secret 对象。
- 类型
-
object
属性 | 类型 | 描述 |
---|---|---|
|
| 引用的名称。更多信息: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names TODO: 添加其他有用的字段。apiVersion、kind、uid? |
2.1.258. .spec.volumes[].configMap
- 描述
- ConfigMap 代表应填充此卷的 configMap
- 类型
-
object
属性 | 类型 | 描述 |
---|---|---|
|
| defaultMode 是可选的:默认用于在创建的文件上设置权限的模式位。必须是 0000 到 0777 之间的数值,或者 0 到 511 之间的十进制值。YAML 接受八进制和十进制值,JSON 需要模式位的十进制值。默认值为 0644。路径中的目录不受此设置的影响。这可能与影响文件模式的其他选项(如 fsGroup )冲突,结果可以是其他模式位。 |
|
| 如果未指定,则引用的 ConfigMap 的 Data 字段中每个键值对将投射到卷中,其名称是键,内容是值。如果指定,列出的键将投射到指定的路径中,并且不会出现未列出的键。如果指定了没有存在于 ConfigMap 中的键,则卷设置将失败,除非标记为可选。路径必须是相对的,且不能包含 '..' 路径,或者以 '..' 开始。 |
|
| 将字符串键映射到卷中的路径。 |
|
| 引用的名称。更多信息: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names TODO: 添加其他有用的字段。apiVersion、kind、uid? |
|
| 可选指定是否必须定义 ConfigMap 还是其键 |
2.1.259. .spec.volumes[].configMap.items
- 描述
- 如果未指定,则引用的 ConfigMap 的 Data 字段中每个键值对将投射到卷中,其名称是键,内容是值。如果指定,列出的键将投射到指定的路径中,并且不会出现未列出的键。如果指定了没有存在于 ConfigMap 中的键,则卷设置将失败,除非标记为可选。路径必须是相对的,且不能包含 '..' 路径,或者以 '..' 开始。
- 类型
-
array
2.1.260. .spec.volumes[].configMap.items[]
- 描述
- 将字符串键映射到卷中的路径。
- 类型
-
object
- 必填
-
key
-
path
-
属性 | 类型 | 描述 |
---|---|---|
|
| key 是项目的关键。 |
|
| 模式为可选:用于设置此文件权限的模式位。必须是 0000 到 0777 之间的数值,或者 0 到 511 之间的十进制值。YAML 接受八进制和十进制值,JSON 需要模式位的十进制值。如果没有指定,则使用卷 defaultMode。这可能与影响文件模式的其他选项(如 fsGroup )冲突,结果可以是其他模式位。 |
|
| path 是将键映射到的文件的相对路径。可能不是绝对路径。不得包含路径元素 '..'。不得以字符串 '..' 开头。 |
2.1.261. .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.262. .spec.volumes[].csi.nodePublishSecretRef
- 描述
- nodePublishSecretRef 是包含敏感信息的 secret 对象的引用,以传递给 CSI 驱动程序,以完成 CSI NodePublishVolume 和 NodeUnpublishVolume 调用。此字段是可选的,如果不需要 secret,则可能会为空。如果 secret 对象包含多个 secret,则会传递所有 secret 引用。
- 类型
-
object
属性 | 类型 | 描述 |
---|---|---|
|
| 引用的名称。更多信息: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names TODO: 添加其他有用的字段。apiVersion、kind、uid? |
2.1.263. .spec.volumes[].downwardAPI
- 描述
- downwardAPI 代表应填充此卷的 pod 的 Downward API
- 类型
-
object
属性 | 类型 | 描述 |
---|---|---|
|
| 可选:默认在创建的文件上使用模式位。必须是 Optional: 模式位,用于默认对创建的文件设置权限。必须是 0000 到 0777 之间的数值,或者 0 到 511 之间的十进制值。YAML 接受八进制和十进制值,JSON 需要模式位的十进制值。默认值为 0644。路径中的目录不受此设置的影响。这可能与影响文件模式的其他选项(如 fsGroup )冲突,结果可以是其他模式位。 |
|
| items 是 Downward API 卷文件的列表 |
|
| DownwardAPIVolumeFile 代表创建包含 pod 字段的文件的信息 |
2.1.264. .spec.volumes[].downwardAPI.items
- 描述
- items 是 Downward API 卷文件的列表
- 类型
-
array
2.1.265. .spec.volumes[].downwardAPI.items[]
- 描述
- DownwardAPIVolumeFile 代表创建包含 pod 字段的文件的信息
- 类型
-
object
- 必填
-
path
-
属性 | 类型 | 描述 |
---|---|---|
|
| 必需:选择 pod 的字段:只支持注解、标签、名称和命名空间。 |
|
| 可选:用于设置此文件权限的模式位,必须是 0000 到 0777 之间的数值,或 0 到 511 之间的十进制值。YAML 接受八进制和十进制值,JSON 需要模式位的十进制值。如果没有指定,则使用卷 defaultMode。这可能与影响文件模式的其他选项(如 fsGroup )冲突,结果可以是其他模式位。 |
|
| 必需:Path 是要创建的文件的相对路径名称。不能是绝对的,也不能包含 '..' 路径。必须经过 utf-8 编码。相对路径的第一个项不能以 '..' 开头。 |
|
| 选择容器的资源:目前只支持资源限值和请求(limits.cpu、limits.memory、requests.cpu 和 requests.memory)。 |
2.1.266. .spec.volumes[].downwardAPI.items[].fieldRef
- 描述
- 必需:选择 pod 的字段:只支持注解、标签、名称和命名空间。
- 类型
-
object
- 必填
-
fieldPath
-
属性 | 类型 | 描述 |
---|---|---|
|
| 模式的版本是按术语编写的 FieldPath,默认为 "v1"。 |
|
| 在指定 API 版本中选择的字段路径。 |
2.1.267. .spec.volumes[].downwardAPI.items[].resourceFieldRef
- 描述
- 选择容器的资源:目前只支持资源限值和请求(limits.cpu、limits.memory、requests.cpu 和 requests.memory)。
- 类型
-
object
- 必填
-
resource
-
属性 | 类型 | 描述 |
---|---|---|
|
| 容器名称:卷需要,对于 env vars是可选的 |
|
| 指定公开资源的输出格式,默认为 "1" |
|
| 必需:要选择的资源 |
2.1.268. .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,这意味着限制未定义。更多信息: http://kubernetes.io/docs/user-guide/volumes#emptydir |
2.1.269. .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 的名称将是 < |
2.1.270. .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.271. .spec.volumes[].ephemeral.volumeClaimTemplate.metadata
- 描述
- 可能包含创建 PVC 时将复制到 PVC 的标签和注解。不允许其他字段,并在验证过程中被拒绝。
- 类型
-
object
2.1.272. .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 功能门,此字段始终与 DataSourceRef 字段具有相同的内容。 |
|
| 如果需要非空卷,则 dataSourceRef 指定要使用数据填充卷的对象。这可能是来自非空 API 组(非核心对象)或 PersistentVolumeClaim 对象的任何本地对象。当指定对象的类型与某些安装的卷填充或动态置备程序匹配时,卷绑定才会成功。此字段将替换 DataSource 字段的功能,如果两个字段都不是空的,则它们必须具有相同的值。为向后兼容,如果其中一个字段为空,则两个字段(DataSource 和 DataSourceRef)将自动设置为相同的值,另一个是非空的。DataSource 和 DataSourceRef 之间有两个重要区别:* While DataSource 只允许两种特定类型的对象,DataSourceRef 允许任何非核心对象和 PersistentVolumeClaim 对象。* 虽然 DataSource 忽略了禁止的值(丢弃它们),DataSourceRef 保留所有值,并在指定禁止的值时生成错误。(beta)使用此字段需要启用 AnyVolumeDataSource 功能门。 |
|
| 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 |
|
| volumeMode 定义声明需要哪些卷类型。当未包含在 claim spec 中时,文件系统的值会被表示。 |
|
| volumeName 是对此声明支持的 PersistentVolume 的绑定引用。 |
2.1.273. .spec.volumes[].ephemeral.volumeClaimTemplate.spec.dataSource
- 描述
- Datasource 字段可以用来指定:* 一个现有的 VolumeSnapshot 对象(snapshot.storage.k8s.io/VolumeSnapshot)* 一个现有的 PVC (PersistentVolumeClaim),如果置备程序或外部控制器可以支持指定的数据源,它将基于指定数据源的内容创建一个新卷。如果启用了 AnyVolumeDataSource 功能门,此字段始终与 DataSourceRef 字段具有相同的内容。
- 类型
-
object
- 必填
-
kind
-
name
-
属性 | 类型 | 描述 |
---|---|---|
|
| APIGroup 是所引用资源的组。如果没有指定 APIGroup,则指定的 Kind 必须位于 core API 组中。对于任何其他第三方类型,需要 APIGroup。 |
|
| kind 是被引用的资源类型 |
|
| name 是被引用的资源的名称 |
2.1.274. .spec.volumes[].ephemeral.volumeClaimTemplate.spec.dataSourceRef
- 描述
- 如果需要非空卷,则 dataSourceRef 指定要使用数据填充卷的对象。这可能是来自非空 API 组(非核心对象)或 PersistentVolumeClaim 对象的任何本地对象。当指定对象的类型与某些安装的卷填充或动态置备程序匹配时,卷绑定才会成功。此字段将替换 DataSource 字段的功能,如果两个字段都不是空的,则它们必须具有相同的值。为向后兼容,如果其中一个字段为空,则两个字段(DataSource 和 DataSourceRef)将自动设置为相同的值,另一个是非空的。DataSource 和 DataSourceRef 之间有两个重要区别:* While DataSource 只允许两种特定类型的对象,DataSourceRef 允许任何非核心对象和 PersistentVolumeClaim 对象。* 虽然 DataSource 忽略了禁止的值(丢弃它们),DataSourceRef 保留所有值,并在指定禁止的值时生成错误。(beta)使用此字段需要启用 AnyVolumeDataSource 功能门。
- 类型
-
object
- 必填
-
kind
-
name
-
属性 | 类型 | 描述 |
---|---|---|
|
| APIGroup 是所引用资源的组。如果没有指定 APIGroup,则指定的 Kind 必须位于 core API 组中。对于任何其他第三方类型,需要 APIGroup。 |
|
| kind 是被引用的资源类型 |
|
| name 是被引用的资源的名称 |
2.1.275. .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.276. .spec.volumes[].ephemeral.volumeClaimTemplate.spec.selector
- 描述
- selector 是要考虑绑定的卷的标签查询。
- 类型
-
object
属性 | 类型 | 描述 |
---|---|---|
|
| matchExpressions 是标签选择器要求列表。要求的逻辑关系是 AND。 |
|
| 标签选择器要求是一个选择器,其中包含与键和值相关的值、键和值。 |
|
| matchLabels 是 {key,value} 对的映射。MatchLabels 映射中的单个 {key,value} 等同于 matchExpressions 的一个元素,其 key 字段是 "key",运算符是 "In",值数组仅包含 "value"。要求的逻辑关系是 AND。 |
2.1.277. .spec.volumes[].ephemeral.volumeClaimTemplate.spec.selector.matchExpressions
- 描述
- matchExpressions 是标签选择器要求列表。要求的逻辑关系是 AND。
- 类型
-
数组
2.1.278. .spec.volumes[].ephemeral.volumeClaimTemplate.spec.selector.matchExpressions[]
- 描述
- 标签选择器要求是一个选择器,其中包含与键和值相关的值、键和值。
- 类型
-
object
- 必填
-
key
-
operator
-
属性 | 类型 | 描述 |
---|---|---|
|
| key 是选择器应用到的标签键。 |
|
| 运算符代表一个键与一组值的关系。有效的运算符是 In、NotIn、Exists 和 DoesNotExist。 |
|
| 值是字符串值的数组。如果运算符是 In 或 NotIn,则值数组必须是非空的。如果运算符是 Exists 或 DoesNotExist,则值数组必须为空。这个数组会在策略性合并补丁中被替换。 |
2.1.279. .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.280. .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.281. .spec.volumes[].flexVolume.secretRef
- 描述
- secretRef 是 Optional: secretRef 引用了包含敏感信息的 secret 对象,以传递给插件脚本。如果没有指定 secret 对象,这可能为空。如果 secret 对象包含多个 secret,则所有 secret 都会传递给插件脚本。
- 类型
-
object
属性 | 类型 | 描述 |
---|---|---|
|
| 引用的名称。更多信息: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names TODO: 添加其他有用的字段。apiVersion、kind、uid? |
2.1.282. .spec.volumes[].flocker
- 描述
- flocker 代表附加到 kubelet 主机机器的 Flocker 卷。这取决于正在运行的 Flocker 控制服务
- 类型
-
object
属性 | 类型 | 描述 |
---|---|---|
|
|
datasetName 是数据存储为 Flocker dataset 上的 metadata |
|
| datasetUUID 是 dataset 的 UUID。这是 Flocker 数据集的唯一标识符 |
2.1.283. .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.284. .spec.volumes[].gitRepo
- 描述
- gitRepo 代表特定修订版本中的 git 存储库。DEPRECATED: GitRepo 已被弃用。要使用 git 存储库置备容器,请将 EmptyDir 挂载到使用 git 克隆存储库的 InitContainer 中,然后将 EmptyDir 挂载到 Pod 的容器中。
- 类型
-
object
- 必填
-
软件仓库
-
属性 | 类型 | 描述 |
---|---|---|
|
| directory 是目标目录名称。不得包含或以 '..' 开头。如果提供了 '.',则卷目录将是 git 存储库。否则,如果指定,卷将在带有给定名称的子目录中包含 git 存储库。 |
|
| repository 是 URL |
|
| revision 是指定修订版本的提交哈希。 |
2.1.285. .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.286. .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.287. .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.288. .spec.volumes[].iscsi.secretRef
- 描述
- secretRef 是 iSCSI 目标和发起方身份验证的 CHAP Secret
- 类型
-
object
属性 | 类型 | 描述 |
---|---|---|
|
| 引用的名称。更多信息: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names TODO: 添加其他有用的字段。apiVersion、kind、uid? |
2.1.289. .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.290. .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.291. .spec.volumes[].photonPersistentDisk
- 描述
- photonPersistentDisk 代表附加并挂载到 kubelets 主机上的 PhotonController 持久磁盘
- 类型
-
object
- 必填
-
pdID
-
属性 | 类型 | 描述 |
---|---|---|
|
| fstype 是要挂载的文件系统类型。必须是主机操作系统支持的文件系统类型。Ex. "ext4", "xfs", "ntfs".如果未指定,则隐式推断为 "ext4"。 |
|
| pdID 是标识 Photon Controller 持久磁盘的 ID |
2.1.292. .spec.volumes[].portworxVolume
- 描述
- portworxVolume 代表附加并挂载到 kubelets 主机上的 portworx 卷
- 类型
-
object
- 必填
-
volumeID
-
属性 | 类型 | 描述 |
---|---|---|
|
| fstype 代表要挂载的文件系统类型必须是主机操作系统支持的文件系统类型。Ex. "ext4", "xfs".如果未指定,则隐式推断为 "ext4"。 |
|
| readonly 默认为 false (读/写)。此处的 readonly 将强制 VolumeMount 中的 ReadOnly 设置。 |
|
| VolumeId 唯一标识 Portworx 卷 |
2.1.293. .spec.volumes[].projected
- 描述
- 一个资源 secret、configmap 和 Downward API 中所有的项目项目
- 类型
-
object
属性 | 类型 | 描述 |
---|---|---|
|
| defaultMode 是默认用于在创建的文件上设置权限的模式位。必须是 0000 到 0777 之间的数值,或者 0 到 511 之间的十进制值。YAML 接受八进制和十进制值,JSON 需要模式位的十进制值。路径中的目录不受此设置的影响。这可能与影响文件模式的其他选项(如 fsGroup )冲突,结果可以是其他模式位。 |
|
| sources 是卷投射列表 |
|
| 可投射以及其他支持的卷类型的预测 |
2.1.294. .spec.volumes[].projected.sources
- 描述
- sources 是卷投射列表
- 类型
-
array
2.1.295. .spec.volumes[].projected.sources[]
- 描述
- 可投射以及其他支持的卷类型的预测
- 类型
-
object
属性 | 类型 | 描述 |
---|---|---|
|
| 有关项目的 configMap 数据的 ConfigMap 信息 |
|
| downwardAPI 有关项目的 downwardAPI 数据的信息 |
|
| 有关项目的 secret 数据的 secret 信息 |
|
| serviceAccountToken 是与项目的 serviceAccountToken 数据相关的信息 |
2.1.296. .spec.volumes[].projected.sources[].configMap
- 描述
- 有关项目的 configMap 数据的 ConfigMap 信息
- 类型
-
object
属性 | 类型 | 描述 |
---|---|---|
|
| 如果未指定,则引用的 ConfigMap 的 Data 字段中每个键值对将投射到卷中,其名称是键,内容是值。如果指定,列出的键将投射到指定的路径中,并且不会出现未列出的键。如果指定了没有存在于 ConfigMap 中的键,则卷设置将失败,除非标记为可选。路径必须是相对的,且不能包含 '..' 路径,或者以 '..' 开始。 |
|
| 将字符串键映射到卷中的路径。 |
|
| 引用的名称。更多信息: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names TODO: 添加其他有用的字段。apiVersion、kind、uid? |
|
| 可选指定是否必须定义 ConfigMap 还是其键 |
2.1.297. .spec.volumes[].projected.sources[].configMap.items
- 描述
- 如果未指定,则引用的 ConfigMap 的 Data 字段中每个键值对将投射到卷中,其名称是键,内容是值。如果指定,列出的键将投射到指定的路径中,并且不会出现未列出的键。如果指定了没有存在于 ConfigMap 中的键,则卷设置将失败,除非标记为可选。路径必须是相对的,且不能包含 '..' 路径,或者以 '..' 开始。
- 类型
-
array
2.1.298. .spec.volumes[].projected.sources[].configMap.items[]
- 描述
- 将字符串键映射到卷中的路径。
- 类型
-
object
- 必填
-
key
-
path
-
属性 | 类型 | 描述 |
---|---|---|
|
| key 是项目的关键。 |
|
| 模式为可选:用于设置此文件权限的模式位。必须是 0000 到 0777 之间的数值,或者 0 到 511 之间的十进制值。YAML 接受八进制和十进制值,JSON 需要模式位的十进制值。如果没有指定,则使用卷 defaultMode。这可能与影响文件模式的其他选项(如 fsGroup )冲突,结果可以是其他模式位。 |
|
| path 是将键映射到的文件的相对路径。可能不是绝对路径。不得包含路径元素 '..'。不得以字符串 '..' 开头。 |
2.1.299. .spec.volumes[].projected.sources[].downwardAPI
- 描述
- downwardAPI 有关项目的 downwardAPI 数据的信息
- 类型
-
object
属性 | 类型 | 描述 |
---|---|---|
|
| items 是 DownwardAPIVolume 文件列表 |
|
| DownwardAPIVolumeFile 代表创建包含 pod 字段的文件的信息 |
2.1.300. .spec.volumes[].projected.sources[].downwardAPI.items
- 描述
- items 是 DownwardAPIVolume 文件列表
- 类型
-
array
2.1.301. .spec.volumes[].projected.sources[].downwardAPI.items[]
- 描述
- DownwardAPIVolumeFile 代表创建包含 pod 字段的文件的信息
- 类型
-
object
- 必填
-
path
-
属性 | 类型 | 描述 |
---|---|---|
|
| 必需:选择 pod 的字段:只支持注解、标签、名称和命名空间。 |
|
| 可选:用于设置此文件权限的模式位,必须是 0000 到 0777 之间的数值,或 0 到 511 之间的十进制值。YAML 接受八进制和十进制值,JSON 需要模式位的十进制值。如果没有指定,则使用卷 defaultMode。这可能与影响文件模式的其他选项(如 fsGroup )冲突,结果可以是其他模式位。 |
|
| 必需:Path 是要创建的文件的相对路径名称。不能是绝对的,也不能包含 '..' 路径。必须经过 utf-8 编码。相对路径的第一个项不能以 '..' 开头。 |
|
| 选择容器的资源:目前只支持资源限值和请求(limits.cpu、limits.memory、requests.cpu 和 requests.memory)。 |
2.1.302. .spec.volumes[].projected.sources[].downwardAPI.items[].fieldRef
- 描述
- 必需:选择 pod 的字段:只支持注解、标签、名称和命名空间。
- 类型
-
object
- 必填
-
fieldPath
-
属性 | 类型 | 描述 |
---|---|---|
|
| 模式的版本是按术语编写的 FieldPath,默认为 "v1"。 |
|
| 在指定 API 版本中选择的字段路径。 |
2.1.303. .spec.volumes[].projected.sources[].downwardAPI.items[].resourceFieldRef
- 描述
- 选择容器的资源:目前只支持资源限值和请求(limits.cpu、limits.memory、requests.cpu 和 requests.memory)。
- 类型
-
object
- 必填
-
resource
-
属性 | 类型 | 描述 |
---|---|---|
|
| 容器名称:卷需要,对于 env vars是可选的 |
|
| 指定公开资源的输出格式,默认为 "1" |
|
| 必需:要选择的资源 |
2.1.304. .spec.volumes[].projected.sources[].secret
- 描述
- 有关项目的 secret 数据的 secret 信息
- 类型
-
object
属性 | 类型 | 描述 |
---|---|---|
|
| 如果未指定,则引用 Secret 的 Data 字段中的每个键值对将投射到卷中,其名称是键,内容是值。如果指定,列出的键将投射到指定的路径中,并且不会出现未列出的键。如果指定了没有存在于 Secret 中的密钥,则卷设置将出错,除非标记为可选。路径必须是相对的,且不能包含 '..' 路径,或者以 '..' 开始。 |
|
| 将字符串键映射到卷中的路径。 |
|
| 引用的名称。更多信息: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names TODO: 添加其他有用的字段。apiVersion、kind、uid? |
|
| 可选字段指定是否必须定义 Secret 或其密钥 |
2.1.305. .spec.volumes[].projected.sources[].secret.items
- 描述
- 如果未指定,则引用 Secret 的 Data 字段中的每个键值对将投射到卷中,其名称是键,内容是值。如果指定,列出的键将投射到指定的路径中,并且不会出现未列出的键。如果指定了没有存在于 Secret 中的密钥,则卷设置将出错,除非标记为可选。路径必须是相对的,且不能包含 '..' 路径,或者以 '..' 开始。
- 类型
-
array
2.1.306. .spec.volumes[].projected.sources[].secret.items[]
- 描述
- 将字符串键映射到卷中的路径。
- 类型
-
object
- 必填
-
key
-
path
-
属性 | 类型 | 描述 |
---|---|---|
|
| key 是项目的关键。 |
|
| 模式为可选:用于设置此文件权限的模式位。必须是 0000 到 0777 之间的数值,或者 0 到 511 之间的十进制值。YAML 接受八进制和十进制值,JSON 需要模式位的十进制值。如果没有指定,则使用卷 defaultMode。这可能与影响文件模式的其他选项(如 fsGroup )冲突,结果可以是其他模式位。 |
|
| path 是将键映射到的文件的相对路径。可能不是绝对路径。不得包含路径元素 '..'。不得以字符串 '..' 开头。 |
2.1.307. .spec.volumes[].projected.sources[].serviceAccountToken
- 描述
- serviceAccountToken 是与项目的 serviceAccountToken 数据相关的信息
- 类型
-
object
- 必填
-
path
-
属性 | 类型 | 描述 |
---|---|---|
|
| 受众是令牌的预期使用者。令牌的接收者必须使用令牌使用者中指定的标识符来识别其自身,否则应拒绝令牌。受众默认为 apiserver 的标识符。 |
|
| expirationSeconds 是服务帐户令牌的请求的有效期。当令牌接近过期时,kubelet 卷插件会主动轮转服务帐户令牌。如果令牌的时间超过 80%,或者令牌早于 24 小时,则 kubelet 将开始尝试轮转令牌。默认为 1 小时,且必须至少为 10 分钟。 |
|
| path 是与文件挂载点相关的路径,用于将令牌放入其中。 |
2.1.308. .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.309. .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.310. .spec.volumes[].rbd.secretRef
- 描述
- secretRef 是 RBDUser 的身份验证 secret 的名称。如果提供的会覆盖密钥环。默认为 nil。更多信息: https://examples.k8s.io/volumes/rbd/README.md#how-to-use-it
- 类型
-
object
属性 | 类型 | 描述 |
---|---|---|
|
| 引用的名称。更多信息: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names TODO: 添加其他有用的字段。apiVersion、kind、uid? |
2.1.311. .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.312. .spec.volumes[].scaleIO.secretRef
- 描述
- secretRef 引用 ScaleIO 用户和其他敏感信息的 secret。如果没有提供,则登录操作将失败。
- 类型
-
object
属性 | 类型 | 描述 |
---|---|---|
|
| 引用的名称。更多信息: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names TODO: 添加其他有用的字段。apiVersion、kind、uid? |
2.1.313. .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.314. .spec.volumes[].secret.items
- 描述
- 如果未指定项目,则引用 Secret 的 Data 字段中的每个键值对将投射到卷中,其名称是键,内容是值。如果指定,列出的键将投射到指定的路径中,并且不会出现未列出的键。如果指定了没有存在于 Secret 中的密钥,则卷设置将出错,除非标记为可选。路径必须是相对的,且不能包含 '..' 路径,或者以 '..' 开始。
- 类型
-
array
2.1.315. .spec.volumes[].secret.items[]
- 描述
- 将字符串键映射到卷中的路径。
- 类型
-
object
- 必填
-
key
-
path
-
属性 | 类型 | 描述 |
---|---|---|
|
| key 是项目的关键。 |
|
| 模式为可选:用于设置此文件权限的模式位。必须是 0000 到 0777 之间的数值,或者 0 到 511 之间的十进制值。YAML 接受八进制和十进制值,JSON 需要模式位的十进制值。如果没有指定,则使用卷 defaultMode。这可能与影响文件模式的其他选项(如 fsGroup )冲突,结果可以是其他模式位。 |
|
| path 是将键映射到的文件的相对路径。可能不是绝对路径。不得包含路径元素 '..'。不得以字符串 '..' 开头。 |
2.1.316. .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.317. .spec.volumes[].storageos.secretRef
- 描述
- secretRef 指定用于获取 StorageOS API 凭证的 secret。如果没有指定,则会尝试默认值。
- 类型
-
object
属性 | 类型 | 描述 |
---|---|---|
|
| 引用的名称。更多信息: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names TODO: 添加其他有用的字段。apiVersion、kind、uid? |
2.1.318. .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.319. .spec.web
- 描述
- 定义启动 Alertmanager 时的 Web 命令行标志。
- 类型
-
object
属性 | 类型 | 描述 |
---|---|---|
|
| 定义 Web 服务器的 HTTP 参数。 |
|
| 定义 HTTPS 的 TLS 参数。 |
2.1.320. .spec.web.httpConfig
- 描述
- 定义 Web 服务器的 HTTP 参数。
- 类型
-
object
属性 | 类型 | 描述 |
---|---|---|
|
| 可添加到 HTTP 响应中的标头列表。 |
|
| 启用 HTTP/2 支持。请注意,只有 TLS 支持 HTTP/2。如果没有配置 TLSConfig,则禁用 HTTP/2。每当字段更改时,将触发滚动更新。 |
2.1.321. .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.322. .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.323. .spec.web.tlsConfig.cert
- 描述
- 包含服务器的 TLS 证书。
- 类型
-
object
属性 | 类型 | 描述 |
---|---|---|
|
| 包含用于目标的数据的 ConfigMap。 |
|
| 包含用于目标的数据的 secret。 |
2.1.324. .spec.web.tlsConfig.cert.configMap
- 描述
- 包含用于目标的数据的 ConfigMap。
- 类型
-
object
- 必填
-
key
-
属性 | 类型 | 描述 |
---|---|---|
|
| 要选择的密钥。 |
|
| 引用的名称。更多信息: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names TODO: 添加其他有用的字段。apiVersion、kind、uid? |
|
| 指定是否必须定义 ConfigMap 还是其键 |
2.1.325. .spec.web.tlsConfig.cert.secret
- 描述
- 包含用于目标的数据的 secret。
- 类型
-
object
- 必填
-
key
-
属性 | 类型 | 描述 |
---|---|---|
|
| 要从中选择的 secret 的密钥。必须是一个有效的 secret 密钥。 |
|
| 引用的名称。更多信息: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names TODO: 添加其他有用的字段。apiVersion、kind、uid? |
|
| 指定是否需要定义 Secret 还是其密钥 |
2.1.326. .spec.web.tlsConfig.client_ca
- 描述
- 包含服务器客户端证书身份验证的 CA 证书。
- 类型
-
object
属性 | 类型 | 描述 |
---|---|---|
|
| 包含用于目标的数据的 ConfigMap。 |
|
| 包含用于目标的数据的 secret。 |
2.1.327. .spec.web.tlsConfig.client_ca.configMap
- 描述
- 包含用于目标的数据的 ConfigMap。
- 类型
-
object
- 必填
-
key
-
属性 | 类型 | 描述 |
---|---|---|
|
| 要选择的密钥。 |
|
| 引用的名称。更多信息: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names TODO: 添加其他有用的字段。apiVersion、kind、uid? |
|
| 指定是否必须定义 ConfigMap 还是其键 |
2.1.328. .spec.web.tlsConfig.client_ca.secret
- 描述
- 包含用于目标的数据的 secret。
- 类型
-
object
- 必填
-
key
-
属性 | 类型 | 描述 |
---|---|---|
|
| 要从中选择的 secret 的密钥。必须是一个有效的 secret 密钥。 |
|
| 引用的名称。更多信息: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names TODO: 添加其他有用的字段。apiVersion、kind、uid? |
|
| 指定是否需要定义 Secret 还是其密钥 |
2.1.329. .spec.web.tlsConfig.keySecret
- 描述
- 包含服务器的 TLS 密钥的 secret。
- 类型
-
object
- 必填
-
key
-
属性 | 类型 | 描述 |
---|---|---|
|
| 要从中选择的 secret 的密钥。必须是一个有效的 secret 密钥。 |
|
| 引用的名称。更多信息: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names TODO: 添加其他有用的字段。apiVersion、kind、uid? |
|
| 指定是否需要定义 Secret 还是其密钥 |
2.1.330. .status
- 描述
- Alertmanager 集群的状态最近观察到的状态。只读。从 apiserver 请求时不包括,只有来自 Prometheus Operator API 本身。更多信息: 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)。 |
|
| 代表是否在执行底层受管对象的任何操作。只有 delete 操作才会执行。 |
|
| 此 Alertmanager 集群目标的非确定 pod 的总数(标签与选择器匹配)。 |
|
| 此 Alertmanager 集群目标不可用 pod 的总数。 |
|
| 此 Alertmanager 集群目标为具有所需版本 spec 的非确定 pod 的总数。 |