OperatorHub API


OpenShift Container Platform 4.14

OperatorHub API 的参考指南

Red Hat OpenShift Documentation Team

摘要

本文档描述了 OpenShift Container Platform OperatorHub API 对象及其详细规格。

第 1 章 OperatorHub API

1.1. CatalogSource [operators.coreos.com/v1alpha1]

描述
CatalogSource 是 CSV、CRD 和 operator 软件包的存储库。
类型
对象

1.2. ClusterServiceVersion [operators.coreos.com/v1alpha1]

描述
ClusterServiceVersion 是一个类型为 ClusterServiceVersionSpec 的自定义资源。
类型
对象

1.3. InstallPlan [operators.coreos.com/v1alpha1]

描述
InstallPlan 定义一组 Operator 的安装。
类型
object

1.4. olmConfig [operators.coreos.com/v1]

描述
OLMConfig 是负责配置 OLM 的资源。
类型
对象

1.5. Operator [operators.coreos.com/v1]

描述
Operator 代表集群操作器。
类型
对象

1.6. OperatorCondition [operators.coreos.com/v2]

描述
OperatorCondition 是一个类型为 OperatorCondition 的自定义资源,用于向 OLM 传递有关 Operator 状态的信息。
类型
对象

1.7. OperatorGroup [operators.coreos.com/v1]

描述
OperatorGroup 是 OLM 管理的 Operator 的多租户单元。它将 Operator 的安装限制到一组指定的目标命名空间。
类型
对象

1.8. PackageManifest [packages.operators.coreos.com/v1]

描述
PackageManifest 包含有关软件包的信息,这是单个软件包下的一个(或更多)频道的引用。
类型
对象

1.9. Subscription [operators.coreos.com/v1alpha1]

描述
订阅通过跟踪对目录的更改来保持 Operator 最新。
类型
对象

第 2 章 CatalogSource [operators.coreos.com/v1alpha1]

描述
CatalogSource 是 CSV、CRD 和 operator 软件包的存储库。
类型
object
必填
  • metadata
  • spec

2.1. 规格

属性类型描述

apiVersion

字符串

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

kind

字符串

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

metadata

ObjectMeta

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

spec

对象

 

status

对象

 

2.1.1. .spec

描述
类型
object
必填
  • sourceType
属性类型描述

address

字符串

address 是 OLM 用来连接到预先存在的 registry 的主机。格式:<registry-host 或 ip>:<port> 仅在 SourceType = SourceTypeGrpc 时使用。当设置 Image 字段时,忽略。

configMap

字符串

ConfigMap 是用来支持 configmap-server registry 的 ConfigMap 名称。仅在 SourceType = SourceTypeConfigmap 或 SourceTypeInternal 时使用。

description

字符串

 

displayName

字符串

元数据

grpcPodConfig

object

grpcPodConfig 会公开 CatalogSource Pod 的 pod 规格的不同覆盖。仅在设置了 SourceType = SourceTypeGrpc 和 Image 时使用。

icon

对象

 

image

字符串

镜像是一个 operator-registry 容器镜像,用于实例化 registry-server。仅在 SourceType = SourceTypeGrpc 时使用。如果存在,则忽略 address 字段。

priority

整数

priority 字段为目录源分配一个权重,以优先排序它们,使其可以被依赖项解析器消耗。usage: 高权重表示,在依赖项解析过程中,这个目录源优先于权重较低的目录源。优先级值的范围可以在 int32 之间从正到负面。具有未分配优先级的目录源的默认值为 0。具有相同优先级值的目录源根据其名称将按字母顺序排序。

publisher

string

 

runAsRoot

布尔值

RunAsRoot 允许 admins 指定他们希望以 root 用户身份在特权 pod 中运行 CatalogSource pod。只有在运行无法以非 root 身份运行的旧目录镜像时,才应启用此设置。

secrets

数组(字符串)

secret 表示一组可用于访问目录内容的 secret。最好将此列表保持小,因为每个目录条目都需要尝试。

sourceType

字符串

sourceType 是源的类型

updateStrategy

对象

updateStrategy 定义如何发现更新的目录源镜像如何发现定义轮询持续时间和嵌入式策略类型的间隔的 Consists

2.1.2. .spec.grpcPodConfig

描述
grpcPodConfig 会公开 CatalogSource Pod 的 pod 规格的不同覆盖。仅在设置了 SourceType = SourceTypeGrpc 和 Image 时使用。
类型
object
属性类型描述

关联性

object

affinity 是目录源的 pod 关联性。

memoryTarget

integer-or-string

MemoryTarget 为 gRPC 目录 Pod 配置 $GOMEMLIMIT 值。这是服务器的软内存限值,运行时将尝试满足,但不保证它将这样做。如果设置了这个值,Pod 将对运行服务器的容器进行以下修改: - $GOMEMLIMIT 环境变量将设置为这个值(以字节为单位) - 内存请求将被设置为这个值 - 内存请求将被设置为一个较大的值 - 内存限制将被设置为 200% 的这个值,如果需要尽可能减少目录服务器的占用空间,则应设置此字段。如果您的索引镜像有文件系统缓存,请通过索引镜像中的 /tmp/cache/cache/packages.json 来判断这个值的大小。此字段是 best-effort;如果没有设置,则不会使用默认值,且不会设置 Pod 内存限值或 $GOMEMLIMIT 值。

nodeSelector

对象(字符串)

nodeSelector 是一个选择器,必须为 true 才能使 pod 适合某个节点。选择器必须与节点的标签匹配,以便 pod 调度到该节点上。

priorityClassName

string

如果指定,指示 pod 的优先级。如果没有指定,如果没有默认值,pod 优先级将为 default 或零。

securityContextConfig

string

securityContextConfig 可以是 legacyrestricted 之一。CatalogSource 的 pod 可以与正确的 pod.spec.securityContext 和 pod.spec.container[*].securityContext 值注入,以允许 pod 在 Pod Security Admission (PSA) restricted 模式下运行,或者根本不设置这些值,在这种情况下,pod 只能在 PSA 基准特权 命名空间中运行。目前,如果 SecurityContextConfig 未指定,则使用 legacy 的默认值。指定 legacyrestricted 以外的值会导致验证错误。使用无法以 受限 模式运行的旧目录镜像时,SecurityContextConfig 应该设置为 旧的。在以后的版本中,目录维护人员应设置为 restricted,目录维护人员应使用支持以受限模式运行 catalogSource pod 的 opm 重建其目录,以准备这些更改。有关 PSA 的更多信息,请访问 :https://kubernetes.io/docs/concepts/security/pod-security-admission/'

容限(tolerations)

数组

容限(toleration)是目录源的 pod 的容限。

tolerations[]

对象

此 Toleration 附加到 pod,以使用匹配的 operator <operator> 容许与 triple <key,value,effect> 匹配的任何污点。

2.1.3. .spec.grpcPodConfig.affinity

描述
affinity 是目录源的 pod 关联性。
类型
object
属性类型描述

nodeAffinity

对象

描述 pod 的节点关联性调度规则。

podAffinity

对象

描述 pod 关联性调度规则(例如,将这个 pod 位于同一个节点、区等)中。

podAntiAffinity

对象

描述 pod 反关联性调度规则(例如,避免将此 pod 放置到同一个节点、区等)。

2.1.4. .spec.grpcPodConfig.affinity.nodeAffinity

描述
描述 pod 的节点关联性调度规则。
类型
object
属性类型描述

preferredDuringSchedulingIgnoredDuringExecution

array

调度程序更喜欢将 pod 调度到满足此字段指定的关联性表达式的节点,但可能会选择违反一个或多个表达式的节点。最首选节点是具有最大权重总和的节点,即对于满足所有调度要求(资源请求、必需关联表达式等)的每个节点,计算出一个总和总和总和总和(如果节点与相应的 matchExpressions 匹配),则计算总和最高的节点是最首选的。

preferredDuringSchedulingIgnoredDuringExecution[]

对象

空白的首选调度术语与带有隐式权重 0 (例如,它的一个 no-op)的所有对象匹配。空首选调度术语不匹配任何对象(例如,也是 no-op)。

requiredDuringSchedulingIgnoredDuringExecution

对象

如果在调度时没有满足此字段指定的关联性要求,则 pod 不会被调度到该节点上。如果此字段指定的关联性要求在 pod 执行期间某一点满足(例如,由于更新),则系统可能或可能无法最终从其节点驱除 pod。

2.1.5. .spec.grpcPodConfig.affinity.nodeAffinity.preferredDuringSchedulingIgnoredDuringExecution

描述
调度程序更喜欢将 pod 调度到满足此字段指定的关联性表达式的节点,但可能会选择违反一个或多个表达式的节点。最首选节点是具有最大权重总和的节点,即对于满足所有调度要求(资源请求、必需关联表达式等)的每个节点,计算出一个总和总和总和总和(如果节点与相应的 matchExpressions 匹配),则计算总和最高的节点是最首选的。
类型
数组

2.1.6. .spec.grpcPodConfig.affinity.nodeAffinity.preferredDuringSchedulingIgnoredDuringExecution[]

描述
空白的首选调度术语与带有隐式权重 0 (例如,它的一个 no-op)的所有对象匹配。空首选调度术语不匹配任何对象(例如,也是 no-op)。
类型
object
必填
  • preference
  • weight
属性类型描述

preference

对象

与对应权重关联的节点选择器术语。

weight

整数

与对应 nodeSelectorTerm 关联的权重,范围为 1-100。

2.1.7. .spec.grpcPodConfig.affinity.nodeAffinity.preferredDuringSchedulingIgnoredDuringExecution[].preference

描述
与对应权重关联的节点选择器术语。
类型
object
属性类型描述

matchExpressions

array

按节点标签划分的节点选择器要求列表。

matchExpressions[]

对象

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

matchFields

array

按节点字段划分的节点选择器要求列表。

matchFields[]

对象

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

2.1.8. .spec.grpcPodConfig.affinity.nodeAffinity.preferredDuringSchedulingIgnoredDuringExecution[].preference.matchExpressions

描述
按节点标签划分的节点选择器要求列表。
类型
数组

2.1.9. .spec.grpcPodConfig.affinity.nodeAffinity.preferredDuringSchedulingIgnoredDuringExecution[].preference.matchExpressions[]

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

key

字符串

选择器应用到的标签键。

operator

字符串

代表键与一组值的关系。有效的运算符为 In、NotIn、Exists、DoesNotExist。gt 和 Lt.

数组(字符串)

字符串值数组。如果运算符是 In 或 NotIn,则值数组必须是非空的。如果运算符是 Exists 或 DoesNotExist,则值数组必须为空。如果运算符是 Gt 或 Lt,则值数组必须具有单个元素,它将解释为整数。这个数组会在策略性合并补丁中被替换。

2.1.10. .spec.grpcPodConfig.affinity.nodeAffinity.preferredDuringSchedulingIgnoredDuringExecution[].preference.matchFields

描述
按节点字段划分的节点选择器要求列表。
类型
数组

2.1.11. .spec.grpcPodConfig.affinity.nodeAffinity.preferredDuringSchedulingIgnoredDuringExecution[].preference.matchFields[]

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

key

字符串

选择器应用到的标签键。

operator

字符串

代表键与一组值的关系。有效的运算符为 In、NotIn、Exists、DoesNotExist。gt 和 Lt.

数组(字符串)

字符串值数组。如果运算符是 In 或 NotIn,则值数组必须是非空的。如果运算符是 Exists 或 DoesNotExist,则值数组必须为空。如果运算符是 Gt 或 Lt,则值数组必须具有单个元素,它将解释为整数。这个数组会在策略性合并补丁中被替换。

2.1.12. .spec.grpcPodConfig.affinity.nodeAffinity.requiredDuringSchedulingIgnoredDuringExecution

描述
如果在调度时没有满足此字段指定的关联性要求,则 pod 不会被调度到该节点上。如果此字段指定的关联性要求在 pod 执行期间某一点满足(例如,由于更新),则系统可能或可能无法最终从其节点驱除 pod。
类型
object
必填
  • nodeSelectorTerms
属性类型描述

nodeSelectorTerms

array

必需。节点选择器术语列表。术语为 ORed。

nodeSelectorTerms[]

对象

null 或空节点选择器术语不匹配任何对象。它们的要求是 AND。TopologySelectorTerm 类型实现 NodeSelectorTerm 的子集。

2.1.13. .spec.grpcPodConfig.affinity.nodeAffinity.requiredDuringSchedulingIgnoredDuringExecution.nodeSelectorTerms

描述
必需。节点选择器术语列表。术语为 ORed。
类型
数组

2.1.14. .spec.grpcPodConfig.affinity.nodeAffinity.requiredDuringSchedulingIgnoredDuringExecution.nodeSelectorTerms[]

描述
null 或空节点选择器术语不匹配任何对象。它们的要求是 AND。TopologySelectorTerm 类型实现 NodeSelectorTerm 的子集。
类型
object
属性类型描述

matchExpressions

array

按节点标签划分的节点选择器要求列表。

matchExpressions[]

对象

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

matchFields

array

按节点字段划分的节点选择器要求列表。

matchFields[]

对象

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

2.1.15. .spec.grpcPodConfig.affinity.nodeAffinity.requiredDuringSchedulingIgnoredDuringExecution.nodeSelectorTerms[].matchExpressions

描述
按节点标签划分的节点选择器要求列表。
类型
数组

2.1.16. .spec.grpcPodConfig.affinity.nodeAffinity.requiredDuringSchedulingIgnoredDuringExecution.nodeSelectorTerms[].matchExpressions[]

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

key

字符串

选择器应用到的标签键。

operator

字符串

代表键与一组值的关系。有效的运算符为 In、NotIn、Exists、DoesNotExist。gt 和 Lt.

数组(字符串)

字符串值数组。如果运算符是 In 或 NotIn,则值数组必须是非空的。如果运算符是 Exists 或 DoesNotExist,则值数组必须为空。如果运算符是 Gt 或 Lt,则值数组必须具有单个元素,它将解释为整数。这个数组会在策略性合并补丁中被替换。

2.1.17. .spec.grpcPodConfig.affinity.nodeAffinity.requiredDuringSchedulingIgnoredDuringExecution.nodeSelectorTerms[].matchFields

描述
按节点字段划分的节点选择器要求列表。
类型
数组

2.1.18. .spec.grpcPodConfig.affinity.nodeAffinity.requiredDuringSchedulingIgnoredDuringExecution.nodeSelectorTerms[].matchFields[]

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

key

字符串

选择器应用到的标签键。

operator

字符串

代表键与一组值的关系。有效的运算符为 In、NotIn、Exists、DoesNotExist。gt 和 Lt.

数组(字符串)

字符串值数组。如果运算符是 In 或 NotIn,则值数组必须是非空的。如果运算符是 Exists 或 DoesNotExist,则值数组必须为空。如果运算符是 Gt 或 Lt,则值数组必须具有单个元素,它将解释为整数。这个数组会在策略性合并补丁中被替换。

2.1.19. .spec.grpcPodConfig.affinity.podAffinity

描述
描述 pod 关联性调度规则(例如,将这个 pod 位于同一个节点、区等)中。
类型
object
属性类型描述

preferredDuringSchedulingIgnoredDuringExecution

array

调度程序更喜欢将 pod 调度到满足此字段指定的关联性表达式的节点,但可能会选择违反一个或多个表达式的节点。最首选的节点是具有最大权重总和的节点(即,对于满足所有调度要求的节点(resource request、requiredDuringScheduling 关联性表达式等)的每个节点,计算并迭代此字段元素,并在节点具有与对应 podAffinityTerm 匹配的 pod 时,将"weight"添加到总和(如果节点具有最高 podAffinityTerm)、具有最高总和最高的节点是首选。

preferredDuringSchedulingIgnoredDuringExecution[]

对象

所有匹配的 WeightedPodAffinityTerm 字段的权重添加到每个节点,以查找最首选节点。

requiredDuringSchedulingIgnoredDuringExecution

array

如果在调度时没有满足此字段指定的关联性要求,则 pod 不会被调度到该节点上。如果此字段指定的关联性要求在 pod 执行期间某一点满足(例如,由于 pod 标签更新),则系统可能或可能无法最终从其节点驱除 pod。当有多个元素时,与每个 podAffinityTerm 对应的节点列表都会被交集,例如必须满足所有术语。

requiredDuringSchedulingIgnoredDuringExecution[]

对象

定义一组 pod (即,与给定命名空间相对 labelSelector 匹配的 labelSelector ),该 pod 应该与 pod 共同定位(反关联性)或没有共同定位(反关联性)的节点上运行,其中 co-located 在具有键 <topologyKey> 标签的节点上运行,它与其上运行一组 pod 的 pod 匹配。

2.1.20. .spec.grpcPodConfig.affinity.podAffinity.preferredDuringSchedulingIgnoredDuringExecution

描述
调度程序更喜欢将 pod 调度到满足此字段指定的关联性表达式的节点,但可能会选择违反一个或多个表达式的节点。最首选的节点是具有最大权重总和的节点(即,对于满足所有调度要求的节点(resource request、requiredDuringScheduling 关联性表达式等)的每个节点,计算并迭代此字段元素,并在节点具有与对应 podAffinityTerm 匹配的 pod 时,将"weight"添加到总和(如果节点具有最高 podAffinityTerm)、具有最高总和最高的节点是首选。
类型
数组

2.1.21. .spec.grpcPodConfig.affinity.podAffinity.preferredDuringSchedulingIgnoredDuringExecution[]

描述
所有匹配的 WeightedPodAffinityTerm 字段的权重添加到每个节点,以查找最首选节点。
类型
object
必填
  • podAffinityTerm
  • weight
属性类型描述

podAffinityTerm

对象

必需。与对应权重关联的 pod 关联性术语。

weight

整数

与对应的 podAffinityTerm 关联的权重,范围为 1-100。

2.1.22. .spec.grpcPodConfig.affinity.podAffinity.preferredDuringSchedulingIgnoredDuringExecution[].podAffinityTerm

描述
必需。与对应权重关联的 pod 关联性术语。
类型
object
必填
  • topologyKey
属性类型描述

labelSelector

对象

对一组资源进行标签查询,本例中为 pod。

namespaceSelector

对象

术语适用的命名空间集合上的标签查询。术语应用于此字段选定的命名空间的 union,以及 namespaces 字段中列出的命名空间。null selector 和 null 或空命名空间列表表示"此 pod 的命名空间"。空选择器({})匹配所有命名空间。

命名空间

数组(字符串)

namespaces 指定术语应用到的命名空间名称的静态列表。术语应用到此字段中列出的命名空间的 union,namespaceSelector 选择的命名空间列表和 null namespaceSelector 表示 " this pod 的命名空间"。

topologyKey

字符串

此 pod 应该在指定命名空间中与 labelSelector 匹配的 pod 共存(反关联性),其中 co-located 定义为在运行所选 pod 的节点的值为 running 的节点上运行。不允许为空 topologyKey。

2.1.23. .spec.grpcPodConfig.affinity.podAffinity.preferredDuringSchedulingIgnoredDuringExecution[].podAffinityTerm.labelSelector

描述
对一组资源进行标签查询,本例中为 pod。
类型
object
属性类型描述

matchExpressions

array

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

matchExpressions[]

对象

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

matchLabels

对象(字符串)

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

2.1.24. .spec.grpcPodConfig.affinity.podAffinity.preferredDuringSchedulingIgnoredDuringExecution[].podAffinityTerm.labelSelector.matchExpressions

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

2.1.25. .spec.grpcPodConfig.affinity.podAffinity.preferredDuringSchedulingIgnoredDuringExecution[].podAffinityTerm.labelSelector.matchExpressions[]

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

key

字符串

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

operator

字符串

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

数组(字符串)

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

2.1.26. .spec.grpcPodConfig.affinity.podAffinity.preferredDuringSchedulingIgnoredDuringExecution[].podAffinityTerm.namespaceSelector

描述
术语适用的命名空间集合上的标签查询。术语应用于此字段选定的命名空间的 union,以及 namespaces 字段中列出的命名空间。null selector 和 null 或空命名空间列表表示"此 pod 的命名空间"。空选择器({})匹配所有命名空间。
类型
object
属性类型描述

matchExpressions

array

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

matchExpressions[]

对象

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

matchLabels

对象(字符串)

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

2.1.27. .spec.grpcPodConfig.affinity.podAffinity.preferredDuringSchedulingIgnoredDuringExecution[].podAffinityTerm.namespaceSelector.matchExpressions

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

2.1.28. .spec.grpcPodConfig.affinity.podAffinity.preferredDuringSchedulingIgnoredDuringExecution[].podAffinityTerm.namespaceSelector.matchExpressions[]

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

key

字符串

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

operator

字符串

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

数组(字符串)

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

2.1.29. .spec.grpcPodConfig.affinity.podAffinity.requiredDuringSchedulingIgnoredDuringExecution

描述
如果在调度时没有满足此字段指定的关联性要求,则 pod 不会被调度到该节点上。如果此字段指定的关联性要求在 pod 执行期间某一点满足(例如,由于 pod 标签更新),则系统可能或可能无法最终从其节点驱除 pod。当有多个元素时,与每个 podAffinityTerm 对应的节点列表都会被交集,例如必须满足所有术语。
类型
数组

2.1.30. .spec.grpcPodConfig.affinity.podAffinity.requiredDuringSchedulingIgnoredDuringExecution[]

描述
定义一组 pod (即,与给定命名空间相对 labelSelector 匹配的 labelSelector ),该 pod 应该与 pod 共同定位(反关联性)或没有共同定位(反关联性)的节点上运行,其中 co-located 在具有键 <topologyKey> 标签的节点上运行,它与其上运行一组 pod 的 pod 匹配。
类型
object
必填
  • topologyKey
属性类型描述

labelSelector

对象

对一组资源进行标签查询,本例中为 pod。

namespaceSelector

对象

术语适用的命名空间集合上的标签查询。术语应用于此字段选定的命名空间的 union,以及 namespaces 字段中列出的命名空间。null selector 和 null 或空命名空间列表表示"此 pod 的命名空间"。空选择器({})匹配所有命名空间。

命名空间

数组(字符串)

namespaces 指定术语应用到的命名空间名称的静态列表。术语应用到此字段中列出的命名空间的 union,namespaceSelector 选择的命名空间列表和 null namespaceSelector 表示 " this pod 的命名空间"。

topologyKey

字符串

此 pod 应该在指定命名空间中与 labelSelector 匹配的 pod 共存(反关联性),其中 co-located 定义为在运行所选 pod 的节点的值为 running 的节点上运行。不允许为空 topologyKey。

2.1.31. .spec.grpcPodConfig.affinity.podAffinity.requiredDuringSchedulingIgnoredDuringExecution[].labelSelector

描述
对一组资源进行标签查询,本例中为 pod。
类型
object
属性类型描述

matchExpressions

array

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

matchExpressions[]

对象

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

matchLabels

对象(字符串)

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

2.1.32. .spec.grpcPodConfig.affinity.podAffinity.requiredDuringSchedulingIgnoredDuringExecution[].labelSelector.matchExpressions

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

2.1.33. .spec.grpcPodConfig.affinity.podAffinity.requiredDuringSchedulingIgnoredDuringExecution[].labelSelector.matchExpressions[]

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

key

字符串

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

operator

字符串

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

数组(字符串)

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

2.1.34. .spec.grpcPodConfig.affinity.podAffinity.requiredDuringSchedulingIgnoredDuringExecution[].namespaceSelector

描述
术语适用的命名空间集合上的标签查询。术语应用于此字段选定的命名空间的 union,以及 namespaces 字段中列出的命名空间。null selector 和 null 或空命名空间列表表示"此 pod 的命名空间"。空选择器({})匹配所有命名空间。
类型
object
属性类型描述

matchExpressions

array

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

matchExpressions[]

对象

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

matchLabels

对象(字符串)

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

2.1.35. .spec.grpcPodConfig.affinity.podAffinity.requiredDuringSchedulingIgnoredDuringExecution[].namespaceSelector.matchExpressions

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

2.1.36. .spec.grpcPodConfig.affinity.podAffinity.requiredDuringSchedulingIgnoredDuringExecution[].namespaceSelector.matchExpressions[]

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

key

字符串

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

operator

字符串

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

数组(字符串)

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

2.1.37. .spec.grpcPodConfig.affinity.podAntiAffinity

描述
描述 pod 反关联性调度规则(例如,避免将此 pod 放置到同一个节点、区等)。
类型
object
属性类型描述

preferredDuringSchedulingIgnoredDuringExecution

array

调度程序更喜欢将 pod 调度到满足此字段指定的反关联性表达式的节点,但可能会选择违反一个或多个表达式的节点。最首选的节点是具有最大权重总和的节点,即对于满足所有调度要求(资源请求、requiredDuringScheduling 反关联性表达式等)的每个节点,计算通过此字段元素来计算总和总和(如果节点具有与对应的 podAffinityTerm 匹配的 pod)的总和。

preferredDuringSchedulingIgnoredDuringExecution[]

对象

所有匹配的 WeightedPodAffinityTerm 字段的权重添加到每个节点,以查找最首选节点。

requiredDuringSchedulingIgnoredDuringExecution

array

如果在调度时没有满足此字段指定的反关联性要求,则 pod 不会被调度到该节点上。如果此字段指定的反关联性要求在 Pod 执行期间某一点满足(例如,由于 pod 标签更新),则系统可能或可能无法最终从其节点驱除 pod。当有多个元素时,与每个 podAffinityTerm 对应的节点列表都会被交集,例如必须满足所有术语。

requiredDuringSchedulingIgnoredDuringExecution[]

对象

定义一组 pod (即,与给定命名空间相对 labelSelector 匹配的 labelSelector ),该 pod 应该与 pod 共同定位(反关联性)或没有共同定位(反关联性)的节点上运行,其中 co-located 在具有键 <topologyKey> 标签的节点上运行,它与其上运行一组 pod 的 pod 匹配。

2.1.38. .spec.grpcPodConfig.affinity.podAntiAffinity.preferredDuringSchedulingIgnoredDuringExecution

描述
调度程序更喜欢将 pod 调度到满足此字段指定的反关联性表达式的节点,但可能会选择违反一个或多个表达式的节点。最首选的节点是具有最大权重总和的节点,即对于满足所有调度要求(资源请求、requiredDuringScheduling 反关联性表达式等)的每个节点,计算通过此字段元素来计算总和总和(如果节点具有与对应的 podAffinityTerm 匹配的 pod)的总和。
类型
数组

2.1.39. .spec.grpcPodConfig.affinity.podAntiAffinity.preferredDuringSchedulingIgnoredDuringExecution[]

描述
所有匹配的 WeightedPodAffinityTerm 字段的权重添加到每个节点,以查找最首选节点。
类型
object
必填
  • podAffinityTerm
  • weight
属性类型描述

podAffinityTerm

对象

必需。与对应权重关联的 pod 关联性术语。

weight

整数

与对应的 podAffinityTerm 关联的权重,范围为 1-100。

2.1.40. .spec.grpcPodConfig.affinity.podAntiAffinity.preferredDuringSchedulingIgnoredDuringExecution[].podAffinityTerm

描述
必需。与对应权重关联的 pod 关联性术语。
类型
object
必填
  • topologyKey
属性类型描述

labelSelector

对象

对一组资源进行标签查询,本例中为 pod。

namespaceSelector

对象

术语适用的命名空间集合上的标签查询。术语应用于此字段选定的命名空间的 union,以及 namespaces 字段中列出的命名空间。null selector 和 null 或空命名空间列表表示"此 pod 的命名空间"。空选择器({})匹配所有命名空间。

命名空间

数组(字符串)

namespaces 指定术语应用到的命名空间名称的静态列表。术语应用到此字段中列出的命名空间的 union,namespaceSelector 选择的命名空间列表和 null namespaceSelector 表示 " this pod 的命名空间"。

topologyKey

字符串

此 pod 应该在指定命名空间中与 labelSelector 匹配的 pod 共存(反关联性),其中 co-located 定义为在运行所选 pod 的节点的值为 running 的节点上运行。不允许为空 topologyKey。

2.1.41. .spec.grpcPodConfig.affinity.podAntiAffinity.preferredDuringSchedulingIgnoredDuringExecution[].podAffinityTerm.labelSelector

描述
对一组资源进行标签查询,本例中为 pod。
类型
object
属性类型描述

matchExpressions

array

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

matchExpressions[]

对象

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

matchLabels

对象(字符串)

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

2.1.42. .spec.grpcPodConfig.affinity.podAntiAffinity.preferredDuringSchedulingIgnoredDuringExecution[].podAffinityTerm.labelSelector.matchExpressions

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

2.1.43. .spec.grpcPodConfig.affinity.podAntiAffinity.preferredDuringSchedulingIgnoredDuringExecution[].podAffinityTerm.labelSelector.matchExpressions[]

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

key

字符串

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

operator

字符串

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

数组(字符串)

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

2.1.44. .spec.grpcPodConfig.affinity.podAntiAffinity.preferredDuringSchedulingIgnoredDuringExecution[].podAffinityTerm.namespaceSelector

描述
术语适用的命名空间集合上的标签查询。术语应用于此字段选定的命名空间的 union,以及 namespaces 字段中列出的命名空间。null selector 和 null 或空命名空间列表表示"此 pod 的命名空间"。空选择器({})匹配所有命名空间。
类型
object
属性类型描述

matchExpressions

array

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

matchExpressions[]

对象

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

matchLabels

对象(字符串)

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

2.1.45. .spec.grpcPodConfig.affinity.podAntiAffinity.preferredDuringSchedulingIgnoredDuringExecution[].podAffinityTerm.namespaceSelector.matchExpressions

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

2.1.46. .spec.grpcPodConfig.affinity.podAntiAffinity.preferredDuringSchedulingIgnoredDuringExecution[].podAffinityTerm.namespaceSelector.matchExpressions[]

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

key

字符串

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

operator

字符串

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

数组(字符串)

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

2.1.47. .spec.grpcPodConfig.affinity.podAntiAffinity.requiredDuringSchedulingIgnoredDuringExecution

描述
如果在调度时没有满足此字段指定的反关联性要求,则 pod 不会被调度到该节点上。如果此字段指定的反关联性要求在 Pod 执行期间某一点满足(例如,由于 pod 标签更新),则系统可能或可能无法最终从其节点驱除 pod。当有多个元素时,与每个 podAffinityTerm 对应的节点列表都会被交集,例如必须满足所有术语。
类型
数组

2.1.48. .spec.grpcPodConfig.affinity.podAntiAffinity.requiredDuringSchedulingIgnoredDuringExecution[]

描述
定义一组 pod (即,与给定命名空间相对 labelSelector 匹配的 labelSelector ),该 pod 应该与 pod 共同定位(反关联性)或没有共同定位(反关联性)的节点上运行,其中 co-located 在具有键 <topologyKey> 标签的节点上运行,它与其上运行一组 pod 的 pod 匹配。
类型
object
必填
  • topologyKey
属性类型描述

labelSelector

对象

对一组资源进行标签查询,本例中为 pod。

namespaceSelector

对象

术语适用的命名空间集合上的标签查询。术语应用于此字段选定的命名空间的 union,以及 namespaces 字段中列出的命名空间。null selector 和 null 或空命名空间列表表示"此 pod 的命名空间"。空选择器({})匹配所有命名空间。

命名空间

数组(字符串)

namespaces 指定术语应用到的命名空间名称的静态列表。术语应用到此字段中列出的命名空间的 union,namespaceSelector 选择的命名空间列表和 null namespaceSelector 表示 " this pod 的命名空间"。

topologyKey

字符串

此 pod 应该在指定命名空间中与 labelSelector 匹配的 pod 共存(反关联性),其中 co-located 定义为在运行所选 pod 的节点的值为 running 的节点上运行。不允许为空 topologyKey。

2.1.49. .spec.grpcPodConfig.affinity.podAntiAffinity.requiredDuringSchedulingIgnoredDuringExecution[].labelSelector

描述
对一组资源进行标签查询,本例中为 pod。
类型
object
属性类型描述

matchExpressions

array

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

matchExpressions[]

对象

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

matchLabels

对象(字符串)

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

2.1.50. .spec.grpcPodConfig.affinity.podAntiAffinity.requiredDuringSchedulingIgnoredDuringExecution[].labelSelector.matchExpressions

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

2.1.51. .spec.grpcPodConfig.affinity.podAntiAffinity.requiredDuringSchedulingIgnoredDuringExecution[].labelSelector.matchExpressions[]

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

key

字符串

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

operator

字符串

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

数组(字符串)

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

2.1.52. .spec.grpcPodConfig.affinity.podAntiAffinity.requiredDuringSchedulingIgnoredDuringExecution[].namespaceSelector

描述
术语适用的命名空间集合上的标签查询。术语应用于此字段选定的命名空间的 union,以及 namespaces 字段中列出的命名空间。null selector 和 null 或空命名空间列表表示"此 pod 的命名空间"。空选择器({})匹配所有命名空间。
类型
object
属性类型描述

matchExpressions

array

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

matchExpressions[]

对象

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

matchLabels

对象(字符串)

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

2.1.53. .spec.grpcPodConfig.affinity.podAntiAffinity.requiredDuringSchedulingIgnoredDuringExecution[].namespaceSelector.matchExpressions

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

2.1.54. .spec.grpcPodConfig.affinity.podAntiAffinity.requiredDuringSchedulingIgnoredDuringExecution[].namespaceSelector.matchExpressions[]

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

key

字符串

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

operator

字符串

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

数组(字符串)

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

2.1.55. .spec.grpcPodConfig.tolerations

描述
容限(toleration)是目录源的 pod 的容限。
类型
数组

2.1.56. .spec.grpcPodConfig.tolerations[]

描述
此 Toleration 附加到 pod,以使用匹配的 operator <operator> 容许与 triple <key,value,effect> 匹配的任何污点。
类型
object
属性类型描述

effect

字符串

effect 表示要匹配的污点效果。空意味着匹配所有污点效果。指定后,允许的值为 NoSchedule,PreferNoSchedule 和 NoExecute。

key

字符串

key 是容限应用到的污点键。empty 表示与所有污点键匹配。如果键为空,则必须存在运算符;组合意味着匹配所有值和所有键。

operator

字符串

Operator 代表键与值的关系。有效的运算符是 Exists 和 Equal。默认值为 Equal。exists 等同于值的通配符,以便 pod 可以容忍特定类别的所有污点。

tolerationSeconds

整数

tolerationSeconds 代表容限的期间(必须生效 NoExecute,否则此字段将被忽略)可以容忍污点。默认情况下,它不会被设置,这意味着容许任何污点(不要驱除)。零值和负值将被视为 0 (立即删除)。

value

字符串

value 是容限匹配的污点值。如果运算符是 Exists,则该值应该为空,否则仅是一个常规字符串。

2.1.57. .spec.icon

描述
类型
object
必填
  • base64data
  • MediaType
属性类型描述

base64data

字符串

 

MediaType

字符串

 

2.1.58. .spec.updateStrategy

描述
updateStrategy 定义如何发现更新的目录源镜像如何发现定义轮询持续时间和嵌入式策略类型的间隔的 Consists
类型
object
属性类型描述

registryPoll

对象

 

2.1.59. .spec.updateStrategy.registryPoll

描述
类型
object
属性类型描述

interval

字符串

间隔用于决定最新目录源版本检查之间的时间间隔。catalog operator 会轮询以查看目录源的新版本是否可用。如果可用,则拉取最新的镜像,并且 gRPC 流量会被定向到最新的目录源。

2.1.60. .status

描述
类型
object
属性类型描述

conditions

array

代表 CatalogSource 的状态。请注意,Message 和 Reason 代表原始状态信息,这些信息可能会在以后被迁移为条件。引入的任何新功能都将使用条件。

conditions[]

对象

条件包含此 API 资源当前状态的一个方面的详情。--- 这个结构旨在直接用作字段路径 .status.conditions 中的数组。例如,输入 FooStatus struct{ // Represents the observations of a foo’s current state. // Known .status.conditions.type are: "Available", "Progressing", and "Degraded" // +patchMergeKey=type // +patchStrategy=merge // +listType=map // +listMapKey=type Conditions []metav1.Condition json:"conditions,omitempty" patchStrategy:"merge" patchMergeKey:"type" protobuf:"bytes,1,rep,name=conditions" // other fields }

configMapReference

对象

 

connectionState

对象

 

latestImageRegistryPoll

字符串

CatalogSource 镜像 registry 最后一次轮询的时间,以确保镜像为最新版本

message

字符串

人类可读的消息,指示 CatalogSource 在这种情况下为什么的详情。

reason

字符串

CatalogSource 转换为当前状态的原因。

registryService

对象

 

2.1.61. .status.conditions

描述
代表 CatalogSource 的状态。请注意,Message 和 Reason 代表原始状态信息,这些信息可能会在以后被迁移为条件。引入的任何新功能都将使用条件。
类型
array

2.1.62. .status.conditions[]

描述
条件包含此 API 资源当前状态的一个方面的详情。--- 这个结构旨在直接用作字段路径 .status.conditions 中的数组。例如,输入 FooStatus struct{ // Represents the observations of a foo’s current state. // Known .status.conditions.type are: "Available", "Progressing", and "Degraded" // +patchMergeKey=type // +patchStrategy=merge // +listType=map // +listMapKey=type Conditions []metav1.Condition json:"conditions,omitempty" patchStrategy:"merge" patchMergeKey:"type" protobuf:"bytes,1,rep,name=conditions" // other fields }
类型
object
必填
  • lastTransitionTime
  • message
  • reason
  • status
  • type
属性类型描述

lastTransitionTime

字符串

lastTransitionTime 是条件从一个状态转换到另一个状态最后一次的时间。这应该是底层条件变化的时间。如果为未知,则使用 API 字段更改的时间是可以接受的。

message

字符串

Message 是人类可读的消息,指示有关转换的详细信息。这可能是一个空字符串。

observedGeneration

整数

observedGeneration 代表 .metadata.generation,这是条件设置所基于的条件。例如,如果 .metadata.generation 目前为 12,但 .status.conditions[x].observedGeneration 是 9,则代表条件与实例的当前状态已不匹配。

reason

字符串

reason 包含程序标识符,指示条件最后一次转换的原因。特定条件类型的制作者可能会定义预期的值和此字段的含义,以及这些值是否被视为有保证的 API。该值应该是 CamelCase 字符串。此字段可能不是空的。

status

字符串

条件的状态,True, False, Unknown 之一。

type

字符串

CamelCase 或 foo.example.com/CamelCase 中的条件类型。-- Many .condition.type 值在资源间是一致的,但因为任意条件可能很有用(请参阅 .node.status.conditions),deconflict 的能力非常重要。它匹配的正则表达式是 (dns1123SubdomainFmt/)? (qualifiedNameFmt)

2.1.63. .status.configMapReference

描述
类型
object
必填
  • name
  • namespace
属性类型描述

lastUpdateTime

字符串

 

name

字符串

 

namespace

字符串

 

resourceVersion

字符串

 

uid

字符串

UID 是拥有唯一 ID 值的类型,包括 UUID。由于我们不仅使用 UUID,因此这是一个别名字符串。作为一种类型捕获意图,有助于确保 UID 和名称不会被限制。

2.1.64. .status.connectionState

描述
类型
object
必填
  • lastObservedState
属性类型描述

address

字符串

 

lastConnect

字符串

 

lastObservedState

字符串

 

2.1.65. .status.registryService

描述
类型
object
属性类型描述

createdAt

字符串

 

port

字符串

 

protocol

字符串

 

serviceName

字符串

 

serviceNamespace

字符串

 

2.2. API 端点

可用的 API 端点如下:

  • /apis/operators.coreos.com/v1alpha1/catalogsources

    • GET: 列出 CatalogSource 类型的对象
  • /apis/operators.coreos.com/v1alpha1/namespaces/{namespace}/catalogsources

    • DELETE :删除 CatalogSource 集合
    • GET: 列出 CatalogSource 类型的对象
    • POST :创建一个 CatalogSource
  • /apis/operators.coreos.com/v1alpha1/namespaces/{namespace}/catalogsources/{name}

    • DELETE :删除 CatalogSource
    • GET :读取指定的 CatalogSource
    • PATCH: 部分更新指定的 CatalogSource
    • PUT :替换指定的 CatalogSource
  • /apis/operators.coreos.com/v1alpha1/namespaces/{namespace}/catalogsources/{name}/status

    • GET :指定 CatalogSource 的读取状态
    • PATCH: 部分更新指定 CatalogSource 的状态
    • PUT :替换指定 CatalogSource 的状态

2.2.1. /apis/operators.coreos.com/v1alpha1/catalogsources

表 2.1. 全局查询参数
参数类型描述

allowWatchBookmarks

布尔值

allowWatchBookmarks请求类型为“BOOKMARK”的监视事件。不实现书签的服务器可能会忽略这个标志和书签,由服务器自由裁量发送。客户端不应假设书签在任何特定间隔返回,也不会假定服务器在会话期间发送任何 BOOKMARK 事件。如果这不是监视,则忽略此字段。

继续

字符串

从服务器检索更多结果时,应设置 continue 选项。由于这个值是定义的服务器,因此客户端只能使用之前查询结果中的 continue 值,并带有相同的查询参数(除 continue 值除外),因此服务器可能会拒绝它无法识别的值。如果指定的 continue 值不再有效,无论是因为过期时间(通常为 5 到十五分钟)还是服务器上的配置更改,服务器将会与继续令牌一起响应 410 ResourceExpired 错误。如果客户端需要一致的列表,它必须重启其列表,而无需 continue 字段。否则,客户端可能会发送另一个带有 410 错误接收的令牌的列表请求,服务器将以从下一个密钥开始开始的列表响应,但从最新的快照开始,这与上一个列表结果中不一致 - 在第一个列表请求后将包含在响应中,只要它们的密钥位于 "next key" 后。

当 watch 为 true 时不支持此字段。客户端可以从服务器返回的最后一个 resourceVersion 值开始监视,而不丢失任何修改。

fieldSelector

字符串

一个选择器,用于限制其字段返回的对象列表。默认为任何内容。

labelSelector

字符串

一个选择器,用于限制其标签返回的对象列表。默认为任何内容。

limit

整数

limit 是列表调用返回的最大响应数。如果存在更多项目,服务器会将列表元数据上的 continue 字段设置为可用于同一初始查询的值,以检索下一个结果集合。如果过滤所有请求的对象,则设置限制可能会返回少于请求项目数量(最多为零项),并且客户端只应使用 continue 字段的存在,以确定是否有更多结果可用。服务器可能会选择不支持 limit 参数,并返回所有可用的结果。如果指定了 limit,并且 continue 字段为空,客户端可能会假定没有更多结果可用。如果 watch 为 true,则不支持此字段。

服务器保证,在使用时返回的对象将与在没有限制限制的情况下发出单个列表调用相同 - 也就是说,在发出第一个请求后没有创建、修改或删除对象。这有时被称为一致的快照,并确保使用限制来接收非常大结果的较小的块的客户端可确保它们看到所有可能的对象。如果在块列表中更新对象,则返回第一个列表结果时存在的对象版本。

pretty

字符串

如果为 'true',则输出会经过 pretty print 处理。

resourceVersion

字符串

resourceVersion 对可能给请求提供服务的资源版本设置一个约束。详情请查看 https://kubernetes.io/docs/reference/using-api/api-concepts/#resource-versions

默认为未设置

resourceVersionMatch

字符串

resourceVersionMatch 决定如何将 resourceVersion 应用到列表调用。强烈建议您为设置 resourceVersion 的 list 调用设置 resourceVersionMatch。详情请参阅 https://kubernetes.io/docs/reference/using-api/api-concepts/#resource-versions

默认为未设置

sendInitialEvents

布尔值

sendInitialEvents=true 可以和 watch=true 一起设置。在这种情况下,观察流将以复合事件开头,以生成集合中对象的当前状态。发送完所有这些事件后,将发送合成"Bookmark"事件。书签将报告与对象集合对应的 ResourceVersion (RV),并使用 "k8s.io/initial-events-end": "true" 注解进行标记。之后,监视流将照常进行,从而向监视的对象发送与更改对应的监视事件(按 RV 排序)。

当设置 sendInitialEvents 选项时,我们还需要设置 resourceVersionMatch 选项。监控请求的语义如下: - resourceVersionMatch = NotOlderThan 解释为"数据至少为提供的 resourceVersion'",当状态同步到 'resourceVersion 时,如果状态同步到 ListOptions 提供的 'resourceVersion 时,会发送书签事件。如果未设置 resourceVersion,则这被解释为"consistent read",当请求开始处理时,将发送书签事件。- resourceVersionMatch 设置为任何其他值或未设置 Invalid 错误。

如果 resourceVersion=""resourceVersion="0" (出于向后兼容原因)和 false,则默认为 true。

timeoutSeconds

整数

列表/watch 调用的超时。这限制了调用的持续时间,无论任何活动或不活跃。

watch

布尔值

观察对所描述资源的更改,并将它们作为添加、更新和删除通知的流返回。指定 resourceVersion。

HTTP 方法
GET
描述
列出 CatalogSource 类型的对象
表 2.2. HTTP 响应
HTTP 代码响应正文

200 - OK

CatalogSourceList 模式

401 - Unauthorized

2.2.2. /apis/operators.coreos.com/v1alpha1/namespaces/{namespace}/catalogsources

表 2.3. 全局路径参数
参数类型描述

namespace

字符串

对象名称和身份验证范围,如团队(team)和项目(project)

表 2.4. 全局查询参数
参数类型描述

pretty

字符串

如果为 'true',则输出会经过 pretty print 处理。

HTTP 方法
DELETE
描述
删除 CatalogSource 集合
表 2.5. 查询参数
参数类型描述

allowWatchBookmarks

布尔值

allowWatchBookmarks请求类型为“BOOKMARK”的监视事件。不实现书签的服务器可能会忽略这个标志和书签,由服务器自由裁量发送。客户端不应假设书签在任何特定间隔返回,也不会假定服务器在会话期间发送任何 BOOKMARK 事件。如果这不是监视,则忽略此字段。

继续

字符串

从服务器检索更多结果时,应设置 continue 选项。由于这个值是定义的服务器,因此客户端只能使用之前查询结果中的 continue 值,并带有相同的查询参数(除 continue 值除外),因此服务器可能会拒绝它无法识别的值。如果指定的 continue 值不再有效,无论是因为过期时间(通常为 5 到十五分钟)还是服务器上的配置更改,服务器将会与继续令牌一起响应 410 ResourceExpired 错误。如果客户端需要一致的列表,它必须重启其列表,而无需 continue 字段。否则,客户端可能会发送另一个带有 410 错误接收的令牌的列表请求,服务器将以从下一个密钥开始开始的列表响应,但从最新的快照开始,这与上一个列表结果中不一致 - 在第一个列表请求后将包含在响应中,只要它们的密钥位于 "next key" 后。

当 watch 为 true 时不支持此字段。客户端可以从服务器返回的最后一个 resourceVersion 值开始监视,而不丢失任何修改。

fieldSelector

字符串

一个选择器,用于限制其字段返回的对象列表。默认为任何内容。

labelSelector

字符串

一个选择器,用于限制其标签返回的对象列表。默认为任何内容。

limit

整数

limit 是列表调用返回的最大响应数。如果存在更多项目,服务器会将列表元数据上的 continue 字段设置为可用于同一初始查询的值,以检索下一个结果集合。如果过滤所有请求的对象,则设置限制可能会返回少于请求项目数量(最多为零项),并且客户端只应使用 continue 字段的存在,以确定是否有更多结果可用。服务器可能会选择不支持 limit 参数,并返回所有可用的结果。如果指定了 limit,并且 continue 字段为空,客户端可能会假定没有更多结果可用。如果 watch 为 true,则不支持此字段。

服务器保证,在使用时返回的对象将与在没有限制限制的情况下发出单个列表调用相同 - 也就是说,在发出第一个请求后没有创建、修改或删除对象。这有时被称为一致的快照,并确保使用限制来接收非常大结果的较小的块的客户端可确保它们看到所有可能的对象。如果在块列表中更新对象,则返回第一个列表结果时存在的对象版本。

resourceVersion

字符串

resourceVersion 对可能给请求提供服务的资源版本设置一个约束。详情请查看 https://kubernetes.io/docs/reference/using-api/api-concepts/#resource-versions

默认为未设置

resourceVersionMatch

字符串

resourceVersionMatch 决定如何将 resourceVersion 应用到列表调用。强烈建议您为设置 resourceVersion 的 list 调用设置 resourceVersionMatch。详情请参阅 https://kubernetes.io/docs/reference/using-api/api-concepts/#resource-versions

默认为未设置

sendInitialEvents

布尔值

sendInitialEvents=true 可以和 watch=true 一起设置。在这种情况下,观察流将以复合事件开头,以生成集合中对象的当前状态。发送完所有这些事件后,将发送合成"Bookmark"事件。书签将报告与对象集合对应的 ResourceVersion (RV),并使用 "k8s.io/initial-events-end": "true" 注解进行标记。之后,监视流将照常进行,从而向监视的对象发送与更改对应的监视事件(按 RV 排序)。

当设置 sendInitialEvents 选项时,我们还需要设置 resourceVersionMatch 选项。监控请求的语义如下: - resourceVersionMatch = NotOlderThan 解释为"数据至少为提供的 resourceVersion'",当状态同步到 'resourceVersion 时,如果状态同步到 ListOptions 提供的 'resourceVersion 时,会发送书签事件。如果未设置 resourceVersion,则这被解释为"consistent read",当请求开始处理时,将发送书签事件。- resourceVersionMatch 设置为任何其他值或未设置 Invalid 错误。

如果 resourceVersion=""resourceVersion="0" (出于向后兼容原因)和 false,则默认为 true。

timeoutSeconds

整数

列表/watch 调用的超时。这限制了调用的持续时间,无论任何活动或不活跃。

watch

布尔值

观察对所描述资源的更改,并将它们作为添加、更新和删除通知的流返回。指定 resourceVersion。

表 2.6. HTTP 响应
HTTP 代码响应正文

200 - OK

Status 模式

401 - Unauthorized

HTTP 方法
GET
描述
列出 CatalogSource 类型的对象
表 2.7. 查询参数
参数类型描述

allowWatchBookmarks

布尔值

allowWatchBookmarks请求类型为“BOOKMARK”的监视事件。不实现书签的服务器可能会忽略这个标志和书签,由服务器自由裁量发送。客户端不应假设书签在任何特定间隔返回,也不会假定服务器在会话期间发送任何 BOOKMARK 事件。如果这不是监视,则忽略此字段。

继续

字符串

从服务器检索更多结果时,应设置 continue 选项。由于这个值是定义的服务器,因此客户端只能使用之前查询结果中的 continue 值,并带有相同的查询参数(除 continue 值除外),因此服务器可能会拒绝它无法识别的值。如果指定的 continue 值不再有效,无论是因为过期时间(通常为 5 到十五分钟)还是服务器上的配置更改,服务器将会与继续令牌一起响应 410 ResourceExpired 错误。如果客户端需要一致的列表,它必须重启其列表,而无需 continue 字段。否则,客户端可能会发送另一个带有 410 错误接收的令牌的列表请求,服务器将以从下一个密钥开始开始的列表响应,但从最新的快照开始,这与上一个列表结果中不一致 - 在第一个列表请求后将包含在响应中,只要它们的密钥位于 "next key" 后。

当 watch 为 true 时不支持此字段。客户端可以从服务器返回的最后一个 resourceVersion 值开始监视,而不丢失任何修改。

fieldSelector

字符串

一个选择器,用于限制其字段返回的对象列表。默认为任何内容。

labelSelector

字符串

一个选择器,用于限制其标签返回的对象列表。默认为任何内容。

limit

整数

limit 是列表调用返回的最大响应数。如果存在更多项目,服务器会将列表元数据上的 continue 字段设置为可用于同一初始查询的值,以检索下一个结果集合。如果过滤所有请求的对象,则设置限制可能会返回少于请求项目数量(最多为零项),并且客户端只应使用 continue 字段的存在,以确定是否有更多结果可用。服务器可能会选择不支持 limit 参数,并返回所有可用的结果。如果指定了 limit,并且 continue 字段为空,客户端可能会假定没有更多结果可用。如果 watch 为 true,则不支持此字段。

服务器保证,在使用时返回的对象将与在没有限制限制的情况下发出单个列表调用相同 - 也就是说,在发出第一个请求后没有创建、修改或删除对象。这有时被称为一致的快照,并确保使用限制来接收非常大结果的较小的块的客户端可确保它们看到所有可能的对象。如果在块列表中更新对象,则返回第一个列表结果时存在的对象版本。

resourceVersion

字符串

resourceVersion 对可能给请求提供服务的资源版本设置一个约束。详情请查看 https://kubernetes.io/docs/reference/using-api/api-concepts/#resource-versions

默认为未设置

resourceVersionMatch

字符串

resourceVersionMatch 决定如何将 resourceVersion 应用到列表调用。强烈建议您为设置 resourceVersion 的 list 调用设置 resourceVersionMatch。详情请参阅 https://kubernetes.io/docs/reference/using-api/api-concepts/#resource-versions

默认为未设置

sendInitialEvents

布尔值

sendInitialEvents=true 可以和 watch=true 一起设置。在这种情况下,观察流将以复合事件开头,以生成集合中对象的当前状态。发送完所有这些事件后,将发送合成"Bookmark"事件。书签将报告与对象集合对应的 ResourceVersion (RV),并使用 "k8s.io/initial-events-end": "true" 注解进行标记。之后,监视流将照常进行,从而向监视的对象发送与更改对应的监视事件(按 RV 排序)。

当设置 sendInitialEvents 选项时,我们还需要设置 resourceVersionMatch 选项。监控请求的语义如下: - resourceVersionMatch = NotOlderThan 解释为"数据至少为提供的 resourceVersion'",当状态同步到 'resourceVersion 时,如果状态同步到 ListOptions 提供的 'resourceVersion 时,会发送书签事件。如果未设置 resourceVersion,则这被解释为"consistent read",当请求开始处理时,将发送书签事件。- resourceVersionMatch 设置为任何其他值或未设置 Invalid 错误。

如果 resourceVersion=""resourceVersion="0" (出于向后兼容原因)和 false,则默认为 true。

timeoutSeconds

整数

列表/watch 调用的超时。这限制了调用的持续时间,无论任何活动或不活跃。

watch

布尔值

观察对所描述资源的更改,并将它们作为添加、更新和删除通知的流返回。指定 resourceVersion。

表 2.8. HTTP 响应
HTTP 代码响应正文

200 - OK

CatalogSourceList 模式

401 - Unauthorized

HTTP 方法
POST
描述
创建一个 CatalogSource
表 2.9. 查询参数
参数类型描述

dryRun

字符串

出现时,表示不应保留修改。无效的或未被识别的 dryRun 指令将导致错误响应,且请求不会被进一步处理。有效值为: - All: 所有预演阶段都将被处理

fieldManager

字符串

fieldmanager 是与进行这些更改的参与者或实体相关联的名称。该值必须小于或是 128 个字符长,且仅包含可打印的字符,如 https://golang.org/pkg/unicode/#IsPrint 所定义的那样。

fieldValidation

string

fieldValidation 指示服务器如何处理包含了未知或重复字段的请求 (POST/PUT/PATCH) 中的对象。有效值为: - Ignore :忽略从对象中静默丢弃的未知字段,并将忽略所有除最后一个重复字段以外的所有字段。这是 v1.23 版本之前的默认行为- Warn: 这会通过标准的警告响应头为从对象丢弃的每个未知字段以及遇到的每个重复字段,发送警告。如果没有其他错误,请求仍会成功,且只保留重复字段的最后一个。这是 v1.23+ 的的默认行为 - Strict: 如果从对象中删除了任何未知字段,或者存在任何重复字段,请求将失败并带有 BadRequest 错误。从服务器返回的错误将包含遇到的,以及重复的字段。

表 2.10. 主体参数
参数类型描述

正文(body)

CatalogSource 模式

 
表 2.11. HTTP 响应
HTTP 代码响应正文

200 - OK

CatalogSource 模式

201 - Created

CatalogSource 模式

202 - Accepted

CatalogSource 模式

401 - Unauthorized

2.2.3. /apis/operators.coreos.com/v1alpha1/namespaces/{namespace}/catalogsources/{name}

表 2.12. 全局路径参数
参数类型描述

name

字符串

CatalogSource 的名称

namespace

字符串

对象名称和身份验证范围,如团队(team)和项目(project)

表 2.13. 全局查询参数
参数类型描述

pretty

字符串

如果为 'true',则输出会经过 pretty print 处理。

HTTP 方法
DELETE
描述
删除 CatalogSource
表 2.14. 查询参数
参数类型描述

dryRun

字符串

出现时,表示不应保留修改。无效的或未被识别的 dryRun 指令将导致错误响应,且请求不会被进一步处理。有效值为: - All: 所有预演阶段都将被处理

gracePeriodSeconds

整数

应该删除对象前的持续时间(以秒为单位)。值必须是非负整数。值为零表示立即删除。如果这个值是 nil,则会使用指定类型的默认宽限期。如果没有指定,则默认为每个对象值。零表示立即删除。

orphanDependents

布尔值

弃用:请使用 PropagationPolicy,此字段将在 1.7 中弃用。如果依赖对象是孤立的。如果为 true/false,则 "orphan" finalizer 将添加到对象的终结器列表中。可以设置此字段或 PropagationPolicy,但不能同时设置。

propagationPolicy

字符串

是否执行垃圾回收。可以设置此字段或 OrphanDependents,但不能同时设置两者。默认策略由 metadata.finalizers 和特定于资源的默认策略中设置的现有终结器决定。可接受的值有: 'Orphan' - 孤立的依赖项; 'Background' - 允许垃圾收集器删除依赖项,"Foreground' - 删除前台所有依赖的级联策略。

表 2.15. 主体参数
参数类型描述

正文(body)

DeleteOptions 模式

 
表 2.16. HTTP 响应
HTTP 代码响应正文

200 - OK

Status 模式

202 - Accepted

Status 模式

401 - Unauthorized

HTTP 方法
GET
描述
读取指定的 CatalogSource
表 2.17. 查询参数
参数类型描述

resourceVersion

字符串

resourceVersion 对可能给请求提供服务的资源版本设置一个约束。详情请查看 https://kubernetes.io/docs/reference/using-api/api-concepts/#resource-versions

默认为未设置

表 2.18. HTTP 响应
HTTP 代码响应正文

200 - OK

CatalogSource 模式

401 - Unauthorized

HTTP 方法
PATCH
描述
部分更新指定的 CatalogSource
表 2.19. 查询参数
参数类型描述

dryRun

字符串

出现时,表示不应保留修改。无效的或未被识别的 dryRun 指令将导致错误响应,且请求不会被进一步处理。有效值为: - All: 所有预演阶段都将被处理

fieldManager

字符串

fieldmanager 是与进行这些更改的参与者或实体相关联的名称。该值必须小于或是 128 个字符长,且仅包含可打印的字符,如 https://golang.org/pkg/unicode/#IsPrint 所定义的那样。应用请求(application/apply-patch)需要此字段,但对非应用补丁类型(JsonPatch、MergePatch、MergePatch)是可选的。

fieldValidation

string

fieldValidation 指示服务器如何处理包含了未知或重复字段的请求 (POST/PUT/PATCH) 中的对象。有效值为: - Ignore :忽略从对象中静默丢弃的未知字段,并将忽略所有除最后一个重复字段以外的所有字段。这是 v1.23 版本之前的默认行为- Warn: 这会通过标准的警告响应头为从对象丢弃的每个未知字段以及遇到的每个重复字段,发送警告。如果没有其他错误,请求仍会成功,且只保留重复字段的最后一个。这是 v1.23+ 的的默认行为 - Strict: 如果从对象中删除了任何未知字段,或者存在任何重复字段,请求将失败并带有 BadRequest 错误。从服务器返回的错误将包含遇到的,以及重复的字段。

force

布尔值

强制要"强制"应用请求。这意味着用户将重新分配由其他人员拥有的冲突字段。对于非应用补丁请求,必须取消设置 force 标志。

表 2.20. 主体参数
参数类型描述

正文(body)

Patch 模式

 
表 2.21. HTTP 响应
HTTP 代码响应正文

200 - OK

CatalogSource 模式

401 - Unauthorized

HTTP 方法
PUT
描述
替换指定的 CatalogSource
表 2.22. 查询参数
参数类型描述

dryRun

字符串

出现时,表示不应保留修改。无效的或未被识别的 dryRun 指令将导致错误响应,且请求不会被进一步处理。有效值为: - All: 所有预演阶段都将被处理

fieldManager

字符串

fieldmanager 是与进行这些更改的参与者或实体相关联的名称。该值必须小于或是 128 个字符长,且仅包含可打印的字符,如 https://golang.org/pkg/unicode/#IsPrint 所定义的那样。

fieldValidation

string

fieldValidation 指示服务器如何处理包含了未知或重复字段的请求 (POST/PUT/PATCH) 中的对象。有效值为: - Ignore :忽略从对象中静默丢弃的未知字段,并将忽略所有除最后一个重复字段以外的所有字段。这是 v1.23 版本之前的默认行为- Warn: 这会通过标准的警告响应头为从对象丢弃的每个未知字段以及遇到的每个重复字段,发送警告。如果没有其他错误,请求仍会成功,且只保留重复字段的最后一个。这是 v1.23+ 的的默认行为 - Strict: 如果从对象中删除了任何未知字段,或者存在任何重复字段,请求将失败并带有 BadRequest 错误。从服务器返回的错误将包含遇到的,以及重复的字段。

表 2.23. 主体参数
参数类型描述

正文(body)

CatalogSource 模式

 
表 2.24. HTTP 响应
HTTP 代码响应正文

200 - OK

CatalogSource 模式

201 - Created

CatalogSource 模式

401 - Unauthorized

2.2.4. /apis/operators.coreos.com/v1alpha1/namespaces/{namespace}/catalogsources/{name}/status

表 2.25. 全局路径参数
参数类型描述

name

字符串

CatalogSource 的名称

namespace

字符串

对象名称和身份验证范围,如团队(team)和项目(project)

表 2.26. 全局查询参数
参数类型描述

pretty

字符串

如果为 'true',则输出会经过 pretty print 处理。

HTTP 方法
GET
描述
指定 CatalogSource 的读取状态
表 2.27. 查询参数
参数类型描述

resourceVersion

字符串

resourceVersion 对可能给请求提供服务的资源版本设置一个约束。详情请查看 https://kubernetes.io/docs/reference/using-api/api-concepts/#resource-versions

默认为未设置

表 2.28. HTTP 响应
HTTP 代码响应正文

200 - OK

CatalogSource 模式

401 - Unauthorized

HTTP 方法
PATCH
描述
部分更新指定 CatalogSource 的状态
表 2.29. 查询参数
参数类型描述

dryRun

字符串

出现时,表示不应保留修改。无效的或未被识别的 dryRun 指令将导致错误响应,且请求不会被进一步处理。有效值为: - All: 所有预演阶段都将被处理

fieldManager

字符串

fieldmanager 是与进行这些更改的参与者或实体相关联的名称。该值必须小于或是 128 个字符长,且仅包含可打印的字符,如 https://golang.org/pkg/unicode/#IsPrint 所定义的那样。应用请求(application/apply-patch)需要此字段,但对非应用补丁类型(JsonPatch、MergePatch、MergePatch)是可选的。

fieldValidation

string

fieldValidation 指示服务器如何处理包含了未知或重复字段的请求 (POST/PUT/PATCH) 中的对象。有效值为: - Ignore :忽略从对象中静默丢弃的未知字段,并将忽略所有除最后一个重复字段以外的所有字段。这是 v1.23 版本之前的默认行为- Warn: 这会通过标准的警告响应头为从对象丢弃的每个未知字段以及遇到的每个重复字段,发送警告。如果没有其他错误,请求仍会成功,且只保留重复字段的最后一个。这是 v1.23+ 的的默认行为 - Strict: 如果从对象中删除了任何未知字段,或者存在任何重复字段,请求将失败并带有 BadRequest 错误。从服务器返回的错误将包含遇到的,以及重复的字段。

force

布尔值

强制要"强制"应用请求。这意味着用户将重新分配由其他人员拥有的冲突字段。对于非应用补丁请求,必须取消设置 force 标志。

表 2.30. 主体参数
参数类型描述

正文(body)

Patch 模式

 
表 2.31. HTTP 响应
HTTP 代码响应正文

200 - OK

CatalogSource 模式

401 - Unauthorized

HTTP 方法
PUT
描述
替换指定 CatalogSource 的状态
表 2.32. 查询参数
参数类型描述

dryRun

字符串

出现时,表示不应保留修改。无效的或未被识别的 dryRun 指令将导致错误响应,且请求不会被进一步处理。有效值为: - All: 所有预演阶段都将被处理

fieldManager

字符串

fieldmanager 是与进行这些更改的参与者或实体相关联的名称。该值必须小于或是 128 个字符长,且仅包含可打印的字符,如 https://golang.org/pkg/unicode/#IsPrint 所定义的那样。

fieldValidation

string

fieldValidation 指示服务器如何处理包含了未知或重复字段的请求 (POST/PUT/PATCH) 中的对象。有效值为: - Ignore :忽略从对象中静默丢弃的未知字段,并将忽略所有除最后一个重复字段以外的所有字段。这是 v1.23 版本之前的默认行为- Warn: 这会通过标准的警告响应头为从对象丢弃的每个未知字段以及遇到的每个重复字段,发送警告。如果没有其他错误,请求仍会成功,且只保留重复字段的最后一个。这是 v1.23+ 的的默认行为 - Strict: 如果从对象中删除了任何未知字段,或者存在任何重复字段,请求将失败并带有 BadRequest 错误。从服务器返回的错误将包含遇到的,以及重复的字段。

表 2.33. 主体参数
参数类型描述

正文(body)

CatalogSource 模式

 
表 2.34. HTTP 响应
HTTP 代码响应正文

200 - OK

CatalogSource 模式

201 - Created

CatalogSource 模式

401 - Unauthorized

第 3 章 ClusterServiceVersion [operators.coreos.com/v1alpha1]

描述
ClusterServiceVersion 是一个类型为 ClusterServiceVersionSpec 的自定义资源。
类型
object
必填
  • metadata
  • spec

3.1. 规格

属性类型描述

apiVersion

字符串

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

kind

字符串

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

metadata

ObjectMeta

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

spec

对象

ClusterServiceVersionSpec 声明告诉 OLM 如何安装能够管理给定版本的应用程序的 Operator。

status

对象

ClusterServiceVersionStatus 代表 CSV 状态的信息。状态可能会跟踪系统的实际状态。

3.1.1. .spec

描述
ClusterServiceVersionSpec 声明告诉 OLM 如何安装能够管理给定版本的应用程序的 Operator。
类型
object
必填
  • displayName
  • install
属性类型描述

annotations

对象(字符串)

annotations 是一个无结构的键值映射,它存储有资源,可通过外部工具存储和检索任意元数据。

apiservicedefinitions

对象

apiservicedefinitions 声明由 ClusterServiceVersion 运行 Operator 管理或所需的所有扩展 apis。

cleanup

对象

cleanup 指定 CSV 被删除时的清理过程

customresourcedefinitions

对象

customresourcedefinitions 声明 ClusterServiceVersion 运行 Operator 管理或所需的所有 CRD。如果 CRD 存在于 Owned 列表中,则会隐式需要。

description

string

操作器的描述。可以包括 Operator 的功能、限制或用例。

displayName

string

显示格式的 Operator 名称。

icon

数组

此 operator 的图标。

icon[]

对象

 

install

对象

NamedInstallStrategy 代表指定安装策略的 ClusterServiceVersion 资源的块。

installModes

array

InstallModes 指定支持的安装类型

installModes[]

对象

InstallMode 将 InstallModeType 与 CSV 支持代表的标记相关联

关键字

数组(字符串)

描述操作器的关键字列表。

labels

对象(字符串)

可用于组织和分类(范围和选择)对象的字符串键和值映射。

links

数组

与 Operator 相关的链接列表。

links[]

对象

 

maintainers

数组

维护 Operator 的机构实体列表。

maintainers[]

对象

 

成熟度

字符串

 

minKubeVersion

字符串

 

nativeAPI

array

 

nativeAPIs[]

对象

groupversionkind unambiguously 标识 kind。它不匿名包含 GroupVersion 来避免自动协调。它不使用 GroupVersion 来避免自定义 marshalling

provider

object

Operator 后面的发布实体。

relatedImages

array

列出 Operator 执行其功能可能需要的任何相关镜像或其他容器镜像。此列表还应包含操作对象镜像。所有镜像引用都应通过摘要(SHA)而不是标签指定。此字段仅在目录创建期间使用,并且不在集群运行时使用 play。

relatedImages[]

对象

 

替换

字符串

此替换的 CSV 的名称。应该与旧 CSV 的 metadata.Name 字段匹配。

selector

对象

相关资源的标签选择器。

skips

数组(字符串)

升级图中应该跳过的一个或多个 CSV 的名称。应该与应跳过的 CSV 的 metadata.Name 字段匹配。此字段仅在目录创建期间使用,并且不在集群运行时使用 play。

version

string

 

webhookdefinitions

array

 

webhookdefinitions[]

对象

WebhookDescription 提供有关所需 webhook 的 OLM 的详情

3.1.2. .spec.apiservicedefinitions

描述
apiservicedefinitions 声明由 ClusterServiceVersion 运行 Operator 管理或所需的所有扩展 apis。
类型
object
属性类型描述

拥有的

array

 

owned[]

对象

APIServiceDescription 提供有关通过聚合提供的 apis 的 OLM 的详细信息

required

array

 

required[]

对象

APIServiceDescription 提供有关通过聚合提供的 apis 的 OLM 的详细信息

3.1.3. .spec.apiservicedefinitions.owned

描述
类型
array

3.1.4. .spec.apiservicedefinitions.owned[]

描述
APIServiceDescription 提供有关通过聚合提供的 apis 的 OLM 的详细信息
类型
object
必填
  • group
  • kind
  • name
  • version
属性类型描述

actionDescriptors

array

 

actionDescriptors[]

对象

ActionDescriptor 描述了一个声明操作,可在自定义资源实例上执行

containerPort

整数

 

deploymentName

字符串

 

description

字符串

 

displayName

字符串

 

group

字符串

 

kind

字符串

 

name

字符串

 

资源

array

 

resources[]

object

APIResourceReference 是引用者使用的 Kubernetes 资源类型的引用。

specDescriptors

array

 

specDescriptors[]

对象

specDescriptor 描述 CRD 的 spec 块中的字段,以便 OLM 可以使用它

statusDescriptors

array

 

statusDescriptors[]

对象

StatusDescriptor 描述 CRD 状态块中的一个字段,以便 OLM 可以使用它

version

字符串

 

3.1.5. .spec.apiservicedefinitions.owned[].actionDescriptors

描述
类型
array

3.1.6. .spec.apiservicedefinitions.owned[].actionDescriptors[]

描述
ActionDescriptor 描述了一个声明操作,可在自定义资源实例上执行
类型
object
必填
  • path
属性类型描述

description

字符串

 

displayName

字符串

 

path

字符串

 

value

字符串

RawMessage 是一个原始编码的 JSON 值。它实现 Marshaler 和 Unmarshaler,可用于延迟 JSON 解码或预计算 JSON 编码。

x-descriptors

数组(字符串)

 

3.1.7. .spec.apiservicedefinitions.owned[].resources

描述
类型
array

3.1.8. .spec.apiservicedefinitions.owned[].resources[]

描述
APIResourceReference 是引用者使用的 Kubernetes 资源类型的引用。
类型
object
必填
  • kind
  • name
  • version
属性类型描述

kind

string

所引用资源类型的类型。

名称

string

所引用资源类型的复数名称(CustomResourceDefinition.Spec.Names[].Plural)。如果引用的资源类型不是自定义资源,则空字符串。

version

string

所引用资源类型的 API 版本。

3.1.9. .spec.apiservicedefinitions.owned[].specDescriptors

描述
类型
array

3.1.10. .spec.apiservicedefinitions.owned[].specDescriptors[]

描述
specDescriptor 描述 CRD 的 spec 块中的字段,以便 OLM 可以使用它
类型
object
必填
  • path
属性类型描述

description

字符串

 

displayName

字符串

 

path

字符串

 

value

字符串

RawMessage 是一个原始编码的 JSON 值。它实现 Marshaler 和 Unmarshaler,可用于延迟 JSON 解码或预计算 JSON 编码。

x-descriptors

数组(字符串)

 

3.1.11. .spec.apiservicedefinitions.owned[].statusDescriptors

描述
类型
array

3.1.12. .spec.apiservicedefinitions.owned[].statusDescriptors[]

描述
StatusDescriptor 描述 CRD 状态块中的一个字段,以便 OLM 可以使用它
类型
object
必填
  • path
属性类型描述

description

字符串

 

displayName

字符串

 

path

字符串

 

value

字符串

RawMessage 是一个原始编码的 JSON 值。它实现 Marshaler 和 Unmarshaler,可用于延迟 JSON 解码或预计算 JSON 编码。

x-descriptors

数组(字符串)

 

3.1.13. .spec.apiservicedefinitions.required

描述
类型
array

3.1.14. .spec.apiservicedefinitions.required[]

描述
APIServiceDescription 提供有关通过聚合提供的 apis 的 OLM 的详细信息
类型
object
必填
  • group
  • kind
  • name
  • version
属性类型描述

actionDescriptors

array

 

actionDescriptors[]

对象

ActionDescriptor 描述了一个声明操作,可在自定义资源实例上执行

containerPort

整数

 

deploymentName

字符串

 

description

字符串

 

displayName

字符串

 

group

字符串

 

kind

字符串

 

name

字符串

 

资源

array

 

resources[]

object

APIResourceReference 是引用者使用的 Kubernetes 资源类型的引用。

specDescriptors

array

 

specDescriptors[]

对象

specDescriptor 描述 CRD 的 spec 块中的字段,以便 OLM 可以使用它

statusDescriptors

array

 

statusDescriptors[]

对象

StatusDescriptor 描述 CRD 状态块中的一个字段,以便 OLM 可以使用它

version

字符串

 

3.1.15. .spec.apiservicedefinitions.required[].actionDescriptors

描述
类型
array

3.1.16. .spec.apiservicedefinitions.required[].actionDescriptors[]

描述
ActionDescriptor 描述了一个声明操作,可在自定义资源实例上执行
类型
object
必填
  • path
属性类型描述

description

字符串

 

displayName

字符串

 

path

字符串

 

value

字符串

RawMessage 是一个原始编码的 JSON 值。它实现 Marshaler 和 Unmarshaler,可用于延迟 JSON 解码或预计算 JSON 编码。

x-descriptors

数组(字符串)

 

3.1.17. .spec.apiservicedefinitions.required[].resources

描述
类型
array

3.1.18. .spec.apiservicedefinitions.required[].resources[]

描述
APIResourceReference 是引用者使用的 Kubernetes 资源类型的引用。
类型
object
必填
  • kind
  • name
  • version
属性类型描述

kind

string

所引用资源类型的类型。

名称

string

所引用资源类型的复数名称(CustomResourceDefinition.Spec.Names[].Plural)。如果引用的资源类型不是自定义资源,则空字符串。

version

string

所引用资源类型的 API 版本。

3.1.19. .spec.apiservicedefinitions.required[].specDescriptors

描述
类型
array

3.1.20. .spec.apiservicedefinitions.required[].specDescriptors[]

描述
specDescriptor 描述 CRD 的 spec 块中的字段,以便 OLM 可以使用它
类型
object
必填
  • path
属性类型描述

description

字符串

 

displayName

字符串

 

path

字符串

 

value

字符串

RawMessage 是一个原始编码的 JSON 值。它实现 Marshaler 和 Unmarshaler,可用于延迟 JSON 解码或预计算 JSON 编码。

x-descriptors

数组(字符串)

 

3.1.21. .spec.apiservicedefinitions.required[].statusDescriptors

描述
类型
array

3.1.22. .spec.apiservicedefinitions.required[].statusDescriptors[]

描述
StatusDescriptor 描述 CRD 状态块中的一个字段,以便 OLM 可以使用它
类型
object
必填
  • path
属性类型描述

description

字符串

 

displayName

字符串

 

path

字符串

 

value

字符串

RawMessage 是一个原始编码的 JSON 值。它实现 Marshaler 和 Unmarshaler,可用于延迟 JSON 解码或预计算 JSON 编码。

x-descriptors

数组(字符串)

 

3.1.23. .spec.cleanup

描述
cleanup 指定 CSV 被删除时的清理过程
类型
object
必填
  • enabled
属性类型描述

enabled

布尔值

 

3.1.24. .spec.customresourcedefinitions

描述
customresourcedefinitions 声明 ClusterServiceVersion 运行 Operator 管理或所需的所有 CRD。如果 CRD 存在于 Owned 列表中,则会隐式需要。
类型
object
属性类型描述

拥有的

array

 

owned[]

对象

CRDDescription 提供有关 CRD 的 OLM 的详情

required

array

 

required[]

对象

CRDDescription 提供有关 CRD 的 OLM 的详情

3.1.25. .spec.customresourcedefinitions.owned

描述
类型
array

3.1.26. .spec.customresourcedefinitions.owned[]

描述
CRDDescription 提供有关 CRD 的 OLM 的详情
类型
object
必填
  • kind
  • name
  • version
属性类型描述

actionDescriptors

array

 

actionDescriptors[]

对象

ActionDescriptor 描述了一个声明操作,可在自定义资源实例上执行

description

字符串

 

displayName

字符串

 

kind

字符串

 

name

字符串

 

资源

array

 

resources[]

object

APIResourceReference 是引用者使用的 Kubernetes 资源类型的引用。

specDescriptors

array

 

specDescriptors[]

对象

specDescriptor 描述 CRD 的 spec 块中的字段,以便 OLM 可以使用它

statusDescriptors

array

 

statusDescriptors[]

对象

StatusDescriptor 描述 CRD 状态块中的一个字段,以便 OLM 可以使用它

version

字符串

 

3.1.27. .spec.customresourcedefinitions.owned[].actionDescriptors

描述
类型
array

3.1.28. .spec.customresourcedefinitions.owned[].actionDescriptors[]

描述
ActionDescriptor 描述了一个声明操作,可在自定义资源实例上执行
类型
object
必填
  • path
属性类型描述

description

字符串

 

displayName

字符串

 

path

字符串

 

value

字符串

RawMessage 是一个原始编码的 JSON 值。它实现 Marshaler 和 Unmarshaler,可用于延迟 JSON 解码或预计算 JSON 编码。

x-descriptors

数组(字符串)

 

3.1.29. .spec.customresourcedefinitions.owned[].resources

描述
类型
array

3.1.30. .spec.customresourcedefinitions.owned[].resources[]

描述
APIResourceReference 是引用者使用的 Kubernetes 资源类型的引用。
类型
object
必填
  • kind
  • name
  • version
属性类型描述

kind

string

所引用资源类型的类型。

名称

string

所引用资源类型的复数名称(CustomResourceDefinition.Spec.Names[].Plural)。如果引用的资源类型不是自定义资源,则空字符串。

version

string

所引用资源类型的 API 版本。

3.1.31. .spec.customresourcedefinitions.owned[].specDescriptors

描述
类型
array

3.1.32. .spec.customresourcedefinitions.owned[].specDescriptors[]

描述
specDescriptor 描述 CRD 的 spec 块中的字段,以便 OLM 可以使用它
类型
object
必填
  • path
属性类型描述

description

字符串

 

displayName

字符串

 

path

字符串

 

value

字符串

RawMessage 是一个原始编码的 JSON 值。它实现 Marshaler 和 Unmarshaler,可用于延迟 JSON 解码或预计算 JSON 编码。

x-descriptors

数组(字符串)

 

3.1.33. .spec.customresourcedefinitions.owned[].statusDescriptors

描述
类型
array

3.1.34. .spec.customresourcedefinitions.owned[].statusDescriptors[]

描述
StatusDescriptor 描述 CRD 状态块中的一个字段,以便 OLM 可以使用它
类型
object
必填
  • path
属性类型描述

description

字符串

 

displayName

字符串

 

path

字符串

 

value

字符串

RawMessage 是一个原始编码的 JSON 值。它实现 Marshaler 和 Unmarshaler,可用于延迟 JSON 解码或预计算 JSON 编码。

x-descriptors

数组(字符串)

 

3.1.35. .spec.customresourcedefinitions.required

描述
类型
array

3.1.36. .spec.customresourcedefinitions.required[]

描述
CRDDescription 提供有关 CRD 的 OLM 的详情
类型
object
必填
  • kind
  • name
  • version
属性类型描述

actionDescriptors

array

 

actionDescriptors[]

对象

ActionDescriptor 描述了一个声明操作,可在自定义资源实例上执行

description

字符串

 

displayName

字符串

 

kind

字符串

 

name

字符串

 

资源

array

 

resources[]

object

APIResourceReference 是引用者使用的 Kubernetes 资源类型的引用。

specDescriptors

array

 

specDescriptors[]

对象

specDescriptor 描述 CRD 的 spec 块中的字段,以便 OLM 可以使用它

statusDescriptors

array

 

statusDescriptors[]

对象

StatusDescriptor 描述 CRD 状态块中的一个字段,以便 OLM 可以使用它

version

字符串

 

3.1.37. .spec.customresourcedefinitions.required[].actionDescriptors

描述
类型
array

3.1.38. .spec.customresourcedefinitions.required[].actionDescriptors[]

描述
ActionDescriptor 描述了一个声明操作,可在自定义资源实例上执行
类型
object
必填
  • path
属性类型描述

description

字符串

 

displayName

字符串

 

path

字符串

 

value

字符串

RawMessage 是一个原始编码的 JSON 值。它实现 Marshaler 和 Unmarshaler,可用于延迟 JSON 解码或预计算 JSON 编码。

x-descriptors

数组(字符串)

 

3.1.39. .spec.customresourcedefinitions.required[].resources

描述
类型
array

3.1.40. .spec.customresourcedefinitions.required[].resources[]

描述
APIResourceReference 是引用者使用的 Kubernetes 资源类型的引用。
类型
object
必填
  • kind
  • name
  • version
属性类型描述

kind

string

所引用资源类型的类型。

名称

string

所引用资源类型的复数名称(CustomResourceDefinition.Spec.Names[].Plural)。如果引用的资源类型不是自定义资源,则空字符串。

version

string

所引用资源类型的 API 版本。

3.1.41. .spec.customresourcedefinitions.required[].specDescriptors

描述
类型
array

3.1.42. .spec.customresourcedefinitions.required[].specDescriptors[]

描述
specDescriptor 描述 CRD 的 spec 块中的字段,以便 OLM 可以使用它
类型
object
必填
  • path
属性类型描述

description

字符串

 

displayName

字符串

 

path

字符串

 

value

字符串

RawMessage 是一个原始编码的 JSON 值。它实现 Marshaler 和 Unmarshaler,可用于延迟 JSON 解码或预计算 JSON 编码。

x-descriptors

数组(字符串)

 

3.1.43. .spec.customresourcedefinitions.required[].statusDescriptors

描述
类型
array

3.1.44. .spec.customresourcedefinitions.required[].statusDescriptors[]

描述
StatusDescriptor 描述 CRD 状态块中的一个字段,以便 OLM 可以使用它
类型
object
必填
  • path
属性类型描述

description

字符串

 

displayName

字符串

 

path

字符串

 

value

字符串

RawMessage 是一个原始编码的 JSON 值。它实现 Marshaler 和 Unmarshaler,可用于延迟 JSON 解码或预计算 JSON 编码。

x-descriptors

数组(字符串)

 

3.1.45. .spec.icon

描述
此 operator 的图标。
类型
array

3.1.46. .spec.icon[]

描述
类型
object
必填
  • base64data
  • MediaType
属性类型描述

base64data

字符串

 

MediaType

字符串

 

3.1.47. .spec.install

描述
NamedInstallStrategy 代表指定安装策略的 ClusterServiceVersion 资源的块。
类型
object
必填
  • 策略
属性类型描述

spec

对象

StrategyDetailsDeployment 代表 Deployment InstallStrategy 的解析详情。

策略

字符串

 

3.1.48. .spec.install.spec

描述
StrategyDetailsDeployment 代表 Deployment InstallStrategy 的解析详情。
类型
object
必填
  • 部署
属性类型描述

clusterPermissions

array

 

clusterPermissions[]

对象

StrategyDeploymentPermissions 描述安装策略所需的 rbac 规则和服务帐户

部署

array

 

deployments[]

对象

StrategyDeploymentSpec 包含部署 ALM 应该创建的名称、spec 和标签

权限

array

 

permissions[]

对象

StrategyDeploymentPermissions 描述安装策略所需的 rbac 规则和服务帐户

3.1.49. .spec.install.spec.clusterPermissions

描述
类型
array

3.1.50. .spec.install.spec.clusterPermissions[]

描述
StrategyDeploymentPermissions 描述安装策略所需的 rbac 规则和服务帐户
类型
object
必填
  • rules
  • serviceAccountName
属性类型描述

rules

array

 

rules[]

object

PolicyRule 包含描述策略规则的信息,但不包含有关规则应用到谁或规则应用到哪个命名空间的信息。

serviceAccountName

字符串

 

3.1.51. .spec.install.spec.clusterPermissions[].rules

描述
类型
array

3.1.52. .spec.install.spec.clusterPermissions[].rules[]

描述
PolicyRule 包含描述策略规则的信息,但不包含有关规则应用到谁或规则应用到哪个命名空间的信息。
类型
object
必填
  • verbs
属性类型描述

apiGroups

数组(字符串)

APIGroups 是包含资源的 APIGroup 的名称。如果指定了多个 API 组,则允许针对任何 API 组中的一个枚举资源请求的任何操作。"" 代表核心 API 组,"*"代表所有 API 组。

nonResourceURLs

数组(字符串)

NonResourceURLs 是一组用户应该有权访问的部分 url。OpenShift 被允许,但只作为完整的、最终的步骤在路径 Since 非资源 URL 中不是命名空间,此字段仅适用于从 ClusterRoleBinding 引用的 ClusterRole。规则可以应用到 API 资源(如 "pods" 或 "secrets")或非资源 URL 路径(如 "/api"),但不能同时应用这两个资源。

resourceNames

数组(字符串)

resourceNames 是一个可选的规则应用到的名称白名单。空集表示所有都会被允许。

resources

数组(字符串)

resources 是此规则应用到的资源列表。'*' 代表所有资源。

verbs

数组(字符串)

verbs 是一个 Verbs 列表,适用于此规则中包含的 all ResourceKinds。'*' 代表所有操作动词。

3.1.53. .spec.install.spec.deployments

描述
类型
array

3.1.54. .spec.install.spec.deployments[]

描述
StrategyDeploymentSpec 包含部署 ALM 应该创建的名称、spec 和标签
类型
object
必填
  • name
  • spec
属性类型描述

label

对象(字符串)

set 是 label:value 的映射。它实现了标签。

name

字符串

 

spec

对象

DeploymentSpec 是 Deployment 所需的行为的规格。

3.1.55. .spec.install.spec.deployments[].spec

描述
DeploymentSpec 是 Deployment 所需的行为的规格。
类型
object
必填
  • selector
  • 模板
属性类型描述

minReadySeconds

整数

新创建的 pod 应该在没有其任何容器崩溃的情况下就绪的最少秒数,以便它被视为可用。默认为 0 (pod 一旦就绪就会被视为可用)

paused

布尔值

表示部署已暂停。

progressDeadlineSeconds

整数

部署在被视为失败前进行进度的最长时间(以秒为单位)。部署控制器将继续处理失败的部署,以及具有 ProgressDeadlineExceed 原因的条件将处于部署状态。请注意,在部署暂停期间不会估算进度。默认值为 600s。

replicas

整数

所需的 pod 数量。这是一个指针,用于区分显式零和未指定的。默认为 1。

revisionHistoryLimit

整数

要保留的旧 ReplicaSet 数量,以允许回滚。这是一个指针,用于区分显式零和未指定的。默认值为 10。

selector

对象

pod 的标签选择器。其 pod 被选择的现有 ReplicaSet 将会受到此部署的影响。它必须与 pod 模板的标签匹配。

策略

对象

用于将现有 pod 替换为新 pod 的部署策略。

模板

对象

Template 描述了要创建的 pod。唯一允许的 template.spec.restartPolicy 值是 "Always"。

3.1.56. .spec.install.spec.deployments[].spec.selector

描述
pod 的标签选择器。其 pod 被选择的现有 ReplicaSet 将会受到此部署的影响。它必须与 pod 模板的标签匹配。
类型
object
属性类型描述

matchExpressions

array

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

matchExpressions[]

对象

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

matchLabels

对象(字符串)

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

3.1.57. .spec.install.spec.deployments[].spec.selector.matchExpressions

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

3.1.58. .spec.install.spec.deployments[].spec.selector.matchExpressions[]

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

key

字符串

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

operator

字符串

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

数组(字符串)

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

3.1.59. .spec.install.spec.deployments[].spec.strategy

描述
用于将现有 pod 替换为新 pod 的部署策略。
类型
object
属性类型描述

rollingUpdate

对象

滚动更新配置参数.仅在 DeploymentStrategyType = RollingUpdate. --- TODO: 更新它以遵循我们的 oneOf 的约定,无论我们决定它是什么。

type

字符串

部署类型。可以是 "Recreate" 或 "RollingUpdate"。默认为 RollingUpdate。

3.1.60. .spec.install.spec.deployments[].spec.strategy.rollingUpdate

描述
滚动更新配置参数.仅在 DeploymentStrategyType = RollingUpdate. --- TODO: 更新它以遵循我们的 oneOf 的约定,无论我们决定它是什么。
类型
object
属性类型描述

maxSurge

integer-or-string

可以在所需 pod 数量之上调度的最大 pod 数量。值可以是绝对数字(例如 5)或所需 pod 的百分比(例如 10%)。如果 MaxUnavailable 为 0,则不能是 0。绝对数量从百分比计算。默认值为 25%。示例:当将其设置为 30% 时,在滚动更新启动时可以立即扩展新的 ReplicaSet,以便旧 pod 的总数不会超过 130%。旧 pod 终止后,可以进一步扩展新的 ReplicaSet,确保更新期间任何时间运行的 pod 总数最多为 130%。

maxUnavailable

integer-or-string

更新期间不可用的 pod 的最大数量。值可以是绝对数字(例如 5)或所需 pod 的百分比(例如 10%)。绝对数量从百分比计算(通过向下舍入)。如果 MaxSurge 为 0,则这不能是 0。默认值为 25%。示例:当将其设置为 30% 时,在滚动更新启动时,可以立即将旧 ReplicaSet 缩减到 70% 的 pod。新 pod 就绪后,可以进一步扩展旧的 ReplicaSet,然后扩展新的 ReplicaSet,确保更新期间可用的 pod 总数至少 70%。

3.1.61. .spec.install.spec.deployments[].spec.template

描述
Template 描述了要创建的 pod。唯一允许的 template.spec.restartPolicy 值是 "Always"。
类型
object
属性类型描述

metadata

``

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

spec

对象

Pod 所需的行为规格。更多信息: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#spec-and-status

3.1.62. .spec.install.spec.deployments[].spec.template.spec

描述
Pod 所需的行为规格。更多信息: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#spec-and-status
类型
object
必填
  • containers
属性类型描述

activeDeadlineSeconds

整数

可选持续时间(以秒为单位)pod 可以在相对于 StartTime 的节点上处于活跃状态,然后系统主动尝试将其标记为失败并终止关联的容器。值必须是正整数。

关联性

对象

如果指定,pod 的调度限制

automountServiceAccountToken

布尔值

AutomountServiceAccountToken 表示是否应自动挂载服务帐户令牌。

containers

array

属于 pod 的容器列表。当前无法添加或删除容器。Pod 中必须至少有一个容器。无法更新。

containers[]

对象

要在 pod 中运行的单一应用程序容器。

dnsConfig

对象

指定 pod 的 DNS 参数。此处指定的参数将根据 DNSPolicy 合并到生成的 DNS 配置中。

dnsPolicy

字符串

为 pod 设置 DNS 策略。默认为 "ClusterFirst"。有效值为 'ClusterFirstWithHostNet', 'ClusterFirst', 'Default' 或 'None'。DNSConfig 中指定的 DNS 参数将与选择与 DNSPolicy 的策略合并。要将 DNS 选项与 hostNetwork 一起设置,您必须将 DNS 策略明确指定为 'ClusterFirstWithHostNet'。

enableServiceLinks

布尔值

EnableServiceLinks 指明了有关服务的信息是否应注入到 pod 的环境变量中,与 Docker 链接的语法匹配。可选:默认为 true。

ephemeralContainers

array

此 pod 中运行的临时容器列表。临时容器可以在现有 pod 中运行,以执行用户发起的操作,如调试。创建 pod 时无法指定此列表,且无法通过更新 pod 规格来修改它。要将临时容器添加到现有 pod,请使用 pod 的 ephemeralcontainers 子资源。

ephemeralContainers[]

object

EphemeralContainer 是一个临时容器,您可以添加到现有 Pod 中,用于用户发起的活动,如调试。临时容器没有资源或调度保证,它们不会在 Pod 退出或重启 Pod 时重启。如果临时容器导致 Pod 超过其资源分配,kubelet 可能会驱除 Pod。要添加临时容器,请使用现有 Pod 的 ephemeralcontainers 子资源。临时容器可能无法删除或重启。

hostAliases

array

hostAliases 是主机和 IP 的可选列表,如果指定,将注入到 pod 的主机文件中。这仅对非主机网络 pod 有效。

hostAliases[]

对象

HostAlias 包含 IP 和主机名之间的映射,这些映射将作为 pod 的主机文件中的条目注入。

hostIPC

布尔值

使用主机的 ipc 命名空间。可选:默认为 false。

hostNetwork

布尔值

为这个 pod 请求的主机网络。使用主机的网络命名空间。如果设置了这个选项,则必须指定要使用的端口。默认值为 false。

hostPID

布尔值

使用主机的 pid 命名空间。可选:默认为 false。

hostUsers

布尔值

使用主机的用户命名空间。可选:默认为 true。如果设置为 true 或不存在,则 pod 将在主机用户命名空间中运行,当 pod 需要功能仅适用于主机用户命名空间时,比如使用 CAP_SYS_MODULE 加载内核模块。当设置为 false 时,会为 pod 创建一个新的 userns。设置 false 有助于减少容器中断漏洞,甚至允许用户以 root 用户身份运行其容器,而无需实际对主机具有 root 特权。此字段是 alpha-level,且仅被启用 UserNamespacesSupport 功能的服务器实现。

hostname

字符串

指定没有指定 Pod 的主机名,pod 的主机名将设置为系统定义的值。

imagePullSecrets

array

imagePullSecrets 是对同一命名空间中的 secret 的引用列表,用于拉取此 PodSpec 使用的任何镜像。如果指定,这些 secret 将传递给单独的 puller 实现,供它们使用。更多信息: https://kubernetes.io/docs/concepts/containers/images#specifying-imagepullsecrets-on-a-pod

imagePullSecrets[]

对象

LocalObjectReference 包含足够信息,供您在同一命名空间中找到引用的对象。

initContainers

array

属于 pod 的初始化容器列表。Init 容器在启动容器之前按顺序执行。如果任何 init 容器失败,pod 被视为失败,并根据 restartPolicy 处理。init 容器或普通容器的名称对于所有容器来说都必须是唯一的。Init 容器可能没有生命周期操作、就绪度探测、存活度探测或启动探测。通过查找每种资源类型的最高请求/限制,然后使用该值的最大值或普通容器的总和,在调度期间考虑 init 容器的 resourceRequirements。限制以类似的方式应用到 init 容器。当前无法添加或删除 init 容器。无法更新。更多信息: https://kubernetes.io/docs/concepts/workloads/pods/init-containers/

initContainers[]

对象

要在 pod 中运行的单一应用程序容器。

nodeName

字符串

nodeName 是一个将此 pod 调度到特定节点的请求。如果不是空的,调度程序只会将此 pod 调度到该节点上,假设它符合资源要求。

nodeSelector

对象(字符串)

nodeSelector 是一个选择器,必须为 true 才能使 pod 适合某个节点。选择器必须与节点的标签匹配,以便 pod 调度到该节点上。更多信息: https://kubernetes.io/docs/concepts/configuration/assign-pod-node/

os

object

指定 pod 中容器的操作系统。如果设置了,一些 pod 和容器字段会被限制。如果 OS 字段设为 linux,则必须取消设置以下字段: -securityContext.windowsOptions (如果 OS 字段被设置为 windows),则必须取消设置以下字段: - spec.hostPID - spec.hostIPC - spec.hostUsers - spec.securityContext.seLinuxOptions - spec.securityContext.seccompProfile - spec.securityContext.fsGroup - spec.securityContext.fsGroup - spec.securityContext.fsGroupChangePolicy - spec.securityContext.sysctls - spec.shareProcessNamespace - spec.securityContext.runAsUser - spec.securityContext.runAsGroup - spec.securityContext.supplementalGroups - spec.containers[ ].securityContext.containers[ ].securityContext.seccompProfile - spec.containers[].securityContext.capabilities - spec.containers[[ ].securityContext.readOnlyRootFilesystem - spec.containers[ ].securityContext.privileged - spec.containers[ ].securityContext.allowPrivilegeEscalation - spec.containers[ ].securityContext.procMount - spec.containers[ ].securityContext.runAsUser - spec.containers[*].securityContext.runAsGroup

开销

integer-or-string

开销代表了与为给定 RuntimeClass 运行 pod 相关的资源开销。RuntimeClass 准入控制器将在准入时自动填充此字段。如果启用了 RuntimeClass 准入控制器,则无法在 Pod 创建请求中设置开销。RuntimeClass 准入控制器将拒绝已设置开销的 Pod 创建请求。如果在 PodSpec 中配置并选择 RuntimeClass,则 Overhead 将被设置为相应 RuntimeClass 中定义的值,否则它将保留为未设置并被视为零。更多信息: https://git.k8s.io/enhancements/keps/sig-node/688-pod-overhead/README.md

preemptionPolicy

字符串

preemptionPolicy 是抢占优先级较低 pod 的策略。Never 之一 PreemptLowerPriority。如果未设置,则默认为 PreemptLowerPriority。

priority

整数

优先级值。各种系统组件使用此字段查找 pod 的优先级。启用 Priority Admission Controller 时,它会阻止用户设置此字段。准入控制器从 PriorityClassName 中填充此字段。数值越大,优先级越高。

priorityClassName

字符串

如果指定,则表示 pod 的优先级。"system-node-critical" 和 "system-cluster-critical" 是两个特殊关键字,代表前一个优先级最高。必须通过创建具有该名称的 PriorityClass 对象来定义任何其他名称。如果没有指定,如果没有默认值,pod 优先级将为 default 或零。

readinessGates

array

如果指定,则会针对 pod 就绪评估所有就绪度。当所有容器都就绪且在就绪的 gates 中指定的所有条件都等于 "True" More info: https://git.k8s.io/enhancements/keps/sig-network/580-pod-readiness-gates时,pod 已就绪: https://git.k8s.io/enhancements/keps/sig-network/580-pod-readiness-gates

readinessGates[]

对象

PodReadinessGate 包含对 pod 条件的引用

resourceClaims

数组

ResourceClaims 定义在 Pod 允许启动前必须分配和保留哪些 ResourceClaims。资源将提供给那些按名称消耗它们的容器。这是一个 alpha 字段,需要启用 DynamicResourceAllocation 功能门。此字段不可变。

resourceClaims[]

object

PodResourceClaim 通过 ClaimSource 只引用一个 ResourceClaim。它添加一个名称,用于唯一标识 Pod 中的 ResourceClaim。需要访问 ResourceClaim 的容器使用此名称来引用它。

restartPolicy

字符串

为 pod 中的所有容器重启策略。Always、OnFailure 之一 Never。在某些上下文中,只允许这些值的子集。默认为 Always。更多信息: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle/#restart-policy

runtimeClassName

字符串

runtimeClassName 指的是 node.k8s.io 组中的 RuntimeClass 对象,该对象应该用于运行此 pod。如果没有与命名类匹配的 RuntimeClass 资源,则不会运行 pod。如果未设置或为空,则使用"传统" RuntimeClass,这是一个具有使用默认运行时处理程序的空定义的隐式类。更多信息: https://git.k8s.io/enhancements/keps/sig-node/585-runtime-class

schedulerName

字符串

如果指定,pod 将由指定的调度程序分配。如果没有指定,pod 会被默认调度程序分配。

schedulingGates

数组

SchedulingGates 是不透明的值列表,如果指定,它将阻止调度 pod。如果 schedulingGates 不为空,pod 将保持在 SchedulingGated 状态,调度程序不会尝试调度 pod。SchedulingGates 只能在 pod 创建时设置,之后才能被删除。这是 PodSchedulingReadiness 功能门启用的 beta 功能。

schedulingGates[]

object

PodSchedulingGate 与 Pod 关联,以保护其调度。

securityContext

对象

securityContext 包含 pod 级别的安全属性和通用容器设置。可选:默认为空。有关每个字段的默认值,请参阅类型描述。

serviceAccount

字符串

DeprecatedServiceAccount 是 ServiceAccountName 的描述别名。弃用 :使用 serviceAccountName 替代。

serviceAccountName

字符串

serviceAccountName 是用于运行此 pod 的 ServiceAccount 的名称。更多信息: https://kubernetes.io/docs/tasks/configure-pod-container/configure-service-account/

setHostnameAsFQDN

布尔值

如果为 true,则 pod 的主机名将配置为 pod 的 FQDN,而不是叶名称(默认值)。在 Linux 容器中,这意味着在内核的 hostname 字段中设置 FQDN ( struct utsname 的 nodename 字段)。在 Windows 容器中,这意味着将 registry 键 HKEY_LOCAL_MACHINE\\CurrentControlSet\\ServicesControlSet\\Services\\Tcpip\\Parameters 的 hostname 的 registry 值设置为 FQDN。如果 pod 没有 FQDN,则这无效。默认值为 false。

shareProcessNamespace

布尔值

在 pod 中所有容器间共享单个进程命名空间。当设置容器时,可以从同一 pod 中的其他容器查看和信号进程,并且每个容器中的第一个进程不会被分配 PID 1。无法同时设置 hostPID 和 ShareProcessNamespace。可选:默认为 false。

subdomain

字符串

如果指定,完全限定的 Pod 主机名将是 "<hostname>.<subdomain>.<pod namespace>.svc.<cluster domain>"。如果没有指定,pod 将根本没有 domainname。

terminationGracePeriodSeconds

整数

pod 安全终止所需的可选持续时间(以秒为单位)。可以在删除请求中减少。值必须是非负整数。值为零表示立即通过终止信号停止(没有关闭的机会)。如果这个值是 nil,则使用默认的宽限期。宽限期是 pod 中运行的进程发送终止信号和进程被强制停止使用 kill 信号的时间(以秒为单位)。为您的进程设置这个值超过预期清理时间。默认值为 30 秒。

容限(tolerations)

array

如果指定,pod 的容限。

tolerations[]

对象

此 Toleration 附加到 pod,以使用匹配的 operator <operator> 容许与 triple <key,value,effect> 匹配的任何污点。

topologySpreadConstraints

array

topologySpreadConstraints 描述了一组如何在拓扑域间分布的 pod。调度程序将按约束来调度 pod。所有 topologySpreadConstraints 都是 AND。

topologySpreadConstraints[]

对象

TopologySpreadConstraint 指定如何在给定的拓扑中分布匹配的 pod。

array

可以通过属于 pod 的容器挂载的卷列表。更多信息: https://kubernetes.io/docs/concepts/storage/volumes

volumes[]

对象

卷代表 pod 中的指定卷,可以被 pod 中的任何容器访问。

3.1.63. .spec.install.spec.deployments[].spec.template.spec.affinity

描述
如果指定,pod 的调度限制
类型
object
属性类型描述

nodeAffinity

对象

描述 pod 的节点关联性调度规则。

podAffinity

对象

描述 pod 关联性调度规则(例如,将这个 pod 位于同一个节点、区等)中。

podAntiAffinity

对象

描述 pod 反关联性调度规则(例如,避免将此 pod 放置到同一个节点、区等)。

3.1.64. .spec.install.spec.deployments[].spec.template.spec.affinity.nodeAffinity

描述
描述 pod 的节点关联性调度规则。
类型
object
属性类型描述

preferredDuringSchedulingIgnoredDuringExecution

array

调度程序更喜欢将 pod 调度到满足此字段指定的关联性表达式的节点,但可能会选择违反一个或多个表达式的节点。最首选节点是具有最大权重总和的节点,即对于满足所有调度要求(资源请求、必需关联表达式等)的每个节点,计算出一个总和总和总和总和(如果节点与相应的 matchExpressions 匹配),则计算总和最高的节点是最首选的。

preferredDuringSchedulingIgnoredDuringExecution[]

对象

空白的首选调度术语与带有隐式权重 0 (例如,它的一个 no-op)的所有对象匹配。空首选调度术语不匹配任何对象(例如,也是 no-op)。

requiredDuringSchedulingIgnoredDuringExecution

对象

如果在调度时没有满足此字段指定的关联性要求,则 pod 不会被调度到该节点上。如果此字段指定的关联性要求在 pod 执行期间某一点满足(例如,由于更新),则系统可能或可能无法最终从其节点驱除 pod。

3.1.65. .spec.install.spec.deployments[].spec.template.spec.affinity.nodeAffinity.preferredDuringSchedulingIgnoredDuringExecution

描述
调度程序更喜欢将 pod 调度到满足此字段指定的关联性表达式的节点,但可能会选择违反一个或多个表达式的节点。最首选节点是具有最大权重总和的节点,即对于满足所有调度要求(资源请求、必需关联表达式等)的每个节点,计算出一个总和总和总和总和(如果节点与相应的 matchExpressions 匹配),则计算总和最高的节点是最首选的。
类型
array

3.1.66. .spec.install.spec.deployments[].spec.template.spec.affinity.nodeAffinity.preferredDuringSchedulingIgnoredDuringExecution[]

描述
空白的首选调度术语与带有隐式权重 0 (例如,它的一个 no-op)的所有对象匹配。空首选调度术语不匹配任何对象(例如,也是 no-op)。
类型
object
必填
  • preference
  • weight
属性类型描述

preference

对象

与对应权重关联的节点选择器术语。

weight

整数

与对应 nodeSelectorTerm 关联的权重,范围为 1-100。

3.1.67. .spec.install.spec.deployments[].spec.template.spec.affinity.nodeAffinity.preferredDuringSchedulingIgnoredDuringExecution[].preference

描述
与对应权重关联的节点选择器术语。
类型
object
属性类型描述

matchExpressions

array

按节点标签划分的节点选择器要求列表。

matchExpressions[]

对象

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

matchFields

array

按节点字段划分的节点选择器要求列表。

matchFields[]

对象

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

3.1.68. .spec.install.spec.deployments[].spec.template.spec.affinity.nodeAffinity.preferredDuringSchedulingIgnoredDuringExecution[].preference.matchExpressions

描述
按节点标签划分的节点选择器要求列表。
类型
array

3.1.69. .spec.install.spec.deployments[].spec.template.spec.affinity.nodeAffinity.preferredDuringSchedulingIgnoredDuringExecution[].preference.matchExpressions[]

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

key

字符串

选择器应用到的标签键。

operator

字符串

代表键与一组值的关系。有效的运算符为 In、NotIn、Exists、DoesNotExist。gt 和 Lt.

数组(字符串)

字符串值数组。如果运算符是 In 或 NotIn,则值数组必须是非空的。如果运算符是 Exists 或 DoesNotExist,则值数组必须为空。如果运算符是 Gt 或 Lt,则值数组必须具有单个元素,它将解释为整数。这个数组会在策略性合并补丁中被替换。

3.1.70. .spec.install.spec.deployments[].spec.template.spec.affinity.nodeAffinity.preferredDuringSchedulingIgnoredDuringExecution[].preference.matchFields

描述
按节点字段划分的节点选择器要求列表。
类型
array

3.1.71. .spec.install.spec.deployments[].spec.template.spec.affinity.nodeAffinity.preferredDuringSchedulingIgnoredDuringExecution[].preference.matchFields[]

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

key

字符串

选择器应用到的标签键。

operator

字符串

代表键与一组值的关系。有效的运算符为 In、NotIn、Exists、DoesNotExist。gt 和 Lt.

数组(字符串)

字符串值数组。如果运算符是 In 或 NotIn,则值数组必须是非空的。如果运算符是 Exists 或 DoesNotExist,则值数组必须为空。如果运算符是 Gt 或 Lt,则值数组必须具有单个元素,它将解释为整数。这个数组会在策略性合并补丁中被替换。

3.1.72. .spec.install.spec.deployments[].spec.template.spec.affinity.nodeAffinity.requiredDuringSchedulingIgnoredDuringExecution

描述
如果在调度时没有满足此字段指定的关联性要求,则 pod 不会被调度到该节点上。如果此字段指定的关联性要求在 pod 执行期间某一点满足(例如,由于更新),则系统可能或可能无法最终从其节点驱除 pod。
类型
object
必填
  • nodeSelectorTerms
属性类型描述

nodeSelectorTerms

array

必需。节点选择器术语列表。术语为 ORed。

nodeSelectorTerms[]

对象

null 或空节点选择器术语不匹配任何对象。它们的要求是 AND。TopologySelectorTerm 类型实现 NodeSelectorTerm 的子集。

3.1.73. .spec.install.spec.deployments[].spec.template.spec.affinity.nodeAffinity.requiredDuringSchedulingIgnoredDuringExecution.nodeSelectorTerms

描述
必需。节点选择器术语列表。术语为 ORed。
类型
array

3.1.74. .spec.install.spec.deployments[].spec.template.spec.affinity.nodeAffinity.requiredDuringSchedulingIgnoredDuringExecution.nodeSelectorTerms[]

描述
null 或空节点选择器术语不匹配任何对象。它们的要求是 AND。TopologySelectorTerm 类型实现 NodeSelectorTerm 的子集。
类型
object
属性类型描述

matchExpressions

array

按节点标签划分的节点选择器要求列表。

matchExpressions[]

对象

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

matchFields

array

按节点字段划分的节点选择器要求列表。

matchFields[]

对象

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

3.1.75. .spec.install.spec.deployments[].spec.template.spec.affinity.nodeAffinity.requiredDuringSchedulingIgnoredDuringExecution.nodeSelectorTerms[].matchExpressions

描述
按节点标签划分的节点选择器要求列表。
类型
array

3.1.76. .spec.install.spec.deployments[].spec.template.spec.affinity.nodeAffinity.requiredDuringSchedulingIgnoredDuringExecution.nodeSelectorTerms[].matchExpressions[]

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

key

字符串

选择器应用到的标签键。

operator

字符串

代表键与一组值的关系。有效的运算符为 In、NotIn、Exists、DoesNotExist。gt 和 Lt.

数组(字符串)

字符串值数组。如果运算符是 In 或 NotIn,则值数组必须是非空的。如果运算符是 Exists 或 DoesNotExist,则值数组必须为空。如果运算符是 Gt 或 Lt,则值数组必须具有单个元素,它将解释为整数。这个数组会在策略性合并补丁中被替换。

3.1.77. .spec.install.spec.deployments[].spec.template.spec.affinity.nodeAffinity.requiredDuringSchedulingIgnoredDuringExecution.nodeSelectorTerms[].matchFields

描述
按节点字段划分的节点选择器要求列表。
类型
array

3.1.78. .spec.install.spec.deployments[].spec.template.spec.affinity.nodeAffinity.requiredDuringSchedulingIgnoredDuringExecution.nodeSelectorTerms[].matchFields[]

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

key

字符串

选择器应用到的标签键。

operator

字符串

代表键与一组值的关系。有效的运算符为 In、NotIn、Exists、DoesNotExist。gt 和 Lt.

数组(字符串)

字符串值数组。如果运算符是 In 或 NotIn,则值数组必须是非空的。如果运算符是 Exists 或 DoesNotExist,则值数组必须为空。如果运算符是 Gt 或 Lt,则值数组必须具有单个元素,它将解释为整数。这个数组会在策略性合并补丁中被替换。

3.1.79. .spec.install.spec.deployments[].spec.template.spec.affinity.podAffinity

描述
描述 pod 关联性调度规则(例如,将这个 pod 位于同一个节点、区等)中。
类型
object
属性类型描述

preferredDuringSchedulingIgnoredDuringExecution

array

调度程序更喜欢将 pod 调度到满足此字段指定的关联性表达式的节点,但可能会选择违反一个或多个表达式的节点。最首选的节点是具有最大权重总和的节点(即,对于满足所有调度要求的节点(resource request、requiredDuringScheduling 关联性表达式等)的每个节点,计算并迭代此字段元素,并在节点具有与对应 podAffinityTerm 匹配的 pod 时,将"weight"添加到总和(如果节点具有最高 podAffinityTerm)、具有最高总和最高的节点是首选。

preferredDuringSchedulingIgnoredDuringExecution[]

对象

所有匹配的 WeightedPodAffinityTerm 字段的权重添加到每个节点,以查找最首选节点。

requiredDuringSchedulingIgnoredDuringExecution

array

如果在调度时没有满足此字段指定的关联性要求,则 pod 不会被调度到该节点上。如果此字段指定的关联性要求在 pod 执行期间某一点满足(例如,由于 pod 标签更新),则系统可能或可能无法最终从其节点驱除 pod。当有多个元素时,与每个 podAffinityTerm 对应的节点列表都会被交集,例如必须满足所有术语。

requiredDuringSchedulingIgnoredDuringExecution[]

对象

定义一组 pod (即,与给定命名空间相对 labelSelector 匹配的 labelSelector ),该 pod 应该与 pod 共同定位(反关联性)或没有共同定位(反关联性)的节点上运行,其中 co-located 在具有键 <topologyKey> 标签的节点上运行,它与其上运行一组 pod 的 pod 匹配。

3.1.80. .spec.install.spec.deployments[].spec.template.spec.affinity.podAffinity.preferredDuringSchedulingIgnoredDuringExecution

描述
调度程序更喜欢将 pod 调度到满足此字段指定的关联性表达式的节点,但可能会选择违反一个或多个表达式的节点。最首选的节点是具有最大权重总和的节点(即,对于满足所有调度要求的节点(resource request、requiredDuringScheduling 关联性表达式等)的每个节点,计算并迭代此字段元素,并在节点具有与对应 podAffinityTerm 匹配的 pod 时,将"weight"添加到总和(如果节点具有最高 podAffinityTerm)、具有最高总和最高的节点是首选。
类型
array

3.1.81. .spec.install.spec.deployments[].spec.template.spec.affinity.podAffinity.preferredDuringSchedulingIgnoredDuringExecution[]

描述
所有匹配的 WeightedPodAffinityTerm 字段的权重添加到每个节点,以查找最首选节点。
类型
object
必填
  • podAffinityTerm
  • weight
属性类型描述

podAffinityTerm

对象

必需。与对应权重关联的 pod 关联性术语。

weight

整数

与对应的 podAffinityTerm 关联的权重,范围为 1-100。

3.1.82. .spec.install.spec.deployments[].spec.template.spec.affinity.podAffinity.preferredDuringSchedulingIgnoredDuringExecution[].podAffinityTerm

描述
必需。与对应权重关联的 pod 关联性术语。
类型
object
必填
  • topologyKey
属性类型描述

labelSelector

对象

对一组资源进行标签查询,本例中为 pod。

namespaceSelector

对象

术语适用的命名空间集合上的标签查询。术语应用于此字段选定的命名空间的 union,以及 namespaces 字段中列出的命名空间。null selector 和 null 或空命名空间列表表示"此 pod 的命名空间"。空选择器({})匹配所有命名空间。

命名空间

数组(字符串)

namespaces 指定术语应用到的命名空间名称的静态列表。术语应用到此字段中列出的命名空间的 union,namespaceSelector 选择的命名空间列表和 null namespaceSelector 表示 " this pod 的命名空间"。

topologyKey

字符串

此 pod 应该在指定命名空间中与 labelSelector 匹配的 pod 共存(反关联性),其中 co-located 定义为在运行所选 pod 的节点的值为 running 的节点上运行。不允许为空 topologyKey。

3.1.83. .spec.install.spec.deployments[].spec.template.spec.affinity.podAffinity.preferredDuringSchedulingIgnoredDuringExecution[].podAffinityTerm.labelSelector

描述
对一组资源进行标签查询,本例中为 pod。
类型
object
属性类型描述

matchExpressions

array

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

matchExpressions[]

对象

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

matchLabels

对象(字符串)

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

3.1.84. .spec.install.spec.deployments[].spec.template.spec.affinity.podAffinity.preferredDuringSchedulingIgnoredDuringExecution[].podAffinityTerm.labelSelector.matchExpressions

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

3.1.85. .spec.install.spec.deployments[].spec.template.spec.affinity.podAffinity.preferredDuringSchedulingIgnoredDuringExecution[].podAffinityTerm.labelSelector.matchExpressions[]

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

key

字符串

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

operator

字符串

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

数组(字符串)

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

3.1.86. .spec.install.spec.deployments[].spec.template.spec.affinity.podAffinity.preferredDuringSchedulingIgnoredDuringExecution[].podAffinityTerm.namespaceSelector

描述
术语适用的命名空间集合上的标签查询。术语应用于此字段选定的命名空间的 union,以及 namespaces 字段中列出的命名空间。null selector 和 null 或空命名空间列表表示"此 pod 的命名空间"。空选择器({})匹配所有命名空间。
类型
object
属性类型描述

matchExpressions

array

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

matchExpressions[]

对象

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

matchLabels

对象(字符串)

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

3.1.87. .spec.install.spec.deployments[].spec.template.spec.affinity.podAffinity.preferredDuringSchedulingIgnoredDuringExecution[].podAffinityTerm.namespaceSelector.matchExpressions

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

3.1.88. .spec.install.spec.deployments[].spec.template.spec.affinity.podAffinity.preferredDuringSchedulingIgnoredDuringExecution[].podAffinityTerm.namespaceSelector.matchExpressions[]

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

key

字符串

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

operator

字符串

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

数组(字符串)

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

3.1.89. .spec.install.spec.deployments[].spec.template.spec.affinity.podAffinity.requiredDuringSchedulingIgnoredDuringExecution

描述
如果在调度时没有满足此字段指定的关联性要求,则 pod 不会被调度到该节点上。如果此字段指定的关联性要求在 pod 执行期间某一点满足(例如,由于 pod 标签更新),则系统可能或可能无法最终从其节点驱除 pod。当有多个元素时,与每个 podAffinityTerm 对应的节点列表都会被交集,例如必须满足所有术语。
类型
array

3.1.90. .spec.install.spec.deployments[].spec.template.spec.affinity.podAffinity.requiredDuringSchedulingIgnoredDuringExecution[]

描述
定义一组 pod (即,与给定命名空间相对 labelSelector 匹配的 labelSelector ),该 pod 应该与 pod 共同定位(反关联性)或没有共同定位(反关联性)的节点上运行,其中 co-located 在具有键 <topologyKey> 标签的节点上运行,它与其上运行一组 pod 的 pod 匹配。
类型
object
必填
  • topologyKey
属性类型描述

labelSelector

对象

对一组资源进行标签查询,本例中为 pod。

namespaceSelector

对象

术语适用的命名空间集合上的标签查询。术语应用于此字段选定的命名空间的 union,以及 namespaces 字段中列出的命名空间。null selector 和 null 或空命名空间列表表示"此 pod 的命名空间"。空选择器({})匹配所有命名空间。

命名空间

数组(字符串)

namespaces 指定术语应用到的命名空间名称的静态列表。术语应用到此字段中列出的命名空间的 union,namespaceSelector 选择的命名空间列表和 null namespaceSelector 表示 " this pod 的命名空间"。

topologyKey

字符串

此 pod 应该在指定命名空间中与 labelSelector 匹配的 pod 共存(反关联性),其中 co-located 定义为在运行所选 pod 的节点的值为 running 的节点上运行。不允许为空 topologyKey。

3.1.91. .spec.install.spec.deployments[].spec.template.spec.affinity.podAffinity.requiredDuringSchedulingIgnoredDuringExecution[].labelSelector

描述
对一组资源进行标签查询,本例中为 pod。
类型
object
属性类型描述

matchExpressions

array

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

matchExpressions[]

对象

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

matchLabels

对象(字符串)

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

3.1.92. .spec.install.spec.deployments[].spec.template.spec.affinity.podAffinity.requiredDuringSchedulingIgnoredDuringExecution[].labelSelector.matchExpressions

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

3.1.93. .spec.install.spec.deployments[].spec.template.spec.affinity.podAffinity.requiredDuringSchedulingIgnoredDuringExecution[].labelSelector.matchExpressions[]

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

key

字符串

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

operator

字符串

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

数组(字符串)

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

3.1.94. .spec.install.spec.deployments[].spec.template.spec.affinity.podAffinity.requiredDuringSchedulingIgnoredDuringExecution[].namespaceSelector

描述
术语适用的命名空间集合上的标签查询。术语应用于此字段选定的命名空间的 union,以及 namespaces 字段中列出的命名空间。null selector 和 null 或空命名空间列表表示"此 pod 的命名空间"。空选择器({})匹配所有命名空间。
类型
object
属性类型描述

matchExpressions

array

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

matchExpressions[]

对象

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

matchLabels

对象(字符串)

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

3.1.95. .spec.install.spec.deployments[].spec.template.spec.affinity.podAffinity.requiredDuringSchedulingIgnoredDuringExecution[].namespaceSelector.matchExpressions

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

3.1.96. .spec.install.spec.deployments[].spec.template.spec.affinity.podAffinity.requiredDuringSchedulingIgnoredDuringExecution[].namespaceSelector.matchExpressions[]

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

key

字符串

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

operator

字符串

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

数组(字符串)

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

3.1.97. .spec.install.spec.deployments[].spec.template.spec.affinity.podAntiAffinity

描述
描述 pod 反关联性调度规则(例如,避免将此 pod 放置到同一个节点、区等)。
类型
object
属性类型描述

preferredDuringSchedulingIgnoredDuringExecution

array

调度程序更喜欢将 pod 调度到满足此字段指定的反关联性表达式的节点,但可能会选择违反一个或多个表达式的节点。最首选的节点是具有最大权重总和的节点,即对于满足所有调度要求(资源请求、requiredDuringScheduling 反关联性表达式等)的每个节点,计算通过此字段元素来计算总和总和(如果节点具有与对应的 podAffinityTerm 匹配的 pod)的总和。

preferredDuringSchedulingIgnoredDuringExecution[]

对象

所有匹配的 WeightedPodAffinityTerm 字段的权重添加到每个节点,以查找最首选节点。

requiredDuringSchedulingIgnoredDuringExecution

array

如果在调度时没有满足此字段指定的反关联性要求,则 pod 不会被调度到该节点上。如果此字段指定的反关联性要求在 Pod 执行期间某一点满足(例如,由于 pod 标签更新),则系统可能或可能无法最终从其节点驱除 pod。当有多个元素时,与每个 podAffinityTerm 对应的节点列表都会被交集,例如必须满足所有术语。

requiredDuringSchedulingIgnoredDuringExecution[]

对象

定义一组 pod (即,与给定命名空间相对 labelSelector 匹配的 labelSelector ),该 pod 应该与 pod 共同定位(反关联性)或没有共同定位(反关联性)的节点上运行,其中 co-located 在具有键 <topologyKey> 标签的节点上运行,它与其上运行一组 pod 的 pod 匹配。

3.1.98. .spec.install.spec.deployments[].spec.template.spec.affinity.podAntiAffinity.preferredDuringSchedulingIgnoredDuringExecution

描述
调度程序更喜欢将 pod 调度到满足此字段指定的反关联性表达式的节点,但可能会选择违反一个或多个表达式的节点。最首选的节点是具有最大权重总和的节点,即对于满足所有调度要求(资源请求、requiredDuringScheduling 反关联性表达式等)的每个节点,计算通过此字段元素来计算总和总和(如果节点具有与对应的 podAffinityTerm 匹配的 pod)的总和。
类型
array

3.1.99. .spec.install.spec.deployments[].spec.template.spec.affinity.podAntiAffinity.preferredDuringSchedulingIgnoredDuringExecution[]

描述
所有匹配的 WeightedPodAffinityTerm 字段的权重添加到每个节点,以查找最首选节点。
类型
object
必填
  • podAffinityTerm
  • weight
属性类型描述

podAffinityTerm

对象

必需。与对应权重关联的 pod 关联性术语。

weight

整数

与对应的 podAffinityTerm 关联的权重,范围为 1-100。

3.1.100. .spec.install.spec.deployments[].spec.template.spec.affinity.podAntiAffinity.preferredDuringSchedulingIgnoredDuringExecution[].podAffinityTerm

描述
必需。与对应权重关联的 pod 关联性术语。
类型
object
必填
  • topologyKey
属性类型描述

labelSelector

对象

对一组资源进行标签查询,本例中为 pod。

namespaceSelector

对象

术语适用的命名空间集合上的标签查询。术语应用于此字段选定的命名空间的 union,以及 namespaces 字段中列出的命名空间。null selector 和 null 或空命名空间列表表示"此 pod 的命名空间"。空选择器({})匹配所有命名空间。

命名空间

数组(字符串)

namespaces 指定术语应用到的命名空间名称的静态列表。术语应用到此字段中列出的命名空间的 union,namespaceSelector 选择的命名空间列表和 null namespaceSelector 表示 " this pod 的命名空间"。

topologyKey

字符串

此 pod 应该在指定命名空间中与 labelSelector 匹配的 pod 共存(反关联性),其中 co-located 定义为在运行所选 pod 的节点的值为 running 的节点上运行。不允许为空 topologyKey。

3.1.101. .spec.install.spec.deployments[].spec.template.spec.affinity.podAntiAffinity.preferredDuringSchedulingIgnoredDuringExecution[].podAffinityTerm.labelSelector

描述
对一组资源进行标签查询,本例中为 pod。
类型
object
属性类型描述

matchExpressions

array

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

matchExpressions[]

对象

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

matchLabels

对象(字符串)

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

3.1.102. .spec.install.spec.deployments[].spec.template.spec.affinity.podAntiAffinity.preferredDuringSchedulingIgnoredDuringExecution[].podAffinityTerm.labelSelector.matchExpressions

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

3.1.103. .spec.install.spec.deployments[].spec.template.spec.affinity.podAntiAffinity.preferredDuringSchedulingIgnoredDuringExecution[].podAffinityTerm.labelSelector.matchExpressions[]

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

key

字符串

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

operator

字符串

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

数组(字符串)

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

3.1.104. .spec.install.spec.deployments[].spec.template.spec.affinity.podAntiAffinity.preferredDuringSchedulingIgnoredDuringExecution[].podAffinityTerm.namespaceSelector

描述
术语适用的命名空间集合上的标签查询。术语应用于此字段选定的命名空间的 union,以及 namespaces 字段中列出的命名空间。null selector 和 null 或空命名空间列表表示"此 pod 的命名空间"。空选择器({})匹配所有命名空间。
类型
object
属性类型描述

matchExpressions

array

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

matchExpressions[]

对象

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

matchLabels

对象(字符串)

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

3.1.105. .spec.install.spec.deployments[].spec.template.spec.affinity.podAntiAffinity.preferredDuringSchedulingIgnoredDuringExecution[].podAffinityTerm.namespaceSelector.matchExpressions

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

3.1.106. .spec.install.spec.deployments[].spec.template.spec.affinity.podAntiAffinity.preferredDuringSchedulingIgnoredDuringExecution[].podAffinityTerm.namespaceSelector.matchExpressions[]

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

key

字符串

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

operator

字符串

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

数组(字符串)

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

3.1.107. .spec.install.spec.deployments[].spec.template.spec.affinity.podAntiAffinity.requiredDuringSchedulingIgnoredDuringExecution

描述
如果在调度时没有满足此字段指定的反关联性要求,则 pod 不会被调度到该节点上。如果此字段指定的反关联性要求在 Pod 执行期间某一点满足(例如,由于 pod 标签更新),则系统可能或可能无法最终从其节点驱除 pod。当有多个元素时,与每个 podAffinityTerm 对应的节点列表都会被交集,例如必须满足所有术语。
类型
array

3.1.108. .spec.install.spec.deployments[].spec.template.spec.affinity.podAntiAffinity.requiredDuringSchedulingIgnoredDuringExecution[]

描述
定义一组 pod (即,与给定命名空间相对 labelSelector 匹配的 labelSelector ),该 pod 应该与 pod 共同定位(反关联性)或没有共同定位(反关联性)的节点上运行,其中 co-located 在具有键 <topologyKey> 标签的节点上运行,它与其上运行一组 pod 的 pod 匹配。
类型
object
必填
  • topologyKey
属性类型描述

labelSelector

对象

对一组资源进行标签查询,本例中为 pod。

namespaceSelector

对象

术语适用的命名空间集合上的标签查询。术语应用于此字段选定的命名空间的 union,以及 namespaces 字段中列出的命名空间。null selector 和 null 或空命名空间列表表示"此 pod 的命名空间"。空选择器({})匹配所有命名空间。

命名空间

数组(字符串)

namespaces 指定术语应用到的命名空间名称的静态列表。术语应用到此字段中列出的命名空间的 union,namespaceSelector 选择的命名空间列表和 null namespaceSelector 表示 " this pod 的命名空间"。

topologyKey

字符串

此 pod 应该在指定命名空间中与 labelSelector 匹配的 pod 共存(反关联性),其中 co-located 定义为在运行所选 pod 的节点的值为 running 的节点上运行。不允许为空 topologyKey。

3.1.109. .spec.install.spec.deployments[].spec.template.spec.affinity.podAntiAffinity.requiredDuringSchedulingIgnoredDuringExecution[].labelSelector

描述
对一组资源进行标签查询,本例中为 pod。
类型
object
属性类型描述

matchExpressions

array

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

matchExpressions[]

对象

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

matchLabels

对象(字符串)

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

3.1.110. .spec.install.spec.deployments[].spec.template.spec.affinity.podAntiAffinity.requiredDuringSchedulingIgnoredDuringExecution[].labelSelector.matchExpressions

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

3.1.111. .spec.install.spec.deployments[].spec.template.spec.affinity.podAntiAffinity.requiredDuringSchedulingIgnoredDuringExecution[].labelSelector.matchExpressions[]

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

key

字符串

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

operator

字符串

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

数组(字符串)

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

3.1.112. .spec.install.spec.deployments[].spec.template.spec.affinity.podAntiAffinity.requiredDuringSchedulingIgnoredDuringExecution[].namespaceSelector

描述
术语适用的命名空间集合上的标签查询。术语应用于此字段选定的命名空间的 union,以及 namespaces 字段中列出的命名空间。null selector 和 null 或空命名空间列表表示"此 pod 的命名空间"。空选择器({})匹配所有命名空间。
类型
object
属性类型描述

matchExpressions

array

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

matchExpressions[]

对象

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

matchLabels

对象(字符串)

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

3.1.113. .spec.install.spec.deployments[].spec.template.spec.affinity.podAntiAffinity.requiredDuringSchedulingIgnoredDuringExecution[].namespaceSelector.matchExpressions

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

3.1.114. .spec.install.spec.deployments[].spec.template.spec.affinity.podAntiAffinity.requiredDuringSchedulingIgnoredDuringExecution[].namespaceSelector.matchExpressions[]

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

key

字符串

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

operator

字符串

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

数组(字符串)

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

3.1.115. .spec.install.spec.deployments[].spec.template.spec.containers

描述
属于 pod 的容器列表。当前无法添加或删除容器。Pod 中必须至少有一个容器。无法更新。
类型
array

3.1.116. .spec.install.spec.deployments[].spec.template.spec.containers[]

描述
要在 pod 中运行的单一应用程序容器。
类型
object
必填
  • name
属性类型描述

args

数组(字符串)

入口点的参数。如果没有提供,则使用容器镜像的 CMD。变量引用 $(VAR_NAME)使用容器的环境扩展。如果无法解析变量,则输入字符串中的引用将保持不变。双引号被缩减为单个 $,它允许转义 $(VAR_NAME)语法:即 " (VAR_NAME) " 将生成字符串 literal "$(VAR_NAME) "。转义的引用永远不会扩展,无论变量是否存在。无法更新。更多信息: https://kubernetes.io/docs/tasks/inject-data-application/define-command-argument-container/#running-a-command-in-a-shell

命令

数组(字符串)

ENTRYPOINT 数组.没有在 shell 中执行。如果未提供此容器镜像,则使用容器镜像的 ENTRYPOINT。变量引用 $(VAR_NAME)使用容器的环境扩展。如果无法解析变量,则输入字符串中的引用将保持不变。双引号被缩减为单个 $,它允许转义 $(VAR_NAME)语法:即 " (VAR_NAME) " 将生成字符串 literal "$(VAR_NAME) "。转义的引用永远不会扩展,无论变量是否存在。无法更新。更多信息: https://kubernetes.io/docs/tasks/inject-data-application/define-command-argument-container/#running-a-command-in-a-shell

env

array

容器中要设置的环境变量列表。无法更新。

env[]

对象

EnvVar 代表容器中存在的环境变量。

envFrom

array

在容器中填充环境变量的源列表。源中定义的键必须是 C_IDENTIFIER。当容器启动时,所有无效密钥都会被报告为事件。当多个源中存在键时,与最后一个源关联的值将具有优先权。由带有重复键的 Env 定义的值将具有优先权。无法更新。

envFrom[]

对象

EnvFromSource 代表一组 ConfigMap 的源

image

string

容器镜像名称。更多信息: https://kubernetes.io/docs/concepts/containers/images 此字段是可选的,允许更高级别的配置管理默认或覆盖工作负载控制器(如 Deployments 和 StatefulSets)中的容器镜像。

imagePullPolicy

字符串

镜像拉取(pull)策略。Always, Never, IfNotPresent 之一。如果指定了 :latest 标签,则默认为 Always,否则则默认为 IfNotPresent。无法更新。更多信息: https://kubernetes.io/docs/concepts/containers/images#updating-images

生命周期

对象

管理系统应采取的操作来响应容器生命周期事件。无法更新。

livenessProbe

对象

容器存活度探测.如果探测失败,容器将重启。无法更新。更多信息: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes

name

字符串

指定为 DNS_LABEL 的容器名称。pod 中的每个容器都必须具有唯一的名称(DNS_LABEL)。无法更新。

ports

array

从容器公开的端口列表。这里没有指定端口不会阻止公开该端口。所有正在侦听容器内默认"0.0.0.0"地址的端口均可从网络访问。使用策略合并补丁修改阵列可能会破坏数据。如需更多信息,请参阅 https://github.com/kubernetes/kubernetes/issues/108255。无法更新。

ports[]

对象

containerPort 代表单个容器中的网络端口。

readinessProbe

对象

容器服务的定期探测到就绪状态。如果探测失败,容器将从服务端点中删除。无法更新。更多信息: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes

resizePolicy

数组

容器的资源重新定义策略。

resizePolicy[]

object

ContainerResizePolicy 代表容器的资源重新定义策略。

resources

对象

此容器所需的计算资源。无法更新。更多信息: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/

securityContext

对象

securityContext 定义容器应运行的安全选项。如果设置,SecurityContext 的字段会覆盖 PodSecurityContext 的等效字段。更多信息: https://kubernetes.io/docs/tasks/configure-pod-container/security-context/

startupProbe

对象

startupProbe 表示 Pod 已成功初始化。如果指定,则不会执行其他探测,直到成功完成为止。如果这个探测失败,则 Pod 将重启,就像 livenessProbe 失败一样。这可用于在 Pod 生命周期开始时提供不同的探测参数,当可能需要很长时间才能加载数据或温缓存时,而不是在 steady-state 操作过程中提供不同的探测参数。这不能更新。更多信息: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes

stdin

布尔值

此容器是否应该在容器运行时中为 stdin 分配缓冲区。如果没有设置,则容器中的 stdin 读取将始终会导致 EOF。默认为 false。

stdinOnce

布尔值

容器运行时是否应在由单个附加打开后关闭 stdin 频道。当 stdin 为 true 时,stdin 流将在多个附加会话中保持打开状态。如果 stdinOnce 设为 true,则 stdin 会在容器启动时打开,直到第一个客户端附加到 stdin,然后保持打开并接受数据,直到客户端断开连接,此时 stdin 已关闭并保持关闭,直到容器重启为止。如果此标志为 false,则从 stdin 读取的容器进程永远不会收到 EOF。默认为 false

terminationMessagePath

字符串

可选:将容器终止消息写入的文件的路径挂载到容器的文件系统中。编写的消息应当是最终状态,如断言失败消息。如果超过 4096 字节,节点将截断。所有容器的总消息长度将限制为 12kb。默认为 /dev/termination-log。无法更新。

terminationMessagePolicy

字符串

指明应当如何填充终止消息。文件将使用 terminationMessagePath 的内容在成功或失败时填充容器状态消息。如果终止消息文件为空,则 FallbackToLogsOnError 将使用容器日志输出的最后块,并且容器退出并显示错误。日志输出限制为 2048 字节或 80 行,以较小者。默认为 File。无法更新。

tty

布尔值

此容器是否应为自己分配 TTY,也要求 'stdin' 为 true。默认为 false。

volumeDevices

array

volumeDevices 是容器要使用的块设备列表。

volumeDevices[]

对象

volumeDevice 描述了容器中原始块设备的映射。

volumeMounts

array

要挂载到容器文件系统的 Pod 卷。无法更新。

volumeMounts[]

对象

VolumeMount 描述了容器内卷挂载。

workingDir

字符串

容器的工作目录。如果未指定,则将使用容器运行时的默认值,该默认值可能在容器镜像中配置。无法更新。

3.1.117. .spec.install.spec.deployments[].spec.template.spec.containers[].env

描述
容器中要设置的环境变量列表。无法更新。
类型
array

3.1.118. .spec.install.spec.deployments[].spec.template.spec.containers[].env[]

描述
EnvVar 代表容器中存在的环境变量。
类型
object
必填
  • name
属性类型描述

name

字符串

环境变量的名称。必须是 C_IDENTIFIER。

value

字符串

变量引用 $(VAR_NAME)使用容器中之前定义的环境变量以及任何服务环境变量进行扩展。如果无法解析变量,则输入字符串中的引用将保持不变。双引号被缩减为单个 $,它允许转义 $(VAR_NAME)语法:即 " (VAR_NAME) " 将生成字符串 literal "$(VAR_NAME) "。转义的引用永远不会扩展,无论变量是否存在。默认为 ""。

valueFrom

对象

环境变量的值的源。如果值不为空,则无法使用。

3.1.119. .spec.install.spec.deployments[].spec.template.spec.containers[].env[].valueFrom

描述
环境变量的值的源。如果值不为空,则无法使用。
类型
object
属性类型描述

configMapKeyRef

对象

选择 ConfigMap 的键。

fieldRef

对象

选择 pod 的字段:支持 metadata.name、metadata.namespace、metadata.labels['<KEY>'], metadata.annotations['<KEY>'], spec.nodeName, spec.serviceAccountName, status.hostIP, status.podIP, status.podIPs.

resourceFieldRef

对象

选择容器的资源:当前仅支持资源限值和请求(limits.cpu, limits.memory, limits.ephemeral-storage, requests.cpu, requests.memory and requests.ephemeral-storage)。

secretKeyRef

对象

在 pod 命名空间中选择 secret 的键

3.1.120. .spec.install.spec.deployments[].spec.template.spec.containers[].env[].valueFrom.configMapKeyRef

描述
选择 ConfigMap 的键。
类型
object
必填
  • key
属性类型描述

key

字符串

要选择的密钥。

name

字符串

引用的名称。更多信息: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names TODO: 添加其他有用的字段。apiVersion、kind、uid?

optional

布尔值

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

3.1.121. .spec.install.spec.deployments[].spec.template.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
属性类型描述

apiVersion

字符串

模式的版本是按术语编写的 FieldPath,默认为 "v1"。

fieldPath

字符串

在指定 API 版本中选择的字段路径。

3.1.122. .spec.install.spec.deployments[].spec.template.spec.containers[].env[].valueFrom.resourceFieldRef

描述
选择容器的资源:当前仅支持资源限值和请求(limits.cpu, limits.memory, limits.ephemeral-storage, requests.cpu, requests.memory and requests.ephemeral-storage)。
类型
object
必填
  • resource
属性类型描述

containerName

字符串

容器名称:卷需要,对于 env vars是可选的

divisor

integer-or-string

指定公开资源的输出格式,默认为 "1"

resource

字符串

必需:要选择的资源

3.1.123. .spec.install.spec.deployments[].spec.template.spec.containers[].env[].valueFrom.secretKeyRef

描述
在 pod 命名空间中选择 secret 的键
类型
object
必填
  • key
属性类型描述

key

字符串

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

name

字符串

引用的名称。更多信息: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names TODO: 添加其他有用的字段。apiVersion、kind、uid?

optional

布尔值

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

3.1.124. .spec.install.spec.deployments[].spec.template.spec.containers[].envFrom

描述
在容器中填充环境变量的源列表。源中定义的键必须是 C_IDENTIFIER。当容器启动时,所有无效密钥都会被报告为事件。当多个源中存在键时,与最后一个源关联的值将具有优先权。由带有重复键的 Env 定义的值将具有优先权。无法更新。
类型
array

3.1.125. .spec.install.spec.deployments[].spec.template.spec.containers[].envFrom[]

描述
EnvFromSource 代表一组 ConfigMap 的源
类型
object
属性类型描述

configMapRef

对象

要从中选择的 ConfigMap

prefix

字符串

要添加到 ConfigMap 中每个键的可选标识符。必须是 C_IDENTIFIER。

secretRef

对象

要从中选择的 Secret

3.1.126. .spec.install.spec.deployments[].spec.template.spec.containers[].envFrom[].configMapRef

描述
要从中选择的 ConfigMap
类型
object
属性类型描述

name

字符串

引用的名称。更多信息: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names TODO: 添加其他有用的字段。apiVersion、kind、uid?

optional

布尔值

指定是否必须定义 ConfigMap

3.1.127. .spec.install.spec.deployments[].spec.template.spec.containers[].envFrom[].secretRef

描述
要从中选择的 Secret
类型
object
属性类型描述

name

字符串

引用的名称。更多信息: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names TODO: 添加其他有用的字段。apiVersion、kind、uid?

optional

布尔值

指定是否必须定义 Secret

3.1.128. .spec.install.spec.deployments[].spec.template.spec.containers[].lifecycle

描述
管理系统应采取的操作来响应容器生命周期事件。无法更新。
类型
object
属性类型描述

postStart

对象

postStart 在容器被创建后立即调用。如果处理程序失败,则容器将根据其重启策略终止并重启。容器块的其他管理,直到 hook 完成为止。更多信息: https://kubernetes.io/docs/concepts/containers/container-lifecycle-hooks/#container-hooks

preStop

对象

preStop 在因为 API 请求或管理事件而终止容器前马上调用,如存活度/启动探测失败、抢占、资源争用等。如果容器崩溃或退出,则不会调用处理程序。Pod 的终止宽限期倒计时开始,然后再执行 PreStop hook。无论处理程序的结果是什么,容器最终都会在 Pod 的终止宽限期内终止(除非被终结器造成延迟)。容器的其他管理块直到 hook 完成或直至到达终止宽限期为止。更多信息: https://kubernetes.io/docs/concepts/containers/container-lifecycle-hooks/#container-hooks

3.1.129. .spec.install.spec.deployments[].spec.template.spec.containers[].lifecycle.postStart

描述
postStart 在容器被创建后立即调用。如果处理程序失败,则容器将根据其重启策略终止并重启。容器块的其他管理,直到 hook 完成为止。更多信息: https://kubernetes.io/docs/concepts/containers/container-lifecycle-hooks/#container-hooks
类型
object
属性类型描述

exec

object

exec 指定要执行的操作。

httpGet

对象

httpGet 指定要执行的 http 请求。

tcpSocket

object

已弃用。tcpSocket 不支持作为 LifecycleHandler,并且保持向后兼容性。指定 tcp 处理程序时,没有此字段的验证和生命周期 hook 将在运行时失败。

3.1.130. .spec.install.spec.deployments[].spec.template.spec.containers[].lifecycle.postStart.exec

描述
exec 指定要执行的操作。
类型
object
属性类型描述

命令

数组(字符串)

命令是在容器内执行的命令行,而 命令的工作目录是容器文件系统中的 root ('/')。命令只是 exec'd,它不会在 shell 中运行,因此传统的 shell 指令('|' 等)将无法工作。要使用 shell,您需要明确调用该 shell。0 的退出状态被视为 live/healthy,非零不健康。

3.1.131. .spec.install.spec.deployments[].spec.template.spec.containers[].lifecycle.postStart.httpGet

描述
httpGet 指定要执行的 http 请求。
类型
object
必填
  • port
属性类型描述

主机

字符串

要连接到的主机名,默认为 pod IP。您可能想在 httpHeaders 中设置"主机"。

httpHeaders

array

在请求中设置的自定义标头。HTTP 允许重复的标头。

httpHeaders[]

对象

HTTPHeader 描述了在 HTTP 探测中使用的自定义标头

path

字符串

在 HTTP 服务器上访问的路径。

port

integer-or-string

用于访问容器的端口的名称或编号。number 必须在 1 到 65535 之间。名称必须是 IANA_SVC_NAME。

scheme

字符串

用于连接到主机的方案。默认为 HTTP。

3.1.132. .spec.install.spec.deployments[].spec.template.spec.containers[].lifecycle.postStart.httpGet.httpHeaders

描述
在请求中设置的自定义标头。HTTP 允许重复的标头。
类型
array

3.1.133. .spec.install.spec.deployments[].spec.template.spec.containers[].lifecycle.postStart.httpGet.httpHeaders[]

描述
HTTPHeader 描述了在 HTTP 探测中使用的自定义标头
类型
object
必填
  • name
  • value
属性类型描述

name

string

标头字段名称。这将在输出时规范,因此理解 case-variant 名称与相同的标头一样。

value

字符串

标头字段值

3.1.134. .spec.install.spec.deployments[].spec.template.spec.containers[].lifecycle.postStart.tcpSocket

描述
已弃用。tcpSocket 不支持作为 LifecycleHandler,并且保持向后兼容性。指定 tcp 处理程序时,没有此字段的验证和生命周期 hook 将在运行时失败。
类型
object
必填
  • port
属性类型描述

主机

字符串

可选:要连接到的主机名,默认为 pod IP。

port

integer-or-string

用于访问容器的端口的编号或名称。number 必须在 1 到 65535 之间。名称必须是 IANA_SVC_NAME。

3.1.135. .spec.install.spec.deployments[].spec.template.spec.containers[].lifecycle.preStop

描述
preStop 在因为 API 请求或管理事件而终止容器前马上调用,如存活度/启动探测失败、抢占、资源争用等。如果容器崩溃或退出,则不会调用处理程序。Pod 的终止宽限期倒计时开始,然后再执行 PreStop hook。无论处理程序的结果是什么,容器最终都会在 Pod 的终止宽限期内终止(除非被终结器造成延迟)。容器的其他管理块直到 hook 完成或直至到达终止宽限期为止。更多信息: https://kubernetes.io/docs/concepts/containers/container-lifecycle-hooks/#container-hooks
类型
object
属性类型描述

exec

object

exec 指定要执行的操作。

httpGet

对象

httpGet 指定要执行的 http 请求。

tcpSocket

object

已弃用。tcpSocket 不支持作为 LifecycleHandler,并且保持向后兼容性。指定 tcp 处理程序时,没有此字段的验证和生命周期 hook 将在运行时失败。

3.1.136. .spec.install.spec.deployments[].spec.template.spec.containers[].lifecycle.preStop.exec

描述
exec 指定要执行的操作。
类型
object
属性类型描述

命令

数组(字符串)

命令是在容器内执行的命令行,而 命令的工作目录是容器文件系统中的 root ('/')。命令只是 exec'd,它不会在 shell 中运行,因此传统的 shell 指令('|' 等)将无法工作。要使用 shell,您需要明确调用该 shell。0 的退出状态被视为 live/healthy,非零不健康。

3.1.137. .spec.install.spec.deployments[].spec.template.spec.containers[].lifecycle.preStop.httpGet

描述
httpGet 指定要执行的 http 请求。
类型
object
必填
  • port
属性类型描述

主机

字符串

要连接到的主机名,默认为 pod IP。您可能想在 httpHeaders 中设置"主机"。

httpHeaders

array

在请求中设置的自定义标头。HTTP 允许重复的标头。

httpHeaders[]

对象

HTTPHeader 描述了在 HTTP 探测中使用的自定义标头

path

字符串

在 HTTP 服务器上访问的路径。

port

integer-or-string

用于访问容器的端口的名称或编号。number 必须在 1 到 65535 之间。名称必须是 IANA_SVC_NAME。

scheme

字符串

用于连接到主机的方案。默认为 HTTP。

3.1.138. .spec.install.spec.deployments[].spec.template.spec.containers[].lifecycle.preStop.httpGet.httpHeaders

描述
在请求中设置的自定义标头。HTTP 允许重复的标头。
类型
array

3.1.139. .spec.install.spec.deployments[].spec.template.spec.containers[].lifecycle.preStop.httpGet.httpHeaders[]

描述
HTTPHeader 描述了在 HTTP 探测中使用的自定义标头
类型
object
必填
  • name
  • value
属性类型描述

name

string

标头字段名称。这将在输出时规范,因此理解 case-variant 名称与相同的标头一样。

value

字符串

标头字段值

3.1.140. .spec.install.spec.deployments[].spec.template.spec.containers[].lifecycle.preStop.tcpSocket

描述
已弃用。tcpSocket 不支持作为 LifecycleHandler,并且保持向后兼容性。指定 tcp 处理程序时,没有此字段的验证和生命周期 hook 将在运行时失败。
类型
object
必填
  • port
属性类型描述

主机

字符串

可选:要连接到的主机名,默认为 pod IP。

port

integer-or-string

用于访问容器的端口的编号或名称。number 必须在 1 到 65535 之间。名称必须是 IANA_SVC_NAME。

3.1.141. .spec.install.spec.deployments[].spec.template.spec.containers[].livenessProbe

描述
容器存活度探测.如果探测失败,容器将重启。无法更新。更多信息: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes
类型
object
属性类型描述

exec

object

exec 指定要执行的操作。

failureThreshold

整数

在成功后,探测被视为失败的最小连续失败。默认值为 3。最小值为 1。

grpc

object

GRPC 指定涉及 GRPC 端口的操作。

httpGet

对象

httpGet 指定要执行的 http 请求。

initialDelaySeconds

整数

容器启动存活度探测前的秒数。更多信息: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes

periodSeconds

整数

执行探测的频率(以秒为单位)。默认值为 10 秒。最小值为 1。

successThreshold

整数

在失败后,探测至少连续成功会被视为成功。默认为 1。对于存活度和启动,必须为 1。最小值为 1。

tcpSocket

对象

tcpSocket 指定涉及 TCP 端口的操作。

terminationGracePeriodSeconds

整数

pod 在探测失败时安全终止所需的可选持续时间(以秒为单位)。宽限期是 pod 中运行的进程发送终止信号和进程被强制停止使用 kill 信号的时间(以秒为单位)。为您的进程设置这个值超过预期清理时间。如果这个值是 nil,则使用 pod 的 terminationGracePeriodSeconds。否则,这个值会覆盖 pod 规格提供的值。值必须是非负整数。值为零表示立即通过终止信号停止(没有关闭的机会)。这是一个 beta 字段,需要启用 ProbeTerminationGracePeriod 功能门。如果未设置,则使用最小值为 1. spec.terminationGracePeriodSeconds。

timeoutSeconds

整数

探测超时的秒数。默认值为 1 秒。最小值为 1。更多信息: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes

3.1.142. .spec.install.spec.deployments[].spec.template.spec.containers[].livenessProbe.exec

描述
exec 指定要执行的操作。
类型
object
属性类型描述

命令

数组(字符串)

命令是在容器内执行的命令行,而 命令的工作目录是容器文件系统中的 root ('/')。命令只是 exec'd,它不会在 shell 中运行,因此传统的 shell 指令('|' 等)将无法工作。要使用 shell,您需要明确调用该 shell。0 的退出状态被视为 live/healthy,非零不健康。

3.1.143. .spec.install.spec.deployments[].spec.template.spec.containers[].livenessProbe.grpc

描述
GRPC 指定涉及 GRPC 端口的操作。
类型
object
必填
  • port
属性类型描述

port

整数

gRPC 服务的端口号。number 必须在 1 到 65535 之间。

service

string

service 是要放入 gRPC HealthCheckRequest 中的服务名称(请参阅 https://github.com/grpc/grpc/blob/master/doc/health-checking.md)。如果没有指定,则默认行为由 gRPC 定义。

3.1.144. .spec.install.spec.deployments[].spec.template.spec.containers[].livenessProbe.httpGet

描述
httpGet 指定要执行的 http 请求。
类型
object
必填
  • port
属性类型描述

主机

字符串

要连接到的主机名,默认为 pod IP。您可能想在 httpHeaders 中设置"主机"。

httpHeaders

array

在请求中设置的自定义标头。HTTP 允许重复的标头。

httpHeaders[]

对象

HTTPHeader 描述了在 HTTP 探测中使用的自定义标头

path

字符串

在 HTTP 服务器上访问的路径。

port

integer-or-string

用于访问容器的端口的名称或编号。number 必须在 1 到 65535 之间。名称必须是 IANA_SVC_NAME。

scheme

字符串

用于连接到主机的方案。默认为 HTTP。

3.1.145. .spec.install.spec.deployments[].spec.template.spec.containers[].livenessProbe.httpGet.httpHeaders

描述
在请求中设置的自定义标头。HTTP 允许重复的标头。
类型
array

3.1.146. .spec.install.spec.deployments[].spec.template.spec.containers[].livenessProbe.httpGet.httpHeaders[]

描述
HTTPHeader 描述了在 HTTP 探测中使用的自定义标头
类型
object
必填
  • name
  • value
属性类型描述

name

string

标头字段名称。这将在输出时规范,因此理解 case-variant 名称与相同的标头一样。

value

字符串

标头字段值

3.1.147. .spec.install.spec.deployments[].spec.template.spec.containers[].livenessProbe.tcpSocket

描述
tcpSocket 指定涉及 TCP 端口的操作。
类型
object
必填
  • port
属性类型描述

主机

字符串

可选:要连接到的主机名,默认为 pod IP。

port

integer-or-string

用于访问容器的端口的编号或名称。number 必须在 1 到 65535 之间。名称必须是 IANA_SVC_NAME。

3.1.148. .spec.install.spec.deployments[].spec.template.spec.containers[].ports

描述
从容器公开的端口列表。这里没有指定端口不会阻止公开该端口。所有正在侦听容器内默认"0.0.0.0"地址的端口均可从网络访问。使用策略合并补丁修改阵列可能会破坏数据。如需更多信息,请参阅 https://github.com/kubernetes/kubernetes/issues/108255。无法更新。
类型
array

3.1.149. .spec.install.spec.deployments[].spec.template.spec.containers[].ports[]

描述
containerPort 代表单个容器中的网络端口。
类型
object
必填
  • containerPort
属性类型描述

containerPort

整数

pod IP 地址上公开的端口号。这必须是有效的端口号 0 < x < 65536。

hostIP

字符串

将外部端口绑定到的主机 IP。

hostPort

整数

主机上公开的端口号。如果指定,这必须是有效的端口号 0 < x < 65536。如果指定了 HostNetwork,它必须与 ContainerPort 匹配。大多数容器都不需要这样做。

name

字符串

如果指定,这必须是 IANA_SVC_NAME,在 pod 中唯一。pod 中的每个命名端口都必须具有唯一的名称。服务可以引用的端口的名称。

protocol

字符串

端口的协议。必须是 UDP、TCP 或 SCTP。默认为 "TCP"。

3.1.150. .spec.install.spec.deployments[].spec.template.spec.containers[].readinessProbe

描述
容器服务的定期探测到就绪状态。如果探测失败,容器将从服务端点中删除。无法更新。更多信息: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes
类型
object
属性类型描述

exec

object

exec 指定要执行的操作。

failureThreshold

整数

在成功后,探测被视为失败的最小连续失败。默认值为 3。最小值为 1。

grpc

object

GRPC 指定涉及 GRPC 端口的操作。

httpGet

对象

httpGet 指定要执行的 http 请求。

initialDelaySeconds

整数

容器启动存活度探测前的秒数。更多信息: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes

periodSeconds

整数

执行探测的频率(以秒为单位)。默认值为 10 秒。最小值为 1。

successThreshold

整数

在失败后,探测至少连续成功会被视为成功。默认为 1。对于存活度和启动,必须为 1。最小值为 1。

tcpSocket

对象

tcpSocket 指定涉及 TCP 端口的操作。

terminationGracePeriodSeconds

整数

pod 在探测失败时安全终止所需的可选持续时间(以秒为单位)。宽限期是 pod 中运行的进程发送终止信号和进程被强制停止使用 kill 信号的时间(以秒为单位)。为您的进程设置这个值超过预期清理时间。如果这个值是 nil,则使用 pod 的 terminationGracePeriodSeconds。否则,这个值会覆盖 pod 规格提供的值。值必须是非负整数。值为零表示立即通过终止信号停止(没有关闭的机会)。这是一个 beta 字段,需要启用 ProbeTerminationGracePeriod 功能门。如果未设置,则使用最小值为 1. spec.terminationGracePeriodSeconds。

timeoutSeconds

整数

探测超时的秒数。默认值为 1 秒。最小值为 1。更多信息: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes

3.1.151. .spec.install.spec.deployments[].spec.template.spec.containers[].readinessProbe.exec

描述
exec 指定要执行的操作。
类型
object
属性类型描述

命令

数组(字符串)

命令是在容器内执行的命令行,而 命令的工作目录是容器文件系统中的 root ('/')。命令只是 exec'd,它不会在 shell 中运行,因此传统的 shell 指令('|' 等)将无法工作。要使用 shell,您需要明确调用该 shell。0 的退出状态被视为 live/healthy,非零不健康。

3.1.152. .spec.install.spec.deployments[].spec.template.spec.containers[].readinessProbe.grpc

描述
GRPC 指定涉及 GRPC 端口的操作。
类型
object
必填
  • port
属性类型描述

port

整数

gRPC 服务的端口号。number 必须在 1 到 65535 之间。

service

string

service 是要放入 gRPC HealthCheckRequest 中的服务名称(请参阅 https://github.com/grpc/grpc/blob/master/doc/health-checking.md)。如果没有指定,则默认行为由 gRPC 定义。

3.1.153. .spec.install.spec.deployments[].spec.template.spec.containers[].readinessProbe.httpGet

描述
httpGet 指定要执行的 http 请求。
类型
object
必填
  • port
属性类型描述

主机

字符串

要连接到的主机名,默认为 pod IP。您可能想在 httpHeaders 中设置"主机"。

httpHeaders

array

在请求中设置的自定义标头。HTTP 允许重复的标头。

httpHeaders[]

对象

HTTPHeader 描述了在 HTTP 探测中使用的自定义标头

path

字符串

在 HTTP 服务器上访问的路径。

port

integer-or-string

用于访问容器的端口的名称或编号。number 必须在 1 到 65535 之间。名称必须是 IANA_SVC_NAME。

scheme

字符串

用于连接到主机的方案。默认为 HTTP。

3.1.154. .spec.install.spec.deployments[].spec.template.spec.containers[].readinessProbe.httpGet.httpHeaders

描述
在请求中设置的自定义标头。HTTP 允许重复的标头。
类型
array

3.1.155. .spec.install.spec.deployments[].spec.template.spec.containers[].readinessProbe.httpGet.httpHeaders[]

描述
HTTPHeader 描述了在 HTTP 探测中使用的自定义标头
类型
object
必填
  • name
  • value
属性类型描述

name

string

标头字段名称。这将在输出时规范,因此理解 case-variant 名称与相同的标头一样。

value

字符串

标头字段值

3.1.156. .spec.install.spec.deployments[].spec.template.spec.containers[].readinessProbe.tcpSocket

描述
tcpSocket 指定涉及 TCP 端口的操作。
类型
object
必填
  • port
属性类型描述

主机

字符串

可选:要连接到的主机名,默认为 pod IP。

port

integer-or-string

用于访问容器的端口的编号或名称。number 必须在 1 到 65535 之间。名称必须是 IANA_SVC_NAME。

3.1.157. .spec.install.spec.deployments[].spec.template.spec.containers[].resizePolicy

描述
容器的资源重新定义策略。
类型
数组

3.1.158. .spec.install.spec.deployments[].spec.template.spec.containers[].resizePolicy[]

描述
ContainerResizePolicy 代表容器的资源重新定义策略。
类型
object
必填
  • resourceName
  • restartPolicy
属性类型描述

resourceName

string

此资源重新定义策略应用到的资源的名称。支持的值有:cpu、memory。

restartPolicy

string

在指定资源调整大小时,重启策略会被应用。如果没有指定,则默认为 NotRequired。

3.1.159. .spec.install.spec.deployments[].spec.template.spec.containers[].resources

描述
此容器所需的计算资源。无法更新。更多信息: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/
类型
object
属性类型描述

声明

数组

claim 列出此容器使用的 spec.resourceClaims 中定义的资源名称。这是一个 alpha 字段,需要启用 DynamicResourceAllocation 功能门。此字段不可变。它只能为容器设置。

claims[]

object

ResourceClaim 引用 PodSpec.ResourceClaims 中的一个条目。

limits

integer-or-string

限制描述了允许的最大计算资源量。更多信息: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/

requests

integer-or-string

Requests 描述了所需的最少计算资源。如果容器省略了 Requests,则默认为 Limits (如果明确指定),否则默认为实现定义的值。请求不能超过限值。更多信息: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/

3.1.160. .spec.install.spec.deployments[].spec.template.spec.containers[].resources.claims

描述
claim 列出此容器使用的 spec.resourceClaims 中定义的资源名称。这是一个 alpha 字段,需要启用 DynamicResourceAllocation 功能门。此字段不可变。它只能为容器设置。
类型
数组

3.1.161. .spec.install.spec.deployments[].spec.template.spec.containers[].resources.claims[]

描述
ResourceClaim 引用 PodSpec.ResourceClaims 中的一个条目。
类型
object
必填
  • name
属性类型描述

name

string

name 必须与使用此字段的 Pod 的 pod.spec.resourceClaims 中的一个条目的名称匹配。它允许容器内部使用该资源。

3.1.162. .spec.install.spec.deployments[].spec.template.spec.containers[].securityContext

描述
securityContext 定义容器应运行的安全选项。如果设置,SecurityContext 的字段会覆盖 PodSecurityContext 的等效字段。更多信息: https://kubernetes.io/docs/tasks/configure-pod-container/security-context/
类型
object
属性类型描述

allowPrivilegeEscalation

布尔值

allowPrivilegeEscalation 控制进程是否可以比其父进程获得更多特权。此 bool 直接控制容器进程上是否设置了 no_new_privs 标志。当容器是 : 1)作为 CAP_SYS_ADMIN 具有 CAP_SYS_ADMIN 时,allowPrivilegeEscalation 始终为 true,请注意,当 spec.os.name 是 windows 时,不能设置此字段。

功能

对象

运行容器时添加/丢弃的功能。默认为容器运行时授予的默认功能集。请注意,当 spec.os.name 是 windows 时无法设置此字段。

privileged

布尔值

以特权模式运行容器。特权容器中的进程本质上等同于主机上的 root。默认为false。请注意,当 spec.os.name 是 windows 时无法设置此字段。

procMount

字符串

procMount 表示用于容器的 proc 挂载类型。默认为 DefaultProcMount,它将容器运行时默认值用于只读路径和屏蔽的路径。这要求启用 ProcMountType 功能标记。请注意,当 spec.os.name 是 windows 时无法设置此字段。

readOnlyRootFilesystem

布尔值

此容器是否具有只读 root 文件系统。默认为 false。请注意,当 spec.os.name 是 windows 时无法设置此字段。

runAsGroup

整数

用于运行容器进程的入口点的 GID。如果未设置,则使用运行时默认。也可以在 PodSecurityContext 中设置。如果在 SecurityContext 和 PodSecurityContext 中设置,则 SecurityContext 中指定的值具有优先权。请注意,当 spec.os.name 是 windows 时无法设置此字段。

runAsNonRoot

布尔值

表示容器必须以非 root 用户身份运行。如果为 true,Kubelet 将在运行时验证镜像,以确保它不作为 UID 0 (root)运行,如果容器这样做,则无法启动容器。如果未设置或 false,则不会执行这样的验证。也可以在 PodSecurityContext 中设置。如果在 SecurityContext 和 PodSecurityContext 中设置,则 SecurityContext 中指定的值具有优先权。

runAsUser

整数

用于运行容器进程的入口点的 UID。如果未指定,则默认为在镜像元数据中指定的用户。也可以在 PodSecurityContext 中设置。如果在 SecurityContext 和 PodSecurityContext 中设置,则 SecurityContext 中指定的值具有优先权。请注意,当 spec.os.name 是 windows 时无法设置此字段。

seLinuxOptions

对象

要应用到容器的 SELinux 上下文。如果未指定,容器运行时将为每个容器分配一个随机 SELinux 上下文。也可以在 PodSecurityContext 中设置。如果在 SecurityContext 和 PodSecurityContext 中设置,则 SecurityContext 中指定的值具有优先权。请注意,当 spec.os.name 是 windows 时无法设置此字段。

seccompProfile

对象

此容器使用的 seccomp 选项。如果 seccomp 选项同时在 pod 和容器级别上提供,则容器选项会覆盖 pod 选项。请注意,当 spec.os.name 是 windows 时无法设置此字段。

windowsOptions

对象

应用到所有容器的 Windows 特定设置。如果未指定,则使用 PodSecurityContext 中的选项。如果在 SecurityContext 和 PodSecurityContext 中设置,则 SecurityContext 中指定的值具有优先权。请注意,当 spec.os.name 是 linux 时,不能设置此字段。

3.1.163. .spec.install.spec.deployments[].spec.template.spec.containers[].securityContext.capabilities

描述
运行容器时添加/丢弃的功能。默认为容器运行时授予的默认功能集。请注意,当 spec.os.name 是 windows 时无法设置此字段。
类型
object
属性类型描述

add

数组(字符串)

添加了功能

drop

数组(字符串)

删除的功能

3.1.164. .spec.install.spec.deployments[].spec.template.spec.containers[].securityContext.seLinuxOptions

描述
要应用到容器的 SELinux 上下文。如果未指定,容器运行时将为每个容器分配一个随机 SELinux 上下文。也可以在 PodSecurityContext 中设置。如果在 SecurityContext 和 PodSecurityContext 中设置,则 SecurityContext 中指定的值具有优先权。请注意,当 spec.os.name 是 windows 时无法设置此字段。
类型
object
属性类型描述

level

字符串

level 是适用于容器的 SELinux 级别标签。

role

字符串

role 是适用于容器的 SELinux 角色标签。

type

字符串

type 是适用于容器的 SELinux 类型标签。

user

字符串

user 是适用于容器的 SELinux 用户标签。

3.1.165. .spec.install.spec.deployments[].spec.template.spec.containers[].securityContext.seccompProfile

描述
此容器使用的 seccomp 选项。如果 seccomp 选项同时在 pod 和容器级别上提供,则容器选项会覆盖 pod 选项。请注意,当 spec.os.name 是 windows 时无法设置此字段。
类型
object
必填
  • type
属性类型描述

localhostProfile

字符串

localhostProfile 表示应使用节点上文件中定义的配置集。该配置集必须在节点上预先配置才能正常工作。必须是一个降序路径,相对于 kubelet 配置的 seccomp 配置集位置。只有 type 为 "Localhost" 时,才应设置。

type

字符串

Type 表示将应用了哪些 seccomp 配置集。有效选项包括: Localhost - 应该使用节点上文件中定义的配置文件。RuntimeDefault - 应使用容器运行时默认配置集。unconfined - 不应应用配置集。

3.1.166. .spec.install.spec.deployments[].spec.template.spec.containers[].securityContext.windowsOptions

描述
应用到所有容器的 Windows 特定设置。如果未指定,则使用 PodSecurityContext 中的选项。如果在 SecurityContext 和 PodSecurityContext 中设置,则 SecurityContext 中指定的值具有优先权。请注意,当 spec.os.name 是 linux 时,不能设置此字段。
类型
object
属性类型描述

gmsaCredentialSpec

字符串

GMSACredentialSpec 是 GMSA 准入 Webhook (https://github.com/kubernetes-sigs/windows-gmsa)内联由 GMSACredentialSpec 命名的 GMSA 凭证规格的内容。

gmsaCredentialSpecName

字符串

GMSACredentialSpecName 是要使用的 GMSA 凭证规格的名称。

hostProcess

布尔值

HostProcess 确定容器是否应作为"主机进程"容器运行。此字段是 alpha-level,仅包含启用 WindowsHostProcessContainers 功能标记的组件。在没有功能标记的情况下设置此字段将导致验证 Pod 时出现错误。所有 Pod 的容器都必须具有相同的有效的 HostProcess 值(不允许混合 HostProcess 容器和非主机进程容器)。另外,如果 HostProcess 为 true,则 HostNetwork 也必须设置为 true。

runAsUserName

字符串

Windows 中的 UserName,以运行容器进程的入口点。如果未指定,则默认为在镜像元数据中指定的用户。也可以在 PodSecurityContext 中设置。如果在 SecurityContext 和 PodSecurityContext 中设置,则 SecurityContext 中指定的值具有优先权。

3.1.167. .spec.install.spec.deployments[].spec.template.spec.containers[].startupProbe

描述
startupProbe 表示 Pod 已成功初始化。如果指定,则不会执行其他探测,直到成功完成为止。如果这个探测失败,则 Pod 将重启,就像 livenessProbe 失败一样。这可用于在 Pod 生命周期开始时提供不同的探测参数,当可能需要很长时间才能加载数据或温缓存时,而不是在 steady-state 操作过程中提供不同的探测参数。这不能更新。更多信息: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes
类型
object
属性类型描述

exec

object

exec 指定要执行的操作。

failureThreshold

整数

在成功后,探测被视为失败的最小连续失败。默认值为 3。最小值为 1。

grpc

object

GRPC 指定涉及 GRPC 端口的操作。

httpGet

对象

httpGet 指定要执行的 http 请求。

initialDelaySeconds

整数

容器启动存活度探测前的秒数。更多信息: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes

periodSeconds

整数

执行探测的频率(以秒为单位)。默认值为 10 秒。最小值为 1。

successThreshold

整数

在失败后,探测至少连续成功会被视为成功。默认为 1。对于存活度和启动,必须为 1。最小值为 1。

tcpSocket

对象

tcpSocket 指定涉及 TCP 端口的操作。

terminationGracePeriodSeconds

整数

pod 在探测失败时安全终止所需的可选持续时间(以秒为单位)。宽限期是 pod 中运行的进程发送终止信号和进程被强制停止使用 kill 信号的时间(以秒为单位)。为您的进程设置这个值超过预期清理时间。如果这个值是 nil,则使用 pod 的 terminationGracePeriodSeconds。否则,这个值会覆盖 pod 规格提供的值。值必须是非负整数。值为零表示立即通过终止信号停止(没有关闭的机会)。这是一个 beta 字段,需要启用 ProbeTerminationGracePeriod 功能门。如果未设置,则使用最小值为 1. spec.terminationGracePeriodSeconds。

timeoutSeconds

整数

探测超时的秒数。默认值为 1 秒。最小值为 1。更多信息: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes

3.1.168. .spec.install.spec.deployments[].spec.template.spec.containers[].startupProbe.exec

描述
exec 指定要执行的操作。
类型
object
属性类型描述

命令

数组(字符串)

命令是在容器内执行的命令行,而 命令的工作目录是容器文件系统中的 root ('/')。命令只是 exec'd,它不会在 shell 中运行,因此传统的 shell 指令('|' 等)将无法工作。要使用 shell,您需要明确调用该 shell。0 的退出状态被视为 live/healthy,非零不健康。

3.1.169. .spec.install.spec.deployments[].spec.template.spec.containers[].startupProbe.grpc

描述
GRPC 指定涉及 GRPC 端口的操作。
类型
object
必填
  • port
属性类型描述

port

整数

gRPC 服务的端口号。number 必须在 1 到 65535 之间。

service

string

service 是要放入 gRPC HealthCheckRequest 中的服务名称(请参阅 https://github.com/grpc/grpc/blob/master/doc/health-checking.md)。如果没有指定,则默认行为由 gRPC 定义。

3.1.170. .spec.install.spec.deployments[].spec.template.spec.containers[].startupProbe.httpGet

描述
httpGet 指定要执行的 http 请求。
类型
object
必填
  • port
属性类型描述

主机

字符串

要连接到的主机名,默认为 pod IP。您可能想在 httpHeaders 中设置"主机"。

httpHeaders

array

在请求中设置的自定义标头。HTTP 允许重复的标头。

httpHeaders[]

对象

HTTPHeader 描述了在 HTTP 探测中使用的自定义标头

path

字符串

在 HTTP 服务器上访问的路径。

port

integer-or-string

用于访问容器的端口的名称或编号。number 必须在 1 到 65535 之间。名称必须是 IANA_SVC_NAME。

scheme

字符串

用于连接到主机的方案。默认为 HTTP。

3.1.171. .spec.install.spec.deployments[].spec.template.spec.containers[].startupProbe.httpGet.httpHeaders

描述
在请求中设置的自定义标头。HTTP 允许重复的标头。
类型
array

3.1.172. .spec.install.spec.deployments[].spec.template.spec.containers[].startupProbe.httpGet.httpHeaders[]

描述
HTTPHeader 描述了在 HTTP 探测中使用的自定义标头
类型
object
必填
  • name
  • value
属性类型描述

name

string

标头字段名称。这将在输出时规范,因此理解 case-variant 名称与相同的标头一样。

value

字符串

标头字段值

3.1.173. .spec.install.spec.deployments[].spec.template.spec.containers[].startupProbe.tcpSocket

描述
tcpSocket 指定涉及 TCP 端口的操作。
类型
object
必填
  • port
属性类型描述

主机

字符串

可选:要连接到的主机名,默认为 pod IP。

port

integer-or-string

用于访问容器的端口的编号或名称。number 必须在 1 到 65535 之间。名称必须是 IANA_SVC_NAME。

3.1.174. .spec.install.spec.deployments[].spec.template.spec.containers[].volumeDevices

描述
volumeDevices 是容器要使用的块设备列表。
类型
array

3.1.175. .spec.install.spec.deployments[].spec.template.spec.containers[].volumeDevices[]

描述
volumeDevice 描述了容器中原始块设备的映射。
类型
object
必填
  • devicePath
  • name
属性类型描述

devicePath

字符串

DevicePath 是该设备要映射到的容器内的路径。

name

字符串

name 必须与 pod 中 persistentVolumeClaim 的名称匹配

3.1.176. .spec.install.spec.deployments[].spec.template.spec.containers[].volumeMounts

描述
要挂载到容器文件系统的 Pod 卷。无法更新。
类型
array

3.1.177. .spec.install.spec.deployments[].spec.template.spec.containers[].volumeMounts[]

描述
VolumeMount 描述了容器内卷挂载。
类型
object
必填
  • mountPath
  • name
属性类型描述

mountPath

字符串

应挂载卷的容器中的路径。不得包含 ':'。

mountPropagation

字符串

mountPropagation 决定挂载如何从主机传播到容器以及反向传播。如果没有设置,则使用 MountPropagationNone。此字段在 1.10 中是 beta。

name

字符串

这必须与卷的 Name 匹配。

readOnly

布尔值

如果为 true,则以只读方式挂载,否则读写(false 或未指定)。默认为false。

subPath

字符串

应从中挂载容器卷的卷中的路径。默认为 "" (卷的 root)。

subPathExpr

字符串

在应该挂载容器卷的卷中扩展路径。行为与 SubPath 类似,但环境变量引用 $(VAR_NAME)使用容器的环境扩展。默认为 "" (卷的 root)。SubPathExpr 和 SubPath 是互斥的。

3.1.178. .spec.install.spec.deployments[].spec.template.spec.dnsConfig

描述
指定 pod 的 DNS 参数。此处指定的参数将根据 DNSPolicy 合并到生成的 DNS 配置中。
类型
object
属性类型描述

nameservers

数组(字符串)

DNS 名称服务器 IP 地址列表。这将附加到从 DNSPolicy 生成的基本名称服务器中。重复的名称服务器将被删除。

options

array

DNS 解析器选项列表。这将与 DNSPolicy 生成的基本选项合并。删除重复的条目。Options 中提供的解析选项将覆盖基本 DNSPolicy 中显示的选项。

options[]

对象

PodDNSConfigOption 定义 pod 的 DNS 解析器选项。

搜索

数组(字符串)

用于 host-name 查找的 DNS 搜索域列表。这将附加到从 DNSPolicy 生成的基本搜索路径中。删除重复的搜索路径。

3.1.179. .spec.install.spec.deployments[].spec.template.spec.dnsConfig.options

描述
DNS 解析器选项列表。这将与 DNSPolicy 生成的基本选项合并。删除重复的条目。Options 中提供的解析选项将覆盖基本 DNSPolicy 中显示的选项。
类型
array

3.1.180. .spec.install.spec.deployments[].spec.template.spec.dnsConfig.options[]

描述
PodDNSConfigOption 定义 pod 的 DNS 解析器选项。
类型
object
属性类型描述

name

字符串

必需。

value

字符串

 

3.1.181. .spec.install.spec.deployments[].spec.template.spec.ephemeralContainers

描述
此 pod 中运行的临时容器列表。临时容器可以在现有 pod 中运行,以执行用户发起的操作,如调试。创建 pod 时无法指定此列表,且无法通过更新 pod 规格来修改它。要将临时容器添加到现有 pod,请使用 pod 的 ephemeralcontainers 子资源。
类型
array

3.1.182. .spec.install.spec.deployments[].spec.template.spec.ephemeralContainers[]

描述
EphemeralContainer 是一个临时容器,您可以添加到现有 Pod 中,用于用户发起的活动,如调试。临时容器没有资源或调度保证,它们不会在 Pod 退出或重启 Pod 时重启。如果临时容器导致 Pod 超过其资源分配,kubelet 可能会驱除 Pod。要添加临时容器,请使用现有 Pod 的 ephemeralcontainers 子资源。临时容器可能无法删除或重启。
类型
object
必填
  • name
属性类型描述

args

数组(字符串)

入口点的参数。如果未提供该镜像,则使用镜像的 CMD。变量引用 $(VAR_NAME)使用容器的环境扩展。如果无法解析变量,则输入字符串中的引用将保持不变。双引号被缩减为单个 $,它允许转义 $(VAR_NAME)语法:即 " (VAR_NAME) " 将生成字符串 literal "$(VAR_NAME) "。转义的引用永远不会扩展,无论变量是否存在。无法更新。更多信息: https://kubernetes.io/docs/tasks/inject-data-application/define-command-argument-container/#running-a-command-in-a-shell

命令

数组(字符串)

ENTRYPOINT 数组.没有在 shell 中执行。如果未提供该镜像,则使用镜像的 ENTRYPOINT。变量引用 $(VAR_NAME)使用容器的环境扩展。如果无法解析变量,则输入字符串中的引用将保持不变。双引号被缩减为单个 $,它允许转义 $(VAR_NAME)语法:即 " (VAR_NAME) " 将生成字符串 literal "$(VAR_NAME) "。转义的引用永远不会扩展,无论变量是否存在。无法更新。更多信息: https://kubernetes.io/docs/tasks/inject-data-application/define-command-argument-container/#running-a-command-in-a-shell

env

array

容器中要设置的环境变量列表。无法更新。

env[]

对象

EnvVar 代表容器中存在的环境变量。

envFrom

array

在容器中填充环境变量的源列表。源中定义的键必须是 C_IDENTIFIER。当容器启动时,所有无效密钥都会被报告为事件。当多个源中存在键时,与最后一个源关联的值将具有优先权。由带有重复键的 Env 定义的值将具有优先权。无法更新。

envFrom[]

对象

EnvFromSource 代表一组 ConfigMap 的源

image

string

容器镜像名称。更多信息: https://kubernetes.io/docs/concepts/containers/images

imagePullPolicy

字符串

镜像拉取(pull)策略。Always, Never, IfNotPresent 之一。如果指定了 :latest 标签,则默认为 Always,否则则默认为 IfNotPresent。无法更新。更多信息: https://kubernetes.io/docs/concepts/containers/images#updating-images

生命周期

对象

临时容器不允许生命周期。

livenessProbe

对象

临时容器不允许探测。

name

字符串

指定为 DNS_LABEL 的临时容器的名称。此名称在所有容器、init 容器和临时容器中必须是唯一的。

ports

array

临时容器不允许使用端口。

ports[]

对象

containerPort 代表单个容器中的网络端口。

readinessProbe

对象

临时容器不允许探测。

resizePolicy

数组

容器的资源重新定义策略。

resizePolicy[]

object

ContainerResizePolicy 代表容器的资源重新定义策略。

resources

对象

临时容器不允许使用资源。临时容器使用已分配给 pod 的备用资源。

securityContext

对象

可选: SecurityContext 定义临时容器应该运行的安全选项。如果设置,SecurityContext 的字段会覆盖 PodSecurityContext 的等效字段。

startupProbe

对象

临时容器不允许探测。

stdin

布尔值

此容器是否应该在容器运行时中为 stdin 分配缓冲区。如果没有设置,则容器中的 stdin 读取将始终会导致 EOF。默认为 false。

stdinOnce

布尔值

容器运行时是否应在由单个附加打开后关闭 stdin 频道。当 stdin 为 true 时,stdin 流将在多个附加会话中保持打开状态。如果 stdinOnce 设为 true,则 stdin 会在容器启动时打开,直到第一个客户端附加到 stdin,然后保持打开并接受数据,直到客户端断开连接,此时 stdin 已关闭并保持关闭,直到容器重启为止。如果此标志为 false,则从 stdin 读取的容器进程永远不会收到 EOF。默认为 false

targetContainerName

字符串

如果设置,则来自此临时容器目标的 PodSpec 的容器名称。临时容器将在此容器的命名空间中运行(IPC、PID 等)。如果没有设置,则临时容器将使用 Pod spec 中配置的命名空间。容器运行时必须实施对此功能的支持。如果运行时不支持命名空间目标,则设置此字段的结果未定义。

terminationMessagePath

字符串

可选:将容器终止消息写入的文件的路径挂载到容器的文件系统中。编写的消息应当是最终状态,如断言失败消息。如果超过 4096 字节,节点将截断。所有容器的总消息长度将限制为 12kb。默认为 /dev/termination-log。无法更新。

terminationMessagePolicy

字符串

指明应当如何填充终止消息。文件将使用 terminationMessagePath 的内容在成功或失败时填充容器状态消息。如果终止消息文件为空,则 FallbackToLogsOnError 将使用容器日志输出的最后块,并且容器退出并显示错误。日志输出限制为 2048 字节或 80 行,以较小者。默认为 File。无法更新。

tty

布尔值

此容器是否应为自己分配 TTY,也要求 'stdin' 为 true。默认为 false。

volumeDevices

array

volumeDevices 是容器要使用的块设备列表。

volumeDevices[]

对象

volumeDevice 描述了容器中原始块设备的映射。

volumeMounts

array

要挂载到容器文件系统的 Pod 卷。临时容器不允许使用 subPath 挂载。无法更新。

volumeMounts[]

对象

VolumeMount 描述了容器内卷挂载。

workingDir

字符串

容器的工作目录。如果未指定,则将使用容器运行时的默认值,该默认值可能在容器镜像中配置。无法更新。

3.1.183. .spec.install.spec.deployments[].spec.template.spec.ephemeralContainers[].env

描述
容器中要设置的环境变量列表。无法更新。
类型
array

3.1.184. .spec.install.spec.deployments[].spec.template.spec.ephemeralContainers[].env[]

描述
EnvVar 代表容器中存在的环境变量。
类型
object
必填
  • name
属性类型描述

name

字符串

环境变量的名称。必须是 C_IDENTIFIER。

value

字符串

变量引用 $(VAR_NAME)使用容器中之前定义的环境变量以及任何服务环境变量进行扩展。如果无法解析变量,则输入字符串中的引用将保持不变。双引号被缩减为单个 $,它允许转义 $(VAR_NAME)语法:即 " (VAR_NAME) " 将生成字符串 literal "$(VAR_NAME) "。转义的引用永远不会扩展,无论变量是否存在。默认为 ""。

valueFrom

对象

环境变量的值的源。如果值不为空,则无法使用。

3.1.185. .spec.install.spec.deployments[].spec.template.spec.ephemeralContainers[].env[].valueFrom

描述
环境变量的值的源。如果值不为空,则无法使用。
类型
object
属性类型描述

configMapKeyRef

对象

选择 ConfigMap 的键。

fieldRef

对象

选择 pod 的字段:支持 metadata.name、metadata.namespace、metadata.labels['<KEY>'], metadata.annotations['<KEY>'], spec.nodeName, spec.serviceAccountName, status.hostIP, status.podIP, status.podIPs.

resourceFieldRef

对象

选择容器的资源:当前仅支持资源限值和请求(limits.cpu, limits.memory, limits.ephemeral-storage, requests.cpu, requests.memory and requests.ephemeral-storage)。

secretKeyRef

对象

在 pod 命名空间中选择 secret 的键

3.1.186. .spec.install.spec.deployments[].spec.template.spec.ephemeralContainers[].env[].valueFrom.configMapKeyRef

描述
选择 ConfigMap 的键。
类型
object
必填
  • key
属性类型描述

key

字符串

要选择的密钥。

name

字符串

引用的名称。更多信息: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names TODO: 添加其他有用的字段。apiVersion、kind、uid?

optional

布尔值

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

3.1.187. .spec.install.spec.deployments[].spec.template.spec.ephemeralContainers[].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
属性类型描述

apiVersion

字符串

模式的版本是按术语编写的 FieldPath,默认为 "v1"。

fieldPath

字符串

在指定 API 版本中选择的字段路径。

3.1.188. .spec.install.spec.deployments[].spec.template.spec.ephemeralContainers[].env[].valueFrom.resourceFieldRef

描述
选择容器的资源:当前仅支持资源限值和请求(limits.cpu, limits.memory, limits.ephemeral-storage, requests.cpu, requests.memory and requests.ephemeral-storage)。
类型
object
必填
  • resource
属性类型描述

containerName

字符串

容器名称:卷需要,对于 env vars是可选的

divisor

integer-or-string

指定公开资源的输出格式,默认为 "1"

resource

字符串

必需:要选择的资源

3.1.189. .spec.install.spec.deployments[].spec.template.spec.ephemeralContainers[].env[].valueFrom.secretKeyRef

描述
在 pod 命名空间中选择 secret 的键
类型
object
必填
  • key
属性类型描述

key

字符串

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

name

字符串

引用的名称。更多信息: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names TODO: 添加其他有用的字段。apiVersion、kind、uid?

optional

布尔值

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

3.1.190. .spec.install.spec.deployments[].spec.template.spec.ephemeralContainers[].envFrom

描述
在容器中填充环境变量的源列表。源中定义的键必须是 C_IDENTIFIER。当容器启动时,所有无效密钥都会被报告为事件。当多个源中存在键时,与最后一个源关联的值将具有优先权。由带有重复键的 Env 定义的值将具有优先权。无法更新。
类型
array

3.1.191. .spec.install.spec.deployments[].spec.template.spec.ephemeralContainers[].envFrom[]

描述
EnvFromSource 代表一组 ConfigMap 的源
类型
object
属性类型描述

configMapRef

对象

要从中选择的 ConfigMap

prefix

字符串

要添加到 ConfigMap 中每个键的可选标识符。必须是 C_IDENTIFIER。

secretRef

对象

要从中选择的 Secret

3.1.192. .spec.install.spec.deployments[].spec.template.spec.ephemeralContainers[].envFrom[].configMapRef

描述
要从中选择的 ConfigMap
类型
object
属性类型描述

name

字符串

引用的名称。更多信息: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names TODO: 添加其他有用的字段。apiVersion、kind、uid?

optional

布尔值

指定是否必须定义 ConfigMap

3.1.193. .spec.install.spec.deployments[].spec.template.spec.ephemeralContainers[].envFrom[].secretRef

描述
要从中选择的 Secret
类型
object
属性类型描述

name

字符串

引用的名称。更多信息: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names TODO: 添加其他有用的字段。apiVersion、kind、uid?

optional

布尔值

指定是否必须定义 Secret

3.1.194. .spec.install.spec.deployments[].spec.template.spec.ephemeralContainers[].lifecycle

描述
临时容器不允许生命周期。
类型
object
属性类型描述

postStart

对象

postStart 在容器被创建后立即调用。如果处理程序失败,则容器将根据其重启策略终止并重启。容器块的其他管理,直到 hook 完成为止。更多信息: https://kubernetes.io/docs/concepts/containers/container-lifecycle-hooks/#container-hooks

preStop

对象

preStop 在因为 API 请求或管理事件而终止容器前马上调用,如存活度/启动探测失败、抢占、资源争用等。如果容器崩溃或退出,则不会调用处理程序。Pod 的终止宽限期倒计时开始,然后再执行 PreStop hook。无论处理程序的结果是什么,容器最终都会在 Pod 的终止宽限期内终止(除非被终结器造成延迟)。容器的其他管理块直到 hook 完成或直至到达终止宽限期为止。更多信息: https://kubernetes.io/docs/concepts/containers/container-lifecycle-hooks/#container-hooks

3.1.195. .spec.install.spec.deployments[].spec.template.spec.ephemeralContainers[].lifecycle.postStart

描述
postStart 在容器被创建后立即调用。如果处理程序失败,则容器将根据其重启策略终止并重启。容器块的其他管理,直到 hook 完成为止。更多信息: https://kubernetes.io/docs/concepts/containers/container-lifecycle-hooks/#container-hooks
类型
object
属性类型描述

exec

object

exec 指定要执行的操作。

httpGet

对象

httpGet 指定要执行的 http 请求。

tcpSocket

object

已弃用。tcpSocket 不支持作为 LifecycleHandler,并且保持向后兼容性。指定 tcp 处理程序时,没有此字段的验证和生命周期 hook 将在运行时失败。

3.1.196. .spec.install.spec.deployments[].spec.template.spec.ephemeralContainers[].lifecycle.postStart.exec

描述
exec 指定要执行的操作。
类型
object
属性类型描述

命令

数组(字符串)

命令是在容器内执行的命令行,而 命令的工作目录是容器文件系统中的 root ('/')。命令只是 exec'd,它不会在 shell 中运行,因此传统的 shell 指令('|' 等)将无法工作。要使用 shell,您需要明确调用该 shell。0 的退出状态被视为 live/healthy,非零不健康。

3.1.197. .spec.install.spec.deployments[].spec.template.spec.ephemeralContainers[].lifecycle.postStart.httpGet

描述
httpGet 指定要执行的 http 请求。
类型
object
必填
  • port
属性类型描述

主机

字符串

要连接到的主机名,默认为 pod IP。您可能想在 httpHeaders 中设置"主机"。

httpHeaders

array

在请求中设置的自定义标头。HTTP 允许重复的标头。

httpHeaders[]

对象

HTTPHeader 描述了在 HTTP 探测中使用的自定义标头

path

字符串

在 HTTP 服务器上访问的路径。

port

integer-or-string

用于访问容器的端口的名称或编号。number 必须在 1 到 65535 之间。名称必须是 IANA_SVC_NAME。

scheme

字符串

用于连接到主机的方案。默认为 HTTP。

3.1.198. .spec.install.spec.deployments[].spec.template.spec.ephemeralContainers[].lifecycle.postStart.httpGet.httpHeaders

描述
在请求中设置的自定义标头。HTTP 允许重复的标头。
类型
array

3.1.199. .spec.install.spec.deployments[].spec.template.spec.ephemeralContainers[].lifecycle.postStart.httpGet.httpHeaders[]

描述
HTTPHeader 描述了在 HTTP 探测中使用的自定义标头
类型
object
必填
  • name
  • value
属性类型描述

name

string

标头字段名称。这将在输出时规范,因此理解 case-variant 名称与相同的标头一样。

value

字符串

标头字段值

3.1.200. .spec.install.spec.deployments[].spec.template.spec.ephemeralContainers[].lifecycle.postStart.tcpSocket

描述
已弃用。tcpSocket 不支持作为 LifecycleHandler,并且保持向后兼容性。指定 tcp 处理程序时,没有此字段的验证和生命周期 hook 将在运行时失败。
类型
object
必填
  • port
属性类型描述

主机

字符串

可选:要连接到的主机名,默认为 pod IP。

port

integer-or-string

用于访问容器的端口的编号或名称。number 必须在 1 到 65535 之间。名称必须是 IANA_SVC_NAME。

3.1.201. .spec.install.spec.deployments[].spec.template.spec.ephemeralContainers[].lifecycle.preStop

描述
preStop 在因为 API 请求或管理事件而终止容器前马上调用,如存活度/启动探测失败、抢占、资源争用等。如果容器崩溃或退出,则不会调用处理程序。Pod 的终止宽限期倒计时开始,然后再执行 PreStop hook。无论处理程序的结果是什么,容器最终都会在 Pod 的终止宽限期内终止(除非被终结器造成延迟)。容器的其他管理块直到 hook 完成或直至到达终止宽限期为止。更多信息: https://kubernetes.io/docs/concepts/containers/container-lifecycle-hooks/#container-hooks
类型
object
属性类型描述

exec

object

exec 指定要执行的操作。

httpGet

对象

httpGet 指定要执行的 http 请求。

tcpSocket

object

已弃用。tcpSocket 不支持作为 LifecycleHandler,并且保持向后兼容性。指定 tcp 处理程序时,没有此字段的验证和生命周期 hook 将在运行时失败。

3.1.202. .spec.install.spec.deployments[].spec.template.spec.ephemeralContainers[].lifecycle.preStop.exec

描述
exec 指定要执行的操作。
类型
object
属性类型描述

命令

数组(字符串)

命令是在容器内执行的命令行,而 命令的工作目录是容器文件系统中的 root ('/')。命令只是 exec'd,它不会在 shell 中运行,因此传统的 shell 指令('|' 等)将无法工作。要使用 shell,您需要明确调用该 shell。0 的退出状态被视为 live/healthy,非零不健康。

3.1.203. .spec.install.spec.deployments[].spec.template.spec.ephemeralContainers[].lifecycle.preStop.httpGet

描述
httpGet 指定要执行的 http 请求。
类型
object
必填
  • port
属性类型描述

主机

字符串

要连接到的主机名,默认为 pod IP。您可能想在 httpHeaders 中设置"主机"。

httpHeaders

array

在请求中设置的自定义标头。HTTP 允许重复的标头。

httpHeaders[]

对象

HTTPHeader 描述了在 HTTP 探测中使用的自定义标头

path

字符串

在 HTTP 服务器上访问的路径。

port

integer-or-string

用于访问容器的端口的名称或编号。number 必须在 1 到 65535 之间。名称必须是 IANA_SVC_NAME。

scheme

字符串

用于连接到主机的方案。默认为 HTTP。

3.1.204. .spec.install.spec.deployments[].spec.template.spec.ephemeralContainers[].lifecycle.preStop.httpGet.httpHeaders

描述
在请求中设置的自定义标头。HTTP 允许重复的标头。
类型
array

3.1.205. .spec.install.spec.deployments[].spec.template.spec.ephemeralContainers[].lifecycle.preStop.httpGet.httpHeaders[]

描述
HTTPHeader 描述了在 HTTP 探测中使用的自定义标头
类型
object
必填
  • name
  • value
属性类型描述

name

string

标头字段名称。这将在输出时规范,因此理解 case-variant 名称与相同的标头一样。

value

字符串

标头字段值

3.1.206. .spec.install.spec.deployments[].spec.template.spec.ephemeralContainers[].lifecycle.preStop.tcpSocket

描述
已弃用。tcpSocket 不支持作为 LifecycleHandler,并且保持向后兼容性。指定 tcp 处理程序时,没有此字段的验证和生命周期 hook 将在运行时失败。
类型
object
必填
  • port
属性类型描述

主机

字符串

可选:要连接到的主机名,默认为 pod IP。

port

integer-or-string

用于访问容器的端口的编号或名称。number 必须在 1 到 65535 之间。名称必须是 IANA_SVC_NAME。

3.1.207. .spec.install.spec.deployments[].spec.template.spec.ephemeralContainers[].livenessProbe

描述
临时容器不允许探测。
类型
object
属性类型描述

exec

object

exec 指定要执行的操作。

failureThreshold

整数

在成功后,探测被视为失败的最小连续失败。默认值为 3。最小值为 1。

grpc

object

GRPC 指定涉及 GRPC 端口的操作。

httpGet

对象

httpGet 指定要执行的 http 请求。

initialDelaySeconds

整数

容器启动存活度探测前的秒数。更多信息: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes

periodSeconds

整数

执行探测的频率(以秒为单位)。默认值为 10 秒。最小值为 1。

successThreshold

整数

在失败后,探测至少连续成功会被视为成功。默认为 1。对于存活度和启动,必须为 1。最小值为 1。

tcpSocket

对象

tcpSocket 指定涉及 TCP 端口的操作。

terminationGracePeriodSeconds

整数

pod 在探测失败时安全终止所需的可选持续时间(以秒为单位)。宽限期是 pod 中运行的进程发送终止信号和进程被强制停止使用 kill 信号的时间(以秒为单位)。为您的进程设置这个值超过预期清理时间。如果这个值是 nil,则使用 pod 的 terminationGracePeriodSeconds。否则,这个值会覆盖 pod 规格提供的值。值必须是非负整数。值为零表示立即通过终止信号停止(没有关闭的机会)。这是一个 beta 字段,需要启用 ProbeTerminationGracePeriod 功能门。如果未设置,则使用最小值为 1. spec.terminationGracePeriodSeconds。

timeoutSeconds

整数

探测超时的秒数。默认值为 1 秒。最小值为 1。更多信息: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes

3.1.208. .spec.install.spec.deployments[].spec.template.spec.ephemeralContainers[].livenessProbe.exec

描述
exec 指定要执行的操作。
类型
object
属性类型描述

命令

数组(字符串)

命令是在容器内执行的命令行,而 命令的工作目录是容器文件系统中的 root ('/')。命令只是 exec'd,它不会在 shell 中运行,因此传统的 shell 指令('|' 等)将无法工作。要使用 shell,您需要明确调用该 shell。0 的退出状态被视为 live/healthy,非零不健康。

3.1.209. .spec.install.spec.deployments[].spec.template.spec.ephemeralContainers[].livenessProbe.grpc

描述
GRPC 指定涉及 GRPC 端口的操作。
类型
object
必填
  • port
属性类型描述

port

整数

gRPC 服务的端口号。number 必须在 1 到 65535 之间。

service

string

service 是要放入 gRPC HealthCheckRequest 中的服务名称(请参阅 https://github.com/grpc/grpc/blob/master/doc/health-checking.md)。如果没有指定,则默认行为由 gRPC 定义。

3.1.210. .spec.install.spec.deployments[].spec.template.spec.ephemeralContainers[].livenessProbe.httpGet

描述
httpGet 指定要执行的 http 请求。
类型
object
必填
  • port
属性类型描述

主机

字符串

要连接到的主机名,默认为 pod IP。您可能想在 httpHeaders 中设置"主机"。

httpHeaders

array

在请求中设置的自定义标头。HTTP 允许重复的标头。

httpHeaders[]

对象

HTTPHeader 描述了在 HTTP 探测中使用的自定义标头

path

字符串

在 HTTP 服务器上访问的路径。

port

integer-or-string

用于访问容器的端口的名称或编号。number 必须在 1 到 65535 之间。名称必须是 IANA_SVC_NAME。

scheme

字符串

用于连接到主机的方案。默认为 HTTP。

3.1.211. .spec.install.spec.deployments[].spec.template.spec.ephemeralContainers[].livenessProbe.httpGet.httpHeaders

描述
在请求中设置的自定义标头。HTTP 允许重复的标头。
类型
array

3.1.212. .spec.install.spec.deployments[].spec.template.spec.ephemeralContainers[].livenessProbe.httpGet.httpHeaders[]

描述
HTTPHeader 描述了在 HTTP 探测中使用的自定义标头
类型
object
必填
  • name
  • value
属性类型描述

name

string

标头字段名称。这将在输出时规范,因此理解 case-variant 名称与相同的标头一样。

value

字符串

标头字段值

3.1.213. .spec.install.spec.deployments[].spec.template.spec.ephemeralContainers[].livenessProbe.tcpSocket

描述
tcpSocket 指定涉及 TCP 端口的操作。
类型
object
必填
  • port
属性类型描述

主机

字符串

可选:要连接到的主机名,默认为 pod IP。

port

integer-or-string

用于访问容器的端口的编号或名称。number 必须在 1 到 65535 之间。名称必须是 IANA_SVC_NAME。

3.1.214. .spec.install.spec.deployments[].spec.template.spec.ephemeralContainers[].ports

描述
临时容器不允许使用端口。
类型
array

3.1.215. .spec.install.spec.deployments[].spec.template.spec.ephemeralContainers[].ports[]

描述
containerPort 代表单个容器中的网络端口。
类型
object
必填
  • containerPort
属性类型描述

containerPort

整数

pod IP 地址上公开的端口号。这必须是有效的端口号 0 < x < 65536。

hostIP

字符串

将外部端口绑定到的主机 IP。

hostPort

整数

主机上公开的端口号。如果指定,这必须是有效的端口号 0 < x < 65536。如果指定了 HostNetwork,它必须与 ContainerPort 匹配。大多数容器都不需要这样做。

name

字符串

如果指定,这必须是 IANA_SVC_NAME,在 pod 中唯一。pod 中的每个命名端口都必须具有唯一的名称。服务可以引用的端口的名称。

protocol

字符串

端口的协议。必须是 UDP、TCP 或 SCTP。默认为 "TCP"。

3.1.216. .spec.install.spec.deployments[].spec.template.spec.ephemeralContainers[].readinessProbe

描述
临时容器不允许探测。
类型
object
属性类型描述

exec

object

exec 指定要执行的操作。

failureThreshold

整数

在成功后,探测被视为失败的最小连续失败。默认值为 3。最小值为 1。

grpc

object

GRPC 指定涉及 GRPC 端口的操作。

httpGet

对象

httpGet 指定要执行的 http 请求。

initialDelaySeconds

整数

容器启动存活度探测前的秒数。更多信息: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes

periodSeconds

整数

执行探测的频率(以秒为单位)。默认值为 10 秒。最小值为 1。

successThreshold

整数

在失败后,探测至少连续成功会被视为成功。默认为 1。对于存活度和启动,必须为 1。最小值为 1。

tcpSocket

对象

tcpSocket 指定涉及 TCP 端口的操作。

terminationGracePeriodSeconds

整数

pod 在探测失败时安全终止所需的可选持续时间(以秒为单位)。宽限期是 pod 中运行的进程发送终止信号和进程被强制停止使用 kill 信号的时间(以秒为单位)。为您的进程设置这个值超过预期清理时间。如果这个值是 nil,则使用 pod 的 terminationGracePeriodSeconds。否则,这个值会覆盖 pod 规格提供的值。值必须是非负整数。值为零表示立即通过终止信号停止(没有关闭的机会)。这是一个 beta 字段,需要启用 ProbeTerminationGracePeriod 功能门。如果未设置,则使用最小值为 1. spec.terminationGracePeriodSeconds。

timeoutSeconds

整数

探测超时的秒数。默认值为 1 秒。最小值为 1。更多信息: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes

3.1.217. .spec.install.spec.deployments[].spec.template.spec.ephemeralContainers[].readinessProbe.exec

描述
exec 指定要执行的操作。
类型
object
属性类型描述

命令

数组(字符串)

命令是在容器内执行的命令行,而 命令的工作目录是容器文件系统中的 root ('/')。命令只是 exec'd,它不会在 shell 中运行,因此传统的 shell 指令('|' 等)将无法工作。要使用 shell,您需要明确调用该 shell。0 的退出状态被视为 live/healthy,非零不健康。

3.1.218. .spec.install.spec.deployments[].spec.template.spec.ephemeralContainers[].readinessProbe.grpc

描述
GRPC 指定涉及 GRPC 端口的操作。
类型
object
必填
  • port
属性类型描述

port

整数

gRPC 服务的端口号。number 必须在 1 到 65535 之间。

service

string

service 是要放入 gRPC HealthCheckRequest 中的服务名称(请参阅 https://github.com/grpc/grpc/blob/master/doc/health-checking.md)。如果没有指定,则默认行为由 gRPC 定义。

3.1.219. .spec.install.spec.deployments[].spec.template.spec.ephemeralContainers[].readinessProbe.httpGet

描述
httpGet 指定要执行的 http 请求。
类型
object
必填
  • port
属性类型描述

主机

字符串

要连接到的主机名,默认为 pod IP。您可能想在 httpHeaders 中设置"主机"。

httpHeaders

array

在请求中设置的自定义标头。HTTP 允许重复的标头。

httpHeaders[]

对象

HTTPHeader 描述了在 HTTP 探测中使用的自定义标头

path

字符串

在 HTTP 服务器上访问的路径。

port

integer-or-string

用于访问容器的端口的名称或编号。number 必须在 1 到 65535 之间。名称必须是 IANA_SVC_NAME。

scheme

字符串

用于连接到主机的方案。默认为 HTTP。

3.1.220. .spec.install.spec.deployments[].spec.template.spec.ephemeralContainers[].readinessProbe.httpGet.httpHeaders

描述
在请求中设置的自定义标头。HTTP 允许重复的标头。
类型
array

3.1.221. .spec.install.spec.deployments[].spec.template.spec.ephemeralContainers[].readinessProbe.httpGet.httpHeaders[]

描述
HTTPHeader 描述了在 HTTP 探测中使用的自定义标头
类型
object
必填
  • name
  • value
属性类型描述

name

string

标头字段名称。这将在输出时规范,因此理解 case-variant 名称与相同的标头一样。

value

字符串

标头字段值

3.1.222. .spec.install.spec.deployments[].spec.template.spec.ephemeralContainers[].readinessProbe.tcpSocket

描述
tcpSocket 指定涉及 TCP 端口的操作。
类型
object
必填
  • port
属性类型描述

主机

字符串

可选:要连接到的主机名,默认为 pod IP。

port

integer-or-string

用于访问容器的端口的编号或名称。number 必须在 1 到 65535 之间。名称必须是 IANA_SVC_NAME。

3.1.223. .spec.install.spec.deployments[].spec.template.spec.ephemeralContainers[].resizePolicy

描述
容器的资源重新定义策略。
类型
数组

3.1.224. .spec.install.spec.deployments[].spec.template.spec.ephemeralContainers[].resizePolicy[]

描述
ContainerResizePolicy 代表容器的资源重新定义策略。
类型
object
必填
  • resourceName
  • restartPolicy
属性类型描述

resourceName

string

此资源重新定义策略应用到的资源的名称。支持的值有:cpu、memory。

restartPolicy

string

在指定资源调整大小时,重启策略会被应用。如果没有指定,则默认为 NotRequired。

3.1.225. .spec.install.spec.deployments[].spec.template.spec.ephemeralContainers[].resources

描述
临时容器不允许使用资源。临时容器使用已分配给 pod 的备用资源。
类型
object
属性类型描述

声明

数组

claim 列出此容器使用的 spec.resourceClaims 中定义的资源名称。这是一个 alpha 字段,需要启用 DynamicResourceAllocation 功能门。此字段不可变。它只能为容器设置。

claims[]

object

ResourceClaim 引用 PodSpec.ResourceClaims 中的一个条目。

limits

integer-or-string

限制描述了允许的最大计算资源量。更多信息: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/

requests

integer-or-string

Requests 描述了所需的最少计算资源。如果容器省略了 Requests,则默认为 Limits (如果明确指定),否则默认为实现定义的值。请求不能超过限值。更多信息: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/

3.1.226. .spec.install.spec.deployments[].spec.template.spec.ephemeralContainers[].resources.claims

描述
claim 列出此容器使用的 spec.resourceClaims 中定义的资源名称。这是一个 alpha 字段,需要启用 DynamicResourceAllocation 功能门。此字段不可变。它只能为容器设置。
类型
数组

3.1.227. .spec.install.spec.deployments[].spec.template.spec.ephemeralContainers[].resources.claims[]

描述
ResourceClaim 引用 PodSpec.ResourceClaims 中的一个条目。
类型
object
必填
  • name
属性类型描述

name

string

name 必须与使用此字段的 Pod 的 pod.spec.resourceClaims 中的一个条目的名称匹配。它允许容器内部使用该资源。

3.1.228. .spec.install.spec.deployments[].spec.template.spec.ephemeralContainers[].securityContext

描述
可选: SecurityContext 定义临时容器应该运行的安全选项。如果设置,SecurityContext 的字段会覆盖 PodSecurityContext 的等效字段。
类型
object
属性类型描述

allowPrivilegeEscalation

布尔值

allowPrivilegeEscalation 控制进程是否可以比其父进程获得更多特权。此 bool 直接控制容器进程上是否设置了 no_new_privs 标志。当容器是 : 1)作为 CAP_SYS_ADMIN 具有 CAP_SYS_ADMIN 时,allowPrivilegeEscalation 始终为 true,请注意,当 spec.os.name 是 windows 时,不能设置此字段。

功能

对象

运行容器时添加/丢弃的功能。默认为容器运行时授予的默认功能集。请注意,当 spec.os.name 是 windows 时无法设置此字段。

privileged

布尔值

以特权模式运行容器。特权容器中的进程本质上等同于主机上的 root。默认为false。请注意,当 spec.os.name 是 windows 时无法设置此字段。

procMount

字符串

procMount 表示用于容器的 proc 挂载类型。默认为 DefaultProcMount,它将容器运行时默认值用于只读路径和屏蔽的路径。这要求启用 ProcMountType 功能标记。请注意,当 spec.os.name 是 windows 时无法设置此字段。

readOnlyRootFilesystem

布尔值

此容器是否具有只读 root 文件系统。默认为 false。请注意,当 spec.os.name 是 windows 时无法设置此字段。

runAsGroup

整数

用于运行容器进程的入口点的 GID。如果未设置,则使用运行时默认。也可以在 PodSecurityContext 中设置。如果在 SecurityContext 和 PodSecurityContext 中设置,则 SecurityContext 中指定的值具有优先权。请注意,当 spec.os.name 是 windows 时无法设置此字段。

runAsNonRoot

布尔值

表示容器必须以非 root 用户身份运行。如果为 true,Kubelet 将在运行时验证镜像,以确保它不作为 UID 0 (root)运行,如果容器这样做,则无法启动容器。如果未设置或 false,则不会执行这样的验证。也可以在 PodSecurityContext 中设置。如果在 SecurityContext 和 PodSecurityContext 中设置,则 SecurityContext 中指定的值具有优先权。

runAsUser

整数

用于运行容器进程的入口点的 UID。如果未指定,则默认为在镜像元数据中指定的用户。也可以在 PodSecurityContext 中设置。如果在 SecurityContext 和 PodSecurityContext 中设置,则 SecurityContext 中指定的值具有优先权。请注意,当 spec.os.name 是 windows 时无法设置此字段。

seLinuxOptions

对象

要应用到容器的 SELinux 上下文。如果未指定,容器运行时将为每个容器分配一个随机 SELinux 上下文。也可以在 PodSecurityContext 中设置。如果在 SecurityContext 和 PodSecurityContext 中设置,则 SecurityContext 中指定的值具有优先权。请注意,当 spec.os.name 是 windows 时无法设置此字段。

seccompProfile

对象

此容器使用的 seccomp 选项。如果 seccomp 选项同时在 pod 和容器级别上提供,则容器选项会覆盖 pod 选项。请注意,当 spec.os.name 是 windows 时无法设置此字段。

windowsOptions

对象

应用到所有容器的 Windows 特定设置。如果未指定,则使用 PodSecurityContext 中的选项。如果在 SecurityContext 和 PodSecurityContext 中设置,则 SecurityContext 中指定的值具有优先权。请注意,当 spec.os.name 是 linux 时,不能设置此字段。

3.1.229. .spec.install.spec.deployments[].spec.template.spec.ephemeralContainers[].securityContext.capabilities

描述
运行容器时添加/丢弃的功能。默认为容器运行时授予的默认功能集。请注意,当 spec.os.name 是 windows 时无法设置此字段。
类型
object
属性类型描述

add

数组(字符串)

添加了功能

drop

数组(字符串)

删除的功能

3.1.230. .spec.install.spec.deployments[].spec.template.spec.ephemeralContainers[].securityContext.seLinuxOptions

描述
要应用到容器的 SELinux 上下文。如果未指定,容器运行时将为每个容器分配一个随机 SELinux 上下文。也可以在 PodSecurityContext 中设置。如果在 SecurityContext 和 PodSecurityContext 中设置,则 SecurityContext 中指定的值具有优先权。请注意,当 spec.os.name 是 windows 时无法设置此字段。
类型
object
属性类型描述

level

字符串

level 是适用于容器的 SELinux 级别标签。

role

字符串

role 是适用于容器的 SELinux 角色标签。

type

字符串

type 是适用于容器的 SELinux 类型标签。

user

字符串

user 是适用于容器的 SELinux 用户标签。

3.1.231. .spec.install.spec.deployments[].spec.template.spec.ephemeralContainers[].securityContext.seccompProfile

描述
此容器使用的 seccomp 选项。如果 seccomp 选项同时在 pod 和容器级别上提供,则容器选项会覆盖 pod 选项。请注意,当 spec.os.name 是 windows 时无法设置此字段。
类型
object
必填
  • type
属性类型描述

localhostProfile

字符串

localhostProfile 表示应使用节点上文件中定义的配置集。该配置集必须在节点上预先配置才能正常工作。必须是一个降序路径,相对于 kubelet 配置的 seccomp 配置集位置。只有 type 为 "Localhost" 时,才应设置。

type

字符串

Type 表示将应用了哪些 seccomp 配置集。有效选项包括: Localhost - 应该使用节点上文件中定义的配置文件。RuntimeDefault - 应使用容器运行时默认配置集。unconfined - 不应应用配置集。

3.1.232. .spec.install.spec.deployments[].spec.template.spec.ephemeralContainers[].securityContext.windowsOptions

描述
应用到所有容器的 Windows 特定设置。如果未指定,则使用 PodSecurityContext 中的选项。如果在 SecurityContext 和 PodSecurityContext 中设置,则 SecurityContext 中指定的值具有优先权。请注意,当 spec.os.name 是 linux 时,不能设置此字段。
类型
object
属性类型描述

gmsaCredentialSpec

字符串

GMSACredentialSpec 是 GMSA 准入 Webhook (https://github.com/kubernetes-sigs/windows-gmsa)内联由 GMSACredentialSpec 命名的 GMSA 凭证规格的内容。

gmsaCredentialSpecName

字符串

GMSACredentialSpecName 是要使用的 GMSA 凭证规格的名称。

hostProcess

布尔值

HostProcess 确定容器是否应作为"主机进程"容器运行。此字段是 alpha-level,仅包含启用 WindowsHostProcessContainers 功能标记的组件。在没有功能标记的情况下设置此字段将导致验证 Pod 时出现错误。所有 Pod 的容器都必须具有相同的有效的 HostProcess 值(不允许混合 HostProcess 容器和非主机进程容器)。另外,如果 HostProcess 为 true,则 HostNetwork 也必须设置为 true。

runAsUserName

字符串

Windows 中的 UserName,以运行容器进程的入口点。如果未指定,则默认为在镜像元数据中指定的用户。也可以在 PodSecurityContext 中设置。如果在 SecurityContext 和 PodSecurityContext 中设置,则 SecurityContext 中指定的值具有优先权。

3.1.233. .spec.install.spec.deployments[].spec.template.spec.ephemeralContainers[].startupProbe

描述
临时容器不允许探测。
类型
object
属性类型描述

exec

object

exec 指定要执行的操作。

failureThreshold

整数

在成功后,探测被视为失败的最小连续失败。默认值为 3。最小值为 1。

grpc

object

GRPC 指定涉及 GRPC 端口的操作。

httpGet

对象

httpGet 指定要执行的 http 请求。

initialDelaySeconds

整数

容器启动存活度探测前的秒数。更多信息: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes

periodSeconds

整数

执行探测的频率(以秒为单位)。默认值为 10 秒。最小值为 1。

successThreshold

整数

在失败后,探测至少连续成功会被视为成功。默认为 1。对于存活度和启动,必须为 1。最小值为 1。

tcpSocket

对象

tcpSocket 指定涉及 TCP 端口的操作。

terminationGracePeriodSeconds

整数

pod 在探测失败时安全终止所需的可选持续时间(以秒为单位)。宽限期是 pod 中运行的进程发送终止信号和进程被强制停止使用 kill 信号的时间(以秒为单位)。为您的进程设置这个值超过预期清理时间。如果这个值是 nil,则使用 pod 的 terminationGracePeriodSeconds。否则,这个值会覆盖 pod 规格提供的值。值必须是非负整数。值为零表示立即通过终止信号停止(没有关闭的机会)。这是一个 beta 字段,需要启用 ProbeTerminationGracePeriod 功能门。如果未设置,则使用最小值为 1. spec.terminationGracePeriodSeconds。

timeoutSeconds

整数

探测超时的秒数。默认值为 1 秒。最小值为 1。更多信息: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes

3.1.234. .spec.install.spec.deployments[].spec.template.spec.ephemeralContainers[].startupProbe.exec

描述
exec 指定要执行的操作。
类型
object
属性类型描述

命令

数组(字符串)

命令是在容器内执行的命令行,而 命令的工作目录是容器文件系统中的 root ('/')。命令只是 exec'd,它不会在 shell 中运行,因此传统的 shell 指令('|' 等)将无法工作。要使用 shell,您需要明确调用该 shell。0 的退出状态被视为 live/healthy,非零不健康。

3.1.235. .spec.install.spec.deployments[].spec.template.spec.ephemeralContainers[].startupProbe.grpc

描述
GRPC 指定涉及 GRPC 端口的操作。
类型
object
必填
  • port
属性类型描述

port

整数

gRPC 服务的端口号。number 必须在 1 到 65535 之间。

service

string

service 是要放入 gRPC HealthCheckRequest 中的服务名称(请参阅 https://github.com/grpc/grpc/blob/master/doc/health-checking.md)。如果没有指定,则默认行为由 gRPC 定义。

3.1.236. .spec.install.spec.deployments[].spec.template.spec.ephemeralContainers[].startupProbe.httpGet

描述
httpGet 指定要执行的 http 请求。
类型
object
必填
  • port
属性类型描述

主机

字符串

要连接到的主机名,默认为 pod IP。您可能想在 httpHeaders 中设置"主机"。

httpHeaders

array

在请求中设置的自定义标头。HTTP 允许重复的标头。

httpHeaders[]

对象

HTTPHeader 描述了在 HTTP 探测中使用的自定义标头

path

字符串

在 HTTP 服务器上访问的路径。

port

integer-or-string

用于访问容器的端口的名称或编号。number 必须在 1 到 65535 之间。名称必须是 IANA_SVC_NAME。

scheme

字符串

用于连接到主机的方案。默认为 HTTP。

3.1.237. .spec.install.spec.deployments[].spec.template.spec.ephemeralContainers[].startupProbe.httpGet.httpHeaders

描述
在请求中设置的自定义标头。HTTP 允许重复的标头。
类型
array

3.1.238. .spec.install.spec.deployments[].spec.template.spec.ephemeralContainers[].startupProbe.httpGet.httpHeaders[]

描述
HTTPHeader 描述了在 HTTP 探测中使用的自定义标头
类型
object
必填
  • name
  • value
属性类型描述

name

string

标头字段名称。这将在输出时规范,因此理解 case-variant 名称与相同的标头一样。

value

字符串

标头字段值

3.1.239. .spec.install.spec.deployments[].spec.template.spec.ephemeralContainers[].startupProbe.tcpSocket

描述
tcpSocket 指定涉及 TCP 端口的操作。
类型
object
必填
  • port
属性类型描述

主机

字符串

可选:要连接到的主机名,默认为 pod IP。

port

integer-or-string

用于访问容器的端口的编号或名称。number 必须在 1 到 65535 之间。名称必须是 IANA_SVC_NAME。

3.1.240. .spec.install.spec.deployments[].spec.template.spec.ephemeralContainers[].volumeDevices

描述
volumeDevices 是容器要使用的块设备列表。
类型
array

3.1.241. .spec.install.spec.deployments[].spec.template.spec.ephemeralContainers[].volumeDevices[]

描述
volumeDevice 描述了容器中原始块设备的映射。
类型
object
必填
  • devicePath
  • name
属性类型描述

devicePath

字符串

DevicePath 是该设备要映射到的容器内的路径。

name

字符串

name 必须与 pod 中 persistentVolumeClaim 的名称匹配

3.1.242. .spec.install.spec.deployments[].spec.template.spec.ephemeralContainers[].volumeMounts

描述
要挂载到容器文件系统的 Pod 卷。临时容器不允许使用 subPath 挂载。无法更新。
类型
array

3.1.243. .spec.install.spec.deployments[].spec.template.spec.ephemeralContainers[].volumeMounts[]

描述
VolumeMount 描述了容器内卷挂载。
类型
object
必填
  • mountPath
  • name
属性类型描述

mountPath

字符串

应挂载卷的容器中的路径。不得包含 ':'。

mountPropagation

字符串

mountPropagation 决定挂载如何从主机传播到容器以及反向传播。如果没有设置,则使用 MountPropagationNone。此字段在 1.10 中是 beta。

name

字符串

这必须与卷的 Name 匹配。

readOnly

布尔值

如果为 true,则以只读方式挂载,否则读写(false 或未指定)。默认为false。

subPath

字符串

应从中挂载容器卷的卷中的路径。默认为 "" (卷的 root)。

subPathExpr

字符串

在应该挂载容器卷的卷中扩展路径。行为与 SubPath 类似,但环境变量引用 $(VAR_NAME)使用容器的环境扩展。默认为 "" (卷的 root)。SubPathExpr 和 SubPath 是互斥的。

3.1.244. .spec.install.spec.deployments[].spec.template.spec.hostAliases

描述
hostAliases 是主机和 IP 的可选列表,如果指定,将注入到 pod 的主机文件中。这仅对非主机网络 pod 有效。
类型
array

3.1.245. .spec.install.spec.deployments[].spec.template.spec.hostAliases[]

描述
HostAlias 包含 IP 和主机名之间的映射,这些映射将作为 pod 的主机文件中的条目注入。
类型
object
属性类型描述

hostnames

数组(字符串)

以上 IP 地址的主机名。

ip

字符串

主机文件条目的 IP 地址。

3.1.246. .spec.install.spec.deployments[].spec.template.spec.imagePullSecrets

描述
imagePullSecrets 是对同一命名空间中的 secret 的引用列表,用于拉取此 PodSpec 使用的任何镜像。如果指定,这些 secret 将传递给单独的 puller 实现,供它们使用。更多信息: https://kubernetes.io/docs/concepts/containers/images#specifying-imagepullsecrets-on-a-pod
类型
array

3.1.247. .spec.install.spec.deployments[].spec.template.spec.imagePullSecrets[]

描述
LocalObjectReference 包含足够信息,供您在同一命名空间中找到引用的对象。
类型
object
属性类型描述

name

字符串

引用的名称。更多信息: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names TODO: 添加其他有用的字段。apiVersion、kind、uid?

3.1.248. .spec.install.spec.deployments[].spec.template.spec.initContainers

描述
属于 pod 的初始化容器列表。Init 容器在启动容器之前按顺序执行。如果任何 init 容器失败,pod 被视为失败,并根据 restartPolicy 处理。init 容器或普通容器的名称对于所有容器来说都必须是唯一的。Init 容器可能没有生命周期操作、就绪度探测、存活度探测或启动探测。通过查找每种资源类型的最高请求/限制,然后使用该值的最大值或普通容器的总和,在调度期间考虑 init 容器的 resourceRequirements。限制以类似的方式应用到 init 容器。当前无法添加或删除 init 容器。无法更新。更多信息: https://kubernetes.io/docs/concepts/workloads/pods/init-containers/
类型
array

3.1.249. .spec.install.spec.deployments[].spec.template.spec.initContainers[]

描述
要在 pod 中运行的单一应用程序容器。
类型
object
必填
  • name
属性类型描述

args

数组(字符串)

入口点的参数。如果没有提供,则使用容器镜像的 CMD。变量引用 $(VAR_NAME)使用容器的环境扩展。如果无法解析变量,则输入字符串中的引用将保持不变。双引号被缩减为单个 $,它允许转义 $(VAR_NAME)语法:即 " (VAR_NAME) " 将生成字符串 literal "$(VAR_NAME) "。转义的引用永远不会扩展,无论变量是否存在。无法更新。更多信息: https://kubernetes.io/docs/tasks/inject-data-application/define-command-argument-container/#running-a-command-in-a-shell

命令

数组(字符串)

ENTRYPOINT 数组.没有在 shell 中执行。如果未提供此容器镜像,则使用容器镜像的 ENTRYPOINT。变量引用 $(VAR_NAME)使用容器的环境扩展。如果无法解析变量,则输入字符串中的引用将保持不变。双引号被缩减为单个 $,它允许转义 $(VAR_NAME)语法:即 " (VAR_NAME) " 将生成字符串 literal "$(VAR_NAME) "。转义的引用永远不会扩展,无论变量是否存在。无法更新。更多信息: https://kubernetes.io/docs/tasks/inject-data-application/define-command-argument-container/#running-a-command-in-a-shell

env

array

容器中要设置的环境变量列表。无法更新。

env[]

对象

EnvVar 代表容器中存在的环境变量。

envFrom

array

在容器中填充环境变量的源列表。源中定义的键必须是 C_IDENTIFIER。当容器启动时,所有无效密钥都会被报告为事件。当多个源中存在键时,与最后一个源关联的值将具有优先权。由带有重复键的 Env 定义的值将具有优先权。无法更新。

envFrom[]

对象

EnvFromSource 代表一组 ConfigMap 的源

image

string

容器镜像名称。更多信息: https://kubernetes.io/docs/concepts/containers/images 此字段是可选的,允许更高级别的配置管理默认或覆盖工作负载控制器(如 Deployments 和 StatefulSets)中的容器镜像。

imagePullPolicy

字符串

镜像拉取(pull)策略。Always, Never, IfNotPresent 之一。如果指定了 :latest 标签,则默认为 Always,否则则默认为 IfNotPresent。无法更新。更多信息: https://kubernetes.io/docs/concepts/containers/images#updating-images

生命周期

对象

管理系统应采取的操作来响应容器生命周期事件。无法更新。

livenessProbe

对象

容器存活度探测.如果探测失败,容器将重启。无法更新。更多信息: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes

name

字符串

指定为 DNS_LABEL 的容器名称。pod 中的每个容器都必须具有唯一的名称(DNS_LABEL)。无法更新。

ports

array

从容器公开的端口列表。这里没有指定端口不会阻止公开该端口。所有正在侦听容器内默认"0.0.0.0"地址的端口均可从网络访问。使用策略合并补丁修改阵列可能会破坏数据。如需更多信息,请参阅 https://github.com/kubernetes/kubernetes/issues/108255。无法更新。

ports[]

对象

containerPort 代表单个容器中的网络端口。

readinessProbe

对象

容器服务的定期探测到就绪状态。如果探测失败,容器将从服务端点中删除。无法更新。更多信息: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes

resizePolicy

数组

容器的资源重新定义策略。

resizePolicy[]

object

ContainerResizePolicy 代表容器的资源重新定义策略。

resources

对象

此容器所需的计算资源。无法更新。更多信息: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/

securityContext

对象

securityContext 定义容器应运行的安全选项。如果设置,SecurityContext 的字段会覆盖 PodSecurityContext 的等效字段。更多信息: https://kubernetes.io/docs/tasks/configure-pod-container/security-context/

startupProbe

对象

startupProbe 表示 Pod 已成功初始化。如果指定,则不会执行其他探测,直到成功完成为止。如果这个探测失败,则 Pod 将重启,就像 livenessProbe 失败一样。这可用于在 Pod 生命周期开始时提供不同的探测参数,当可能需要很长时间才能加载数据或温缓存时,而不是在 steady-state 操作过程中提供不同的探测参数。这不能更新。更多信息: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes

stdin

布尔值

此容器是否应该在容器运行时中为 stdin 分配缓冲区。如果没有设置,则容器中的 stdin 读取将始终会导致 EOF。默认为 false。

stdinOnce

布尔值

容器运行时是否应在由单个附加打开后关闭 stdin 频道。当 stdin 为 true 时,stdin 流将在多个附加会话中保持打开状态。如果 stdinOnce 设为 true,则 stdin 会在容器启动时打开,直到第一个客户端附加到 stdin,然后保持打开并接受数据,直到客户端断开连接,此时 stdin 已关闭并保持关闭,直到容器重启为止。如果此标志为 false,则从 stdin 读取的容器进程永远不会收到 EOF。默认为 false

terminationMessagePath

字符串

可选:将容器终止消息写入的文件的路径挂载到容器的文件系统中。编写的消息应当是最终状态,如断言失败消息。如果超过 4096 字节,节点将截断。所有容器的总消息长度将限制为 12kb。默认为 /dev/termination-log。无法更新。

terminationMessagePolicy

字符串

指明应当如何填充终止消息。文件将使用 terminationMessagePath 的内容在成功或失败时填充容器状态消息。如果终止消息文件为空,则 FallbackToLogsOnError 将使用容器日志输出的最后块,并且容器退出并显示错误。日志输出限制为 2048 字节或 80 行,以较小者。默认为 File。无法更新。

tty

布尔值

此容器是否应为自己分配 TTY,也要求 'stdin' 为 true。默认为 false。

volumeDevices

array

volumeDevices 是容器要使用的块设备列表。

volumeDevices[]

对象

volumeDevice 描述了容器中原始块设备的映射。

volumeMounts

array

要挂载到容器文件系统的 Pod 卷。无法更新。

volumeMounts[]

对象

VolumeMount 描述了容器内卷挂载。

workingDir

字符串

容器的工作目录。如果未指定,则将使用容器运行时的默认值,该默认值可能在容器镜像中配置。无法更新。

3.1.250. .spec.install.spec.deployments[].spec.template.spec.initContainers[].env

描述
容器中要设置的环境变量列表。无法更新。
类型
array

3.1.251. .spec.install.spec.deployments[].spec.template.spec.initContainers[].env[]

描述
EnvVar 代表容器中存在的环境变量。
类型
object
必填
  • name
属性类型描述

name

字符串

环境变量的名称。必须是 C_IDENTIFIER。

value

字符串

变量引用 $(VAR_NAME)使用容器中之前定义的环境变量以及任何服务环境变量进行扩展。如果无法解析变量,则输入字符串中的引用将保持不变。双引号被缩减为单个 $,它允许转义 $(VAR_NAME)语法:即 " (VAR_NAME) " 将生成字符串 literal "$(VAR_NAME) "。转义的引用永远不会扩展,无论变量是否存在。默认为 ""。

valueFrom

对象

环境变量的值的源。如果值不为空,则无法使用。

3.1.252. .spec.install.spec.deployments[].spec.template.spec.initContainers[].env[].valueFrom

描述
环境变量的值的源。如果值不为空,则无法使用。
类型
object
属性类型描述

configMapKeyRef

对象

选择 ConfigMap 的键。

fieldRef

对象

选择 pod 的字段:支持 metadata.name、metadata.namespace、metadata.labels['<KEY>'], metadata.annotations['<KEY>'], spec.nodeName, spec.serviceAccountName, status.hostIP, status.podIP, status.podIPs.

resourceFieldRef

对象

选择容器的资源:当前仅支持资源限值和请求(limits.cpu, limits.memory, limits.ephemeral-storage, requests.cpu, requests.memory and requests.ephemeral-storage)。

secretKeyRef

对象

在 pod 命名空间中选择 secret 的键

3.1.253. .spec.install.spec.deployments[].spec.template.spec.initContainers[].env[].valueFrom.configMapKeyRef

描述
选择 ConfigMap 的键。
类型
object
必填
  • key
属性类型描述

key

字符串

要选择的密钥。

name

字符串

引用的名称。更多信息: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names TODO: 添加其他有用的字段。apiVersion、kind、uid?

optional

布尔值

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

3.1.254. .spec.install.spec.deployments[].spec.template.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
属性类型描述

apiVersion

字符串

模式的版本是按术语编写的 FieldPath,默认为 "v1"。

fieldPath

字符串

在指定 API 版本中选择的字段路径。

3.1.255. .spec.install.spec.deployments[].spec.template.spec.initContainers[].env[].valueFrom.resourceFieldRef

描述
选择容器的资源:当前仅支持资源限值和请求(limits.cpu, limits.memory, limits.ephemeral-storage, requests.cpu, requests.memory and requests.ephemeral-storage)。
类型
object
必填
  • resource
属性类型描述

containerName

字符串

容器名称:卷需要,对于 env vars是可选的

divisor

integer-or-string

指定公开资源的输出格式,默认为 "1"

resource

字符串

必需:要选择的资源

3.1.256. .spec.install.spec.deployments[].spec.template.spec.initContainers[].env[].valueFrom.secretKeyRef

描述
在 pod 命名空间中选择 secret 的键
类型
object
必填
  • key
属性类型描述

key

字符串

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

name

字符串

引用的名称。更多信息: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names TODO: 添加其他有用的字段。apiVersion、kind、uid?

optional

布尔值

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

3.1.257. .spec.install.spec.deployments[].spec.template.spec.initContainers[].envFrom

描述
在容器中填充环境变量的源列表。源中定义的键必须是 C_IDENTIFIER。当容器启动时,所有无效密钥都会被报告为事件。当多个源中存在键时,与最后一个源关联的值将具有优先权。由带有重复键的 Env 定义的值将具有优先权。无法更新。
类型
array

3.1.258. .spec.install.spec.deployments[].spec.template.spec.initContainers[].envFrom[]

描述
EnvFromSource 代表一组 ConfigMap 的源
类型
object
属性类型描述

configMapRef

对象

要从中选择的 ConfigMap

prefix

字符串

要添加到 ConfigMap 中每个键的可选标识符。必须是 C_IDENTIFIER。

secretRef

对象

要从中选择的 Secret

3.1.259. .spec.install.spec.deployments[].spec.template.spec.initContainers[].envFrom[].configMapRef

描述
要从中选择的 ConfigMap
类型
object
属性类型描述

name

字符串

引用的名称。更多信息: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names TODO: 添加其他有用的字段。apiVersion、kind、uid?

optional

布尔值

指定是否必须定义 ConfigMap

3.1.260. .spec.install.spec.deployments[].spec.template.spec.initContainers[].envFrom[].secretRef

描述
要从中选择的 Secret
类型
object
属性类型描述

name

字符串

引用的名称。更多信息: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names TODO: 添加其他有用的字段。apiVersion、kind、uid?

optional

布尔值

指定是否必须定义 Secret

3.1.261. .spec.install.spec.deployments[].spec.template.spec.initContainers[].lifecycle

描述
管理系统应采取的操作来响应容器生命周期事件。无法更新。
类型
object
属性类型描述

postStart

对象

postStart 在容器被创建后立即调用。如果处理程序失败,则容器将根据其重启策略终止并重启。容器块的其他管理,直到 hook 完成为止。更多信息: https://kubernetes.io/docs/concepts/containers/container-lifecycle-hooks/#container-hooks

preStop

对象

preStop 在因为 API 请求或管理事件而终止容器前马上调用,如存活度/启动探测失败、抢占、资源争用等。如果容器崩溃或退出,则不会调用处理程序。Pod 的终止宽限期倒计时开始,然后再执行 PreStop hook。无论处理程序的结果是什么,容器最终都会在 Pod 的终止宽限期内终止(除非被终结器造成延迟)。容器的其他管理块直到 hook 完成或直至到达终止宽限期为止。更多信息: https://kubernetes.io/docs/concepts/containers/container-lifecycle-hooks/#container-hooks

3.1.262. .spec.install.spec.deployments[].spec.template.spec.initContainers[].lifecycle.postStart

描述
postStart 在容器被创建后立即调用。如果处理程序失败,则容器将根据其重启策略终止并重启。容器块的其他管理,直到 hook 完成为止。更多信息: https://kubernetes.io/docs/concepts/containers/container-lifecycle-hooks/#container-hooks
类型
object
属性类型描述

exec

object

exec 指定要执行的操作。

httpGet

对象

httpGet 指定要执行的 http 请求。

tcpSocket

object

已弃用。tcpSocket 不支持作为 LifecycleHandler,并且保持向后兼容性。指定 tcp 处理程序时,没有此字段的验证和生命周期 hook 将在运行时失败。

3.1.263. .spec.install.spec.deployments[].spec.template.spec.initContainers[].lifecycle.postStart.exec

描述
exec 指定要执行的操作。
类型
object
属性类型描述

命令

数组(字符串)

命令是在容器内执行的命令行,而 命令的工作目录是容器文件系统中的 root ('/')。命令只是 exec'd,它不会在 shell 中运行,因此传统的 shell 指令('|' 等)将无法工作。要使用 shell,您需要明确调用该 shell。0 的退出状态被视为 live/healthy,非零不健康。

3.1.264. .spec.install.spec.deployments[].spec.template.spec.initContainers[].lifecycle.postStart.httpGet

描述
httpGet 指定要执行的 http 请求。
类型
object
必填
  • port
属性类型描述

主机

字符串

要连接到的主机名,默认为 pod IP。您可能想在 httpHeaders 中设置"主机"。

httpHeaders

array

在请求中设置的自定义标头。HTTP 允许重复的标头。

httpHeaders[]

对象

HTTPHeader 描述了在 HTTP 探测中使用的自定义标头

path

字符串

在 HTTP 服务器上访问的路径。

port

integer-or-string

用于访问容器的端口的名称或编号。number 必须在 1 到 65535 之间。名称必须是 IANA_SVC_NAME。

scheme

字符串

用于连接到主机的方案。默认为 HTTP。

3.1.265. .spec.install.spec.deployments[].spec.template.spec.initContainers[].lifecycle.postStart.httpGet.httpHeaders

描述
在请求中设置的自定义标头。HTTP 允许重复的标头。
类型
array

3.1.266. .spec.install.spec.deployments[].spec.template.spec.initContainers[].lifecycle.postStart.httpGet.httpHeaders[]

描述
HTTPHeader 描述了在 HTTP 探测中使用的自定义标头
类型
object
必填
  • name
  • value
属性类型描述

name

string

标头字段名称。这将在输出时规范,因此理解 case-variant 名称与相同的标头一样。

value

字符串

标头字段值

3.1.267. .spec.install.spec.deployments[].spec.template.spec.initContainers[].lifecycle.postStart.tcpSocket

描述
已弃用。tcpSocket 不支持作为 LifecycleHandler,并且保持向后兼容性。指定 tcp 处理程序时,没有此字段的验证和生命周期 hook 将在运行时失败。
类型
object
必填
  • port
属性类型描述

主机

字符串

可选:要连接到的主机名,默认为 pod IP。

port

integer-or-string

用于访问容器的端口的编号或名称。number 必须在 1 到 65535 之间。名称必须是 IANA_SVC_NAME。

3.1.268. .spec.install.spec.deployments[].spec.template.spec.initContainers[].lifecycle.preStop

描述
preStop 在因为 API 请求或管理事件而终止容器前马上调用,如存活度/启动探测失败、抢占、资源争用等。如果容器崩溃或退出,则不会调用处理程序。Pod 的终止宽限期倒计时开始,然后再执行 PreStop hook。无论处理程序的结果是什么,容器最终都会在 Pod 的终止宽限期内终止(除非被终结器造成延迟)。容器的其他管理块直到 hook 完成或直至到达终止宽限期为止。更多信息: https://kubernetes.io/docs/concepts/containers/container-lifecycle-hooks/#container-hooks
类型
object
属性类型描述

exec

object

exec 指定要执行的操作。

httpGet

对象

httpGet 指定要执行的 http 请求。

tcpSocket

object

已弃用。tcpSocket 不支持作为 LifecycleHandler,并且保持向后兼容性。指定 tcp 处理程序时,没有此字段的验证和生命周期 hook 将在运行时失败。

3.1.269. .spec.install.spec.deployments[].spec.template.spec.initContainers[].lifecycle.preStop.exec

描述
exec 指定要执行的操作。
类型
object
属性类型描述

命令

数组(字符串)

命令是在容器内执行的命令行,而 命令的工作目录是容器文件系统中的 root ('/')。命令只是 exec'd,它不会在 shell 中运行,因此传统的 shell 指令('|' 等)将无法工作。要使用 shell,您需要明确调用该 shell。0 的退出状态被视为 live/healthy,非零不健康。

3.1.270. .spec.install.spec.deployments[].spec.template.spec.initContainers[].lifecycle.preStop.httpGet

描述
httpGet 指定要执行的 http 请求。
类型
object
必填
  • port
属性类型描述

主机

字符串

要连接到的主机名,默认为 pod IP。您可能想在 httpHeaders 中设置"主机"。

httpHeaders

array

在请求中设置的自定义标头。HTTP 允许重复的标头。

httpHeaders[]

对象

HTTPHeader 描述了在 HTTP 探测中使用的自定义标头

path

字符串

在 HTTP 服务器上访问的路径。

port

integer-or-string

用于访问容器的端口的名称或编号。number 必须在 1 到 65535 之间。名称必须是 IANA_SVC_NAME。

scheme

字符串

用于连接到主机的方案。默认为 HTTP。

3.1.271. .spec.install.spec.deployments[].spec.template.spec.initContainers[].lifecycle.preStop.httpGet.httpHeaders

描述
在请求中设置的自定义标头。HTTP 允许重复的标头。
类型
array

3.1.272. .spec.install.spec.deployments[].spec.template.spec.initContainers[].lifecycle.preStop.httpGet.httpHeaders[]

描述
HTTPHeader 描述了在 HTTP 探测中使用的自定义标头
类型
object
必填
  • name
  • value
属性类型描述

name

string

标头字段名称。这将在输出时规范,因此理解 case-variant 名称与相同的标头一样。

value

字符串

标头字段值

3.1.273. .spec.install.spec.deployments[].spec.template.spec.initContainers[].lifecycle.preStop.tcpSocket

描述
已弃用。tcpSocket 不支持作为 LifecycleHandler,并且保持向后兼容性。指定 tcp 处理程序时,没有此字段的验证和生命周期 hook 将在运行时失败。
类型
object
必填
  • port
属性类型描述

主机

字符串

可选:要连接到的主机名,默认为 pod IP。

port

integer-or-string

用于访问容器的端口的编号或名称。number 必须在 1 到 65535 之间。名称必须是 IANA_SVC_NAME。

3.1.274. .spec.install.spec.deployments[].spec.template.spec.initContainers[].livenessProbe

描述
容器存活度探测.如果探测失败,容器将重启。无法更新。更多信息: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes
类型
object
属性类型描述

exec

object

exec 指定要执行的操作。

failureThreshold

整数

在成功后,探测被视为失败的最小连续失败。默认值为 3。最小值为 1。

grpc

object

GRPC 指定涉及 GRPC 端口的操作。

httpGet

对象

httpGet 指定要执行的 http 请求。

initialDelaySeconds

整数

容器启动存活度探测前的秒数。更多信息: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes

periodSeconds

整数

执行探测的频率(以秒为单位)。默认值为 10 秒。最小值为 1。

successThreshold

整数

在失败后,探测至少连续成功会被视为成功。默认为 1。对于存活度和启动,必须为 1。最小值为 1。

tcpSocket

对象

tcpSocket 指定涉及 TCP 端口的操作。

terminationGracePeriodSeconds

整数

pod 在探测失败时安全终止所需的可选持续时间(以秒为单位)。宽限期是 pod 中运行的进程发送终止信号和进程被强制停止使用 kill 信号的时间(以秒为单位)。为您的进程设置这个值超过预期清理时间。如果这个值是 nil,则使用 pod 的 terminationGracePeriodSeconds。否则,这个值会覆盖 pod 规格提供的值。值必须是非负整数。值为零表示立即通过终止信号停止(没有关闭的机会)。这是一个 beta 字段,需要启用 ProbeTerminationGracePeriod 功能门。如果未设置,则使用最小值为 1. spec.terminationGracePeriodSeconds。

timeoutSeconds

整数

探测超时的秒数。默认值为 1 秒。最小值为 1。更多信息: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes

3.1.275. .spec.install.spec.deployments[].spec.template.spec.initContainers[].livenessProbe.exec

描述
exec 指定要执行的操作。
类型
object
属性类型描述

命令

数组(字符串)

命令是在容器内执行的命令行,而 命令的工作目录是容器文件系统中的 root ('/')。命令只是 exec'd,它不会在 shell 中运行,因此传统的 shell 指令('|' 等)将无法工作。要使用 shell,您需要明确调用该 shell。0 的退出状态被视为 live/healthy,非零不健康。

3.1.276. .spec.install.spec.deployments[].spec.template.spec.initContainers[].livenessProbe.grpc

描述
GRPC 指定涉及 GRPC 端口的操作。
类型
object
必填
  • port
属性类型描述

port

整数

gRPC 服务的端口号。number 必须在 1 到 65535 之间。

service

string

service 是要放入 gRPC HealthCheckRequest 中的服务名称(请参阅 https://github.com/grpc/grpc/blob/master/doc/health-checking.md)。如果没有指定,则默认行为由 gRPC 定义。

3.1.277. .spec.install.spec.deployments[].spec.template.spec.initContainers[].livenessProbe.httpGet

描述
httpGet 指定要执行的 http 请求。
类型
object
必填
  • port
属性类型描述

主机

字符串

要连接到的主机名,默认为 pod IP。您可能想在 httpHeaders 中设置"主机"。

httpHeaders

array

在请求中设置的自定义标头。HTTP 允许重复的标头。

httpHeaders[]

对象

HTTPHeader 描述了在 HTTP 探测中使用的自定义标头

path

字符串

在 HTTP 服务器上访问的路径。

port

integer-or-string

用于访问容器的端口的名称或编号。number 必须在 1 到 65535 之间。名称必须是 IANA_SVC_NAME。

scheme

字符串

用于连接到主机的方案。默认为 HTTP。

3.1.278. .spec.install.spec.deployments[].spec.template.spec.initContainers[].livenessProbe.httpGet.httpHeaders

描述
在请求中设置的自定义标头。HTTP 允许重复的标头。
类型
array

3.1.279. .spec.install.spec.deployments[].spec.template.spec.initContainers[].livenessProbe.httpGet.httpHeaders[]

描述
HTTPHeader 描述了在 HTTP 探测中使用的自定义标头
类型
object
必填
  • name
  • value
属性类型描述

name

string

标头字段名称。这将在输出时规范,因此理解 case-variant 名称与相同的标头一样。

value

字符串

标头字段值

3.1.280. .spec.install.spec.deployments[].spec.template.spec.initContainers[].livenessProbe.tcpSocket

描述
tcpSocket 指定涉及 TCP 端口的操作。
类型
object
必填
  • port
属性类型描述

主机

字符串

可选:要连接到的主机名,默认为 pod IP。

port

integer-or-string

用于访问容器的端口的编号或名称。number 必须在 1 到 65535 之间。名称必须是 IANA_SVC_NAME。

3.1.281. .spec.install.spec.deployments[].spec.template.spec.initContainers[].ports

描述
从容器公开的端口列表。这里没有指定端口不会阻止公开该端口。所有正在侦听容器内默认"0.0.0.0"地址的端口均可从网络访问。使用策略合并补丁修改阵列可能会破坏数据。如需更多信息,请参阅 https://github.com/kubernetes/kubernetes/issues/108255。无法更新。
类型
array

3.1.282. .spec.install.spec.deployments[].spec.template.spec.initContainers[].ports[]

描述
containerPort 代表单个容器中的网络端口。
类型
object
必填
  • containerPort
属性类型描述

containerPort

整数

pod IP 地址上公开的端口号。这必须是有效的端口号 0 < x < 65536。

hostIP

字符串

将外部端口绑定到的主机 IP。

hostPort

整数

主机上公开的端口号。如果指定,这必须是有效的端口号 0 < x < 65536。如果指定了 HostNetwork,它必须与 ContainerPort 匹配。大多数容器都不需要这样做。

name

字符串

如果指定,这必须是 IANA_SVC_NAME,在 pod 中唯一。pod 中的每个命名端口都必须具有唯一的名称。服务可以引用的端口的名称。

protocol

字符串

端口的协议。必须是 UDP、TCP 或 SCTP。默认为 "TCP"。

3.1.283. .spec.install.spec.deployments[].spec.template.spec.initContainers[].readinessProbe

描述
容器服务的定期探测到就绪状态。如果探测失败,容器将从服务端点中删除。无法更新。更多信息: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes
类型
object
属性类型描述

exec

object

exec 指定要执行的操作。

failureThreshold

整数

在成功后,探测被视为失败的最小连续失败。默认值为 3。最小值为 1。

grpc

object

GRPC 指定涉及 GRPC 端口的操作。

httpGet

对象

httpGet 指定要执行的 http 请求。

initialDelaySeconds

整数

容器启动存活度探测前的秒数。更多信息: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes

periodSeconds

整数

执行探测的频率(以秒为单位)。默认值为 10 秒。最小值为 1。

successThreshold

整数

在失败后,探测至少连续成功会被视为成功。默认为 1。对于存活度和启动,必须为 1。最小值为 1。

tcpSocket

对象

tcpSocket 指定涉及 TCP 端口的操作。

terminationGracePeriodSeconds

整数

pod 在探测失败时安全终止所需的可选持续时间(以秒为单位)。宽限期是 pod 中运行的进程发送终止信号和进程被强制停止使用 kill 信号的时间(以秒为单位)。为您的进程设置这个值超过预期清理时间。如果这个值是 nil,则使用 pod 的 terminationGracePeriodSeconds。否则,这个值会覆盖 pod 规格提供的值。值必须是非负整数。值为零表示立即通过终止信号停止(没有关闭的机会)。这是一个 beta 字段,需要启用 ProbeTerminationGracePeriod 功能门。如果未设置,则使用最小值为 1. spec.terminationGracePeriodSeconds。

timeoutSeconds

整数

探测超时的秒数。默认值为 1 秒。最小值为 1。更多信息: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes

3.1.284. .spec.install.spec.deployments[].spec.template.spec.initContainers[].readinessProbe.exec

描述
exec 指定要执行的操作。
类型
object
属性类型描述

命令

数组(字符串)

命令是在容器内执行的命令行,而 命令的工作目录是容器文件系统中的 root ('/')。命令只是 exec'd,它不会在 shell 中运行,因此传统的 shell 指令('|' 等)将无法工作。要使用 shell,您需要明确调用该 shell。0 的退出状态被视为 live/healthy,非零不健康。

3.1.285. .spec.install.spec.deployments[].spec.template.spec.initContainers[].readinessProbe.grpc

描述
GRPC 指定涉及 GRPC 端口的操作。
类型
object
必填
  • port
属性类型描述

port

整数

gRPC 服务的端口号。number 必须在 1 到 65535 之间。

service

string

service 是要放入 gRPC HealthCheckRequest 中的服务名称(请参阅 https://github.com/grpc/grpc/blob/master/doc/health-checking.md)。如果没有指定,则默认行为由 gRPC 定义。

3.1.286. .spec.install.spec.deployments[].spec.template.spec.initContainers[].readinessProbe.httpGet

描述
httpGet 指定要执行的 http 请求。
类型
object
必填
  • port
属性类型描述

主机

字符串

要连接到的主机名,默认为 pod IP。您可能想在 httpHeaders 中设置"主机"。

httpHeaders

array

在请求中设置的自定义标头。HTTP 允许重复的标头。

httpHeaders[]

对象

HTTPHeader 描述了在 HTTP 探测中使用的自定义标头

path

字符串

在 HTTP 服务器上访问的路径。

port

integer-or-string

用于访问容器的端口的名称或编号。number 必须在 1 到 65535 之间。名称必须是 IANA_SVC_NAME。

scheme

字符串

用于连接到主机的方案。默认为 HTTP。

3.1.287. .spec.install.spec.deployments[].spec.template.spec.initContainers[].readinessProbe.httpGet.httpHeaders

描述
在请求中设置的自定义标头。HTTP 允许重复的标头。
类型
array

3.1.288. .spec.install.spec.deployments[].spec.template.spec.initContainers[].readinessProbe.httpGet.httpHeaders[]

描述
HTTPHeader 描述了在 HTTP 探测中使用的自定义标头
类型
object
必填
  • name
  • value
属性类型描述

name

string

标头字段名称。这将在输出时规范,因此理解 case-variant 名称与相同的标头一样。

value

字符串

标头字段值

3.1.289. .spec.install.spec.deployments[].spec.template.spec.initContainers[].readinessProbe.tcpSocket

描述
tcpSocket 指定涉及 TCP 端口的操作。
类型
object
必填
  • port
属性类型描述

主机

字符串

可选:要连接到的主机名,默认为 pod IP。

port

integer-or-string

用于访问容器的端口的编号或名称。number 必须在 1 到 65535 之间。名称必须是 IANA_SVC_NAME。

3.1.290. .spec.install.spec.deployments[].spec.template.spec.initContainers[].resizePolicy

描述
容器的资源重新定义策略。
类型
数组

3.1.291. .spec.install.spec.deployments[].spec.template.spec.initContainers[].resizePolicy[]

描述
ContainerResizePolicy 代表容器的资源重新定义策略。
类型
object
必填
  • resourceName
  • restartPolicy
属性类型描述

resourceName

string

此资源重新定义策略应用到的资源的名称。支持的值有:cpu、memory。

restartPolicy

string

在指定资源调整大小时,重启策略会被应用。如果没有指定,则默认为 NotRequired。

3.1.292. .spec.install.spec.deployments[].spec.template.spec.initContainers[].resources

描述
此容器所需的计算资源。无法更新。更多信息: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/
类型
object
属性类型描述

声明

数组

claim 列出此容器使用的 spec.resourceClaims 中定义的资源名称。这是一个 alpha 字段,需要启用 DynamicResourceAllocation 功能门。此字段不可变。它只能为容器设置。

claims[]

object

ResourceClaim 引用 PodSpec.ResourceClaims 中的一个条目。

limits

integer-or-string

限制描述了允许的最大计算资源量。更多信息: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/

requests

integer-or-string

Requests 描述了所需的最少计算资源。如果容器省略了 Requests,则默认为 Limits (如果明确指定),否则默认为实现定义的值。请求不能超过限值。更多信息: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/

3.1.293. .spec.install.spec.deployments[].spec.template.spec.initContainers[].resources.claims

描述
claim 列出此容器使用的 spec.resourceClaims 中定义的资源名称。这是一个 alpha 字段,需要启用 DynamicResourceAllocation 功能门。此字段不可变。它只能为容器设置。
类型
数组

3.1.294. .spec.install.spec.deployments[].spec.template.spec.initContainers[].resources.claims[]

描述
ResourceClaim 引用 PodSpec.ResourceClaims 中的一个条目。
类型
object
必填
  • name
属性类型描述

name

string

name 必须与使用此字段的 Pod 的 pod.spec.resourceClaims 中的一个条目的名称匹配。它允许容器内部使用该资源。

3.1.295. .spec.install.spec.deployments[].spec.template.spec.initContainers[].securityContext

描述
securityContext 定义容器应运行的安全选项。如果设置,SecurityContext 的字段会覆盖 PodSecurityContext 的等效字段。更多信息: https://kubernetes.io/docs/tasks/configure-pod-container/security-context/
类型
object
属性类型描述

allowPrivilegeEscalation

布尔值

allowPrivilegeEscalation 控制进程是否可以比其父进程获得更多特权。此 bool 直接控制容器进程上是否设置了 no_new_privs 标志。当容器是 : 1)作为 CAP_SYS_ADMIN 具有 CAP_SYS_ADMIN 时,allowPrivilegeEscalation 始终为 true,请注意,当 spec.os.name 是 windows 时,不能设置此字段。

功能

对象

运行容器时添加/丢弃的功能。默认为容器运行时授予的默认功能集。请注意,当 spec.os.name 是 windows 时无法设置此字段。

privileged

布尔值

以特权模式运行容器。特权容器中的进程本质上等同于主机上的 root。默认为false。请注意,当 spec.os.name 是 windows 时无法设置此字段。

procMount

字符串

procMount 表示用于容器的 proc 挂载类型。默认为 DefaultProcMount,它将容器运行时默认值用于只读路径和屏蔽的路径。这要求启用 ProcMountType 功能标记。请注意,当 spec.os.name 是 windows 时无法设置此字段。

readOnlyRootFilesystem

布尔值

此容器是否具有只读 root 文件系统。默认为 false。请注意,当 spec.os.name 是 windows 时无法设置此字段。

runAsGroup

整数

用于运行容器进程的入口点的 GID。如果未设置,则使用运行时默认。也可以在 PodSecurityContext 中设置。如果在 SecurityContext 和 PodSecurityContext 中设置,则 SecurityContext 中指定的值具有优先权。请注意,当 spec.os.name 是 windows 时无法设置此字段。

runAsNonRoot

布尔值

表示容器必须以非 root 用户身份运行。如果为 true,Kubelet 将在运行时验证镜像,以确保它不作为 UID 0 (root)运行,如果容器这样做,则无法启动容器。如果未设置或 false,则不会执行这样的验证。也可以在 PodSecurityContext 中设置。如果在 SecurityContext 和 PodSecurityContext 中设置,则 SecurityContext 中指定的值具有优先权。

runAsUser

整数

用于运行容器进程的入口点的 UID。如果未指定,则默认为在镜像元数据中指定的用户。也可以在 PodSecurityContext 中设置。如果在 SecurityContext 和 PodSecurityContext 中设置,则 SecurityContext 中指定的值具有优先权。请注意,当 spec.os.name 是 windows 时无法设置此字段。

seLinuxOptions

对象

要应用到容器的 SELinux 上下文。如果未指定,容器运行时将为每个容器分配一个随机 SELinux 上下文。也可以在 PodSecurityContext 中设置。如果在 SecurityContext 和 PodSecurityContext 中设置,则 SecurityContext 中指定的值具有优先权。请注意,当 spec.os.name 是 windows 时无法设置此字段。

seccompProfile

对象

此容器使用的 seccomp 选项。如果 seccomp 选项同时在 pod 和容器级别上提供,则容器选项会覆盖 pod 选项。请注意,当 spec.os.name 是 windows 时无法设置此字段。

windowsOptions

对象

应用到所有容器的 Windows 特定设置。如果未指定,则使用 PodSecurityContext 中的选项。如果在 SecurityContext 和 PodSecurityContext 中设置,则 SecurityContext 中指定的值具有优先权。请注意,当 spec.os.name 是 linux 时,不能设置此字段。

3.1.296. .spec.install.spec.deployments[].spec.template.spec.initContainers[].securityContext.capabilities

描述
运行容器时添加/丢弃的功能。默认为容器运行时授予的默认功能集。请注意,当 spec.os.name 是 windows 时无法设置此字段。
类型
object
属性类型描述

add

数组(字符串)

添加了功能

drop

数组(字符串)

删除的功能

3.1.297. .spec.install.spec.deployments[].spec.template.spec.initContainers[].securityContext.seLinuxOptions

描述
要应用到容器的 SELinux 上下文。如果未指定,容器运行时将为每个容器分配一个随机 SELinux 上下文。也可以在 PodSecurityContext 中设置。如果在 SecurityContext 和 PodSecurityContext 中设置,则 SecurityContext 中指定的值具有优先权。请注意,当 spec.os.name 是 windows 时无法设置此字段。
类型
object
属性类型描述

level

字符串

level 是适用于容器的 SELinux 级别标签。

role

字符串

role 是适用于容器的 SELinux 角色标签。

type

字符串

type 是适用于容器的 SELinux 类型标签。

user

字符串

user 是适用于容器的 SELinux 用户标签。

3.1.298. .spec.install.spec.deployments[].spec.template.spec.initContainers[].securityContext.seccompProfile

描述
此容器使用的 seccomp 选项。如果 seccomp 选项同时在 pod 和容器级别上提供,则容器选项会覆盖 pod 选项。请注意,当 spec.os.name 是 windows 时无法设置此字段。
类型
object
必填
  • type
属性类型描述

localhostProfile

字符串

localhostProfile 表示应使用节点上文件中定义的配置集。该配置集必须在节点上预先配置才能正常工作。必须是一个降序路径,相对于 kubelet 配置的 seccomp 配置集位置。只有 type 为 "Localhost" 时,才应设置。

type

字符串

Type 表示将应用了哪些 seccomp 配置集。有效选项包括: Localhost - 应该使用节点上文件中定义的配置文件。RuntimeDefault - 应使用容器运行时默认配置集。unconfined - 不应应用配置集。

3.1.299. .spec.install.spec.deployments[].spec.template.spec.initContainers[].securityContext.windowsOptions

描述
应用到所有容器的 Windows 特定设置。如果未指定,则使用 PodSecurityContext 中的选项。如果在 SecurityContext 和 PodSecurityContext 中设置,则 SecurityContext 中指定的值具有优先权。请注意,当 spec.os.name 是 linux 时,不能设置此字段。
类型
object
属性类型描述

gmsaCredentialSpec

字符串

GMSACredentialSpec 是 GMSA 准入 Webhook (https://github.com/kubernetes-sigs/windows-gmsa)内联由 GMSACredentialSpec 命名的 GMSA 凭证规格的内容。

gmsaCredentialSpecName

字符串

GMSACredentialSpecName 是要使用的 GMSA 凭证规格的名称。

hostProcess

布尔值

HostProcess 确定容器是否应作为"主机进程"容器运行。此字段是 alpha-level,仅包含启用 WindowsHostProcessContainers 功能标记的组件。在没有功能标记的情况下设置此字段将导致验证 Pod 时出现错误。所有 Pod 的容器都必须具有相同的有效的 HostProcess 值(不允许混合 HostProcess 容器和非主机进程容器)。另外,如果 HostProcess 为 true,则 HostNetwork 也必须设置为 true。

runAsUserName

字符串

Windows 中的 UserName,以运行容器进程的入口点。如果未指定,则默认为在镜像元数据中指定的用户。也可以在 PodSecurityContext 中设置。如果在 SecurityContext 和 PodSecurityContext 中设置,则 SecurityContext 中指定的值具有优先权。

3.1.300. .spec.install.spec.deployments[].spec.template.spec.initContainers[].startupProbe

描述
startupProbe 表示 Pod 已成功初始化。如果指定,则不会执行其他探测,直到成功完成为止。如果这个探测失败,则 Pod 将重启,就像 livenessProbe 失败一样。这可用于在 Pod 生命周期开始时提供不同的探测参数,当可能需要很长时间才能加载数据或温缓存时,而不是在 steady-state 操作过程中提供不同的探测参数。这不能更新。更多信息: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes
类型
object
属性类型描述

exec

object

exec 指定要执行的操作。

failureThreshold

整数

在成功后,探测被视为失败的最小连续失败。默认值为 3。最小值为 1。

grpc

object

GRPC 指定涉及 GRPC 端口的操作。

httpGet

对象

httpGet 指定要执行的 http 请求。

initialDelaySeconds

整数

容器启动存活度探测前的秒数。更多信息: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes

periodSeconds

整数

执行探测的频率(以秒为单位)。默认值为 10 秒。最小值为 1。

successThreshold

整数

在失败后,探测至少连续成功会被视为成功。默认为 1。对于存活度和启动,必须为 1。最小值为 1。

tcpSocket

对象

tcpSocket 指定涉及 TCP 端口的操作。

terminationGracePeriodSeconds

整数

pod 在探测失败时安全终止所需的可选持续时间(以秒为单位)。宽限期是 pod 中运行的进程发送终止信号和进程被强制停止使用 kill 信号的时间(以秒为单位)。为您的进程设置这个值超过预期清理时间。如果这个值是 nil,则使用 pod 的 terminationGracePeriodSeconds。否则,这个值会覆盖 pod 规格提供的值。值必须是非负整数。值为零表示立即通过终止信号停止(没有关闭的机会)。这是一个 beta 字段,需要启用 ProbeTerminationGracePeriod 功能门。如果未设置,则使用最小值为 1. spec.terminationGracePeriodSeconds。

timeoutSeconds

整数

探测超时的秒数。默认值为 1 秒。最小值为 1。更多信息: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes

3.1.301. .spec.install.spec.deployments[].spec.template.spec.initContainers[].startupProbe.exec

描述
exec 指定要执行的操作。
类型
object
属性类型描述

命令

数组(字符串)

命令是在容器内执行的命令行,而 命令的工作目录是容器文件系统中的 root ('/')。命令只是 exec'd,它不会在 shell 中运行,因此传统的 shell 指令('|' 等)将无法工作。要使用 shell,您需要明确调用该 shell。0 的退出状态被视为 live/healthy,非零不健康。

3.1.302. .spec.install.spec.deployments[].spec.template.spec.initContainers[].startupProbe.grpc

描述
GRPC 指定涉及 GRPC 端口的操作。
类型
object
必填
  • port
属性类型描述

port

整数

gRPC 服务的端口号。number 必须在 1 到 65535 之间。

service

string

service 是要放入 gRPC HealthCheckRequest 中的服务名称(请参阅 https://github.com/grpc/grpc/blob/master/doc/health-checking.md)。如果没有指定,则默认行为由 gRPC 定义。

3.1.303. .spec.install.spec.deployments[].spec.template.spec.initContainers[].startupProbe.httpGet

描述
httpGet 指定要执行的 http 请求。
类型
object
必填
  • port
属性类型描述

主机

字符串

要连接到的主机名,默认为 pod IP。您可能想在 httpHeaders 中设置"主机"。

httpHeaders

array

在请求中设置的自定义标头。HTTP 允许重复的标头。

httpHeaders[]

对象

HTTPHeader 描述了在 HTTP 探测中使用的自定义标头

path

字符串

在 HTTP 服务器上访问的路径。

port

integer-or-string

用于访问容器的端口的名称或编号。number 必须在 1 到 65535 之间。名称必须是 IANA_SVC_NAME。

scheme

字符串

用于连接到主机的方案。默认为 HTTP。

3.1.304. .spec.install.spec.deployments[].spec.template.spec.initContainers[].startupProbe.httpGet.httpHeaders

描述
在请求中设置的自定义标头。HTTP 允许重复的标头。
类型
array

3.1.305. .spec.install.spec.deployments[].spec.template.spec.initContainers[].startupProbe.httpGet.httpHeaders[]

描述
HTTPHeader 描述了在 HTTP 探测中使用的自定义标头
类型
object
必填
  • name
  • value
属性类型描述

name

string

标头字段名称。这将在输出时规范,因此理解 case-variant 名称与相同的标头一样。

value

字符串

标头字段值

3.1.306. .spec.install.spec.deployments[].spec.template.spec.initContainers[].startupProbe.tcpSocket

描述
tcpSocket 指定涉及 TCP 端口的操作。
类型
object
必填
  • port
属性类型描述

主机

字符串

可选:要连接到的主机名,默认为 pod IP。

port

integer-or-string

用于访问容器的端口的编号或名称。number 必须在 1 到 65535 之间。名称必须是 IANA_SVC_NAME。

3.1.307. .spec.install.spec.deployments[].spec.template.spec.initContainers[].volumeDevices

描述
volumeDevices 是容器要使用的块设备列表。
类型
array

3.1.308. .spec.install.spec.deployments[].spec.template.spec.initContainers[].volumeDevices[]

描述
volumeDevice 描述了容器中原始块设备的映射。
类型
object
必填
  • devicePath
  • name
属性类型描述

devicePath

字符串

DevicePath 是该设备要映射到的容器内的路径。

name

字符串

name 必须与 pod 中 persistentVolumeClaim 的名称匹配

3.1.309. .spec.install.spec.deployments[].spec.template.spec.initContainers[].volumeMounts

描述
要挂载到容器文件系统的 Pod 卷。无法更新。
类型
array

3.1.310. .spec.install.spec.deployments[].spec.template.spec.initContainers[].volumeMounts[]

描述
VolumeMount 描述了容器内卷挂载。
类型
object
必填
  • mountPath
  • name
属性类型描述

mountPath

字符串

应挂载卷的容器中的路径。不得包含 ':'。

mountPropagation

字符串

mountPropagation 决定挂载如何从主机传播到容器以及反向传播。如果没有设置,则使用 MountPropagationNone。此字段在 1.10 中是 beta。

name

字符串

这必须与卷的 Name 匹配。

readOnly

布尔值

如果为 true,则以只读方式挂载,否则读写(false 或未指定)。默认为false。

subPath

字符串

应从中挂载容器卷的卷中的路径。默认为 "" (卷的 root)。

subPathExpr

字符串

在应该挂载容器卷的卷中扩展路径。行为与 SubPath 类似,但环境变量引用 $(VAR_NAME)使用容器的环境扩展。默认为 "" (卷的 root)。SubPathExpr 和 SubPath 是互斥的。

3.1.311. .spec.install.spec.deployments[].spec.template.spec.os

描述
指定 pod 中容器的操作系统。如果设置了,一些 pod 和容器字段会被限制。如果 OS 字段设为 linux,则必须取消设置以下字段: -securityContext.windowsOptions (如果 OS 字段被设置为 windows),则必须取消设置以下字段: - spec.hostPID - spec.hostIPC - spec.hostUsers - spec.securityContext.seLinuxOptions - spec.securityContext.seccompProfile - spec.securityContext.fsGroup - spec.securityContext.fsGroup - spec.securityContext.fsGroupChangePolicy - spec.securityContext.sysctls - spec.shareProcessNamespace - spec.securityContext.runAsUser - spec.securityContext.runAsGroup - spec.securityContext.supplementalGroups - spec.containers[ ].securityContext.containers[ ].securityContext.seccompProfile - spec.containers[].securityContext.capabilities - spec.containers[[ ].securityContext.readOnlyRootFilesystem - spec.containers[ ].securityContext.privileged - spec.containers[ ].securityContext.allowPrivilegeEscalation - spec.containers[ ].securityContext.procMount - spec.containers[ ].securityContext.runAsUser - spec.containers[*].securityContext.runAsGroup
类型
object
必填
  • name
属性类型描述

name

string

name 是操作系统的名称。当前支持的值有 linux 和 windows。以后可以定义额外的值,可以是: https://github.com/opencontainers/runtime-spec/blob/master/config.md#platform-specific-configuration 客户端应该预期处理额外的值,并将此字段中未识别的值视为 os: null

3.1.312. .spec.install.spec.deployments[].spec.template.spec.readinessGates

描述
如果指定,则会针对 pod 就绪评估所有就绪度。当所有容器都就绪且在就绪的 gates 中指定的所有条件都等于 "True" More info: https://git.k8s.io/enhancements/keps/sig-network/580-pod-readiness-gates时,pod 已就绪: https://git.k8s.io/enhancements/keps/sig-network/580-pod-readiness-gates
类型
array

3.1.313. .spec.install.spec.deployments[].spec.template.spec.readinessGates[]

描述
PodReadinessGate 包含对 pod 条件的引用
类型
object
必填
  • conditionType
属性类型描述

conditionType

字符串

conditionType 指的是 pod 条件列表中具有匹配类型的条件。

3.1.314. .spec.install.spec.deployments[].spec.template.spec.resourceClaims

描述
ResourceClaims 定义在 Pod 允许启动前必须分配和保留哪些 ResourceClaims。资源将提供给那些按名称消耗它们的容器。这是一个 alpha 字段,需要启用 DynamicResourceAllocation 功能门。此字段不可变。
类型
数组

3.1.315. .spec.install.spec.deployments[].spec.template.spec.resourceClaims[]

描述
PodResourceClaim 通过 ClaimSource 只引用一个 ResourceClaim。它添加一个名称,用于唯一标识 Pod 中的 ResourceClaim。需要访问 ResourceClaim 的容器使用此名称来引用它。
类型
object
必填
  • name
属性类型描述

name

string

在 pod 中唯一标识此资源声明的名称。这必须是 DNS_LABEL。

source

object

Source 描述了查找 ResourceClaim 的位置。

3.1.316. .spec.install.spec.deployments[].spec.template.spec.resourceClaims[].source

描述
Source 描述了查找 ResourceClaim 的位置。
类型
object
属性类型描述

resourceClaimName

string

ResourceClaimName 是与这个 pod 相同的命名空间中的 ResourceClaim 对象的名称。

resourceClaimTemplateName

string

ResourceClaimTemplateName 是与这个 pod 相同的命名空间中的 ResourceClaimTemplate 对象的名称。该模板将用于创建新的 ResourceClaim,它将绑定到此容器集。删除此 pod 时,ResourceClaim 也会被删除。ResourceClaim 的名称将是 <pod name>-<resource name>,其中 <resource name> 是 PodResourceClaim.Name。如果串联的名称对 ResourceClaim (例如太长)无效,则 Pod 验证将拒绝 pod。具有名称不归 pod 所有的现有 ResourceClaim 将不会用于 pod,以避免错误地使用不相关的资源。然后,调度和 pod 启动会被阻止,直到删除不相关的 ResourceClaim。此字段不可变,在创建 ResourceClaim 后 control plane 将不会对对应的 ResourceClaim 进行任何更改。

3.1.317. .spec.install.spec.deployments[].spec.template.spec.schedulingGates

描述
SchedulingGates 是不透明的值列表,如果指定,它将阻止调度 pod。如果 schedulingGates 不为空,pod 将保持在 SchedulingGated 状态,调度程序不会尝试调度 pod。SchedulingGates 只能在 pod 创建时设置,之后才能被删除。这是 PodSchedulingReadiness 功能门启用的 beta 功能。
类型
数组

3.1.318. .spec.install.spec.deployments[].spec.template.spec.schedulingGates[]

描述
PodSchedulingGate 与 Pod 关联,以保护其调度。
类型
object
必填
  • name
属性类型描述

name

string

调度最低要求的名称。每个调度最低要求都必须有一个唯一的 name 字段。

3.1.319. .spec.install.spec.deployments[].spec.template.spec.securityContext

描述
securityContext 包含 pod 级别的安全属性和通用容器设置。可选:默认为空。有关每个字段的默认值,请参阅类型描述。
类型
object
属性类型描述

fsGroup

整数

适用于 pod 中所有容器的特殊补充组。有些卷类型允许 Kubelet 将该卷的所有权更改为 pod: 1 所有。拥有的 GID 为 FSGroup 2。设置 setgid 位(卷中创建的新文件将归 FSGroup 所有)3。权限位是 OR'd with rw-rw---- If unset,Kubelet 不会修改任何卷的所有权和权限。请注意,当 spec.os.name 是 windows 时无法设置此字段。

fsGroupChangePolicy

字符串

fsGroupChangePolicy 定义在 Pod 内公开卷之前更改卷的所有权和权限的行为。此字段将只适用于支持基于 fsGroup 的所有权(和权限)的卷类型。它对临时卷类型没有影响,如 secret、configmap 和 emptydir。有效值为 "OnRootMismatch" 和 "Always"。如果没有指定,则使用 "Always"。请注意,当 spec.os.name 是 windows 时无法设置此字段。

runAsGroup

整数

用于运行容器进程的入口点的 GID。如果未设置,则使用运行时默认。还可能会在 SecurityContext 中设置。如果在 SecurityContext 和 PodSecurityContext 中设置,则 SecurityContext 中指定的值优先于该容器。请注意,当 spec.os.name 是 windows 时无法设置此字段。

runAsNonRoot

布尔值

表示容器必须以非 root 用户身份运行。如果为 true,Kubelet 将在运行时验证镜像,以确保它不作为 UID 0 (root)运行,如果容器这样做,则无法启动容器。如果未设置或 false,则不会执行这样的验证。还可能会在 SecurityContext 中设置。如果在 SecurityContext 和 PodSecurityContext 中设置,则 SecurityContext 中指定的值具有优先权。

runAsUser

整数

用于运行容器进程的入口点的 UID。如果未指定,则默认为在镜像元数据中指定的用户。还可能会在 SecurityContext 中设置。如果在 SecurityContext 和 PodSecurityContext 中设置,则 SecurityContext 中指定的值优先于该容器。请注意,当 spec.os.name 是 windows 时无法设置此字段。

seLinuxOptions

对象

要应用到所有容器的 SELinux 上下文。如果未指定,容器运行时将为每个容器分配一个随机 SELinux 上下文。还可能会在 SecurityContext 中设置。如果在 SecurityContext 和 PodSecurityContext 中设置,则 SecurityContext 中指定的值优先于该容器。请注意,当 spec.os.name 是 windows 时无法设置此字段。

seccompProfile

对象

此 pod 中容器使用的 seccomp 选项。请注意,当 spec.os.name 是 windows 时无法设置此字段。

supplementalGroups

数组(整数)

应用到每个容器中的第一个进程的组列表,以及容器的主 GID、fsGroup (如果指定)以及容器镜像中定义的组成员资格,用于容器进程的 uid。如果未指定,则不会将其他组添加到任何容器中。请注意,容器进程的 uid 中定义的组成员资格仍然有效,即使它们没有包含在此列表中。请注意,当 spec.os.name 是 windows 时无法设置此字段。

sysctls

array

sysctl 包含用于 pod 的命名空间 sysctl 列表。带有不支持 sysctl (容器运行时)的 Pod 可能无法启动。请注意,当 spec.os.name 是 windows 时无法设置此字段。

sysctls[]

对象

sysctl 定义要设置的内核参数

windowsOptions

对象

应用到所有容器的 Windows 特定设置。如果未指定,则使用容器的 SecurityContext 中的选项。如果在 SecurityContext 和 PodSecurityContext 中设置,则 SecurityContext 中指定的值具有优先权。请注意,当 spec.os.name 是 linux 时,不能设置此字段。

3.1.320. .spec.install.spec.deployments[].spec.template.spec.securityContext.seLinuxOptions

描述
要应用到所有容器的 SELinux 上下文。如果未指定,容器运行时将为每个容器分配一个随机 SELinux 上下文。还可能会在 SecurityContext 中设置。如果在 SecurityContext 和 PodSecurityContext 中设置,则 SecurityContext 中指定的值优先于该容器。请注意,当 spec.os.name 是 windows 时无法设置此字段。
类型
object
属性类型描述

level

字符串

level 是适用于容器的 SELinux 级别标签。

role

字符串

role 是适用于容器的 SELinux 角色标签。

type

字符串

type 是适用于容器的 SELinux 类型标签。

user

字符串

user 是适用于容器的 SELinux 用户标签。

3.1.321. .spec.install.spec.deployments[].spec.template.spec.securityContext.seccompProfile

描述
此 pod 中容器使用的 seccomp 选项。请注意,当 spec.os.name 是 windows 时无法设置此字段。
类型
object
必填
  • type
属性类型描述

localhostProfile

字符串

localhostProfile 表示应使用节点上文件中定义的配置集。该配置集必须在节点上预先配置才能正常工作。必须是一个降序路径,相对于 kubelet 配置的 seccomp 配置集位置。只有 type 为 "Localhost" 时,才应设置。

type

字符串

Type 表示将应用了哪些 seccomp 配置集。有效选项包括: Localhost - 应该使用节点上文件中定义的配置文件。RuntimeDefault - 应使用容器运行时默认配置集。unconfined - 不应应用配置集。

3.1.322. .spec.install.spec.deployments[].spec.template.spec.securityContext.sysctls

描述
sysctl 包含用于 pod 的命名空间 sysctl 列表。带有不支持 sysctl (容器运行时)的 Pod 可能无法启动。请注意,当 spec.os.name 是 windows 时无法设置此字段。
类型
array

3.1.323. .spec.install.spec.deployments[].spec.template.spec.securityContext.sysctls[]

描述
sysctl 定义要设置的内核参数
类型
object
必填
  • name
  • value
属性类型描述

name

字符串

要设置的属性的名称

value

字符串

要设置的属性值

3.1.324. .spec.install.spec.deployments[].spec.template.spec.securityContext.windowsOptions

描述
应用到所有容器的 Windows 特定设置。如果未指定,则使用容器的 SecurityContext 中的选项。如果在 SecurityContext 和 PodSecurityContext 中设置,则 SecurityContext 中指定的值具有优先权。请注意,当 spec.os.name 是 linux 时,不能设置此字段。
类型
object
属性类型描述

gmsaCredentialSpec

字符串

GMSACredentialSpec 是 GMSA 准入 Webhook (https://github.com/kubernetes-sigs/windows-gmsa)内联由 GMSACredentialSpec 命名的 GMSA 凭证规格的内容。

gmsaCredentialSpecName

字符串

GMSACredentialSpecName 是要使用的 GMSA 凭证规格的名称。

hostProcess

布尔值

HostProcess 确定容器是否应作为"主机进程"容器运行。此字段是 alpha-level,仅包含启用 WindowsHostProcessContainers 功能标记的组件。在没有功能标记的情况下设置此字段将导致验证 Pod 时出现错误。所有 Pod 的容器都必须具有相同的有效的 HostProcess 值(不允许混合 HostProcess 容器和非主机进程容器)。另外,如果 HostProcess 为 true,则 HostNetwork 也必须设置为 true。

runAsUserName

字符串

Windows 中的 UserName,以运行容器进程的入口点。如果未指定,则默认为在镜像元数据中指定的用户。也可以在 PodSecurityContext 中设置。如果在 SecurityContext 和 PodSecurityContext 中设置,则 SecurityContext 中指定的值具有优先权。

3.1.325. .spec.install.spec.deployments[].spec.template.spec.tolerations

描述
如果指定,pod 的容限。
类型
array

3.1.326. .spec.install.spec.deployments[].spec.template.spec.tolerations[]

描述
此 Toleration 附加到 pod,以使用匹配的 operator <operator> 容许与 triple <key,value,effect> 匹配的任何污点。
类型
object
属性类型描述

effect

字符串

effect 表示要匹配的污点效果。空意味着匹配所有污点效果。指定后,允许的值为 NoSchedule,PreferNoSchedule 和 NoExecute。

key

字符串

key 是容限应用到的污点键。empty 表示与所有污点键匹配。如果键为空,则必须存在运算符;组合意味着匹配所有值和所有键。

operator

字符串

Operator 代表键与值的关系。有效的运算符是 Exists 和 Equal。默认值为 Equal。exists 等同于值的通配符,以便 pod 可以容忍特定类别的所有污点。

tolerationSeconds

整数

tolerationSeconds 代表容限的期间(必须生效 NoExecute,否则此字段将被忽略)可以容忍污点。默认情况下,它不会被设置,这意味着容许任何污点(不要驱除)。零值和负值将被视为 0 (立即删除)。

value

字符串

value 是容限匹配的污点值。如果运算符是 Exists,则该值应该为空,否则仅是一个常规字符串。

3.1.327. .spec.install.spec.deployments[].spec.template.spec.topologySpreadConstraints

描述
topologySpreadConstraints 描述了一组如何在拓扑域间分布的 pod。调度程序将按约束来调度 pod。所有 topologySpreadConstraints 都是 AND。
类型
array

3.1.328. .spec.install.spec.deployments[].spec.template.spec.topologySpreadConstraints[]

描述
TopologySpreadConstraint 指定如何在给定的拓扑中分布匹配的 pod。
类型
object
必填
  • maxSkew
  • topologyKey
  • whenUnsatisfiable
属性类型描述

labelSelector

对象

labelSelector 用于查找匹配的 pod。与此标签选择器匹配的 Pod 被计算,以确定其对应拓扑域中的 pod 数量。

matchLabelKeys

数组(字符串)

matchLabelKeys 是一组 pod 标签键,用于选择要在其中计算分布的 pod。这些键用于从传入的 pod 标签中查找值,这些键值标签由 labelSelector 匹配,以选择现有 pod 的组,用于为传入的 pod 计算。匹配键被禁止在 MatchLabelKeys 和 LabelSelector 中。当 LabelSelector 没有设置时,无法设置 matchLabelKeys。传入的 pod 标签中不存在的键将被忽略。null 或空列表表示仅与 labelSelector 匹配。这是一个 beta 字段,需要启用 MatchLabelKeysInPodTopologySpread 功能门(默认启用)。

maxSkew

整数

maxSkew 描述了 pod 可能没有被均匀分布的程度。当 whenUnsatisfiable=DoNotSchedule 时,它是目标拓扑中匹配 pod 数量和全局最小值之间允许的最大区别。如果符合条件的域数量小于 MinDomains,则全局最小值是合格域中匹配 pod 的最小数量。例如,在一个 3 区集群中,MaxSkew 被设置为 1,并且具有与 2/2/1 相同的 labelSelector 的 pod: 在这种情况下,全局最小值为 1。| zone1 | zone2 | zone3 | | P P | P | P | P | P | P | - 如果 MaxSkew 是 1,则传入的 pod 只能调度到 zone3 变为 2/2/2;将它调度到 zone1 (zone2)上,使 ActualSkew (3-1) on zone1 (zone2)违反 MaxSkew (1). - 如果 MaxSkew,则 pod 可以调度到任何区(zone2)。当 whenUnsatisfiable=ScheduleAnyway 时,它用于为满足它的拓扑赋予更高的优先级。这是必填字段。默认值为 1,不允许使用 0。

minDomains

整数

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

string

NodeAffinityPolicy 表示在计算 pod 拓扑分布偏移时,我们将如何处理 Pod 的 nodeAffinity/nodeSelector。选项为:- Honor:只有与 nodeAffinity/nodeSelector 匹配的节点才会包含在计算中。- Ignore: nodeAffinity/nodeSelector 会被忽略。所有节点都包含在计算中。如果这个值是 nil,则行为等同于 Honor 策略。这是 NodeInclusionPolicyInPodTopologySpread 功能默认启用的 beta 级别功能。

nodeTaintsPolicy

string

NodeTaintsPolicy 指示在计算 pod 拓扑分布偏移时如何对待节点污点。选项为:- Honor: 没有污点的节点,以及传入的 pod 具有容限的污点节点。- Ignore: node taint are ignored.所有节点都包括在内。如果这个值是 nil,则行为等同于 Ignore 策略。这是 NodeInclusionPolicyInPodTopologySpread 功能默认启用的 beta 级别功能。

topologyKey

字符串

topologyKey 是节点标签的密钥。带有具有此键和相同值标签的节点被视为在同一拓扑中。我们把每个 <key, value> 视为 "bucket",并尝试将均衡的 pod 数量放在每个存储桶中。我们将域定义为拓扑的特定实例。另外,我们将一个有资格的域定义为节点满足 nodeAffinityPolicy 和 nodeTaintsPolicy 的要求的域。例如,如果 TopologyKey 为 "kubernetes.io/hostname",则每个节点都是该拓扑的域。如果 TopologyKey 是 "topology.kubernetes.io/zone",每个区都是该拓扑的域。这是必填字段。

whenUnsatisfiable

字符串

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)。换句话说,集群仍然可以实现平衡,但调度程序不会使其更不平衡。这是必填字段。

3.1.329. .spec.install.spec.deployments[].spec.template.spec.topologySpreadConstraints[].labelSelector

描述
labelSelector 用于查找匹配的 pod。与此标签选择器匹配的 Pod 被计算,以确定其对应拓扑域中的 pod 数量。
类型
object
属性类型描述

matchExpressions

array

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

matchExpressions[]

对象

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

matchLabels

对象(字符串)

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

3.1.330. .spec.install.spec.deployments[].spec.template.spec.topologySpreadConstraints[].labelSelector.matchExpressions

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

3.1.331. .spec.install.spec.deployments[].spec.template.spec.topologySpreadConstraints[].labelSelector.matchExpressions[]

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

key

字符串

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

operator

字符串

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

数组(字符串)

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

3.1.332. .spec.install.spec.deployments[].spec.template.spec.volumes

描述
可以通过属于 pod 的容器挂载的卷列表。更多信息: https://kubernetes.io/docs/concepts/storage/volumes
类型
array

3.1.333. .spec.install.spec.deployments[].spec.template.spec.volumes[]

描述
卷代表 pod 中的指定卷,可以被 pod 中的任何容器访问。
类型
object
必填
  • name
属性类型描述

awsElasticBlockStore

object

awsElasticBlockStore 代表一个 AWS Disk 资源,附加到 kubelet 的主机机器,然后公开给 pod。更多信息: https://kubernetes.io/docs/concepts/storage/volumes#awselasticblockstore

azureDisk

object

azureDisk 代表主机上的 Azure Data Disk 挂载,并绑定到 pod。

azureFile

object

azureFile 代表主机上的 Azure File Service 挂载,并绑定到 pod。

cephfs

object

CephFS 代表共享 pod 生命周期的主机上的 Ceph FS 挂载

cinder

object

Cinder 代表附加并挂载到 kubelet 主机机器上的 cinder 卷。更多信息: https://examples.k8s.io/mysql-cinder-pd/README.md

configMap

object

ConfigMap 代表应填充此卷的 configMap

csi

object

CSI (Container Storage Interface)代表由特定外部 CSI 驱动程序(Beta 功能)处理的临时存储。

downwardAPI

object

downwardAPI 代表应填充此卷的 pod 的 Downward API

emptyDir

object

emptyDir 代表共享 pod 生命周期的临时目录。更多信息: https://kubernetes.io/docs/concepts/storage/volumes#emptydir

ephemeral

object

ephemeral 代表由集群存储驱动程序处理的卷。卷的生命周期与定义它的 pod 关联 - 将在 pod 启动前创建,并在 pod 被删除时删除。如果 pod 运行(如需要从快照或容量跟踪中恢复)正常卷时,才需要这个卷。c)通过存储类指定存储驱动程序,以及 d)存储驱动程序支持通过 PersistentVolumeClaim 进行动态卷置备(请参阅 EphemeralVolumeSource 以了解有关这个卷类型和 PersistentVolumeClaim 间的连接的更多信息。对于保留的时间超过单个 pod 的生命周期,使用 PersistentVolumeClaim 或特定于供应商的 API 之一。如果使用 CSI 驱动程序,使用 CSI 驱动程序来轻量级本地临时卷 - 如需更多信息,请参阅驱动程序文档。pod 可以同时使用两种类型的临时卷和持久性卷。

fc

object

FC 代表附加到 kubelet 主机机器的光纤通道资源,然后公开给 pod。

flexVolume

object

FlexVolume 代表使用基于 exec 的插件置备的/附加的通用卷资源。

flocker

object

flocker 代表附加到 kubelet 主机机器的 Flocker 卷。这取决于正在运行的 Flocker 控制服务

gcePersistentDisk

object

gcePersistentDisk 代表一个 GCE Disk 资源,该资源附加到 kubelet 的主机机器,然后公开给 pod。更多信息: https://kubernetes.io/docs/concepts/storage/volumes#gcepersistentdisk

gitRepo

object

gitRepo 代表特定修订版本中的 git 存储库。DEPRECATED: GitRepo 已被弃用。要使用 git 存储库置备容器,请将 EmptyDir 挂载到使用 git 克隆存储库的 InitContainer 中,然后将 EmptyDir 挂载到 Pod 的容器中。

glusterfs

object

GlusterFS 代表共享 pod 生命周期的主机上的 Glusterfs 挂载。更多信息: https://examples.k8s.io/volumes/glusterfs/README.md

hostPath

object

hostpath 代表主机机器上直接公开给容器的已存在的文件或目录。这通常用于系统代理或其他允许查看主机机器的特权事情。大多数容器都不需要这样做。更多信息: https://kubernetes.io/docs/concepts/storage/volumes#hostpath -- TODO (jonesdl)我们需要限制哪些人可以使用主机目录挂载,以及谁可以/不能将主机目录挂载为读/写。

iscsi

object

iSCSI 代表附加到 kubelet 主机机器的 ISCSI Disk 资源,然后公开给 pod。更多信息: https://examples.k8s.io/volumes/iscsi/README.md

name

string

卷的名称。必须是 DNS_LABEL,且必须在 pod 中唯一。更多信息: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names

nfs

object

NFS 代表共享 pod 生命周期更多信息的主机上 NFS 挂载: https://kubernetes.io/docs/concepts/storage/volumes#nfs

persistentVolumeClaim

object

persistentVolumeClaimVolumeSource 代表对同一命名空间中的 PersistentVolumeClaim 的引用。更多信息: https://kubernetes.io/docs/concepts/storage/persistent-volumes#persistentvolumeclaims

photonPersistentDisk

object

photonPersistentDisk 代表附加并挂载到 kubelets 主机上的 PhotonController 持久磁盘

portworxVolume

object

portworxVolume 代表附加并挂载到 kubelets 主机上的 portworx 卷

projected

object

一个资源 secret、configmap 和 Downward API 中所有的项目项目

quobyte

object

quobyte 代表共享 pod 生命周期的主机上执行 Quobyte 挂载

rbd

object

RBD 代表共享 pod 生命周期的主机上 Rados 块设备挂载。更多信息: https://examples.k8s.io/volumes/rbd/README.md

scaleIO

object

scaleIO 代表附加并挂载到 Kubernetes 节点上的 ScaleIO 持久性卷。

secret

object

Secret 代表应填充此卷的 secret。更多信息: https://kubernetes.io/docs/concepts/storage/volumes#secret

storageos

object

storageos 代表附加并挂载到 Kubernetes 节点上的 StorageOS 卷。

vsphereVolume

object

vsphereVolume 代表附加并挂载到 kubelets 主机上的 vSphere 卷

3.1.334. .spec.install.spec.deployments[].spec.template.spec.volumes[].awsElasticBlockStore

描述
awsElasticBlockStore 代表一个 AWS Disk 资源,附加到 kubelet 的主机机器,然后公开给 pod。更多信息: https://kubernetes.io/docs/concepts/storage/volumes#awselasticblockstore
类型
object
必填
  • volumeID
属性类型描述

fsType

string

fstype 是您要挂载的卷的文件系统类型。提示: 确保主机操作系统支持文件系统类型。示例:"ext4", "xfs", "ntfs"。如果未指定,则隐式推断为 "ext4"。更多信息: https://kubernetes.io/docs/concepts/storage/volumes#awselasticblockstore TODO:如何防止文件系统中的错误影响机器

分区

整数

partition 是您要挂载的卷中的分区。如果省略,则默认使用卷名称来挂载。示例: 对于卷 /dev/sda1,您可以将分区指定为 "1"。同样,/dev/sda 的卷分区是"0" (或者您可以将属性留空)。

readOnly

布尔值

readonly 值 true 将强制 VolumeMount 中的 readOnly 设置。更多信息: https://kubernetes.io/docs/concepts/storage/volumes#awselasticblockstore

volumeID

string

VolumeId 是 AWS (Amazon EBS 卷)中持久磁盘资源的唯一 ID。更多信息: https://kubernetes.io/docs/concepts/storage/volumes#awselasticblockstore

3.1.335. .spec.install.spec.deployments[].spec.template.spec.volumes[].azureDisk

描述
azureDisk 代表主机上的 Azure Data Disk 挂载,并绑定到 pod。
类型
object
必填
  • diskName
  • diskURI
属性类型描述

cachingMode

string

cachingMode 是主机缓存模式: None、Read Only、Read Write。

diskName

string

diskname 是 blob 存储中的数据磁盘的 Name

diskURI

string

diskURI 是 blob 存储中的数据磁盘的 URI

fsType

string

fstype 是要挂载的 Filesystem 类型。必须是主机操作系统支持的文件系统类型。Ex. "ext4", "xfs", "ntfs".如果未指定,则隐式推断为 "ext4"。

kind

string

kind 预期值为 Shared: 每个存储帐户 Dedicated 有多个 blob 磁盘:每个存储帐户 Managed: azure managed data disk (only on managed availability set). 默认为 shared

readOnly

布尔值

readonly Defaults to false (read/write)。此处的 readonly 将强制 VolumeMount 中的 ReadOnly 设置。

3.1.336. .spec.install.spec.deployments[].spec.template.spec.volumes[].azureFile

描述
azureFile 代表主机上的 Azure File Service 挂载,并绑定到 pod。
类型
object
必填
  • secretName
  • shareName
属性类型描述

readOnly

布尔值

readonly 默认为 false (读/写)。此处的 readonly 将强制 VolumeMount 中的 ReadOnly 设置。

secretName

string

secretName 是包含 Azure Storage Account Name 和 Key 的 secret 名称

shareName

string

sharename 是 azure 共享名称

3.1.337. .spec.install.spec.deployments[].spec.template.spec.volumes[].cephfs

描述
CephFS 代表共享 pod 生命周期的主机上的 Ceph FS 挂载
类型
object
必填
  • monitor
属性类型描述

monitor

数组(字符串)

monitor 是必需的: monitor 是 Ceph 监视器更多信息的集合: https://examples.k8s.io/volumes/cephfs/README.md#how-to-use-it

path

string

路径为可选:作为挂载的 root 使用,而不是完整的 Ceph 树,默认为 /

readOnly

布尔值

readonly 为 Optional: Defaults to false (read/write)。此处的 readonly 将强制 VolumeMount 中的 ReadOnly 设置。更多信息: https://examples.k8s.io/volumes/cephfs/README.md#how-to-use-it

secretFile

string

secretfile 为 Optional: SecretFile 是用户密钥环的路径,默认为 /etc/ceph/user.secret 更多信息 :https://examples.k8s.io/volumes/cephfs/README.md#how-to-use-it

secretRef

object

secretRef 为 Optional: SecretRef 对 User 的身份验证 secret 的引用,默认为空。更多信息: https://examples.k8s.io/volumes/cephfs/README.md#how-to-use-it

user

string

User 是可选的:用户是 rados 用户名,默认为 admin 更多信息: https://examples.k8s.io/volumes/cephfs/README.md#how-to-use-it

3.1.338. .spec.install.spec.deployments[].spec.template.spec.volumes[].cephfs.secretRef

描述
secretRef 为 Optional: SecretRef 对 User 的身份验证 secret 的引用,默认为空。更多信息: https://examples.k8s.io/volumes/cephfs/README.md#how-to-use-it
类型
object
属性类型描述

name

字符串

引用的名称。更多信息: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names TODO: 添加其他有用的字段。apiVersion、kind、uid?

3.1.339. .spec.install.spec.deployments[].spec.template.spec.volumes[].cinder

描述
Cinder 代表附加并挂载到 kubelet 主机机器上的 cinder 卷。更多信息: https://examples.k8s.io/mysql-cinder-pd/README.md
类型
object
必填
  • volumeID
属性类型描述

fsType

string

fstype 是要挂载的文件系统类型。必须是主机操作系统支持的文件系统类型。示例:"ext4", "xfs", "ntfs"。如果未指定,则隐式推断为 "ext4"。更多信息: https://examples.k8s.io/mysql-cinder-pd/README.md

readOnly

布尔值

readonly 默认为 false (读/写)。此处的 readonly 将强制 VolumeMount 中的 ReadOnly 设置。更多信息: https://examples.k8s.io/mysql-cinder-pd/README.md

secretRef

object

secretRef 是可选的:指向包含用于连接到 OpenStack 的参数的 secret 对象。

volumeID

string

用于识别 cinder 中的卷的 VolumeId。更多信息: https://examples.k8s.io/mysql-cinder-pd/README.md

3.1.340. .spec.install.spec.deployments[].spec.template.spec.volumes[].cinder.secretRef

描述
secretRef 是可选的:指向包含用于连接到 OpenStack 的参数的 secret 对象。
类型
object
属性类型描述

name

字符串

引用的名称。更多信息: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names TODO: 添加其他有用的字段。apiVersion、kind、uid?

3.1.341. .spec.install.spec.deployments[].spec.template.spec.volumes[].configMap

描述
ConfigMap 代表应填充此卷的 configMap
类型
object
属性类型描述

defaultMode

整数

defaultMode 是可选的:默认用于在创建的文件上设置权限的模式位。必须是 0000 到 0777 之间的数值,或者 0 到 511 之间的十进制值。YAML 接受八进制和十进制值,JSON 需要模式位的十进制值。默认值为 0644。路径中的目录不受此设置的影响。这可能与影响文件模式的其他选项(如 fsGroup )冲突,结果可以是其他模式位。

items

数组

如果未指定,则引用的 ConfigMap 的 Data 字段中每个键值对将投射到卷中,其名称是键,内容是值。如果指定,列出的键将投射到指定的路径中,并且不会出现未列出的键。如果指定了没有存在于 ConfigMap 中的键,则卷设置将失败,除非标记为可选。路径必须是相对的,且不能包含 '..' 路径,或者以 '..' 开始。

items[]

对象

将字符串键映射到卷中的路径。

name

字符串

引用的名称。更多信息: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names TODO: 添加其他有用的字段。apiVersion、kind、uid?

optional

布尔值

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

3.1.342. .spec.install.spec.deployments[].spec.template.spec.volumes[].configMap.items

描述
如果未指定,则引用的 ConfigMap 的 Data 字段中每个键值对将投射到卷中,其名称是键,内容是值。如果指定,列出的键将投射到指定的路径中,并且不会出现未列出的键。如果指定了没有存在于 ConfigMap 中的键,则卷设置将失败,除非标记为可选。路径必须是相对的,且不能包含 '..' 路径,或者以 '..' 开始。
类型
array

3.1.343. .spec.install.spec.deployments[].spec.template.spec.volumes[].configMap.items[]

描述
将字符串键映射到卷中的路径。
类型
object
必填
  • key
  • path
属性类型描述

key

string

key 是项目的关键。

模式

整数

模式为可选:用于设置此文件权限的模式位。必须是 0000 到 0777 之间的数值,或者 0 到 511 之间的十进制值。YAML 接受八进制和十进制值,JSON 需要模式位的十进制值。如果没有指定,则使用卷 defaultMode。这可能与影响文件模式的其他选项(如 fsGroup )冲突,结果可以是其他模式位。

path

string

path 是将键映射到的文件的相对路径。可能不是绝对路径。不得包含路径元素 '..'。不得以字符串 '..' 开头。

3.1.344. .spec.install.spec.deployments[].spec.template.spec.volumes[].csi

描述
CSI (Container Storage Interface)代表由特定外部 CSI 驱动程序(Beta 功能)处理的临时存储。
类型
object
必填
  • driver
属性类型描述

driver

string

driver 是处理此卷的 CSI 驱动程序的名称。请参考您的 admin,了解集群中注册的正确名称。

fsType

string

要挂载的 fstype。Ex. "ext4", "xfs", "ntfs".如果没有提供,则会将空值传递给关联的 CSI 驱动程序,该驱动程序将决定要应用的默认文件系统。

nodePublishSecretRef

object

nodePublishSecretRef 是包含敏感信息的 secret 对象的引用,以传递给 CSI 驱动程序,以完成 CSI NodePublishVolume 和 NodeUnpublishVolume 调用。此字段是可选的,如果不需要 secret,则可能会为空。如果 secret 对象包含多个 secret,则会传递所有 secret 引用。

readOnly

布尔值

readonly 为卷指定只读配置。默认为 false (读/写)。

volumeAttributes

对象(字符串)

volumeAttributes 存储传递给 CSI 驱动程序的驱动程序特定属性。有关支持的值,请参阅驱动程序的文档。

3.1.345. .spec.install.spec.deployments[].spec.template.spec.volumes[].csi.nodePublishSecretRef

描述
nodePublishSecretRef 是包含敏感信息的 secret 对象的引用,以传递给 CSI 驱动程序,以完成 CSI NodePublishVolume 和 NodeUnpublishVolume 调用。此字段是可选的,如果不需要 secret,则可能会为空。如果 secret 对象包含多个 secret,则会传递所有 secret 引用。
类型
object
属性类型描述

name

字符串

引用的名称。更多信息: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names TODO: 添加其他有用的字段。apiVersion、kind、uid?

3.1.346. .spec.install.spec.deployments[].spec.template.spec.volumes[].downwardAPI

描述
downwardAPI 代表应填充此卷的 pod 的 Downward API
类型
object
属性类型描述

defaultMode

整数

可选:默认在创建的文件上使用模式位。必须是 Optional: 模式位,用于默认对创建的文件设置权限。必须是 0000 到 0777 之间的数值,或者 0 到 511 之间的十进制值。YAML 接受八进制和十进制值,JSON 需要模式位的十进制值。默认值为 0644。路径中的目录不受此设置的影响。这可能与影响文件模式的其他选项(如 fsGroup )冲突,结果可以是其他模式位。

items

array

items 是 Downward API 卷文件的列表

items[]

对象

DownwardAPIVolumeFile 代表创建包含 pod 字段的文件的信息

3.1.347. .spec.install.spec.deployments[].spec.template.spec.volumes[].downwardAPI.items

描述
items 是 Downward API 卷文件的列表
类型
array

3.1.348. .spec.install.spec.deployments[].spec.template.spec.volumes[].downwardAPI.items[]

描述
DownwardAPIVolumeFile 代表创建包含 pod 字段的文件的信息
类型
object
必填
  • path
属性类型描述

fieldRef

对象

必需:选择 pod 的字段:只支持注解、标签、名称和命名空间。

模式

整数

可选:用于设置此文件权限的模式位,必须是 0000 到 0777 之间的数值,或 0 到 511 之间的十进制值。YAML 接受八进制和十进制值,JSON 需要模式位的十进制值。如果没有指定,则使用卷 defaultMode。这可能与影响文件模式的其他选项(如 fsGroup )冲突,结果可以是其他模式位。

path

字符串

必需:Path 是要创建的文件的相对路径名称。不能是绝对的,也不能包含 '..' 路径。必须经过 utf-8 编码。相对路径的第一个项不能以 '..' 开头。

resourceFieldRef

对象

选择容器的资源:目前只支持资源限值和请求(limits.cpu、limits.memory、requests.cpu 和 requests.memory)。

3.1.349. .spec.install.spec.deployments[].spec.template.spec.volumes[].downwardAPI.items[].fieldRef

描述
必需:选择 pod 的字段:只支持注解、标签、名称和命名空间。
类型
object
必填
  • fieldPath
属性类型描述

apiVersion

字符串

模式的版本是按术语编写的 FieldPath,默认为 "v1"。

fieldPath

字符串

在指定 API 版本中选择的字段路径。

3.1.350. .spec.install.spec.deployments[].spec.template.spec.volumes[].downwardAPI.items[].resourceFieldRef

描述
选择容器的资源:目前只支持资源限值和请求(limits.cpu、limits.memory、requests.cpu 和 requests.memory)。
类型
object
必填
  • resource
属性类型描述

containerName

字符串

容器名称:卷需要,对于 env vars是可选的

divisor

integer-or-string

指定公开资源的输出格式,默认为 "1"

resource

字符串

必需:要选择的资源

3.1.351. .spec.install.spec.deployments[].spec.template.spec.volumes[].emptyDir

描述
emptyDir 代表共享 pod 生命周期的临时目录。更多信息: https://kubernetes.io/docs/concepts/storage/volumes#emptydir
类型
object
属性类型描述

string

Medium 代表存储介质类型应支持这个目录。默认值为 "",这意味着使用节点的默认介质。必须是空字符串(默认)或 Memory。更多信息: https://kubernetes.io/docs/concepts/storage/volumes#emptydir

sizeLimit

integer-or-string

sizeLimit 是这个 EmptyDir 卷所需的本地存储总量。大小限制也适用于内存介质。内存用量的最大使用量为此处指定的 SizeLimit 和 pod 中所有容器的内存限值总和。默认值为 nil,这意味着限制未定义。更多信息: https://kubernetes.io/docs/concepts/storage/volumes#emptydir

3.1.352. .spec.install.spec.deployments[].spec.template.spec.volumes[].ephemeral

描述
ephemeral 代表由集群存储驱动程序处理的卷。卷的生命周期与定义它的 pod 关联 - 将在 pod 启动前创建,并在 pod 被删除时删除。如果 pod 运行(如需要从快照或容量跟踪中恢复)正常卷时,才需要这个卷。c)通过存储类指定存储驱动程序,以及 d)存储驱动程序支持通过 PersistentVolumeClaim 进行动态卷置备(请参阅 EphemeralVolumeSource 以了解有关这个卷类型和 PersistentVolumeClaim 间的连接的更多信息。对于保留的时间超过单个 pod 的生命周期,使用 PersistentVolumeClaim 或特定于供应商的 API 之一。如果使用 CSI 驱动程序,使用 CSI 驱动程序来轻量级本地临时卷 - 如需更多信息,请参阅驱动程序文档。pod 可以同时使用两种类型的临时卷和持久性卷。
类型
object
属性类型描述

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。

3.1.353. .spec.install.spec.deployments[].spec.template.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
属性类型描述

metadata

对象

可能包含创建 PVC 时将复制到 PVC 的标签和注解。不允许其他字段,并在验证过程中被拒绝。

spec

对象

PersistentVolumeClaim 的规格。整个内容保持不变复制到从该模板创建的 PVC 中。PersistentVolumeClaim 中与 相同的字段也有效。

3.1.354. .spec.install.spec.deployments[].spec.template.spec.volumes[].ephemeral.volumeClaimTemplate.metadata

描述
可能包含创建 PVC 时将复制到 PVC 的标签和注解。不允许其他字段,并在验证过程中被拒绝。
类型
对象

3.1.355. .spec.install.spec.deployments[].spec.template.spec.volumes[].ephemeral.volumeClaimTemplate.spec

描述
PersistentVolumeClaim 的规格。整个内容保持不变复制到从该模板创建的 PVC 中。PersistentVolumeClaim 中与 相同的字段也有效。
类型
object
属性类型描述

accessModes

数组(字符串)

accessModes 包含卷应具有所需的访问模式。更多信息: https://kubernetes.io/docs/concepts/storage/persistent-volumes#access-modes-1

dataSource

object

Datasource 字段可以用来指定:* 一个现有的 VolumeSnapshot 对象(snapshot.storage.k8s.io/VolumeSnapshot)* 一个现有的 PVC (PersistentVolumeClaim),如果置备程序或外部控制器可以支持指定的数据源,它将基于指定数据源的内容创建一个新卷。当启用 AnyVolumeDataSource 功能门时,dataSource 内容将复制到 dataSourceRef 中,当未指定 dataSourceRef.namespace 时,dataSourceRef 内容将复制到 dataSource 中。如果指定了 namespace,则不会将 dataSourceRef 复制到 dataSource 中。

dataSourceRef

object

如果需要非空卷,则 dataSourceRef 指定要使用数据填充卷的对象。这可以是来自非空 API 组(非核心对象)或 PersistentVolumeClaim 对象的任何对象。当指定对象的类型与某些安装的卷填充或动态置备程序匹配时,卷绑定才会成功。此字段将替换 dataSource 字段的功能,如果两个字段都不是空的,则它们必须具有相同的值。为了向后兼容,当命名空间没有在 dataSourceRef 中指定时,如果其中一个为空,则两个字段(dataSource 和 dataSourceRef)都会自动设置为相同的值,另一个是非空的。当在 dataSourceRef 中指定 namespace 时,dataSource 不设置为相同的值,必须为空。dataSource 和 dataSourceRef 之间有三个重要区别:* While dataSource 只允许两种特定类型的对象,dataSourceRef 允许任何非核心对象,以及 PersistentVolumeClaim 对象。* 虽然 dataSource 忽略了禁止的值(丢弃它们),dataSourceRef 保留所有值,并在指定禁止的值时生成错误。* 虽然 dataSource 只允许本地对象,dataSourceRef 允许任何命名空间中的对象。(beta)使用此字段需要启用 AnyVolumeDataSource 功能门。(alpha)使用 dataSourceRef 的 namespace 字段需要启用 CrossNamespaceVolumeDataSource 功能门。

resources

object

resources 代表卷应具有的最小资源。如果启用了 RecoverVolumeExpansionFailure 功能,用户可以指定小于之前值的资源要求,但仍必须高于声明的 status 字段中记录的容量。更多信息: https://kubernetes.io/docs/concepts/storage/persistent-volumes#resources

selector

object

selector 是要考虑绑定的卷的标签查询。

storageClassName

string

storageClassName 是声明所需的 StorageClass 的名称。更多信息: https://kubernetes.io/docs/concepts/storage/persistent-volumes#class-1

volumeMode

字符串

volumeMode 定义声明需要哪些卷类型。当未包含在 claim spec 中时,文件系统的值会被表示。

volumeName

string

volumeName 是对此声明支持的 PersistentVolume 的绑定引用。

3.1.356. .spec.install.spec.deployments[].spec.template.spec.volumes[].ephemeral.volumeClaimTemplate.spec.dataSource

描述
Datasource 字段可以用来指定:* 一个现有的 VolumeSnapshot 对象(snapshot.storage.k8s.io/VolumeSnapshot)* 一个现有的 PVC (PersistentVolumeClaim),如果置备程序或外部控制器可以支持指定的数据源,它将基于指定数据源的内容创建一个新卷。当启用 AnyVolumeDataSource 功能门时,dataSource 内容将复制到 dataSourceRef 中,当未指定 dataSourceRef.namespace 时,dataSourceRef 内容将复制到 dataSource 中。如果指定了 namespace,则不会将 dataSourceRef 复制到 dataSource 中。
类型
object
必填
  • kind
  • name
属性类型描述

apiGroup

字符串

APIGroup 是所引用资源的组。如果没有指定 APIGroup,则指定的 Kind 必须位于 core API 组中。对于任何其他第三方类型,需要 APIGroup。

kind

字符串

kind 是被引用的资源类型

name

字符串

name 是被引用的资源的名称

3.1.357. .spec.install.spec.deployments[].spec.template.spec.volumes[].ephemeral.volumeClaimTemplate.spec.dataSourceRef

描述
如果需要非空卷,则 dataSourceRef 指定要使用数据填充卷的对象。这可以是来自非空 API 组(非核心对象)或 PersistentVolumeClaim 对象的任何对象。当指定对象的类型与某些安装的卷填充或动态置备程序匹配时,卷绑定才会成功。此字段将替换 dataSource 字段的功能,如果两个字段都不是空的,则它们必须具有相同的值。为了向后兼容,当命名空间没有在 dataSourceRef 中指定时,如果其中一个为空,则两个字段(dataSource 和 dataSourceRef)都会自动设置为相同的值,另一个是非空的。当在 dataSourceRef 中指定 namespace 时,dataSource 不设置为相同的值,必须为空。dataSource 和 dataSourceRef 之间有三个重要区别:* While dataSource 只允许两种特定类型的对象,dataSourceRef 允许任何非核心对象,以及 PersistentVolumeClaim 对象。* 虽然 dataSource 忽略了禁止的值(丢弃它们),dataSourceRef 保留所有值,并在指定禁止的值时生成错误。* 虽然 dataSource 只允许本地对象,dataSourceRef 允许任何命名空间中的对象。(beta)使用此字段需要启用 AnyVolumeDataSource 功能门。(alpha)使用 dataSourceRef 的 namespace 字段需要启用 CrossNamespaceVolumeDataSource 功能门。
类型
object
必填
  • kind
  • name
属性类型描述

apiGroup

字符串

APIGroup 是所引用资源的组。如果没有指定 APIGroup,则指定的 Kind 必须位于 core API 组中。对于任何其他第三方类型,需要 APIGroup。

kind

字符串

kind 是被引用的资源类型

name

字符串

name 是被引用的资源的名称

namespace

string

命名空间是被引用的资源的命名空间,请注意,当指定命名空间时,引用命名空间中需要一个 gateway.networking.k8s.io/ReferenceGrant 对象来允许该命名空间的所有者接受引用。详情请查看 ReferenceGrant 文档。(alpha)此字段需要启用 CrossNamespaceVolumeDataSource 功能门。

3.1.358. .spec.install.spec.deployments[].spec.template.spec.volumes[].ephemeral.volumeClaimTemplate.spec.resources

描述
resources 代表卷应具有的最小资源。如果启用了 RecoverVolumeExpansionFailure 功能,用户可以指定小于之前值的资源要求,但仍必须高于声明的 status 字段中记录的容量。更多信息: https://kubernetes.io/docs/concepts/storage/persistent-volumes#resources
类型
object
属性类型描述

声明

数组

claim 列出此容器使用的 spec.resourceClaims 中定义的资源名称。这是一个 alpha 字段,需要启用 DynamicResourceAllocation 功能门。此字段不可变。它只能为容器设置。

claims[]

object

ResourceClaim 引用 PodSpec.ResourceClaims 中的一个条目。

limits

integer-or-string

限制描述了允许的最大计算资源量。更多信息: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/

requests

integer-or-string

Requests 描述了所需的最少计算资源。如果容器省略了 Requests,则默认为 Limits (如果明确指定),否则默认为实现定义的值。请求不能超过限值。更多信息: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/

3.1.359. .spec.install.spec.deployments[].spec.template.spec.volumes[].ephemeral.volumeClaimTemplate.spec.resources.claims

描述
claim 列出此容器使用的 spec.resourceClaims 中定义的资源名称。这是一个 alpha 字段,需要启用 DynamicResourceAllocation 功能门。此字段不可变。它只能为容器设置。
类型
数组

3.1.360. .spec.install.spec.deployments[].spec.template.spec.volumes[].ephemeral.volumeClaimTemplate.spec.resources.claims[]

描述
ResourceClaim 引用 PodSpec.ResourceClaims 中的一个条目。
类型
object
必填
  • name
属性类型描述

name

string

name 必须与使用此字段的 Pod 的 pod.spec.resourceClaims 中的一个条目的名称匹配。它允许容器内部使用该资源。

3.1.361. .spec.install.spec.deployments[].spec.template.spec.volumes[].ephemeral.volumeClaimTemplate.spec.selector

描述
selector 是要考虑绑定的卷的标签查询。
类型
object
属性类型描述

matchExpressions

array

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

matchExpressions[]

对象

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

matchLabels

对象(字符串)

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

3.1.362. .spec.install.spec.deployments[].spec.template.spec.volumes[].ephemeral.volumeClaimTemplate.spec.selector.matchExpressions

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

3.1.363. .spec.install.spec.deployments[].spec.template.spec.volumes[].ephemeral.volumeClaimTemplate.spec.selector.matchExpressions[]

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

key

字符串

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

operator

字符串

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

数组(字符串)

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

3.1.364. .spec.install.spec.deployments[].spec.template.spec.volumes[].fc

描述
FC 代表附加到 kubelet 主机机器的光纤通道资源,然后公开给 pod。
类型
object
属性类型描述

fsType

string

fstype 是要挂载的文件系统类型。必须是主机操作系统支持的文件系统类型。Ex. "ext4", "xfs", "ntfs".如果未指定,则隐式推断为 "ext4"。TODO:如何防止文件系统中的错误破坏计算机

lun

整数

LUN 是可选的:FC 目标 lun 号

readOnly

布尔值

readonly 为 Optional: Defaults to false (read/write)。此处的 readonly 将强制 VolumeMount 中的 ReadOnly 设置。

targetWWNs

数组(字符串)

targetWWNs 是可选:FC 目标全球名称(WWN)

wwids

数组(字符串)

wwids 可选:FC 卷全局范围标识符(wwids) Either wwids 或 targetWWN 和 lun 的组合必须被设置,但不能同时设置。

3.1.365. .spec.install.spec.deployments[].spec.template.spec.volumes[].flexVolume

描述
FlexVolume 代表使用基于 exec 的插件置备的/附加的通用卷资源。
类型
object
必填
  • driver
属性类型描述

driver

string

driver 是用于此卷的驱动程序的名称。

fsType

string

fstype 是要挂载的文件系统类型。必须是主机操作系统支持的文件系统类型。Ex. "ext4", "xfs", "ntfs".默认文件系统依赖于 FlexVolume 脚本。

options

对象(字符串)

选项为 Optional:此字段包含额外的命令选项(若有)。

readOnly

布尔值

readonly 为 Optional: 默认为 false (读/写)。此处的 readonly 将强制 VolumeMount 中的 ReadOnly 设置。

secretRef

object

secretRef 是 Optional: secretRef 引用了包含敏感信息的 secret 对象,以传递给插件脚本。如果没有指定 secret 对象,这可能为空。如果 secret 对象包含多个 secret,则所有 secret 都会传递给插件脚本。

3.1.366. .spec.install.spec.deployments[].spec.template.spec.volumes[].flexVolume.secretRef

描述
secretRef 是 Optional: secretRef 引用了包含敏感信息的 secret 对象,以传递给插件脚本。如果没有指定 secret 对象,这可能为空。如果 secret 对象包含多个 secret,则所有 secret 都会传递给插件脚本。
类型
object
属性类型描述

name

字符串

引用的名称。更多信息: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names TODO: 添加其他有用的字段。apiVersion、kind、uid?

3.1.367. .spec.install.spec.deployments[].spec.template.spec.volumes[].flocker

描述
flocker 代表附加到 kubelet 主机机器的 Flocker 卷。这取决于正在运行的 Flocker 控制服务
类型
object
属性类型描述

datasetName

string

datasetName 是数据存储为 Flocker dataset 上的 metadata → name 的 Name,应被视为已弃用

datasetUUID

string

datasetUUID 是 dataset 的 UUID。这是 Flocker 数据集的唯一标识符

3.1.368. .spec.install.spec.deployments[].spec.template.spec.volumes[].gcePersistentDisk

描述
gcePersistentDisk 代表一个 GCE Disk 资源,该资源附加到 kubelet 的主机机器,然后公开给 pod。更多信息: https://kubernetes.io/docs/concepts/storage/volumes#gcepersistentdisk
类型
object
必填
  • pdName
属性类型描述

fsType

string

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

string

pdName 是 GCE 中的 PD 资源的唯一名称。用于识别 GCE 中的磁盘。更多信息: https://kubernetes.io/docs/concepts/storage/volumes#gcepersistentdisk

readOnly

布尔值

此处的 readonly 将强制 VolumeMount 中的 ReadOnly 设置。默认为false。更多信息: https://kubernetes.io/docs/concepts/storage/volumes#gcepersistentdisk

3.1.369. .spec.install.spec.deployments[].spec.template.spec.volumes[].gitRepo

描述
gitRepo 代表特定修订版本中的 git 存储库。DEPRECATED: GitRepo 已被弃用。要使用 git 存储库置备容器,请将 EmptyDir 挂载到使用 git 克隆存储库的 InitContainer 中,然后将 EmptyDir 挂载到 Pod 的容器中。
类型
object
必填
  • 软件仓库
属性类型描述

目录

string

directory 是目标目录名称。不得包含或以 '..' 开头。如果提供了 '.',则卷目录将是 git 存储库。否则,如果指定,卷将在带有给定名称的子目录中包含 git 存储库。

软件仓库

string

repository 是 URL

revision

string

revision 是指定修订版本的提交哈希。

3.1.370. .spec.install.spec.deployments[].spec.template.spec.volumes[].glusterfs

描述
GlusterFS 代表共享 pod 生命周期的主机上的 Glusterfs 挂载。更多信息: https://examples.k8s.io/volumes/glusterfs/README.md
类型
object
必填
  • 端点
  • path
属性类型描述

端点

string

Endpoints 是 Glusterfs 拓扑的详细信息的端点名称。更多信息: https://examples.k8s.io/volumes/glusterfs/README.md#create-a-pod

path

string

path 是 Glusterfs 卷路径。更多信息: https://examples.k8s.io/volumes/glusterfs/README.md#create-a-pod

readOnly

布尔值

此处的 readonly 将强制 Glusterfs 卷以只读权限挂载。默认为false。更多信息: https://examples.k8s.io/volumes/glusterfs/README.md#create-a-pod

3.1.371. .spec.install.spec.deployments[].spec.template.spec.volumes[].hostPath

描述
hostpath 代表主机机器上直接公开给容器的已存在的文件或目录。这通常用于系统代理或其他允许查看主机机器的特权事情。大多数容器都不需要这样做。更多信息: https://kubernetes.io/docs/concepts/storage/volumes#hostpath -- TODO (jonesdl)我们需要限制哪些人可以使用主机目录挂载,以及谁可以/不能将主机目录挂载为读/写。
类型
object
必填
  • path
属性类型描述

path

string

主机上目录的路径。如果路径是符号链接,它将遵循指向实际路径的链接。更多信息: https://kubernetes.io/docs/concepts/storage/volumes#hostpath

type

string

HostPath Volume 默认为 "" 更多信息: https://kubernetes.io/docs/concepts/storage/volumes#hostpath

3.1.372. .spec.install.spec.deployments[].spec.template.spec.volumes[].iscsi

描述
iSCSI 代表附加到 kubelet 主机机器的 ISCSI Disk 资源,然后公开给 pod。更多信息: https://examples.k8s.io/volumes/iscsi/README.md
类型
object
必填
  • iqn
  • lun
  • targetPortal
属性类型描述

chapAuthDiscovery

布尔值

chapAuthDiscovery 定义是否支持 iSCSI Discovery CHAP 身份验证

chapAuthSession

布尔值

chapAuthSession 定义是否支持 iSCSI 会话 CHAP 身份验证

fsType

string

fstype 是您要挂载的卷的文件系统类型。提示: 确保主机操作系统支持文件系统类型。示例:"ext4", "xfs", "ntfs"。如果未指定,则隐式推断为 "ext4"。更多信息: https://kubernetes.io/docs/concepts/storage/volumes#iscsi TODO:如何防止文件系统中的错误影响机器

initiatorName

string

initiatorname 是自定义 iSCSI 启动器名称。如果同时使用 iscsiInterface 指定 initiatorName,则会为连接创建新的 iSCSI 接口 <target portal>:<volume name>。

iqn

string

IQN 是目标 iSCSI 限定名称。

iscsiInterface

string

iscsiInterface 是使用 iSCSI 传输的接口名称。默认为 'default'(tcp)。

lun

整数

LUN 表示 iSCSI 目标 Lun 编号。

门户

数组(字符串)

门户是 iSCSI 目标门户列表。如果端口不是默认值(通常为 TCP 端口 860 和 3260),则门户是 IP 或 ip_addr:port。

readOnly

布尔值

此处的 readonly 将强制 VolumeMount 中的 ReadOnly 设置。默认为false。

secretRef

object

secretRef 是 iSCSI 目标和发起方身份验证的 CHAP Secret

targetPortal

string

targetPortal 是 iSCSI 目标门户。如果端口不是默认值(通常为 TCP 端口 860 和 3260),则门户是 IP 或 ip_addr:port。

3.1.373. .spec.install.spec.deployments[].spec.template.spec.volumes[].iscsi.secretRef

描述
secretRef 是 iSCSI 目标和发起方身份验证的 CHAP Secret
类型
object
属性类型描述

name

字符串

引用的名称。更多信息: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names TODO: 添加其他有用的字段。apiVersion、kind、uid?

3.1.374. .spec.install.spec.deployments[].spec.template.spec.volumes[].nfs

描述
NFS 代表共享 pod 生命周期更多信息的主机上 NFS 挂载: https://kubernetes.io/docs/concepts/storage/volumes#nfs
类型
object
必填
  • path
  • server
属性类型描述

path

string

NFS 服务器导出的路径。更多信息: https://kubernetes.io/docs/concepts/storage/volumes#nfs

readOnly

布尔值

此处的只读将强制使用只读权限挂载 NFS 导出。默认为false。更多信息: https://kubernetes.io/docs/concepts/storage/volumes#nfs

server

string

server 是 NFS 服务器的主机名或 IP 地址。更多信息: https://kubernetes.io/docs/concepts/storage/volumes#nfs

3.1.375. .spec.install.spec.deployments[].spec.template.spec.volumes[].persistentVolumeClaim

描述
persistentVolumeClaimVolumeSource 代表对同一命名空间中的 PersistentVolumeClaim 的引用。更多信息: https://kubernetes.io/docs/concepts/storage/persistent-volumes#persistentvolumeclaims
类型
object
必填
  • claimName
属性类型描述

claimName

string

claimName 是与使用这个卷的 pod 相同的命名空间中的 PersistentVolumeClaim 的名称。更多信息: https://kubernetes.io/docs/concepts/storage/persistent-volumes#persistentvolumeclaims

readOnly

布尔值

readonly 将强制 VolumeMount 中的 ReadOnly 设置。默认 false。

3.1.376. .spec.install.spec.deployments[].spec.template.spec.volumes[].photonPersistentDisk

描述
photonPersistentDisk 代表附加并挂载到 kubelets 主机上的 PhotonController 持久磁盘
类型
object
必填
  • pdID
属性类型描述

fsType

string

fstype 是要挂载的文件系统类型。必须是主机操作系统支持的文件系统类型。Ex. "ext4", "xfs", "ntfs".如果未指定,则隐式推断为 "ext4"。

pdID

string

pdID 是标识 Photon Controller 持久磁盘的 ID

3.1.377. .spec.install.spec.deployments[].spec.template.spec.volumes[].portworxVolume

描述
portworxVolume 代表附加并挂载到 kubelets 主机上的 portworx 卷
类型
object
必填
  • volumeID
属性类型描述

fsType

string

fstype 代表要挂载的文件系统类型必须是主机操作系统支持的文件系统类型。Ex. "ext4", "xfs".如果未指定,则隐式推断为 "ext4"。

readOnly

布尔值

readonly 默认为 false (读/写)。此处的 readonly 将强制 VolumeMount 中的 ReadOnly 设置。

volumeID

string

VolumeId 唯一标识 Portworx 卷

3.1.378. .spec.install.spec.deployments[].spec.template.spec.volumes[].projected

描述
一个资源 secret、configmap 和 Downward API 中所有的项目项目
类型
object
属性类型描述

defaultMode

整数

defaultMode 是默认用于在创建的文件上设置权限的模式位。必须是 0000 到 0777 之间的数值,或者 0 到 511 之间的十进制值。YAML 接受八进制和十进制值,JSON 需要模式位的十进制值。路径中的目录不受此设置的影响。这可能与影响文件模式的其他选项(如 fsGroup )冲突,结果可以是其他模式位。

sources

数组

sources 是卷投射列表

sources[]

对象

可投射以及其他支持的卷类型的预测

3.1.379. .spec.install.spec.deployments[].spec.template.spec.volumes[].projected.sources

描述
sources 是卷投射列表
类型
array

3.1.380. .spec.install.spec.deployments[].spec.template.spec.volumes[].projected.sources[]

描述
可投射以及其他支持的卷类型的预测
类型
object
属性类型描述

configMap

object

有关项目的 configMap 数据的 ConfigMap 信息

downwardAPI

object

downwardAPI 有关项目的 downwardAPI 数据的信息

secret

object

有关项目的 secret 数据的 secret 信息

serviceAccountToken

object

serviceAccountToken 是与项目的 serviceAccountToken 数据相关的信息

3.1.381. .spec.install.spec.deployments[].spec.template.spec.volumes[].projected.sources[].configMap

描述
有关项目的 configMap 数据的 ConfigMap 信息
类型
object
属性类型描述

items

数组

如果未指定,则引用的 ConfigMap 的 Data 字段中每个键值对将投射到卷中,其名称是键,内容是值。如果指定,列出的键将投射到指定的路径中,并且不会出现未列出的键。如果指定了没有存在于 ConfigMap 中的键,则卷设置将失败,除非标记为可选。路径必须是相对的,且不能包含 '..' 路径,或者以 '..' 开始。

items[]

对象

将字符串键映射到卷中的路径。

name

字符串

引用的名称。更多信息: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names TODO: 添加其他有用的字段。apiVersion、kind、uid?

optional

布尔值

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

3.1.382. .spec.install.spec.deployments[].spec.template.spec.volumes[].projected.sources[].configMap.items

描述
如果未指定,则引用的 ConfigMap 的 Data 字段中每个键值对将投射到卷中,其名称是键,内容是值。如果指定,列出的键将投射到指定的路径中,并且不会出现未列出的键。如果指定了没有存在于 ConfigMap 中的键,则卷设置将失败,除非标记为可选。路径必须是相对的,且不能包含 '..' 路径,或者以 '..' 开始。
类型
array

3.1.383. .spec.install.spec.deployments[].spec.template.spec.volumes[].projected.sources[].configMap.items[]

描述
将字符串键映射到卷中的路径。
类型
object
必填
  • key
  • path
属性类型描述

key

string

key 是项目的关键。

模式

整数

模式为可选:用于设置此文件权限的模式位。必须是 0000 到 0777 之间的数值,或者 0 到 511 之间的十进制值。YAML 接受八进制和十进制值,JSON 需要模式位的十进制值。如果没有指定,则使用卷 defaultMode。这可能与影响文件模式的其他选项(如 fsGroup )冲突,结果可以是其他模式位。

path

string

path 是将键映射到的文件的相对路径。可能不是绝对路径。不得包含路径元素 '..'。不得以字符串 '..' 开头。

3.1.384. .spec.install.spec.deployments[].spec.template.spec.volumes[].projected.sources[].downwardAPI

描述
downwardAPI 有关项目的 downwardAPI 数据的信息
类型
object
属性类型描述

items

array

items 是 DownwardAPIVolume 文件列表

items[]

对象

DownwardAPIVolumeFile 代表创建包含 pod 字段的文件的信息

3.1.385. .spec.install.spec.deployments[].spec.template.spec.volumes[].projected.sources[].downwardAPI.items

描述
items 是 DownwardAPIVolume 文件列表
类型
array

3.1.386. .spec.install.spec.deployments[].spec.template.spec.volumes[].projected.sources[].downwardAPI.items[]

描述
DownwardAPIVolumeFile 代表创建包含 pod 字段的文件的信息
类型
object
必填
  • path
属性类型描述

fieldRef

对象

必需:选择 pod 的字段:只支持注解、标签、名称和命名空间。

模式

整数

可选:用于设置此文件权限的模式位,必须是 0000 到 0777 之间的数值,或 0 到 511 之间的十进制值。YAML 接受八进制和十进制值,JSON 需要模式位的十进制值。如果没有指定,则使用卷 defaultMode。这可能与影响文件模式的其他选项(如 fsGroup )冲突,结果可以是其他模式位。

path

字符串

必需:Path 是要创建的文件的相对路径名称。不能是绝对的,也不能包含 '..' 路径。必须经过 utf-8 编码。相对路径的第一个项不能以 '..' 开头。

resourceFieldRef

对象

选择容器的资源:目前只支持资源限值和请求(limits.cpu、limits.memory、requests.cpu 和 requests.memory)。

3.1.387. .spec.install.spec.deployments[].spec.template.spec.volumes[].projected.sources[].downwardAPI.items[].fieldRef

描述
必需:选择 pod 的字段:只支持注解、标签、名称和命名空间。
类型
object
必填
  • fieldPath
属性类型描述

apiVersion

字符串

模式的版本是按术语编写的 FieldPath,默认为 "v1"。

fieldPath

字符串

在指定 API 版本中选择的字段路径。

3.1.388. .spec.install.spec.deployments[].spec.template.spec.volumes[].projected.sources[].downwardAPI.items[].resourceFieldRef

描述
选择容器的资源:目前只支持资源限值和请求(limits.cpu、limits.memory、requests.cpu 和 requests.memory)。
类型
object
必填
  • resource
属性类型描述

containerName

字符串

容器名称:卷需要,对于 env vars是可选的

divisor

integer-or-string

指定公开资源的输出格式,默认为 "1"

resource

字符串

必需:要选择的资源

3.1.389. .spec.install.spec.deployments[].spec.template.spec.volumes[].projected.sources[].secret

描述
有关项目的 secret 数据的 secret 信息
类型
object
属性类型描述

items

数组

如果未指定,则引用 Secret 的 Data 字段中的每个键值对将投射到卷中,其名称是键,内容是值。如果指定,列出的键将投射到指定的路径中,并且不会出现未列出的键。如果指定了没有存在于 Secret 中的密钥,则卷设置将出错,除非标记为可选。路径必须是相对的,且不能包含 '..' 路径,或者以 '..' 开始。

items[]

对象

将字符串键映射到卷中的路径。

name

字符串

引用的名称。更多信息: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names TODO: 添加其他有用的字段。apiVersion、kind、uid?

optional

布尔值

可选字段指定是否必须定义 Secret 或其密钥

3.1.390. .spec.install.spec.deployments[].spec.template.spec.volumes[].projected.sources[].secret.items

描述
如果未指定,则引用 Secret 的 Data 字段中的每个键值对将投射到卷中,其名称是键,内容是值。如果指定,列出的键将投射到指定的路径中,并且不会出现未列出的键。如果指定了没有存在于 Secret 中的密钥,则卷设置将出错,除非标记为可选。路径必须是相对的,且不能包含 '..' 路径,或者以 '..' 开始。
类型
array

3.1.391. .spec.install.spec.deployments[].spec.template.spec.volumes[].projected.sources[].secret.items[]

描述
将字符串键映射到卷中的路径。
类型
object
必填
  • key
  • path
属性类型描述

key

string

key 是项目的关键。

模式

整数

模式为可选:用于设置此文件权限的模式位。必须是 0000 到 0777 之间的数值,或者 0 到 511 之间的十进制值。YAML 接受八进制和十进制值,JSON 需要模式位的十进制值。如果没有指定,则使用卷 defaultMode。这可能与影响文件模式的其他选项(如 fsGroup )冲突,结果可以是其他模式位。

path

string

path 是将键映射到的文件的相对路径。可能不是绝对路径。不得包含路径元素 '..'。不得以字符串 '..' 开头。

3.1.392. .spec.install.spec.deployments[].spec.template.spec.volumes[].projected.sources[].serviceAccountToken

描述
serviceAccountToken 是与项目的 serviceAccountToken 数据相关的信息
类型
object
必填
  • path
属性类型描述

受众

string

受众是令牌的预期使用者。令牌的接收者必须使用令牌使用者中指定的标识符来识别其自身,否则应拒绝令牌。受众默认为 apiserver 的标识符。

expirationSeconds

整数

expirationSeconds 是服务帐户令牌的请求的有效期。当令牌接近过期时,kubelet 卷插件会主动轮转服务帐户令牌。如果令牌的时间超过 80%,或者令牌早于 24 小时,则 kubelet 将开始尝试轮转令牌。默认为 1 小时,且必须至少为 10 分钟。

path

string

path 是与文件挂载点相关的路径,用于将令牌放入其中。

3.1.393. .spec.install.spec.deployments[].spec.template.spec.volumes[].quobyte

描述
quobyte 代表共享 pod 生命周期的主机上执行 Quobyte 挂载
类型
object
必填
  • registry
属性类型描述

group

string

将卷访问映射到 Default 的组没有组

readOnly

布尔值

此处的 readonly 将强制使用只读权限挂载 Quobyte 卷。默认为false。

registry

string

registry 代表单个或多个 Quobyte Registry 服务,它指定为 host:port 对(多个条目用逗号分开),它充当卷的中央 registry

tenant

string

在带有动态置备 Quobyte 卷的后端使用中拥有给定 Quobyte 卷的租户,由插件设置

user

string

用户,将卷访问权限映射到 Defaults 到 serivceaccount 用户

string

volume 是按名称引用已创建 Quobyte 卷的字符串。

3.1.394. .spec.install.spec.deployments[].spec.template.spec.volumes[].rbd

描述
RBD 代表共享 pod 生命周期的主机上 Rados 块设备挂载。更多信息: https://examples.k8s.io/volumes/rbd/README.md
类型
object
必填
  • image
  • monitor
属性类型描述

fsType

string

fstype 是您要挂载的卷的文件系统类型。提示: 确保主机操作系统支持文件系统类型。示例:"ext4", "xfs", "ntfs"。如果未指定,则隐式推断为 "ext4"。更多信息: https://kubernetes.io/docs/concepts/storage/volumes#rbd TODO:如何防止文件系统中的错误影响机器

image

string

image 是 rados 镜像名称。更多信息: https://examples.k8s.io/volumes/rbd/README.md#how-to-use-it

keyring

string

keyring 是 RBDUser 的密钥环路径。默认为 /etc/ceph/keyring。更多信息: https://examples.k8s.io/volumes/rbd/README.md#how-to-use-it

monitor

数组(字符串)

monitor 是 Ceph 监视器的集合。更多信息: https://examples.k8s.io/volumes/rbd/README.md#how-to-use-it

pool

string

pool 是 rados 池名称。默认为 rbd。更多信息: https://examples.k8s.io/volumes/rbd/README.md#how-to-use-it

readOnly

布尔值

此处的 readonly 将强制 VolumeMount 中的 ReadOnly 设置。默认为false。更多信息: https://examples.k8s.io/volumes/rbd/README.md#how-to-use-it

secretRef

object

secretRef 是 RBDUser 的身份验证 secret 的名称。如果提供的会覆盖密钥环。默认为 nil。更多信息: https://examples.k8s.io/volumes/rbd/README.md#how-to-use-it

user

string

user 是 rados 用户名。默认为 admin。更多信息: https://examples.k8s.io/volumes/rbd/README.md#how-to-use-it

3.1.395. .spec.install.spec.deployments[].spec.template.spec.volumes[].rbd.secretRef

描述
secretRef 是 RBDUser 的身份验证 secret 的名称。如果提供的会覆盖密钥环。默认为 nil。更多信息: https://examples.k8s.io/volumes/rbd/README.md#how-to-use-it
类型
object
属性类型描述

name

字符串

引用的名称。更多信息: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names TODO: 添加其他有用的字段。apiVersion、kind、uid?

3.1.396. .spec.install.spec.deployments[].spec.template.spec.volumes[].scaleIO

描述
scaleIO 代表附加并挂载到 Kubernetes 节点上的 ScaleIO 持久性卷。
类型
object
必填
  • gateway
  • secretRef
  • system
属性类型描述

fsType

string

fstype 是要挂载的文件系统类型。必须是主机操作系统支持的文件系统类型。Ex. "ext4", "xfs", "ntfs".默认为 "xfs"。

gateway

string

gateway 是 ScaleIO API 网关的主机地址。

protectionDomain

string

protectionDomain 是配置存储的 ScaleIO 保护域的名称。

readOnly

布尔值

readonly Defaults to false (read/write)。此处的 readonly 将强制 VolumeMount 中的 ReadOnly 设置。

secretRef

object

secretRef 引用 ScaleIO 用户和其他敏感信息的 secret。如果没有提供,则登录操作将失败。

sslEnabled

布尔值

sslEnabled Flag 启用/禁用与网关的 SSL 通信,默认为 false

storageMode

string

storageMode 指示卷的存储是否应 ThickProvisioned 或 ThinProvisioned。默认为 ThinProvisioned。

storagePool

string

StoragePool 是与保护域关联的 ScaleIO 存储池。

system

string

system 是 ScaleIO 中配置的存储系统的名称。

volumeName

string

volumeName 是在与这个卷源关联的 ScaleIO 系统中创建的卷的名称。

3.1.397. .spec.install.spec.deployments[].spec.template.spec.volumes[].scaleIO.secretRef

描述
secretRef 引用 ScaleIO 用户和其他敏感信息的 secret。如果没有提供,则登录操作将失败。
类型
object
属性类型描述

name

字符串

引用的名称。更多信息: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names TODO: 添加其他有用的字段。apiVersion、kind、uid?

3.1.398. .spec.install.spec.deployments[].spec.template.spec.volumes[].secret

描述
Secret 代表应填充此卷的 secret。更多信息: https://kubernetes.io/docs/concepts/storage/volumes#secret
类型
object
属性类型描述

defaultMode

整数

defaultMode 是可选:默认用于设置创建文件的权限的模式位。必须是 0000 到 0777 之间的数值,或者 0 到 511 之间的十进制值。YAML 接受八进制和十进制值,JSON 需要模式位的十进制值。默认值为 0644。路径中的目录不受此设置的影响。这可能与影响文件模式的其他选项(如 fsGroup )冲突,结果可以是其他模式位。

items

数组

如果未指定项目,则引用 Secret 的 Data 字段中的每个键值对将投射到卷中,其名称是键,内容是值。如果指定,列出的键将投射到指定的路径中,并且不会出现未列出的键。如果指定了没有存在于 Secret 中的密钥,则卷设置将出错,除非标记为可选。路径必须是相对的,且不能包含 '..' 路径,或者以 '..' 开始。

items[]

对象

将字符串键映射到卷中的路径。

optional

布尔值

可选字段指定是否必须定义 Secret 或其密钥

secretName

string

secretName 是要使用的 pod 命名空间中的 secret 名称。更多信息: https://kubernetes.io/docs/concepts/storage/volumes#secret

3.1.399. .spec.install.spec.deployments[].spec.template.spec.volumes[].secret.items

描述
如果未指定项目,则引用 Secret 的 Data 字段中的每个键值对将投射到卷中,其名称是键,内容是值。如果指定,列出的键将投射到指定的路径中,并且不会出现未列出的键。如果指定了没有存在于 Secret 中的密钥,则卷设置将出错,除非标记为可选。路径必须是相对的,且不能包含 '..' 路径,或者以 '..' 开始。
类型
array

3.1.400. .spec.install.spec.deployments[].spec.template.spec.volumes[].secret.items[]

描述
将字符串键映射到卷中的路径。
类型
object
必填
  • key
  • path
属性类型描述

key

string

key 是项目的关键。

模式

整数

模式为可选:用于设置此文件权限的模式位。必须是 0000 到 0777 之间的数值,或者 0 到 511 之间的十进制值。YAML 接受八进制和十进制值,JSON 需要模式位的十进制值。如果没有指定,则使用卷 defaultMode。这可能与影响文件模式的其他选项(如 fsGroup )冲突,结果可以是其他模式位。

path

string

path 是将键映射到的文件的相对路径。可能不是绝对路径。不得包含路径元素 '..'。不得以字符串 '..' 开头。

3.1.401. .spec.install.spec.deployments[].spec.template.spec.volumes[].storageos

描述
storageos 代表附加并挂载到 Kubernetes 节点上的 StorageOS 卷。
类型
object
属性类型描述

fsType

string

fstype 是要挂载的文件系统类型。必须是主机操作系统支持的文件系统类型。Ex. "ext4", "xfs", "ntfs".如果未指定,则隐式推断为 "ext4"。

readOnly

布尔值

readonly 默认为 false (读/写)。此处的 readonly 将强制 VolumeMount 中的 ReadOnly 设置。

secretRef

object

secretRef 指定用于获取 StorageOS API 凭证的 secret。如果没有指定,则会尝试默认值。

volumeName

string

volumeName 是 StorageOS 卷的人类可读名称。卷名称仅在命名空间中唯一。

volumeNamespace

string

volumeNamespace 指定 StorageOS 中的卷范围。如果没有指定命名空间,则使用 Pod 的命名空间。这允许在 StorageOS 中镜像 Kubernetes 名称进行更紧密的集成。将 VolumeName 设置为任何名称,以覆盖默认的行为。如果没有在 StorageOS 中使用命名空间,则设置为 "default"。将创建在 StorageOS 中没有预先存在的命名空间。

3.1.402. .spec.install.spec.deployments[].spec.template.spec.volumes[].storageos.secretRef

描述
secretRef 指定用于获取 StorageOS API 凭证的 secret。如果没有指定,则会尝试默认值。
类型
object
属性类型描述

name

字符串

引用的名称。更多信息: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names TODO: 添加其他有用的字段。apiVersion、kind、uid?

3.1.403. .spec.install.spec.deployments[].spec.template.spec.volumes[].vsphereVolume

描述
vsphereVolume 代表附加并挂载到 kubelets 主机上的 vSphere 卷
类型
object
必填
  • volumePath
属性类型描述

fsType

string

fstype 是要挂载的文件系统类型。必须是主机操作系统支持的文件系统类型。Ex. "ext4", "xfs", "ntfs".如果未指定,则隐式推断为 "ext4"。

storagePolicyID

string

storagePolicyID 是与 StoragePolicyName 关联的存储策略 Based Management (SPBM)配置集 ID。

storagePolicyName

string

StoragePolicyName 是存储基于策略的管理(SPBM)配置集名称。

volumePath

string

volumePath 是标识 vSphere 卷 vmdk 的路径

3.1.404. .spec.install.spec.permissions

描述
类型
array

3.1.405. .spec.install.spec.permissions[]

描述
StrategyDeploymentPermissions 描述安装策略所需的 rbac 规则和服务帐户
类型
object
必填
  • rules
  • serviceAccountName
属性类型描述

rules

array

 

rules[]

object

PolicyRule 包含描述策略规则的信息,但不包含有关规则应用到谁或规则应用到哪个命名空间的信息。

serviceAccountName

字符串

 

3.1.406. .spec.install.spec.permissions[].rules

描述
类型
array

3.1.407. .spec.install.spec.permissions[].rules[]

描述
PolicyRule 包含描述策略规则的信息,但不包含有关规则应用到谁或规则应用到哪个命名空间的信息。
类型
object
必填
  • verbs
属性类型描述

apiGroups

数组(字符串)

APIGroups 是包含资源的 APIGroup 的名称。如果指定了多个 API 组,则允许针对任何 API 组中的一个枚举资源请求的任何操作。"" 代表核心 API 组,"*"代表所有 API 组。

nonResourceURLs

数组(字符串)

NonResourceURLs 是一组用户应该有权访问的部分 url。OpenShift 被允许,但只作为完整的、最终的步骤在路径 Since 非资源 URL 中不是命名空间,此字段仅适用于从 ClusterRoleBinding 引用的 ClusterRole。规则可以应用到 API 资源(如 "pods" 或 "secrets")或非资源 URL 路径(如 "/api"),但不能同时应用这两个资源。

resourceNames

数组(字符串)

resourceNames 是一个可选的规则应用到的名称白名单。空集表示所有都会被允许。

resources

数组(字符串)

resources 是此规则应用到的资源列表。'*' 代表所有资源。

verbs

数组(字符串)

verbs 是一个 Verbs 列表,适用于此规则中包含的 all ResourceKinds。'*' 代表所有操作动词。

3.1.408. .spec.installModes

描述
InstallModes 指定支持的安装类型
类型
array

3.1.409. .spec.installModes[]

描述
InstallMode 将 InstallModeType 与 CSV 支持代表的标记相关联
类型
object
必填
  • 支持
  • type
属性类型描述

支持

布尔值

 

type

字符串

InstallModeType 是 CSV 安装支持的安装模式类型

3.1.412. .spec.maintainers

描述
维护 Operator 的机构实体列表。
类型
array

3.1.413. .spec.maintainers[]

描述
类型
object
属性类型描述

email

字符串

 

name

字符串

 

3.1.414. .spec.nativeAPIs

描述
类型
array

3.1.415. .spec.nativeAPIs[]

描述
groupversionkind unambiguously 标识 kind。它不匿名包含 GroupVersion 来避免自动协调。它不使用 GroupVersion 来避免自定义 marshalling
类型
object
必填
  • group
  • kind
  • version
属性类型描述

group

字符串

 

kind

字符串

 

version

字符串

 

3.1.416. .spec.provider

描述
Operator 后面的发布实体。
类型
object
属性类型描述

name

字符串

 

url

字符串

 

3.1.417. .spec.relatedImages

描述
列出 Operator 执行其功能可能需要的任何相关镜像或其他容器镜像。此列表还应包含操作对象镜像。所有镜像引用都应通过摘要(SHA)而不是标签指定。此字段仅在目录创建期间使用,并且不在集群运行时使用 play。
类型
array

3.1.418. .spec.relatedImages[]

描述
类型
object
必填
  • image
  • name
属性类型描述

image

字符串

 

name

字符串

 

3.1.419. .spec.selector

描述
相关资源的标签选择器。
类型
object
属性类型描述

matchExpressions

array

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

matchExpressions[]

对象

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

matchLabels

对象(字符串)

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

3.1.420. .spec.selector.matchExpressions

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

3.1.421. .spec.selector.matchExpressions[]

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

key

字符串

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

operator

字符串

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

数组(字符串)

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

3.1.422. .spec.webhookdefinitions

描述
类型
array

3.1.423. .spec.webhookdefinitions[]

描述
WebhookDescription 提供有关所需 webhook 的 OLM 的详情
类型
object
必填
  • admissionReviewVersions
  • generateName
  • sideEffects
  • type
属性类型描述

admissionReviewVersions

数组(字符串)

 

containerPort

整数

 

conversionCRDs

数组(字符串)

 

deploymentName

字符串

 

failurePolicy

字符串

FailurePolicyType 指定一个失败策略,它定义如何处理准入端点中未识别的错误。

generateName

字符串

 

matchPolicy

字符串

MatchPolicyType 指定匹配策略的类型。

objectSelector

对象

标签选择器,即一组资源的标签查询。matchLabels 和 matchExpressions 的逻辑关系是 AND。空标签选择器匹配所有对象。null 标签选择器不匹配任何对象。

reinvocationPolicy

字符串

ReinvocationPolicyType 指定准入 hook 使用的策略类型。

rules

array

 

rules[]

对象

RuleWithOperations 是 Operations 和 Resources 的元组。建议确保所有元组扩展都有效。

sideEffects

字符串

SideEffectClass 指定 Webhook 可能具有的副作用的类型。

targetPort

integer-or-string

 

timeoutSeconds

整数

 

type

字符串

WebhookAdmissionType 是 OLM 支持的准入 webhook 类型

webhookPath

字符串

 

3.1.424. .spec.webhookdefinitions[].objectSelector

描述
标签选择器,即一组资源的标签查询。matchLabels 和 matchExpressions 的逻辑关系是 AND。空标签选择器匹配所有对象。null 标签选择器不匹配任何对象。
类型
object
属性类型描述

matchExpressions

array

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

matchExpressions[]

对象

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

matchLabels

对象(字符串)

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

3.1.425. .spec.webhookdefinitions[].objectSelector.matchExpressions

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

3.1.426. .spec.webhookdefinitions[].objectSelector.matchExpressions[]

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

key

字符串

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

operator

字符串

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

数组(字符串)

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

3.1.427. .spec.webhookdefinitions[].rules

描述
类型
array

3.1.428. .spec.webhookdefinitions[].rules[]

描述
RuleWithOperations 是 Operations 和 Resources 的元组。建议确保所有元组扩展都有效。
类型
object
属性类型描述

apiGroups

数组(字符串)

apiGroups 是资源所属的 API 组。'' 是所有组。如果存在 '',则片段的长度必须是一。必需。

apiVersions

数组(字符串)

APIVersions 是资源所属的 API 版本。'' 是所有版本。如果存在 '',则片段的长度必须是一。必需。

操作

数组(字符串)

操作是准入 hook 为所有操作以及添加的任何准入操作( CREATE、UPDATE、DELETE、CONNECT 或 *)的操作。如果 '*' 存在,则片段的长度必须是一。必需。

资源

数组(字符串)

resources 是一组这个规则应用到的资源列表。例如: 'pods' 表示 pod。'pods/log' 表示 pod 的日志子资源。' ' 表示所有资源,但不是子资源。'pods/' 表示所有 pod 子资源。'/scale' 表示所有 scale 子资源。'Suffix' 表示所有资源及其子资源。如果存在通配符,验证规则将确保资源不会相互重叠。根据封闭对象,可能无法允许子资源。必需。

scope

字符串

scope 指定此规则的范围。有效值为 "Cluster", "Namespaced", 和 "" "Cluster" 表示只有集群范围的资源与此规则匹配。命名空间 API 对象是集群范围的。"namespaced" 表示只有命名空间的资源将与此规则匹配。"" 表示没有范围限制。子资源与其父资源的范围匹配。默认为 "*"。

3.1.429. .status

描述
ClusterServiceVersionStatus 代表 CSV 状态的信息。状态可能会跟踪系统的实际状态。
类型
object
属性类型描述

certsLastUpdated

字符串

拥有的 APIService 证书最后一次更新的时间

certsRotateAt

字符串

拥有的 APIService 证书将在下次轮转的时间

cleanup

对象

CleanupStatus 代表 CSV 等待删除时有关清理状态的信息

conditions

array

条件列表,状态转换的历史记录

conditions[]

对象

条件出现在状态转换中,作为 ClusterServiceVersion 上状态转换的记录

lastTransitionTime

字符串

状态从一个状态转换到另一个状态最后一次的时间。

lastUpdateTime

字符串

我们最后一次更新状态的时间

message

字符串

人类可读的消息,指示 ClusterServiceVersion 的原因。

phase

字符串

ClusterServiceVersion 的当前条件

reason

字符串

简短的 CamelCase 消息显示 ClusterServiceVersion 处于此状态的详细信息,例如:'RequirementsNotMet'

requirementStatus

array

此 CSV 的每个要求的状态

requirementStatus[]

对象

 

3.1.430. .status.cleanup

描述
CleanupStatus 代表 CSV 等待删除时有关清理状态的信息
类型
object
属性类型描述

pendingDeletion

array

pendingDeletion 是正在删除和阻止在终结器中的自定义资源对象列表。这表示阻止 CSV 删除或 Operator 卸载的清理过程。

pendingDeletion[]

对象

ResourceList 代表相同 Group/Kind 的资源列表

3.1.431. .status.cleanup.pendingDeletion

描述
pendingDeletion 是正在删除和阻止在终结器中的自定义资源对象列表。这表示阻止 CSV 删除或 Operator 卸载的清理过程。
类型
array

3.1.432. .status.cleanup.pendingDeletion[]

描述
ResourceList 代表相同 Group/Kind 的资源列表
类型
object
必填
  • group
  • 实例
  • kind
属性类型描述

group

字符串

 

实例

array

 

instances[]

对象

 

kind

字符串

 

3.1.433. .status.cleanup.pendingDeletion[].instances

描述
类型
array

3.1.434. .status.cleanup.pendingDeletion[].instances[]

描述
类型
object
必填
  • name
属性类型描述

name

字符串

 

namespace

字符串

对于集群范围的资源,命名空间可以为空

3.1.435. .status.conditions

描述
条件列表,状态转换的历史记录
类型
array

3.1.436. .status.conditions[]

描述
条件出现在状态转换中,作为 ClusterServiceVersion 上状态转换的记录
类型
object
属性类型描述

lastTransitionTime

字符串

状态从一个状态转换到另一个状态最后一次的时间。

lastUpdateTime

字符串

我们最后一次更新状态的时间

message

字符串

人类可读的消息,指示 ClusterServiceVersion 的原因。

phase

字符串

ClusterServiceVersion 的条件

reason

字符串

简短的 CamelCase 消息显示 ClusterServiceVersion 处于此状态的详细信息,例如:'RequirementsNotMet'

3.1.437. .status.requirementStatus

描述
此 CSV 的每个要求的状态
类型
array

3.1.438. .status.requirementStatus[]

描述
类型
object
必填
  • group
  • kind
  • message
  • name
  • status
  • version
属性类型描述

依赖

array

 

dependents[]

对象

DependentStatus 是依赖要求的状态(防止无限嵌套)

group

字符串

 

kind

字符串

 

message

字符串

 

name

字符串

 

status

字符串

StatusReason 是 RequirementStatus 或 DependentStatus 状态的一个 camelcased reason

uuid

字符串

 

version

字符串

 

3.1.439. .status.requirementStatus[].dependents

描述
类型
array

3.1.440. .status.requirementStatus[].dependents[]

描述
DependentStatus 是依赖要求的状态(防止无限嵌套)
类型
object
必填
  • group
  • kind
  • status
  • version
属性类型描述

group

字符串

 

kind

字符串

 

message

字符串

 

status

字符串

StatusReason 是 RequirementStatus 或 DependentStatus 状态的一个 camelcased reason

uuid

字符串

 

version

字符串

 

3.2. API 端点

可用的 API 端点如下:

  • /apis/operators.coreos.com/v1alpha1/clusterserviceversions

    • GET :列出 ClusterServiceVersion 类型的对象
  • /apis/operators.coreos.com/v1alpha1/namespaces/{namespace}/clusterserviceversions

    • DELETE :删除 ClusterServiceVersion 集合
    • GET :列出 ClusterServiceVersion 类型的对象
    • POST :创建 ClusterServiceVersion
  • /apis/operators.coreos.com/v1alpha1/namespaces/{namespace}/clusterserviceversions/{name}

    • DELETE :删除 ClusterServiceVersion
    • GET :读取指定的 ClusterServiceVersion
    • PATCH: 部分更新指定的 ClusterServiceVersion
    • PUT :替换指定的 ClusterServiceVersion
  • /apis/operators.coreos.com/v1alpha1/namespaces/{namespace}/clusterserviceversions/{name}/status

    • GET :指定 ClusterServiceVersion 的读取状态
    • PATCH: 部分更新指定 ClusterServiceVersion 的状态
    • PUT :替换指定 ClusterServiceVersion 的状态

3.2.1. /apis/operators.coreos.com/v1alpha1/clusterserviceversions

表 3.1. 全局查询参数
参数类型描述

allowWatchBookmarks

布尔值

allowWatchBookmarks请求类型为“BOOKMARK”的监视事件。不实现书签的服务器可能会忽略这个标志和书签,由服务器自由裁量发送。客户端不应假设书签在任何特定间隔返回,也不会假定服务器在会话期间发送任何 BOOKMARK 事件。如果这不是监视,则忽略此字段。

继续

字符串

从服务器检索更多结果时,应设置 continue 选项。由于这个值是定义的服务器,因此客户端只能使用之前查询结果中的 continue 值,并带有相同的查询参数(除 continue 值除外),因此服务器可能会拒绝它无法识别的值。如果指定的 continue 值不再有效,无论是因为过期时间(通常为 5 到十五分钟)还是服务器上的配置更改,服务器将会与继续令牌一起响应 410 ResourceExpired 错误。如果客户端需要一致的列表,它必须重启其列表,而无需 continue 字段。否则,客户端可能会发送另一个带有 410 错误接收的令牌的列表请求,服务器将以从下一个密钥开始开始的列表响应,但从最新的快照开始,这与上一个列表结果中不一致 - 在第一个列表请求后将包含在响应中,只要它们的密钥位于 "next key" 后。

当 watch 为 true 时不支持此字段。客户端可以从服务器返回的最后一个 resourceVersion 值开始监视,而不丢失任何修改。

fieldSelector

字符串

一个选择器,用于限制其字段返回的对象列表。默认为任何内容。

labelSelector

字符串

一个选择器,用于限制其标签返回的对象列表。默认为任何内容。

limit

整数

limit 是列表调用返回的最大响应数。如果存在更多项目,服务器会将列表元数据上的 continue 字段设置为可用于同一初始查询的值,以检索下一个结果集合。如果过滤所有请求的对象,则设置限制可能会返回少于请求项目数量(最多为零项),并且客户端只应使用 continue 字段的存在,以确定是否有更多结果可用。服务器可能会选择不支持 limit 参数,并返回所有可用的结果。如果指定了 limit,并且 continue 字段为空,客户端可能会假定没有更多结果可用。如果 watch 为 true,则不支持此字段。

服务器保证,在使用时返回的对象将与在没有限制限制的情况下发出单个列表调用相同 - 也就是说,在发出第一个请求后没有创建、修改或删除对象。这有时被称为一致的快照,并确保使用限制来接收非常大结果的较小的块的客户端可确保它们看到所有可能的对象。如果在块列表中更新对象,则返回第一个列表结果时存在的对象版本。

pretty

字符串

如果为 'true',则输出会经过 pretty print 处理。

resourceVersion

字符串

resourceVersion 对可能给请求提供服务的资源版本设置一个约束。详情请查看 https://kubernetes.io/docs/reference/using-api/api-concepts/#resource-versions

默认为未设置

resourceVersionMatch

字符串

resourceVersionMatch 决定如何将 resourceVersion 应用到列表调用。强烈建议您为设置 resourceVersion 的 list 调用设置 resourceVersionMatch。详情请参阅 https://kubernetes.io/docs/reference/using-api/api-concepts/#resource-versions

默认为未设置

sendInitialEvents

布尔值

sendInitialEvents=true 可以和 watch=true 一起设置。在这种情况下,观察流将以复合事件开头,以生成集合中对象的当前状态。发送完所有这些事件后,将发送合成"Bookmark"事件。书签将报告与对象集合对应的 ResourceVersion (RV),并使用 "k8s.io/initial-events-end": "true" 注解进行标记。之后,监视流将照常进行,从而向监视的对象发送与更改对应的监视事件(按 RV 排序)。

当设置 sendInitialEvents 选项时,我们还需要设置 resourceVersionMatch 选项。监控请求的语义如下: - resourceVersionMatch = NotOlderThan 解释为"数据至少为提供的 resourceVersion'",当状态同步到 'resourceVersion 时,如果状态同步到 ListOptions 提供的 'resourceVersion 时,会发送书签事件。如果未设置 resourceVersion,则这被解释为"consistent read",当请求开始处理时,将发送书签事件。- resourceVersionMatch 设置为任何其他值或未设置 Invalid 错误。

如果 resourceVersion=""resourceVersion="0" (出于向后兼容原因)和 false,则默认为 true。

timeoutSeconds

整数

列表/watch 调用的超时。这限制了调用的持续时间,无论任何活动或不活跃。

watch

布尔值

观察对所描述资源的更改,并将它们作为添加、更新和删除通知的流返回。指定 resourceVersion。

HTTP 方法
GET
描述
列出 ClusterServiceVersion 类型的对象
表 3.2. HTTP 响应
HTTP 代码响应正文

200 - OK

ClusterServiceVersionList schema

401 - Unauthorized

3.2.2. /apis/operators.coreos.com/v1alpha1/namespaces/{namespace}/clusterserviceversions

表 3.3. 全局路径参数
参数类型描述

namespace

字符串

对象名称和身份验证范围,如团队(team)和项目(project)

表 3.4. 全局查询参数
参数类型描述

pretty

字符串

如果为 'true',则输出会经过 pretty print 处理。

HTTP 方法
DELETE
描述
删除 ClusterServiceVersion 集合
表 3.5. 查询参数
参数类型描述

allowWatchBookmarks

布尔值

allowWatchBookmarks请求类型为“BOOKMARK”的监视事件。不实现书签的服务器可能会忽略这个标志和书签,由服务器自由裁量发送。客户端不应假设书签在任何特定间隔返回,也不会假定服务器在会话期间发送任何 BOOKMARK 事件。如果这不是监视,则忽略此字段。

继续

字符串

从服务器检索更多结果时,应设置 continue 选项。由于这个值是定义的服务器,因此客户端只能使用之前查询结果中的 continue 值,并带有相同的查询参数(除 continue 值除外),因此服务器可能会拒绝它无法识别的值。如果指定的 continue 值不再有效,无论是因为过期时间(通常为 5 到十五分钟)还是服务器上的配置更改,服务器将会与继续令牌一起响应 410 ResourceExpired 错误。如果客户端需要一致的列表,它必须重启其列表,而无需 continue 字段。否则,客户端可能会发送另一个带有 410 错误接收的令牌的列表请求,服务器将以从下一个密钥开始开始的列表响应,但从最新的快照开始,这与上一个列表结果中不一致 - 在第一个列表请求后将包含在响应中,只要它们的密钥位于 "next key" 后。

当 watch 为 true 时不支持此字段。客户端可以从服务器返回的最后一个 resourceVersion 值开始监视,而不丢失任何修改。

fieldSelector

字符串

一个选择器,用于限制其字段返回的对象列表。默认为任何内容。

labelSelector

字符串

一个选择器,用于限制其标签返回的对象列表。默认为任何内容。

limit

整数

limit 是列表调用返回的最大响应数。如果存在更多项目,服务器会将列表元数据上的 continue 字段设置为可用于同一初始查询的值,以检索下一个结果集合。如果过滤所有请求的对象,则设置限制可能会返回少于请求项目数量(最多为零项),并且客户端只应使用 continue 字段的存在,以确定是否有更多结果可用。服务器可能会选择不支持 limit 参数,并返回所有可用的结果。如果指定了 limit,并且 continue 字段为空,客户端可能会假定没有更多结果可用。如果 watch 为 true,则不支持此字段。

服务器保证,在使用时返回的对象将与在没有限制限制的情况下发出单个列表调用相同 - 也就是说,在发出第一个请求后没有创建、修改或删除对象。这有时被称为一致的快照,并确保使用限制来接收非常大结果的较小的块的客户端可确保它们看到所有可能的对象。如果在块列表中更新对象,则返回第一个列表结果时存在的对象版本。

resourceVersion

字符串

resourceVersion 对可能给请求提供服务的资源版本设置一个约束。详情请查看 https://kubernetes.io/docs/reference/using-api/api-concepts/#resource-versions

默认为未设置

resourceVersionMatch

字符串

resourceVersionMatch 决定如何将 resourceVersion 应用到列表调用。强烈建议您为设置 resourceVersion 的 list 调用设置 resourceVersionMatch。详情请参阅 https://kubernetes.io/docs/reference/using-api/api-concepts/#resource-versions

默认为未设置

sendInitialEvents

布尔值

sendInitialEvents=true 可以和 watch=true 一起设置。在这种情况下,观察流将以复合事件开头,以生成集合中对象的当前状态。发送完所有这些事件后,将发送合成"Bookmark"事件。书签将报告与对象集合对应的 ResourceVersion (RV),并使用 "k8s.io/initial-events-end": "true" 注解进行标记。之后,监视流将照常进行,从而向监视的对象发送与更改对应的监视事件(按 RV 排序)。

当设置 sendInitialEvents 选项时,我们还需要设置 resourceVersionMatch 选项。监控请求的语义如下: - resourceVersionMatch = NotOlderThan 解释为"数据至少为提供的 resourceVersion'",当状态同步到 'resourceVersion 时,如果状态同步到 ListOptions 提供的 'resourceVersion 时,会发送书签事件。如果未设置 resourceVersion,则这被解释为"consistent read",当请求开始处理时,将发送书签事件。- resourceVersionMatch 设置为任何其他值或未设置 Invalid 错误。

如果 resourceVersion=""resourceVersion="0" (出于向后兼容原因)和 false,则默认为 true。

timeoutSeconds

整数

列表/watch 调用的超时。这限制了调用的持续时间,无论任何活动或不活跃。

watch

布尔值

观察对所描述资源的更改,并将它们作为添加、更新和删除通知的流返回。指定 resourceVersion。

表 3.6. HTTP 响应
HTTP 代码响应正文

200 - OK

Status 模式

401 - Unauthorized

HTTP 方法
GET
描述
列出 ClusterServiceVersion 类型的对象
表 3.7. 查询参数
参数类型描述

allowWatchBookmarks

布尔值

allowWatchBookmarks请求类型为“BOOKMARK”的监视事件。不实现书签的服务器可能会忽略这个标志和书签,由服务器自由裁量发送。客户端不应假设书签在任何特定间隔返回,也不会假定服务器在会话期间发送任何 BOOKMARK 事件。如果这不是监视,则忽略此字段。

继续

字符串

从服务器检索更多结果时,应设置 continue 选项。由于这个值是定义的服务器,因此客户端只能使用之前查询结果中的 continue 值,并带有相同的查询参数(除 continue 值除外),因此服务器可能会拒绝它无法识别的值。如果指定的 continue 值不再有效,无论是因为过期时间(通常为 5 到十五分钟)还是服务器上的配置更改,服务器将会与继续令牌一起响应 410 ResourceExpired 错误。如果客户端需要一致的列表,它必须重启其列表,而无需 continue 字段。否则,客户端可能会发送另一个带有 410 错误接收的令牌的列表请求,服务器将以从下一个密钥开始开始的列表响应,但从最新的快照开始,这与上一个列表结果中不一致 - 在第一个列表请求后将包含在响应中,只要它们的密钥位于 "next key" 后。

当 watch 为 true 时不支持此字段。客户端可以从服务器返回的最后一个 resourceVersion 值开始监视,而不丢失任何修改。

fieldSelector

字符串

一个选择器,用于限制其字段返回的对象列表。默认为任何内容。

labelSelector

字符串

一个选择器,用于限制其标签返回的对象列表。默认为任何内容。

limit

整数

limit 是列表调用返回的最大响应数。如果存在更多项目,服务器会将列表元数据上的 continue 字段设置为可用于同一初始查询的值,以检索下一个结果集合。如果过滤所有请求的对象,则设置限制可能会返回少于请求项目数量(最多为零项),并且客户端只应使用 continue 字段的存在,以确定是否有更多结果可用。服务器可能会选择不支持 limit 参数,并返回所有可用的结果。如果指定了 limit,并且 continue 字段为空,客户端可能会假定没有更多结果可用。如果 watch 为 true,则不支持此字段。

服务器保证,在使用时返回的对象将与在没有限制限制的情况下发出单个列表调用相同 - 也就是说,在发出第一个请求后没有创建、修改或删除对象。这有时被称为一致的快照,并确保使用限制来接收非常大结果的较小的块的客户端可确保它们看到所有可能的对象。如果在块列表中更新对象,则返回第一个列表结果时存在的对象版本。

resourceVersion

字符串

resourceVersion 对可能给请求提供服务的资源版本设置一个约束。详情请查看 https://kubernetes.io/docs/reference/using-api/api-concepts/#resource-versions

默认为未设置

resourceVersionMatch

字符串

resourceVersionMatch 决定如何将 resourceVersion 应用到列表调用。强烈建议您为设置 resourceVersion 的 list 调用设置 resourceVersionMatch。详情请参阅 https://kubernetes.io/docs/reference/using-api/api-concepts/#resource-versions

默认为未设置

sendInitialEvents

布尔值

sendInitialEvents=true 可以和 watch=true 一起设置。在这种情况下,观察流将以复合事件开头,以生成集合中对象的当前状态。发送完所有这些事件后,将发送合成"Bookmark"事件。书签将报告与对象集合对应的 ResourceVersion (RV),并使用 "k8s.io/initial-events-end": "true" 注解进行标记。之后,监视流将照常进行,从而向监视的对象发送与更改对应的监视事件(按 RV 排序)。

当设置 sendInitialEvents 选项时,我们还需要设置 resourceVersionMatch 选项。监控请求的语义如下: - resourceVersionMatch = NotOlderThan 解释为"数据至少为提供的 resourceVersion'",当状态同步到 'resourceVersion 时,如果状态同步到 ListOptions 提供的 'resourceVersion 时,会发送书签事件。如果未设置 resourceVersion,则这被解释为"consistent read",当请求开始处理时,将发送书签事件。- resourceVersionMatch 设置为任何其他值或未设置 Invalid 错误。

如果 resourceVersion=""resourceVersion="0" (出于向后兼容原因)和 false,则默认为 true。

timeoutSeconds

整数

列表/watch 调用的超时。这限制了调用的持续时间,无论任何活动或不活跃。

watch

布尔值

观察对所描述资源的更改,并将它们作为添加、更新和删除通知的流返回。指定 resourceVersion。

表 3.8. HTTP 响应
HTTP 代码响应正文

200 - OK

ClusterServiceVersionList schema

401 - Unauthorized

HTTP 方法
POST
描述
创建 ClusterServiceVersion
表 3.9. 查询参数
参数类型描述

dryRun

字符串

出现时,表示不应保留修改。无效的或未被识别的 dryRun 指令将导致错误响应,且请求不会被进一步处理。有效值为: - All: 所有预演阶段都将被处理

fieldManager

字符串

fieldmanager 是与进行这些更改的参与者或实体相关联的名称。该值必须小于或是 128 个字符长,且仅包含可打印的字符,如 https://golang.org/pkg/unicode/#IsPrint 所定义的那样。

fieldValidation

string

fieldValidation 指示服务器如何处理包含了未知或重复字段的请求 (POST/PUT/PATCH) 中的对象。有效值为: - Ignore :忽略从对象中静默丢弃的未知字段,并将忽略所有除最后一个重复字段以外的所有字段。这是 v1.23 版本之前的默认行为- Warn: 这会通过标准的警告响应头为从对象丢弃的每个未知字段以及遇到的每个重复字段,发送警告。如果没有其他错误,请求仍会成功,且只保留重复字段的最后一个。这是 v1.23+ 的的默认行为 - Strict: 如果从对象中删除了任何未知字段,或者存在任何重复字段,请求将失败并带有 BadRequest 错误。从服务器返回的错误将包含遇到的,以及重复的字段。

表 3.10. 主体参数
参数类型描述

正文(body)

ClusterServiceVersion 模式

 
表 3.11. HTTP 响应
HTTP 代码响应正文

200 - OK

ClusterServiceVersion 模式

201 - Created

ClusterServiceVersion 模式

202 - Accepted

ClusterServiceVersion 模式

401 - Unauthorized

3.2.3. /apis/operators.coreos.com/v1alpha1/namespaces/{namespace}/clusterserviceversions/{name}

表 3.12. 全局路径参数
参数类型描述

name

字符串

ClusterServiceVersion 的名称

namespace

字符串

对象名称和身份验证范围,如团队(team)和项目(project)

表 3.13. 全局查询参数
参数类型描述

pretty

字符串

如果为 'true',则输出会经过 pretty print 处理。

HTTP 方法
DELETE
描述
删除 ClusterServiceVersion
表 3.14. 查询参数
参数类型描述

dryRun

字符串

出现时,表示不应保留修改。无效的或未被识别的 dryRun 指令将导致错误响应,且请求不会被进一步处理。有效值为: - All: 所有预演阶段都将被处理

gracePeriodSeconds

整数

应该删除对象前的持续时间(以秒为单位)。值必须是非负整数。值为零表示立即删除。如果这个值是 nil,则会使用指定类型的默认宽限期。如果没有指定,则默认为每个对象值。零表示立即删除。

orphanDependents

布尔值

弃用:请使用 PropagationPolicy,此字段将在 1.7 中弃用。如果依赖对象是孤立的。如果为 true/false,则 "orphan" finalizer 将添加到对象的终结器列表中。可以设置此字段或 PropagationPolicy,但不能同时设置。

propagationPolicy

字符串

是否执行垃圾回收。可以设置此字段或 OrphanDependents,但不能同时设置两者。默认策略由 metadata.finalizers 和特定于资源的默认策略中设置的现有终结器决定。可接受的值有: 'Orphan' - 孤立的依赖项; 'Background' - 允许垃圾收集器删除依赖项,"Foreground' - 删除前台所有依赖的级联策略。

表 3.15. 主体参数
参数类型描述

正文(body)

DeleteOptions 模式

 
表 3.16. HTTP 响应
HTTP 代码响应正文

200 - OK

Status 模式

202 - Accepted

Status 模式

401 - Unauthorized

HTTP 方法
GET
描述
阅读指定的 ClusterServiceVersion
表 3.17. 查询参数
参数类型描述

resourceVersion

字符串

resourceVersion 对可能给请求提供服务的资源版本设置一个约束。详情请查看 https://kubernetes.io/docs/reference/using-api/api-concepts/#resource-versions

默认为未设置

表 3.18. HTTP 响应
HTTP 代码响应正文

200 - OK

ClusterServiceVersion 模式

401 - Unauthorized

HTTP 方法
PATCH
描述
部分更新指定的 ClusterServiceVersion
表 3.19. 查询参数
参数类型描述

dryRun

字符串

出现时,表示不应保留修改。无效的或未被识别的 dryRun 指令将导致错误响应,且请求不会被进一步处理。有效值为: - All: 所有预演阶段都将被处理

fieldManager

字符串

fieldmanager 是与进行这些更改的参与者或实体相关联的名称。该值必须小于或是 128 个字符长,且仅包含可打印的字符,如 https://golang.org/pkg/unicode/#IsPrint 所定义的那样。应用请求(application/apply-patch)需要此字段,但对非应用补丁类型(JsonPatch、MergePatch、MergePatch)是可选的。

fieldValidation

string

fieldValidation 指示服务器如何处理包含了未知或重复字段的请求 (POST/PUT/PATCH) 中的对象。有效值为: - Ignore :忽略从对象中静默丢弃的未知字段,并将忽略所有除最后一个重复字段以外的所有字段。这是 v1.23 版本之前的默认行为- Warn: 这会通过标准的警告响应头为从对象丢弃的每个未知字段以及遇到的每个重复字段,发送警告。如果没有其他错误,请求仍会成功,且只保留重复字段的最后一个。这是 v1.23+ 的的默认行为 - Strict: 如果从对象中删除了任何未知字段,或者存在任何重复字段,请求将失败并带有 BadRequest 错误。从服务器返回的错误将包含遇到的,以及重复的字段。

force

布尔值

强制要"强制"应用请求。这意味着用户将重新分配由其他人员拥有的冲突字段。对于非应用补丁请求,必须取消设置 force 标志。

表 3.20. 主体参数
参数类型描述

正文(body)

Patch 模式

 
表 3.21. HTTP 响应
HTTP 代码响应正文

200 - OK

ClusterServiceVersion 模式

401 - Unauthorized

HTTP 方法
PUT
描述
替换指定的 ClusterServiceVersion
表 3.22. 查询参数
参数类型描述

dryRun

字符串

出现时,表示不应保留修改。无效的或未被识别的 dryRun 指令将导致错误响应,且请求不会被进一步处理。有效值为: - All: 所有预演阶段都将被处理

fieldManager

字符串

fieldmanager 是与进行这些更改的参与者或实体相关联的名称。该值必须小于或是 128 个字符长,且仅包含可打印的字符,如 https://golang.org/pkg/unicode/#IsPrint 所定义的那样。

fieldValidation

string

fieldValidation 指示服务器如何处理包含了未知或重复字段的请求 (POST/PUT/PATCH) 中的对象。有效值为: - Ignore :忽略从对象中静默丢弃的未知字段,并将忽略所有除最后一个重复字段以外的所有字段。这是 v1.23 版本之前的默认行为- Warn: 这会通过标准的警告响应头为从对象丢弃的每个未知字段以及遇到的每个重复字段,发送警告。如果没有其他错误,请求仍会成功,且只保留重复字段的最后一个。这是 v1.23+ 的的默认行为 - Strict: 如果从对象中删除了任何未知字段,或者存在任何重复字段,请求将失败并带有 BadRequest 错误。从服务器返回的错误将包含遇到的,以及重复的字段。

表 3.23. 主体参数
参数类型描述

正文(body)

ClusterServiceVersion 模式

 
表 3.24. HTTP 响应
HTTP 代码响应正文

200 - OK

ClusterServiceVersion 模式

201 - Created

ClusterServiceVersion 模式

401 - Unauthorized

3.2.4. /apis/operators.coreos.com/v1alpha1/namespaces/{namespace}/clusterserviceversions/{name}/status

表 3.25. 全局路径参数
参数类型描述

name

字符串

ClusterServiceVersion 的名称

namespace

字符串

对象名称和身份验证范围,如团队(team)和项目(project)

表 3.26. 全局查询参数
参数类型描述

pretty

字符串

如果为 'true',则输出会经过 pretty print 处理。

HTTP 方法
GET
描述
指定 ClusterServiceVersion 的读取状态
表 3.27. 查询参数
参数类型描述

resourceVersion

字符串

resourceVersion 对可能给请求提供服务的资源版本设置一个约束。详情请查看 https://kubernetes.io/docs/reference/using-api/api-concepts/#resource-versions

默认为未设置

表 3.28. HTTP 响应
HTTP 代码响应正文

200 - OK

ClusterServiceVersion 模式

401 - Unauthorized

HTTP 方法
PATCH
描述
部分更新指定 ClusterServiceVersion 的状态
表 3.29. 查询参数
参数类型描述

dryRun

字符串

出现时,表示不应保留修改。无效的或未被识别的 dryRun 指令将导致错误响应,且请求不会被进一步处理。有效值为: - All: 所有预演阶段都将被处理

fieldManager

字符串

fieldmanager 是与进行这些更改的参与者或实体相关联的名称。该值必须小于或是 128 个字符长,且仅包含可打印的字符,如 https://golang.org/pkg/unicode/#IsPrint 所定义的那样。应用请求(application/apply-patch)需要此字段,但对非应用补丁类型(JsonPatch、MergePatch、MergePatch)是可选的。

fieldValidation

string

fieldValidation 指示服务器如何处理包含了未知或重复字段的请求 (POST/PUT/PATCH) 中的对象。有效值为: - Ignore :忽略从对象中静默丢弃的未知字段,并将忽略所有除最后一个重复字段以外的所有字段。这是 v1.23 版本之前的默认行为- Warn: 这会通过标准的警告响应头为从对象丢弃的每个未知字段以及遇到的每个重复字段,发送警告。如果没有其他错误,请求仍会成功,且只保留重复字段的最后一个。这是 v1.23+ 的的默认行为 - Strict: 如果从对象中删除了任何未知字段,或者存在任何重复字段,请求将失败并带有 BadRequest 错误。从服务器返回的错误将包含遇到的,以及重复的字段。

force

布尔值

强制要"强制"应用请求。这意味着用户将重新分配由其他人员拥有的冲突字段。对于非应用补丁请求,必须取消设置 force 标志。

表 3.30. 主体参数
参数类型描述

正文(body)

Patch 模式

 
表 3.31. HTTP 响应
HTTP 代码响应正文

200 - OK

ClusterServiceVersion 模式

401 - Unauthorized

HTTP 方法
PUT
描述
替换指定 ClusterServiceVersion 的状态
表 3.32. 查询参数
参数类型描述

dryRun

字符串

出现时,表示不应保留修改。无效的或未被识别的 dryRun 指令将导致错误响应,且请求不会被进一步处理。有效值为: - All: 所有预演阶段都将被处理

fieldManager

字符串

fieldmanager 是与进行这些更改的参与者或实体相关联的名称。该值必须小于或是 128 个字符长,且仅包含可打印的字符,如 https://golang.org/pkg/unicode/#IsPrint 所定义的那样。

fieldValidation

string

fieldValidation 指示服务器如何处理包含了未知或重复字段的请求 (POST/PUT/PATCH) 中的对象。有效值为: - Ignore :忽略从对象中静默丢弃的未知字段,并将忽略所有除最后一个重复字段以外的所有字段。这是 v1.23 版本之前的默认行为- Warn: 这会通过标准的警告响应头为从对象丢弃的每个未知字段以及遇到的每个重复字段,发送警告。如果没有其他错误,请求仍会成功,且只保留重复字段的最后一个。这是 v1.23+ 的的默认行为 - Strict: 如果从对象中删除了任何未知字段,或者存在任何重复字段,请求将失败并带有 BadRequest 错误。从服务器返回的错误将包含遇到的,以及重复的字段。

表 3.33. 主体参数
参数类型描述

正文(body)

ClusterServiceVersion 模式

 
表 3.34. HTTP 响应
HTTP 代码响应正文

200 - OK

ClusterServiceVersion 模式

201 - Created

ClusterServiceVersion 模式

401 - Unauthorized

第 4 章 InstallPlan [operators.coreos.com/v1alpha1]

描述
InstallPlan 定义一组 Operator 的安装。
类型
object
必填
  • metadata
  • spec

4.1. 规格

属性类型描述

apiVersion

字符串

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

kind

字符串

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

metadata

ObjectMeta

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

spec

对象

InstallPlanSpec 定义一组要安装的应用程序资源

status

对象

InstallPlanStatus 代表有关完成安装所需的步骤状态的信息。状态可能会跟踪系统的实际状态。

4.1.1. .spec

描述
InstallPlanSpec 定义一组要安装的应用程序资源
类型
object
必填
  • 批准
  • 已批准
  • clusterServiceVersionNames
属性类型描述

批准

字符串

Approval 是 InstallPlan 的用户批准策略。它必须是 "Automatic" 或 "Manual"。

已批准

布尔值

 

clusterServiceVersionNames

数组(字符串)

 

generation

整数

 

source

字符串

 

sourceNamespace

字符串

 

4.1.2. .status

描述
InstallPlanStatus 代表有关完成安装所需的步骤状态的信息。状态可能会跟踪系统的实际状态。
类型
object
必填
  • catalogSources
  • phase
属性类型描述

attenuatedServiceAccountRef

对象

attenuatedServiceAccountRef 引用用于进行范围 Operator 安装的服务帐户。

bundleLookups

array

bundleLookups 是集群中拉取和未打包捆绑包内容的一组 in-progress 请求。

bundleLookups[]

对象

BundleLookup 是一个拉取和取消打包到集群的捆绑包内容的请求。

catalogSources

数组(字符串)

 

conditions

array

 

conditions[]

对象

InstallPlanCondition 代表 InstallPlan 的执行整体状态。

message

字符串

Message 是人类可读的消息,包含详细信息,对于了解计划为什么处于当前状态的原因可能很重要。

phase

字符串

InstallPlanPhase 是整个 InstallPlan 的当前状态。

plan

array

 

plan[]

对象

Step 代表 InstallPlan 中单个步骤的状态。

startTime

字符串

startTime 是控制器开始将计划中列出的资源应用到集群的时间。

4.1.3. .status.attenuatedServiceAccountRef

描述
attenuatedServiceAccountRef 引用用于进行范围 Operator 安装的服务帐户。
类型
object
属性类型描述

apiVersion

字符串

引用的 API 版本。

fieldPath

字符串

如果引用的是对象的一部分而非整个对象,则该字符串应包含有效的 JSON/Go 字段访问声明,如 desiredState.manifest.containers[2]。例如,如果对象引用是一个 pod 中的容器,它应该还以下类似: "spec.containers{name}"(其中 "name" 是指触发事件的容器的名称),如果不使用容器名称,则应类似于 "spec.containers[2]"(使用此 pod 中索引值为 2 的容器)。选择这个语法的原因是,为了有一些指向对象部分的正确定义方法。Todo: 这个设计不是最终设计的,且该字段在将来会有所改变。

kind

字符串

引用的类型。更多信息: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds

name

字符串

引用的名称。更多信息: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names

namespace

字符串

引用的命名空间。更多信息: https://kubernetes.io/docs/concepts/overview/working-with-objects/namespaces/

resourceVersion

字符串

指定构成这个引用的 resourceVersion(如果存在)。更多信息: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#concurrency-control-and-consistency

uid

字符串

引用的 UID。更多信息: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#uids

4.1.4. .status.bundleLookups

描述
bundleLookups 是集群中拉取和未打包捆绑包内容的一组 in-progress 请求。
类型
array

4.1.5. .status.bundleLookups[]

描述
BundleLookup 是一个拉取和取消打包到集群的捆绑包内容的请求。
类型
object
必填
  • catalogSourceRef
  • identifier
  • path
  • replaces
属性类型描述

catalogSourceRef

对象

catalogSourceRef 是捆绑包路径解析的 CatalogSource 的引用。

conditions

array

conditions 代表 BundleLookup 的整体状态。

conditions[]

对象

 

identifier

字符串

Identifier 是 Operator 的目录唯一名称(包含 CSV 的捆绑包的 CSV 名称)

path

字符串

path 指的是要拉取的捆绑包的位置。它通常是镜像引用。

属性

字符串

解包捆绑包的有效属性。

replaces

字符串

replaces 是要替换的捆绑包的名称,使用路径中找到的捆绑包。

4.1.6. .status.bundleLookups[].catalogSourceRef

描述
catalogSourceRef 是捆绑包路径解析的 CatalogSource 的引用。
类型
object
属性类型描述

apiVersion

字符串

引用的 API 版本。

fieldPath

字符串

如果引用的是对象的一部分而非整个对象,则该字符串应包含有效的 JSON/Go 字段访问声明,如 desiredState.manifest.containers[2]。例如,如果对象引用是一个 pod 中的容器,它应该还以下类似: "spec.containers{name}"(其中 "name" 是指触发事件的容器的名称),如果不使用容器名称,则应类似于 "spec.containers[2]"(使用此 pod 中索引值为 2 的容器)。选择这个语法的原因是,为了有一些指向对象部分的正确定义方法。Todo: 这个设计不是最终设计的,且该字段在将来会有所改变。

kind

字符串

引用的类型。更多信息: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds

name

字符串

引用的名称。更多信息: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names

namespace

字符串

引用的命名空间。更多信息: https://kubernetes.io/docs/concepts/overview/working-with-objects/namespaces/

resourceVersion

字符串

指定构成这个引用的 resourceVersion(如果存在)。更多信息: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#concurrency-control-and-consistency

uid

字符串

引用的 UID。更多信息: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#uids

4.1.7. .status.bundleLookups[].conditions

描述
conditions 代表 BundleLookup 的整体状态。
类型
array

4.1.8. .status.bundleLookups[].conditions[]

描述
类型
object
必填
  • status
  • type
属性类型描述

lastTransitionTime

字符串

条件从一个状态转换到另一个状态最后一次的时间。

lastUpdateTime

字符串

条件被探测到最后一次的时间。

message

字符串

人类可读的消息,指示有关转换的详细信息。

reason

字符串

条件最后一次转换的原因。

status

字符串

条件的状态,True, False, Unknown 之一。

type

字符串

条件类型。

4.1.9. .status.conditions

描述
类型
array

4.1.10. .status.conditions[]

描述
InstallPlanCondition 代表 InstallPlan 的执行整体状态。
类型
object
属性类型描述

lastTransitionTime

字符串

 

lastUpdateTime

字符串

 

message

字符串

 

reason

字符串

ConditionReason 是状态转换的一个 camelcased 原因。

status

字符串

 

type

字符串

InstallPlanConditionType 描述了整个在某个时间点上 InstallPlan 的状态。

4.1.11. .status.plan

描述
类型
array

4.1.12. .status.plan[]

描述
Step 代表 InstallPlan 中单个步骤的状态。
类型
object
必填
  • resolving
  • resource
  • status
属性类型描述

optional

布尔值

 

resolving

字符串

 

resource

对象

StepResource 代表 InstallPlan 要跟踪的资源的状态。

status

字符串

StepStatus 是 InstallPlan 中特定资源的当前状态

4.1.13. .status.plan[].resource

描述
StepResource 代表 InstallPlan 要跟踪的资源的状态。
类型
object
必填
  • group
  • kind
  • name
  • sourceName
  • sourceNamespace
  • version
属性类型描述

group

字符串

 

kind

字符串

 

清单(Inventory)

字符串

 

name

字符串

 

sourceName

字符串

 

sourceNamespace

字符串

 

version

字符串

 

4.2. API 端点

可用的 API 端点如下:

  • /apis/operators.coreos.com/v1alpha1/installplans

    • GET: 列出 InstallPlan 类型的对象
  • /apis/operators.coreos.com/v1alpha1/namespaces/{namespace}/installplans

    • DELETE: 删除 InstallPlan 集合
    • GET: 列出 InstallPlan 类型的对象
    • POST :创建 InstallPlan
  • /apis/operators.coreos.com/v1alpha1/namespaces/{namespace}/installplans/{name}

    • DELETE: delete an InstallPlan
    • GET :读取指定的 InstallPlan
    • PATCH: 部分更新指定的 InstallPlan
    • PUT :替换指定的 InstallPlan
  • /apis/operators.coreos.com/v1alpha1/namespaces/{namespace}/installplans/{name}/status

    • GET :指定 InstallPlan 的读取状态
    • PATCH: 部分更新指定 InstallPlan 的状态
    • PUT :替换指定 InstallPlan 的状态

4.2.1. /apis/operators.coreos.com/v1alpha1/installplans

表 4.1. 全局查询参数
参数类型描述

allowWatchBookmarks

布尔值

allowWatchBookmarks请求类型为“BOOKMARK”的监视事件。不实现书签的服务器可能会忽略这个标志和书签,由服务器自由裁量发送。客户端不应假设书签在任何特定间隔返回,也不会假定服务器在会话期间发送任何 BOOKMARK 事件。如果这不是监视,则忽略此字段。

继续

字符串

从服务器检索更多结果时,应设置 continue 选项。由于这个值是定义的服务器,因此客户端只能使用之前查询结果中的 continue 值,并带有相同的查询参数(除 continue 值除外),因此服务器可能会拒绝它无法识别的值。如果指定的 continue 值不再有效,无论是因为过期时间(通常为 5 到十五分钟)还是服务器上的配置更改,服务器将会与继续令牌一起响应 410 ResourceExpired 错误。如果客户端需要一致的列表,它必须重启其列表,而无需 continue 字段。否则,客户端可能会发送另一个带有 410 错误接收的令牌的列表请求,服务器将以从下一个密钥开始开始的列表响应,但从最新的快照开始,这与上一个列表结果中不一致 - 在第一个列表请求后将包含在响应中,只要它们的密钥位于 "next key" 后。

当 watch 为 true 时不支持此字段。客户端可以从服务器返回的最后一个 resourceVersion 值开始监视,而不丢失任何修改。

fieldSelector

字符串

一个选择器,用于限制其字段返回的对象列表。默认为任何内容。

labelSelector

字符串

一个选择器,用于限制其标签返回的对象列表。默认为任何内容。

limit

整数

limit 是列表调用返回的最大响应数。如果存在更多项目,服务器会将列表元数据上的 continue 字段设置为可用于同一初始查询的值,以检索下一个结果集合。如果过滤所有请求的对象,则设置限制可能会返回少于请求项目数量(最多为零项),并且客户端只应使用 continue 字段的存在,以确定是否有更多结果可用。服务器可能会选择不支持 limit 参数,并返回所有可用的结果。如果指定了 limit,并且 continue 字段为空,客户端可能会假定没有更多结果可用。如果 watch 为 true,则不支持此字段。

服务器保证,在使用时返回的对象将与在没有限制限制的情况下发出单个列表调用相同 - 也就是说,在发出第一个请求后没有创建、修改或删除对象。这有时被称为一致的快照,并确保使用限制来接收非常大结果的较小的块的客户端可确保它们看到所有可能的对象。如果在块列表中更新对象,则返回第一个列表结果时存在的对象版本。

pretty

字符串

如果为 'true',则输出会经过 pretty print 处理。

resourceVersion

字符串

resourceVersion 对可能给请求提供服务的资源版本设置一个约束。详情请查看 https://kubernetes.io/docs/reference/using-api/api-concepts/#resource-versions

默认为未设置

resourceVersionMatch

字符串

resourceVersionMatch 决定如何将 resourceVersion 应用到列表调用。强烈建议您为设置 resourceVersion 的 list 调用设置 resourceVersionMatch。详情请参阅 https://kubernetes.io/docs/reference/using-api/api-concepts/#resource-versions

默认为未设置

sendInitialEvents

布尔值

sendInitialEvents=true 可以和 watch=true 一起设置。在这种情况下,观察流将以复合事件开头,以生成集合中对象的当前状态。发送完所有这些事件后,将发送合成"Bookmark"事件。书签将报告与对象集合对应的 ResourceVersion (RV),并使用 "k8s.io/initial-events-end": "true" 注解进行标记。之后,监视流将照常进行,从而向监视的对象发送与更改对应的监视事件(按 RV 排序)。

当设置 sendInitialEvents 选项时,我们还需要设置 resourceVersionMatch 选项。监控请求的语义如下: - resourceVersionMatch = NotOlderThan 解释为"数据至少为提供的 resourceVersion'",当状态同步到 'resourceVersion 时,如果状态同步到 ListOptions 提供的 'resourceVersion 时,会发送书签事件。如果未设置 resourceVersion,则这被解释为"consistent read",当请求开始处理时,将发送书签事件。- resourceVersionMatch 设置为任何其他值或未设置 Invalid 错误。

如果 resourceVersion=""resourceVersion="0" (出于向后兼容原因)和 false,则默认为 true。

timeoutSeconds

整数

列表/watch 调用的超时。这限制了调用的持续时间,无论任何活动或不活跃。

watch

布尔值

观察对所描述资源的更改,并将它们作为添加、更新和删除通知的流返回。指定 resourceVersion。

HTTP 方法
GET
描述
列出 InstallPlan 类型的对象
表 4.2. HTTP 响应
HTTP 代码响应正文

200 - OK

InstallPlanList schema

401 - Unauthorized

4.2.2. /apis/operators.coreos.com/v1alpha1/namespaces/{namespace}/installplans

表 4.3. 全局路径参数
参数类型描述

namespace

字符串

对象名称和身份验证范围,如团队(team)和项目(project)

表 4.4. 全局查询参数
参数类型描述

pretty

字符串

如果为 'true',则输出会经过 pretty print 处理。

HTTP 方法
DELETE
描述
删除 InstallPlan 集合
表 4.5. 查询参数
参数类型描述

allowWatchBookmarks

布尔值

allowWatchBookmarks请求类型为“BOOKMARK”的监视事件。不实现书签的服务器可能会忽略这个标志和书签,由服务器自由裁量发送。客户端不应假设书签在任何特定间隔返回,也不会假定服务器在会话期间发送任何 BOOKMARK 事件。如果这不是监视,则忽略此字段。

继续

字符串

从服务器检索更多结果时,应设置 continue 选项。由于这个值是定义的服务器,因此客户端只能使用之前查询结果中的 continue 值,并带有相同的查询参数(除 continue 值除外),因此服务器可能会拒绝它无法识别的值。如果指定的 continue 值不再有效,无论是因为过期时间(通常为 5 到十五分钟)还是服务器上的配置更改,服务器将会与继续令牌一起响应 410 ResourceExpired 错误。如果客户端需要一致的列表,它必须重启其列表,而无需 continue 字段。否则,客户端可能会发送另一个带有 410 错误接收的令牌的列表请求,服务器将以从下一个密钥开始开始的列表响应,但从最新的快照开始,这与上一个列表结果中不一致 - 在第一个列表请求后将包含在响应中,只要它们的密钥位于 "next key" 后。

当 watch 为 true 时不支持此字段。客户端可以从服务器返回的最后一个 resourceVersion 值开始监视,而不丢失任何修改。

fieldSelector

字符串

一个选择器,用于限制其字段返回的对象列表。默认为任何内容。

labelSelector

字符串

一个选择器,用于限制其标签返回的对象列表。默认为任何内容。

limit

整数

limit 是列表调用返回的最大响应数。如果存在更多项目,服务器会将列表元数据上的 continue 字段设置为可用于同一初始查询的值,以检索下一个结果集合。如果过滤所有请求的对象,则设置限制可能会返回少于请求项目数量(最多为零项),并且客户端只应使用 continue 字段的存在,以确定是否有更多结果可用。服务器可能会选择不支持 limit 参数,并返回所有可用的结果。如果指定了 limit,并且 continue 字段为空,客户端可能会假定没有更多结果可用。如果 watch 为 true,则不支持此字段。

服务器保证,在使用时返回的对象将与在没有限制限制的情况下发出单个列表调用相同 - 也就是说,在发出第一个请求后没有创建、修改或删除对象。这有时被称为一致的快照,并确保使用限制来接收非常大结果的较小的块的客户端可确保它们看到所有可能的对象。如果在块列表中更新对象,则返回第一个列表结果时存在的对象版本。

resourceVersion

字符串

resourceVersion 对可能给请求提供服务的资源版本设置一个约束。详情请查看 https://kubernetes.io/docs/reference/using-api/api-concepts/#resource-versions

默认为未设置

resourceVersionMatch

字符串

resourceVersionMatch 决定如何将 resourceVersion 应用到列表调用。强烈建议您为设置 resourceVersion 的 list 调用设置 resourceVersionMatch。详情请参阅 https://kubernetes.io/docs/reference/using-api/api-concepts/#resource-versions

默认为未设置

sendInitialEvents

布尔值

sendInitialEvents=true 可以和 watch=true 一起设置。在这种情况下,观察流将以复合事件开头,以生成集合中对象的当前状态。发送完所有这些事件后,将发送合成"Bookmark"事件。书签将报告与对象集合对应的 ResourceVersion (RV),并使用 "k8s.io/initial-events-end": "true" 注解进行标记。之后,监视流将照常进行,从而向监视的对象发送与更改对应的监视事件(按 RV 排序)。

当设置 sendInitialEvents 选项时,我们还需要设置 resourceVersionMatch 选项。监控请求的语义如下: - resourceVersionMatch = NotOlderThan 解释为"数据至少为提供的 resourceVersion'",当状态同步到 'resourceVersion 时,如果状态同步到 ListOptions 提供的 'resourceVersion 时,会发送书签事件。如果未设置 resourceVersion,则这被解释为"consistent read",当请求开始处理时,将发送书签事件。- resourceVersionMatch 设置为任何其他值或未设置 Invalid 错误。

如果 resourceVersion=""resourceVersion="0" (出于向后兼容原因)和 false,则默认为 true。

timeoutSeconds

整数

列表/watch 调用的超时。这限制了调用的持续时间,无论任何活动或不活跃。

watch

布尔值

观察对所描述资源的更改,并将它们作为添加、更新和删除通知的流返回。指定 resourceVersion。

表 4.6. HTTP 响应
HTTP 代码响应正文

200 - OK

Status 模式

401 - Unauthorized

HTTP 方法
GET
描述
列出 InstallPlan 类型的对象
表 4.7. 查询参数
参数类型描述

allowWatchBookmarks

布尔值

allowWatchBookmarks请求类型为“BOOKMARK”的监视事件。不实现书签的服务器可能会忽略这个标志和书签,由服务器自由裁量发送。客户端不应假设书签在任何特定间隔返回,也不会假定服务器在会话期间发送任何 BOOKMARK 事件。如果这不是监视,则忽略此字段。

继续

字符串

从服务器检索更多结果时,应设置 continue 选项。由于这个值是定义的服务器,因此客户端只能使用之前查询结果中的 continue 值,并带有相同的查询参数(除 continue 值除外),因此服务器可能会拒绝它无法识别的值。如果指定的 continue 值不再有效,无论是因为过期时间(通常为 5 到十五分钟)还是服务器上的配置更改,服务器将会与继续令牌一起响应 410 ResourceExpired 错误。如果客户端需要一致的列表,它必须重启其列表,而无需 continue 字段。否则,客户端可能会发送另一个带有 410 错误接收的令牌的列表请求,服务器将以从下一个密钥开始开始的列表响应,但从最新的快照开始,这与上一个列表结果中不一致 - 在第一个列表请求后将包含在响应中,只要它们的密钥位于 "next key" 后。

当 watch 为 true 时不支持此字段。客户端可以从服务器返回的最后一个 resourceVersion 值开始监视,而不丢失任何修改。

fieldSelector

字符串

一个选择器,用于限制其字段返回的对象列表。默认为任何内容。

labelSelector

字符串

一个选择器,用于限制其标签返回的对象列表。默认为任何内容。

limit

整数

limit 是列表调用返回的最大响应数。如果存在更多项目,服务器会将列表元数据上的 continue 字段设置为可用于同一初始查询的值,以检索下一个结果集合。如果过滤所有请求的对象,则设置限制可能会返回少于请求项目数量(最多为零项),并且客户端只应使用 continue 字段的存在,以确定是否有更多结果可用。服务器可能会选择不支持 limit 参数,并返回所有可用的结果。如果指定了 limit,并且 continue 字段为空,客户端可能会假定没有更多结果可用。如果 watch 为 true,则不支持此字段。

服务器保证,在使用时返回的对象将与在没有限制限制的情况下发出单个列表调用相同 - 也就是说,在发出第一个请求后没有创建、修改或删除对象。这有时被称为一致的快照,并确保使用限制来接收非常大结果的较小的块的客户端可确保它们看到所有可能的对象。如果在块列表中更新对象,则返回第一个列表结果时存在的对象版本。

resourceVersion

字符串

resourceVersion 对可能给请求提供服务的资源版本设置一个约束。详情请查看 https://kubernetes.io/docs/reference/using-api/api-concepts/#resource-versions

默认为未设置

resourceVersionMatch

字符串

resourceVersionMatch 决定如何将 resourceVersion 应用到列表调用。强烈建议您为设置 resourceVersion 的 list 调用设置 resourceVersionMatch。详情请参阅 https://kubernetes.io/docs/reference/using-api/api-concepts/#resource-versions

默认为未设置

sendInitialEvents

布尔值

sendInitialEvents=true 可以和 watch=true 一起设置。在这种情况下,观察流将以复合事件开头,以生成集合中对象的当前状态。发送完所有这些事件后,将发送合成"Bookmark"事件。书签将报告与对象集合对应的 ResourceVersion (RV),并使用 "k8s.io/initial-events-end": "true" 注解进行标记。之后,监视流将照常进行,从而向监视的对象发送与更改对应的监视事件(按 RV 排序)。

当设置 sendInitialEvents 选项时,我们还需要设置 resourceVersionMatch 选项。监控请求的语义如下: - resourceVersionMatch = NotOlderThan 解释为"数据至少为提供的 resourceVersion'",当状态同步到 'resourceVersion 时,如果状态同步到 ListOptions 提供的 'resourceVersion 时,会发送书签事件。如果未设置 resourceVersion,则这被解释为"consistent read",当请求开始处理时,将发送书签事件。- resourceVersionMatch 设置为任何其他值或未设置 Invalid 错误。

如果 resourceVersion=""resourceVersion="0" (出于向后兼容原因)和 false,则默认为 true。

timeoutSeconds

整数

列表/watch 调用的超时。这限制了调用的持续时间,无论任何活动或不活跃。

watch

布尔值

观察对所描述资源的更改,并将它们作为添加、更新和删除通知的流返回。指定 resourceVersion。

表 4.8. HTTP 响应
HTTP 代码响应正文

200 - OK

InstallPlanList schema

401 - Unauthorized

HTTP 方法
POST
描述
创建 InstallPlan
表 4.9. 查询参数
参数类型描述

dryRun

字符串

出现时,表示不应保留修改。无效的或未被识别的 dryRun 指令将导致错误响应,且请求不会被进一步处理。有效值为: - All: 所有预演阶段都将被处理

fieldManager

字符串

fieldmanager 是与进行这些更改的参与者或实体相关联的名称。该值必须小于或是 128 个字符长,且仅包含可打印的字符,如 https://golang.org/pkg/unicode/#IsPrint 所定义的那样。

fieldValidation

string

fieldValidation 指示服务器如何处理包含了未知或重复字段的请求 (POST/PUT/PATCH) 中的对象。有效值为: - Ignore :忽略从对象中静默丢弃的未知字段,并将忽略所有除最后一个重复字段以外的所有字段。这是 v1.23 版本之前的默认行为- Warn: 这会通过标准的警告响应头为从对象丢弃的每个未知字段以及遇到的每个重复字段,发送警告。如果没有其他错误,请求仍会成功,且只保留重复字段的最后一个。这是 v1.23+ 的的默认行为 - Strict: 如果从对象中删除了任何未知字段,或者存在任何重复字段,请求将失败并带有 BadRequest 错误。从服务器返回的错误将包含遇到的,以及重复的字段。

表 4.10. 主体参数
参数类型描述

正文(body)

InstallPlan 模式

 
表 4.11. HTTP 响应
HTTP 代码响应正文

200 - OK

InstallPlan 模式

201 - Created

InstallPlan 模式

202 - Accepted

InstallPlan 模式

401 - Unauthorized

4.2.3. /apis/operators.coreos.com/v1alpha1/namespaces/{namespace}/installplans/{name}

表 4.12. 全局路径参数
参数类型描述

name

字符串

InstallPlan 的名称

namespace

字符串

对象名称和身份验证范围,如团队(team)和项目(project)

表 4.13. 全局查询参数
参数类型描述

pretty

字符串

如果为 'true',则输出会经过 pretty print 处理。

HTTP 方法
DELETE
描述
delete an InstallPlan
表 4.14. 查询参数
参数类型描述

dryRun

字符串

出现时,表示不应保留修改。无效的或未被识别的 dryRun 指令将导致错误响应,且请求不会被进一步处理。有效值为: - All: 所有预演阶段都将被处理

gracePeriodSeconds

整数

应该删除对象前的持续时间(以秒为单位)。值必须是非负整数。值为零表示立即删除。如果这个值是 nil,则会使用指定类型的默认宽限期。如果没有指定,则默认为每个对象值。零表示立即删除。

orphanDependents

布尔值

弃用:请使用 PropagationPolicy,此字段将在 1.7 中弃用。如果依赖对象是孤立的。如果为 true/false,则 "orphan" finalizer 将添加到对象的终结器列表中。可以设置此字段或 PropagationPolicy,但不能同时设置。

propagationPolicy

字符串

是否执行垃圾回收。可以设置此字段或 OrphanDependents,但不能同时设置两者。默认策略由 metadata.finalizers 和特定于资源的默认策略中设置的现有终结器决定。可接受的值有: 'Orphan' - 孤立的依赖项; 'Background' - 允许垃圾收集器删除依赖项,"Foreground' - 删除前台所有依赖的级联策略。

表 4.15. 主体参数
参数类型描述

正文(body)

DeleteOptions 模式

 
表 4.16. HTTP 响应
HTTP 代码响应正文

200 - OK

Status 模式

202 - Accepted

Status 模式

401 - Unauthorized

HTTP 方法
GET
描述
阅读指定的 InstallPlan
表 4.17. 查询参数
参数类型描述

resourceVersion

字符串

resourceVersion 对可能给请求提供服务的资源版本设置一个约束。详情请查看 https://kubernetes.io/docs/reference/using-api/api-concepts/#resource-versions

默认为未设置

表 4.18. HTTP 响应
HTTP 代码响应正文

200 - OK

InstallPlan 模式

401 - Unauthorized

HTTP 方法
PATCH
描述
部分更新指定的 InstallPlan
表 4.19. 查询参数
参数类型描述

dryRun

字符串

出现时,表示不应保留修改。无效的或未被识别的 dryRun 指令将导致错误响应,且请求不会被进一步处理。有效值为: - All: 所有预演阶段都将被处理

fieldManager

字符串

fieldmanager 是与进行这些更改的参与者或实体相关联的名称。该值必须小于或是 128 个字符长,且仅包含可打印的字符,如 https://golang.org/pkg/unicode/#IsPrint 所定义的那样。应用请求(application/apply-patch)需要此字段,但对非应用补丁类型(JsonPatch、MergePatch、MergePatch)是可选的。

fieldValidation

string

fieldValidation 指示服务器如何处理包含了未知或重复字段的请求 (POST/PUT/PATCH) 中的对象。有效值为: - Ignore :忽略从对象中静默丢弃的未知字段,并将忽略所有除最后一个重复字段以外的所有字段。这是 v1.23 版本之前的默认行为- Warn: 这会通过标准的警告响应头为从对象丢弃的每个未知字段以及遇到的每个重复字段,发送警告。如果没有其他错误,请求仍会成功,且只保留重复字段的最后一个。这是 v1.23+ 的的默认行为 - Strict: 如果从对象中删除了任何未知字段,或者存在任何重复字段,请求将失败并带有 BadRequest 错误。从服务器返回的错误将包含遇到的,以及重复的字段。

force

布尔值

强制要"强制"应用请求。这意味着用户将重新分配由其他人员拥有的冲突字段。对于非应用补丁请求,必须取消设置 force 标志。

表 4.20. 主体参数
参数类型描述

正文(body)

Patch 模式

 
表 4.21. HTTP 响应
HTTP 代码响应正文

200 - OK

InstallPlan 模式

401 - Unauthorized

HTTP 方法
PUT
描述
替换指定的 InstallPlan
表 4.22. 查询参数
参数类型描述

dryRun

字符串

出现时,表示不应保留修改。无效的或未被识别的 dryRun 指令将导致错误响应,且请求不会被进一步处理。有效值为: - All: 所有预演阶段都将被处理

fieldManager

字符串

fieldmanager 是与进行这些更改的参与者或实体相关联的名称。该值必须小于或是 128 个字符长,且仅包含可打印的字符,如 https://golang.org/pkg/unicode/#IsPrint 所定义的那样。

fieldValidation

string

fieldValidation 指示服务器如何处理包含了未知或重复字段的请求 (POST/PUT/PATCH) 中的对象。有效值为: - Ignore :忽略从对象中静默丢弃的未知字段,并将忽略所有除最后一个重复字段以外的所有字段。这是 v1.23 版本之前的默认行为- Warn: 这会通过标准的警告响应头为从对象丢弃的每个未知字段以及遇到的每个重复字段,发送警告。如果没有其他错误,请求仍会成功,且只保留重复字段的最后一个。这是 v1.23+ 的的默认行为 - Strict: 如果从对象中删除了任何未知字段,或者存在任何重复字段,请求将失败并带有 BadRequest 错误。从服务器返回的错误将包含遇到的,以及重复的字段。

表 4.23. 主体参数
参数类型描述

正文(body)

InstallPlan 模式

 
表 4.24. HTTP 响应
HTTP 代码响应正文

200 - OK

InstallPlan 模式

201 - Created

InstallPlan 模式

401 - Unauthorized

4.2.4. /apis/operators.coreos.com/v1alpha1/namespaces/{namespace}/installplans/{name}/status

表 4.25. 全局路径参数
参数类型描述

name

字符串

InstallPlan 的名称

namespace

字符串

对象名称和身份验证范围,如团队(team)和项目(project)

表 4.26. 全局查询参数
参数类型描述

pretty

字符串

如果为 'true',则输出会经过 pretty print 处理。

HTTP 方法
GET
描述
指定 InstallPlan 的读取状态
表 4.27. 查询参数
参数类型描述

resourceVersion

字符串

resourceVersion 对可能给请求提供服务的资源版本设置一个约束。详情请查看 https://kubernetes.io/docs/reference/using-api/api-concepts/#resource-versions

默认为未设置

表 4.28. HTTP 响应
HTTP 代码响应正文

200 - OK

InstallPlan 模式

401 - Unauthorized

HTTP 方法
PATCH
描述
部分更新指定 InstallPlan 的状态
表 4.29. 查询参数
参数类型描述

dryRun

字符串

出现时,表示不应保留修改。无效的或未被识别的 dryRun 指令将导致错误响应,且请求不会被进一步处理。有效值为: - All: 所有预演阶段都将被处理

fieldManager

字符串

fieldmanager 是与进行这些更改的参与者或实体相关联的名称。该值必须小于或是 128 个字符长,且仅包含可打印的字符,如 https://golang.org/pkg/unicode/#IsPrint 所定义的那样。应用请求(application/apply-patch)需要此字段,但对非应用补丁类型(JsonPatch、MergePatch、MergePatch)是可选的。

fieldValidation

string

fieldValidation 指示服务器如何处理包含了未知或重复字段的请求 (POST/PUT/PATCH) 中的对象。有效值为: - Ignore :忽略从对象中静默丢弃的未知字段,并将忽略所有除最后一个重复字段以外的所有字段。这是 v1.23 版本之前的默认行为- Warn: 这会通过标准的警告响应头为从对象丢弃的每个未知字段以及遇到的每个重复字段,发送警告。如果没有其他错误,请求仍会成功,且只保留重复字段的最后一个。这是 v1.23+ 的的默认行为 - Strict: 如果从对象中删除了任何未知字段,或者存在任何重复字段,请求将失败并带有 BadRequest 错误。从服务器返回的错误将包含遇到的,以及重复的字段。

force

布尔值

强制要"强制"应用请求。这意味着用户将重新分配由其他人员拥有的冲突字段。对于非应用补丁请求,必须取消设置 force 标志。

表 4.30. 主体参数
参数类型描述

正文(body)

Patch 模式

 
表 4.31. HTTP 响应
HTTP 代码响应正文

200 - OK

InstallPlan 模式

401 - Unauthorized

HTTP 方法
PUT
描述
替换指定 InstallPlan 的状态
表 4.32. 查询参数
参数类型描述

dryRun

字符串

出现时,表示不应保留修改。无效的或未被识别的 dryRun 指令将导致错误响应,且请求不会被进一步处理。有效值为: - All: 所有预演阶段都将被处理

fieldManager

字符串

fieldmanager 是与进行这些更改的参与者或实体相关联的名称。该值必须小于或是 128 个字符长,且仅包含可打印的字符,如 https://golang.org/pkg/unicode/#IsPrint 所定义的那样。

fieldValidation

string

fieldValidation 指示服务器如何处理包含了未知或重复字段的请求 (POST/PUT/PATCH) 中的对象。有效值为: - Ignore :忽略从对象中静默丢弃的未知字段,并将忽略所有除最后一个重复字段以外的所有字段。这是 v1.23 版本之前的默认行为- Warn: 这会通过标准的警告响应头为从对象丢弃的每个未知字段以及遇到的每个重复字段,发送警告。如果没有其他错误,请求仍会成功,且只保留重复字段的最后一个。这是 v1.23+ 的的默认行为 - Strict: 如果从对象中删除了任何未知字段,或者存在任何重复字段,请求将失败并带有 BadRequest 错误。从服务器返回的错误将包含遇到的,以及重复的字段。

表 4.33. 主体参数
参数类型描述

正文(body)

InstallPlan 模式

 
表 4.34. HTTP 响应
HTTP 代码响应正文

200 - OK

InstallPlan 模式

201 - Created

InstallPlan 模式

401 - Unauthorized

第 5 章 OLMConfig [operators.coreos.com/v1]

描述
OLMConfig 是负责配置 OLM 的资源。
类型
object
必填
  • metadata

5.1. 规格

属性类型描述

apiVersion

字符串

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

kind

字符串

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

metadata

ObjectMeta

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

spec

object

OLMConfigSpec 是 OLMConfig 资源的 spec。

status

object

OLMConfigStatus 是 OLMConfig 资源的状态。

5.1.1. .spec

描述
OLMConfigSpec 是 OLMConfig 资源的 spec。
类型
object
属性类型描述

功能

object

功能包含可配置的 OLM 功能列表。

5.1.2. .spec.features

描述
功能包含可配置的 OLM 功能列表。
类型
object
属性类型描述

disableCopiedCSVs

布尔值

disableCopiedCSVs 用于为在集群范围内安装的 Operator 禁用 OLM 的 "Copied CSV" 功能,其中集群范围 Operator 是以所有命名空间为目标的 OperatorGroup 中安装的 Operator。重新启用后,OLM 将为每个集群范围的 Operator 重新创建"Copied CSV"。

packageServerSyncInterval

string

PackageServerSyncInterval 用于定义 packagerserver pod 的同步间隔。packageserver pod 定期检查 CatalogSource 的状态;这使用持续时间格式(如."60M")。对于此参数,只能指定小时("h")、分钟("m")和秒("s")。如果没有指定,周期默认为 packageserver 中指定的值。

5.1.3. .status

描述
OLMConfigStatus 是 OLMConfig 资源的状态。
类型
object
属性类型描述

conditions

array

 

conditions[]

对象

条件包含此 API 资源当前状态的一个方面的详情。--- 这个结构旨在直接用作字段路径 .status.conditions 中的数组。例如,输入 FooStatus struct{ // Represents the observations of a foo’s current state. // Known .status.conditions.type are: "Available", "Progressing", and "Degraded" // +patchMergeKey=type // +patchStrategy=merge // +listType=map // +listMapKey=type Conditions []metav1.Condition json:"conditions,omitempty" patchStrategy:"merge" patchMergeKey:"type" protobuf:"bytes,1,rep,name=conditions" // other fields }

5.1.4. .status.conditions

描述
类型
array

5.1.5. .status.conditions[]

描述
条件包含此 API 资源当前状态的一个方面的详情。--- 这个结构旨在直接用作字段路径 .status.conditions 中的数组。例如,输入 FooStatus struct{ // Represents the observations of a foo’s current state. // Known .status.conditions.type are: "Available", "Progressing", and "Degraded" // +patchMergeKey=type // +patchStrategy=merge // +listType=map // +listMapKey=type Conditions []metav1.Condition json:"conditions,omitempty" patchStrategy:"merge" patchMergeKey:"type" protobuf:"bytes,1,rep,name=conditions" // other fields }
类型
object
必填
  • lastTransitionTime
  • message
  • reason
  • status
  • type
属性类型描述

lastTransitionTime

字符串

lastTransitionTime 是条件从一个状态转换到另一个状态最后一次的时间。这应该是底层条件变化的时间。如果为未知,则使用 API 字段更改的时间是可以接受的。

message

字符串

Message 是人类可读的消息,指示有关转换的详细信息。这可能是一个空字符串。

observedGeneration

整数

observedGeneration 代表 .metadata.generation,这是条件设置所基于的条件。例如,如果 .metadata.generation 目前为 12,但 .status.conditions[x].observedGeneration 是 9,则代表条件与实例的当前状态已不匹配。

reason

字符串

reason 包含程序标识符,指示条件最后一次转换的原因。特定条件类型的制作者可能会定义预期的值和此字段的含义,以及这些值是否被视为有保证的 API。该值应该是 CamelCase 字符串。此字段可能不是空的。

status

字符串

条件的状态,True, False, Unknown 之一。

type

字符串

CamelCase 或 foo.example.com/CamelCase 中的条件类型。-- Many .condition.type 值在资源间是一致的,但因为任意条件可能很有用(请参阅 .node.status.conditions),deconflict 的能力非常重要。它匹配的正则表达式是 (dns1123SubdomainFmt/)? (qualifiedNameFmt)

5.2. API 端点

可用的 API 端点如下:

  • /apis/operators.coreos.com/v1/olmconfigs

    • DELETE :删除 OLMConfig 集合
    • GET: 列出类型为 OLMConfig 的对象
    • POST :创建 OLMConfig
  • /apis/operators.coreos.com/v1/olmconfigs/{name}

    • DELETE :删除 OLMConfig
    • GET :读取指定的 OLMConfig
    • PATCH: 部分更新指定的 OLMConfig
    • PUT :替换指定的 OLMConfig
  • /apis/operators.coreos.com/v1/olmconfigs/{name}/status

    • GET :指定 OLMConfig 的读取状态
    • PATCH: 部分更新指定 OLMConfig 的状态
    • PUT :替换指定 OLMConfig 的状态

5.2.1. /apis/operators.coreos.com/v1/olmconfigs

表 5.1. 全局查询参数
参数类型描述

pretty

字符串

如果为 'true',则输出会经过 pretty print 处理。

HTTP 方法
DELETE
描述
删除 OLMConfig 集合
表 5.2. 查询参数
参数类型描述

allowWatchBookmarks

布尔值

allowWatchBookmarks请求类型为“BOOKMARK”的监视事件。不实现书签的服务器可能会忽略这个标志和书签,由服务器自由裁量发送。客户端不应假设书签在任何特定间隔返回,也不会假定服务器在会话期间发送任何 BOOKMARK 事件。如果这不是监视,则忽略此字段。

继续

字符串

从服务器检索更多结果时,应设置 continue 选项。由于这个值是定义的服务器,因此客户端只能使用之前查询结果中的 continue 值,并带有相同的查询参数(除 continue 值除外),因此服务器可能会拒绝它无法识别的值。如果指定的 continue 值不再有效,无论是因为过期时间(通常为 5 到十五分钟)还是服务器上的配置更改,服务器将会与继续令牌一起响应 410 ResourceExpired 错误。如果客户端需要一致的列表,它必须重启其列表,而无需 continue 字段。否则,客户端可能会发送另一个带有 410 错误接收的令牌的列表请求,服务器将以从下一个密钥开始开始的列表响应,但从最新的快照开始,这与上一个列表结果中不一致 - 在第一个列表请求后将包含在响应中,只要它们的密钥位于 "next key" 后。

当 watch 为 true 时不支持此字段。客户端可以从服务器返回的最后一个 resourceVersion 值开始监视,而不丢失任何修改。

fieldSelector

字符串

一个选择器,用于限制其字段返回的对象列表。默认为任何内容。

labelSelector

字符串

一个选择器,用于限制其标签返回的对象列表。默认为任何内容。

limit

整数

limit 是列表调用返回的最大响应数。如果存在更多项目,服务器会将列表元数据上的 continue 字段设置为可用于同一初始查询的值,以检索下一个结果集合。如果过滤所有请求的对象,则设置限制可能会返回少于请求项目数量(最多为零项),并且客户端只应使用 continue 字段的存在,以确定是否有更多结果可用。服务器可能会选择不支持 limit 参数,并返回所有可用的结果。如果指定了 limit,并且 continue 字段为空,客户端可能会假定没有更多结果可用。如果 watch 为 true,则不支持此字段。

服务器保证,在使用时返回的对象将与在没有限制限制的情况下发出单个列表调用相同 - 也就是说,在发出第一个请求后没有创建、修改或删除对象。这有时被称为一致的快照,并确保使用限制来接收非常大结果的较小的块的客户端可确保它们看到所有可能的对象。如果在块列表中更新对象,则返回第一个列表结果时存在的对象版本。

resourceVersion

字符串

resourceVersion 对可能给请求提供服务的资源版本设置一个约束。详情请查看 https://kubernetes.io/docs/reference/using-api/api-concepts/#resource-versions

默认为未设置

resourceVersionMatch

字符串

resourceVersionMatch 决定如何将 resourceVersion 应用到列表调用。强烈建议您为设置 resourceVersion 的 list 调用设置 resourceVersionMatch。详情请参阅 https://kubernetes.io/docs/reference/using-api/api-concepts/#resource-versions

默认为未设置

sendInitialEvents

布尔值

sendInitialEvents=true 可以和 watch=true 一起设置。在这种情况下,观察流将以复合事件开头,以生成集合中对象的当前状态。发送完所有这些事件后,将发送合成"Bookmark"事件。书签将报告与对象集合对应的 ResourceVersion (RV),并使用 "k8s.io/initial-events-end": "true" 注解进行标记。之后,监视流将照常进行,从而向监视的对象发送与更改对应的监视事件(按 RV 排序)。

当设置 sendInitialEvents 选项时,我们还需要设置 resourceVersionMatch 选项。监控请求的语义如下: - resourceVersionMatch = NotOlderThan 解释为"数据至少为提供的 resourceVersion'",当状态同步到 'resourceVersion 时,如果状态同步到 ListOptions 提供的 'resourceVersion 时,会发送书签事件。如果未设置 resourceVersion,则这被解释为"consistent read",当请求开始处理时,将发送书签事件。- resourceVersionMatch 设置为任何其他值或未设置 Invalid 错误。

如果 resourceVersion=""resourceVersion="0" (出于向后兼容原因)和 false,则默认为 true。

timeoutSeconds

整数

列表/watch 调用的超时。这限制了调用的持续时间,无论任何活动或不活跃。

watch

布尔值

观察对所描述资源的更改,并将它们作为添加、更新和删除通知的流返回。指定 resourceVersion。

表 5.3. HTTP 响应
HTTP 代码响应正文

200 - OK

Status 模式

401 - Unauthorized

HTTP 方法
GET
描述
列出 OLMConfig 类型的对象
表 5.4. 查询参数
参数类型描述

allowWatchBookmarks

布尔值

allowWatchBookmarks请求类型为“BOOKMARK”的监视事件。不实现书签的服务器可能会忽略这个标志和书签,由服务器自由裁量发送。客户端不应假设书签在任何特定间隔返回,也不会假定服务器在会话期间发送任何 BOOKMARK 事件。如果这不是监视,则忽略此字段。

继续

字符串

从服务器检索更多结果时,应设置 continue 选项。由于这个值是定义的服务器,因此客户端只能使用之前查询结果中的 continue 值,并带有相同的查询参数(除 continue 值除外),因此服务器可能会拒绝它无法识别的值。如果指定的 continue 值不再有效,无论是因为过期时间(通常为 5 到十五分钟)还是服务器上的配置更改,服务器将会与继续令牌一起响应 410 ResourceExpired 错误。如果客户端需要一致的列表,它必须重启其列表,而无需 continue 字段。否则,客户端可能会发送另一个带有 410 错误接收的令牌的列表请求,服务器将以从下一个密钥开始开始的列表响应,但从最新的快照开始,这与上一个列表结果中不一致 - 在第一个列表请求后将包含在响应中,只要它们的密钥位于 "next key" 后。

当 watch 为 true 时不支持此字段。客户端可以从服务器返回的最后一个 resourceVersion 值开始监视,而不丢失任何修改。

fieldSelector

字符串

一个选择器,用于限制其字段返回的对象列表。默认为任何内容。

labelSelector

字符串

一个选择器,用于限制其标签返回的对象列表。默认为任何内容。

limit

整数

limit 是列表调用返回的最大响应数。如果存在更多项目,服务器会将列表元数据上的 continue 字段设置为可用于同一初始查询的值,以检索下一个结果集合。如果过滤所有请求的对象,则设置限制可能会返回少于请求项目数量(最多为零项),并且客户端只应使用 continue 字段的存在,以确定是否有更多结果可用。服务器可能会选择不支持 limit 参数,并返回所有可用的结果。如果指定了 limit,并且 continue 字段为空,客户端可能会假定没有更多结果可用。如果 watch 为 true,则不支持此字段。

服务器保证,在使用时返回的对象将与在没有限制限制的情况下发出单个列表调用相同 - 也就是说,在发出第一个请求后没有创建、修改或删除对象。这有时被称为一致的快照,并确保使用限制来接收非常大结果的较小的块的客户端可确保它们看到所有可能的对象。如果在块列表中更新对象,则返回第一个列表结果时存在的对象版本。

resourceVersion

字符串

resourceVersion 对可能给请求提供服务的资源版本设置一个约束。详情请查看 https://kubernetes.io/docs/reference/using-api/api-concepts/#resource-versions

默认为未设置

resourceVersionMatch

字符串

resourceVersionMatch 决定如何将 resourceVersion 应用到列表调用。强烈建议您为设置 resourceVersion 的 list 调用设置 resourceVersionMatch。详情请参阅 https://kubernetes.io/docs/reference/using-api/api-concepts/#resource-versions

默认为未设置

sendInitialEvents

布尔值

sendInitialEvents=true 可以和 watch=true 一起设置。在这种情况下,观察流将以复合事件开头,以生成集合中对象的当前状态。发送完所有这些事件后,将发送合成"Bookmark"事件。书签将报告与对象集合对应的 ResourceVersion (RV),并使用 "k8s.io/initial-events-end": "true" 注解进行标记。之后,监视流将照常进行,从而向监视的对象发送与更改对应的监视事件(按 RV 排序)。

当设置 sendInitialEvents 选项时,我们还需要设置 resourceVersionMatch 选项。监控请求的语义如下: - resourceVersionMatch = NotOlderThan 解释为"数据至少为提供的 resourceVersion'",当状态同步到 'resourceVersion 时,如果状态同步到 ListOptions 提供的 'resourceVersion 时,会发送书签事件。如果未设置 resourceVersion,则这被解释为"consistent read",当请求开始处理时,将发送书签事件。- resourceVersionMatch 设置为任何其他值或未设置 Invalid 错误。

如果 resourceVersion=""resourceVersion="0" (出于向后兼容原因)和 false,则默认为 true。

timeoutSeconds

整数

列表/watch 调用的超时。这限制了调用的持续时间,无论任何活动或不活跃。

watch

布尔值

观察对所描述资源的更改,并将它们作为添加、更新和删除通知的流返回。指定 resourceVersion。

表 5.5. HTTP 响应
HTTP 代码响应正文

200 - OK

olmConfigList 模式

401 - Unauthorized

HTTP 方法
POST
描述
创建 OLMConfig
表 5.6. 查询参数
参数类型描述

dryRun

字符串

出现时,表示不应保留修改。无效的或未被识别的 dryRun 指令将导致错误响应,且请求不会被进一步处理。有效值为: - All: 所有预演阶段都将被处理

fieldManager

字符串

fieldmanager 是与进行这些更改的参与者或实体相关联的名称。该值必须小于或是 128 个字符长,且仅包含可打印的字符,如 https://golang.org/pkg/unicode/#IsPrint 所定义的那样。

fieldValidation

string

fieldValidation 指示服务器如何处理包含了未知或重复字段的请求 (POST/PUT/PATCH) 中的对象。有效值为: - Ignore :忽略从对象中静默丢弃的未知字段,并将忽略所有除最后一个重复字段以外的所有字段。这是 v1.23 版本之前的默认行为- Warn: 这会通过标准的警告响应头为从对象丢弃的每个未知字段以及遇到的每个重复字段,发送警告。如果没有其他错误,请求仍会成功,且只保留重复字段的最后一个。这是 v1.23+ 的的默认行为 - Strict: 如果从对象中删除了任何未知字段,或者存在任何重复字段,请求将失败并带有 BadRequest 错误。从服务器返回的错误将包含遇到的,以及重复的字段。

表 5.7. 主体参数
参数类型描述

正文(body)

olmConfig 模式

 
表 5.8. HTTP 响应
HTTP 代码响应正文

200 - OK

olmConfig 模式

201 - Created

olmConfig 模式

202 - Accepted

olmConfig 模式

401 - Unauthorized

5.2.2. /apis/operators.coreos.com/v1/olmconfigs/{name}

表 5.9. 全局路径参数
参数类型描述

name

string

OLMConfig 的名称

表 5.10. 全局查询参数
参数类型描述

pretty

字符串

如果为 'true',则输出会经过 pretty print 处理。

HTTP 方法
DELETE
描述
删除 OLMConfig
表 5.11. 查询参数
参数类型描述

dryRun

字符串

出现时,表示不应保留修改。无效的或未被识别的 dryRun 指令将导致错误响应,且请求不会被进一步处理。有效值为: - All: 所有预演阶段都将被处理

gracePeriodSeconds

整数

应该删除对象前的持续时间(以秒为单位)。值必须是非负整数。值为零表示立即删除。如果这个值是 nil,则会使用指定类型的默认宽限期。如果没有指定,则默认为每个对象值。零表示立即删除。

orphanDependents

布尔值

弃用:请使用 PropagationPolicy,此字段将在 1.7 中弃用。如果依赖对象是孤立的。如果为 true/false,则 "orphan" finalizer 将添加到对象的终结器列表中。可以设置此字段或 PropagationPolicy,但不能同时设置。

propagationPolicy

字符串

是否执行垃圾回收。可以设置此字段或 OrphanDependents,但不能同时设置两者。默认策略由 metadata.finalizers 和特定于资源的默认策略中设置的现有终结器决定。可接受的值有: 'Orphan' - 孤立的依赖项; 'Background' - 允许垃圾收集器删除依赖项,"Foreground' - 删除前台所有依赖的级联策略。

表 5.12. 主体参数
参数类型描述

正文(body)

DeleteOptions 模式

 
表 5.13. HTTP 响应
HTTP 代码响应正文

200 - OK

Status 模式

202 - Accepted

Status 模式

401 - Unauthorized

HTTP 方法
GET
描述
读取指定的 OLMConfig
表 5.14. 查询参数
参数类型描述

resourceVersion

字符串

resourceVersion 对可能给请求提供服务的资源版本设置一个约束。详情请查看 https://kubernetes.io/docs/reference/using-api/api-concepts/#resource-versions

默认为未设置

表 5.15. HTTP 响应
HTTP 代码响应正文

200 - OK

olmConfig 模式

401 - Unauthorized

HTTP 方法
PATCH
描述
部分更新指定的 OLMConfig
表 5.16. 查询参数
参数类型描述

dryRun

字符串

出现时,表示不应保留修改。无效的或未被识别的 dryRun 指令将导致错误响应,且请求不会被进一步处理。有效值为: - All: 所有预演阶段都将被处理

fieldManager

字符串

fieldmanager 是与进行这些更改的参与者或实体相关联的名称。该值必须小于或是 128 个字符长,且仅包含可打印的字符,如 https://golang.org/pkg/unicode/#IsPrint 所定义的那样。应用请求(application/apply-patch)需要此字段,但对非应用补丁类型(JsonPatch、MergePatch、MergePatch)是可选的。

fieldValidation

string

fieldValidation 指示服务器如何处理包含了未知或重复字段的请求 (POST/PUT/PATCH) 中的对象。有效值为: - Ignore :忽略从对象中静默丢弃的未知字段,并将忽略所有除最后一个重复字段以外的所有字段。这是 v1.23 版本之前的默认行为- Warn: 这会通过标准的警告响应头为从对象丢弃的每个未知字段以及遇到的每个重复字段,发送警告。如果没有其他错误,请求仍会成功,且只保留重复字段的最后一个。这是 v1.23+ 的的默认行为 - Strict: 如果从对象中删除了任何未知字段,或者存在任何重复字段,请求将失败并带有 BadRequest 错误。从服务器返回的错误将包含遇到的,以及重复的字段。

force

布尔值

强制要"强制"应用请求。这意味着用户将重新分配由其他人员拥有的冲突字段。对于非应用补丁请求,必须取消设置 force 标志。

表 5.17. 主体参数
参数类型描述

正文(body)

Patch 模式

 
表 5.18. HTTP 响应
HTTP 代码响应正文

200 - OK

olmConfig 模式

401 - Unauthorized

HTTP 方法
PUT
描述
替换指定的 OLMConfig
表 5.19. 查询参数
参数类型描述

dryRun

字符串

出现时,表示不应保留修改。无效的或未被识别的 dryRun 指令将导致错误响应,且请求不会被进一步处理。有效值为: - All: 所有预演阶段都将被处理

fieldManager

字符串

fieldmanager 是与进行这些更改的参与者或实体相关联的名称。该值必须小于或是 128 个字符长,且仅包含可打印的字符,如 https://golang.org/pkg/unicode/#IsPrint 所定义的那样。

fieldValidation

string

fieldValidation 指示服务器如何处理包含了未知或重复字段的请求 (POST/PUT/PATCH) 中的对象。有效值为: - Ignore :忽略从对象中静默丢弃的未知字段,并将忽略所有除最后一个重复字段以外的所有字段。这是 v1.23 版本之前的默认行为- Warn: 这会通过标准的警告响应头为从对象丢弃的每个未知字段以及遇到的每个重复字段,发送警告。如果没有其他错误,请求仍会成功,且只保留重复字段的最后一个。这是 v1.23+ 的的默认行为 - Strict: 如果从对象中删除了任何未知字段,或者存在任何重复字段,请求将失败并带有 BadRequest 错误。从服务器返回的错误将包含遇到的,以及重复的字段。

表 5.20. 主体参数
参数类型描述

正文(body)

olmConfig 模式

 
表 5.21. HTTP 响应
HTTP 代码响应正文

200 - OK

olmConfig 模式

201 - Created

olmConfig 模式

401 - Unauthorized

5.2.3. /apis/operators.coreos.com/v1/olmconfigs/{name}/status

表 5.22. 全局路径参数
参数类型描述

name

string

OLMConfig 的名称

表 5.23. 全局查询参数
参数类型描述

pretty

字符串

如果为 'true',则输出会经过 pretty print 处理。

HTTP 方法
GET
描述
指定 OLMConfig 的读取状态
表 5.24. 查询参数
参数类型描述

resourceVersion

字符串

resourceVersion 对可能给请求提供服务的资源版本设置一个约束。详情请查看 https://kubernetes.io/docs/reference/using-api/api-concepts/#resource-versions

默认为未设置

表 5.25. HTTP 响应
HTTP 代码响应正文

200 - OK

olmConfig 模式

401 - Unauthorized

HTTP 方法
PATCH
描述
部分更新指定 OLMConfig 的状态
表 5.26. 查询参数
参数类型描述

dryRun

字符串

出现时,表示不应保留修改。无效的或未被识别的 dryRun 指令将导致错误响应,且请求不会被进一步处理。有效值为: - All: 所有预演阶段都将被处理

fieldManager

字符串

fieldmanager 是与进行这些更改的参与者或实体相关联的名称。该值必须小于或是 128 个字符长,且仅包含可打印的字符,如 https://golang.org/pkg/unicode/#IsPrint 所定义的那样。应用请求(application/apply-patch)需要此字段,但对非应用补丁类型(JsonPatch、MergePatch、MergePatch)是可选的。

fieldValidation

string

fieldValidation 指示服务器如何处理包含了未知或重复字段的请求 (POST/PUT/PATCH) 中的对象。有效值为: - Ignore :忽略从对象中静默丢弃的未知字段,并将忽略所有除最后一个重复字段以外的所有字段。这是 v1.23 版本之前的默认行为- Warn: 这会通过标准的警告响应头为从对象丢弃的每个未知字段以及遇到的每个重复字段,发送警告。如果没有其他错误,请求仍会成功,且只保留重复字段的最后一个。这是 v1.23+ 的的默认行为 - Strict: 如果从对象中删除了任何未知字段,或者存在任何重复字段,请求将失败并带有 BadRequest 错误。从服务器返回的错误将包含遇到的,以及重复的字段。

force

布尔值

强制要"强制"应用请求。这意味着用户将重新分配由其他人员拥有的冲突字段。对于非应用补丁请求,必须取消设置 force 标志。

表 5.27. 主体参数
参数类型描述

正文(body)

Patch 模式

 
表 5.28. HTTP 响应
HTTP 代码响应正文

200 - OK

olmConfig 模式

401 - Unauthorized

HTTP 方法
PUT
描述
替换指定 OLMConfig 的状态
表 5.29. 查询参数
参数类型描述

dryRun

字符串

出现时,表示不应保留修改。无效的或未被识别的 dryRun 指令将导致错误响应,且请求不会被进一步处理。有效值为: - All: 所有预演阶段都将被处理

fieldManager

字符串

fieldmanager 是与进行这些更改的参与者或实体相关联的名称。该值必须小于或是 128 个字符长,且仅包含可打印的字符,如 https://golang.org/pkg/unicode/#IsPrint 所定义的那样。

fieldValidation

string

fieldValidation 指示服务器如何处理包含了未知或重复字段的请求 (POST/PUT/PATCH) 中的对象。有效值为: - Ignore :忽略从对象中静默丢弃的未知字段,并将忽略所有除最后一个重复字段以外的所有字段。这是 v1.23 版本之前的默认行为- Warn: 这会通过标准的警告响应头为从对象丢弃的每个未知字段以及遇到的每个重复字段,发送警告。如果没有其他错误,请求仍会成功,且只保留重复字段的最后一个。这是 v1.23+ 的的默认行为 - Strict: 如果从对象中删除了任何未知字段,或者存在任何重复字段,请求将失败并带有 BadRequest 错误。从服务器返回的错误将包含遇到的,以及重复的字段。

表 5.30. 主体参数
参数类型描述

正文(body)

olmConfig 模式

 
表 5.31. HTTP 响应
HTTP 代码响应正文

200 - OK

olmConfig 模式

201 - Created

olmConfig 模式

401 - Unauthorized

第 6 章 Operator [operators.coreos.com/v1]

描述
Operator 代表集群操作器。
类型
对象

6.1. 规格

属性类型描述

apiVersion

字符串

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

kind

字符串

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

metadata

ObjectMeta

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

spec

对象

OperatorSpec 定义 Operator 的所需状态

status

对象

OperatorStatus 定义 Operator 及其组件的观察状态

6.1.1. .spec

描述
OperatorSpec 定义 Operator 的所需状态
类型
对象

6.1.2. .status

描述
OperatorStatus 定义 Operator 及其组件的观察状态
类型
object
属性类型描述

components

对象

组件描述了组成 Operator 的资源。

6.1.3. .status.components

描述
组件描述了组成 Operator 的资源。
类型
object
必填
  • labelSelector
属性类型描述

labelSelector

对象

labelSelector 是用来选择 Operator 组件的一组资源的标签查询

Refs

array

refs 是一组对 Operator 组件资源的引用,使用 LabelSelector 选择。

refs[]

对象

RichReference 是对资源的引用,其状态条件增强。

6.1.4. .status.components.labelSelector

描述
labelSelector 是用来选择 Operator 组件的一组资源的标签查询
类型
object
属性类型描述

matchExpressions

array

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

matchExpressions[]

对象

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

matchLabels

对象(字符串)

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

6.1.5. .status.components.labelSelector.matchExpressions

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

6.1.6. .status.components.labelSelector.matchExpressions[]

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

key

字符串

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

operator

字符串

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

数组(字符串)

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

6.1.7. .status.components.refs

描述
refs 是一组对 Operator 组件资源的引用,使用 LabelSelector 选择。
类型
array

6.1.8. .status.components.refs[]

描述
RichReference 是对资源的引用,其状态条件增强。
类型
object
属性类型描述

apiVersion

字符串

引用的 API 版本。

conditions

array

conditions 代表组件的最新状态。

conditions[]

对象

条件代表组件状态的最新可用影响。

fieldPath

字符串

如果引用的是对象的一部分而非整个对象,则该字符串应包含有效的 JSON/Go 字段访问声明,如 desiredState.manifest.containers[2]。例如,如果对象引用是一个 pod 中的容器,它应该还以下类似: "spec.containers{name}"(其中 "name" 是指触发事件的容器的名称),如果不使用容器名称,则应类似于 "spec.containers[2]"(使用此 pod 中索引值为 2 的容器)。选择这个语法的原因是,为了有一些指向对象部分的正确定义方法。Todo: 这个设计不是最终设计的,且该字段在将来会有所改变。

kind

字符串

引用的类型。更多信息: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds

name

字符串

引用的名称。更多信息: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names

namespace

字符串

引用的命名空间。更多信息: https://kubernetes.io/docs/concepts/overview/working-with-objects/namespaces/

resourceVersion

字符串

指定构成这个引用的 resourceVersion(如果存在)。更多信息: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#concurrency-control-and-consistency

uid

字符串

引用的 UID。更多信息: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#uids

6.1.9. .status.components.refs[].conditions

描述
conditions 代表组件的最新状态。
类型
array

6.1.10. .status.components.refs[].conditions[]

描述
条件代表组件状态的最新可用影响。
类型
object
必填
  • status
  • type
属性类型描述

lastTransitionTime

字符串

条件从一个状态转换到另一个状态最后一次的时间。

lastUpdateTime

字符串

条件被探测的最后的时间

message

字符串

人类可读的消息,指示有关转换的详细信息。

reason

字符串

条件最后一次转换的原因。

status

字符串

条件的状态,True, False, Unknown 之一。

type

字符串

条件类型。

6.2. API 端点

可用的 API 端点如下:

  • /apis/operators.coreos.com/v1/operators

    • DELETE :删除 Operator 集合
    • GET: 列出类型为 Operator 的对象
    • POST :创建 Operator
  • /apis/operators.coreos.com/v1/operators/{name}

    • DELETE :删除 Operator
    • GET :读取指定的 Operator
    • PATCH: 部分更新指定的 Operator
    • PUT :替换指定的 Operator
  • /apis/operators.coreos.com/v1/operators/{name}/status

    • GET :指定 Operator 的读取状态
    • PATCH: 部分更新指定 Operator 的状态
    • PUT :替换指定 Operator 的状态

6.2.1. /apis/operators.coreos.com/v1/operators

表 6.1. 全局查询参数
参数类型描述

pretty

字符串

如果为 'true',则输出会经过 pretty print 处理。

HTTP 方法
DELETE
描述
删除 Operator 集合
表 6.2. 查询参数
参数类型描述

allowWatchBookmarks

布尔值

allowWatchBookmarks请求类型为“BOOKMARK”的监视事件。不实现书签的服务器可能会忽略这个标志和书签,由服务器自由裁量发送。客户端不应假设书签在任何特定间隔返回,也不会假定服务器在会话期间发送任何 BOOKMARK 事件。如果这不是监视,则忽略此字段。

继续

字符串

从服务器检索更多结果时,应设置 continue 选项。由于这个值是定义的服务器,因此客户端只能使用之前查询结果中的 continue 值,并带有相同的查询参数(除 continue 值除外),因此服务器可能会拒绝它无法识别的值。如果指定的 continue 值不再有效,无论是因为过期时间(通常为 5 到十五分钟)还是服务器上的配置更改,服务器将会与继续令牌一起响应 410 ResourceExpired 错误。如果客户端需要一致的列表,它必须重启其列表,而无需 continue 字段。否则,客户端可能会发送另一个带有 410 错误接收的令牌的列表请求,服务器将以从下一个密钥开始开始的列表响应,但从最新的快照开始,这与上一个列表结果中不一致 - 在第一个列表请求后将包含在响应中,只要它们的密钥位于 "next key" 后。

当 watch 为 true 时不支持此字段。客户端可以从服务器返回的最后一个 resourceVersion 值开始监视,而不丢失任何修改。

fieldSelector

字符串

一个选择器,用于限制其字段返回的对象列表。默认为任何内容。

labelSelector

字符串

一个选择器,用于限制其标签返回的对象列表。默认为任何内容。

limit

整数

limit 是列表调用返回的最大响应数。如果存在更多项目,服务器会将列表元数据上的 continue 字段设置为可用于同一初始查询的值,以检索下一个结果集合。如果过滤所有请求的对象,则设置限制可能会返回少于请求项目数量(最多为零项),并且客户端只应使用 continue 字段的存在,以确定是否有更多结果可用。服务器可能会选择不支持 limit 参数,并返回所有可用的结果。如果指定了 limit,并且 continue 字段为空,客户端可能会假定没有更多结果可用。如果 watch 为 true,则不支持此字段。

服务器保证,在使用时返回的对象将与在没有限制限制的情况下发出单个列表调用相同 - 也就是说,在发出第一个请求后没有创建、修改或删除对象。这有时被称为一致的快照,并确保使用限制来接收非常大结果的较小的块的客户端可确保它们看到所有可能的对象。如果在块列表中更新对象,则返回第一个列表结果时存在的对象版本。

resourceVersion

字符串

resourceVersion 对可能给请求提供服务的资源版本设置一个约束。详情请查看 https://kubernetes.io/docs/reference/using-api/api-concepts/#resource-versions

默认为未设置

resourceVersionMatch

字符串

resourceVersionMatch 决定如何将 resourceVersion 应用到列表调用。强烈建议您为设置 resourceVersion 的 list 调用设置 resourceVersionMatch。详情请参阅 https://kubernetes.io/docs/reference/using-api/api-concepts/#resource-versions

默认为未设置

sendInitialEvents

布尔值

sendInitialEvents=true 可以和 watch=true 一起设置。在这种情况下,观察流将以复合事件开头,以生成集合中对象的当前状态。发送完所有这些事件后,将发送合成"Bookmark"事件。书签将报告与对象集合对应的 ResourceVersion (RV),并使用 "k8s.io/initial-events-end": "true" 注解进行标记。之后,监视流将照常进行,从而向监视的对象发送与更改对应的监视事件(按 RV 排序)。

当设置 sendInitialEvents 选项时,我们还需要设置 resourceVersionMatch 选项。监控请求的语义如下: - resourceVersionMatch = NotOlderThan 解释为"数据至少为提供的 resourceVersion'",当状态同步到 'resourceVersion 时,如果状态同步到 ListOptions 提供的 'resourceVersion 时,会发送书签事件。如果未设置 resourceVersion,则这被解释为"consistent read",当请求开始处理时,将发送书签事件。- resourceVersionMatch 设置为任何其他值或未设置 Invalid 错误。

如果 resourceVersion=""resourceVersion="0" (出于向后兼容原因)和 false,则默认为 true。

timeoutSeconds

整数

列表/watch 调用的超时。这限制了调用的持续时间,无论任何活动或不活跃。

watch

布尔值

观察对所描述资源的更改,并将它们作为添加、更新和删除通知的流返回。指定 resourceVersion。

表 6.3. HTTP 响应
HTTP 代码响应正文

200 - OK

Status 模式

401 - Unauthorized

HTTP 方法
GET
描述
列出 Operator 类型的对象
表 6.4. 查询参数
参数类型描述

allowWatchBookmarks

布尔值

allowWatchBookmarks请求类型为“BOOKMARK”的监视事件。不实现书签的服务器可能会忽略这个标志和书签,由服务器自由裁量发送。客户端不应假设书签在任何特定间隔返回,也不会假定服务器在会话期间发送任何 BOOKMARK 事件。如果这不是监视,则忽略此字段。

继续

字符串

从服务器检索更多结果时,应设置 continue 选项。由于这个值是定义的服务器,因此客户端只能使用之前查询结果中的 continue 值,并带有相同的查询参数(除 continue 值除外),因此服务器可能会拒绝它无法识别的值。如果指定的 continue 值不再有效,无论是因为过期时间(通常为 5 到十五分钟)还是服务器上的配置更改,服务器将会与继续令牌一起响应 410 ResourceExpired 错误。如果客户端需要一致的列表,它必须重启其列表,而无需 continue 字段。否则,客户端可能会发送另一个带有 410 错误接收的令牌的列表请求,服务器将以从下一个密钥开始开始的列表响应,但从最新的快照开始,这与上一个列表结果中不一致 - 在第一个列表请求后将包含在响应中,只要它们的密钥位于 "next key" 后。

当 watch 为 true 时不支持此字段。客户端可以从服务器返回的最后一个 resourceVersion 值开始监视,而不丢失任何修改。

fieldSelector

字符串

一个选择器,用于限制其字段返回的对象列表。默认为任何内容。

labelSelector

字符串

一个选择器,用于限制其标签返回的对象列表。默认为任何内容。

limit

整数

limit 是列表调用返回的最大响应数。如果存在更多项目,服务器会将列表元数据上的 continue 字段设置为可用于同一初始查询的值,以检索下一个结果集合。如果过滤所有请求的对象,则设置限制可能会返回少于请求项目数量(最多为零项),并且客户端只应使用 continue 字段的存在,以确定是否有更多结果可用。服务器可能会选择不支持 limit 参数,并返回所有可用的结果。如果指定了 limit,并且 continue 字段为空,客户端可能会假定没有更多结果可用。如果 watch 为 true,则不支持此字段。

服务器保证,在使用时返回的对象将与在没有限制限制的情况下发出单个列表调用相同 - 也就是说,在发出第一个请求后没有创建、修改或删除对象。这有时被称为一致的快照,并确保使用限制来接收非常大结果的较小的块的客户端可确保它们看到所有可能的对象。如果在块列表中更新对象,则返回第一个列表结果时存在的对象版本。

resourceVersion

字符串

resourceVersion 对可能给请求提供服务的资源版本设置一个约束。详情请查看 https://kubernetes.io/docs/reference/using-api/api-concepts/#resource-versions

默认为未设置

resourceVersionMatch

字符串

resourceVersionMatch 决定如何将 resourceVersion 应用到列表调用。强烈建议您为设置 resourceVersion 的 list 调用设置 resourceVersionMatch。详情请参阅 https://kubernetes.io/docs/reference/using-api/api-concepts/#resource-versions

默认为未设置

sendInitialEvents

布尔值

sendInitialEvents=true 可以和 watch=true 一起设置。在这种情况下,观察流将以复合事件开头,以生成集合中对象的当前状态。发送完所有这些事件后,将发送合成"Bookmark"事件。书签将报告与对象集合对应的 ResourceVersion (RV),并使用 "k8s.io/initial-events-end": "true" 注解进行标记。之后,监视流将照常进行,从而向监视的对象发送与更改对应的监视事件(按 RV 排序)。

当设置 sendInitialEvents 选项时,我们还需要设置 resourceVersionMatch 选项。监控请求的语义如下: - resourceVersionMatch = NotOlderThan 解释为"数据至少为提供的 resourceVersion'",当状态同步到 'resourceVersion 时,如果状态同步到 ListOptions 提供的 'resourceVersion 时,会发送书签事件。如果未设置 resourceVersion,则这被解释为"consistent read",当请求开始处理时,将发送书签事件。- resourceVersionMatch 设置为任何其他值或未设置 Invalid 错误。

如果 resourceVersion=""resourceVersion="0" (出于向后兼容原因)和 false,则默认为 true。

timeoutSeconds

整数

列表/watch 调用的超时。这限制了调用的持续时间,无论任何活动或不活跃。

watch

布尔值

观察对所描述资源的更改,并将它们作为添加、更新和删除通知的流返回。指定 resourceVersion。

表 6.5. HTTP 响应
HTTP 代码响应正文

200 - OK

operatorList 模式

401 - Unauthorized

HTTP 方法
POST
描述
创建 Operator
表 6.6. 查询参数
参数类型描述

dryRun

字符串

出现时,表示不应保留修改。无效的或未被识别的 dryRun 指令将导致错误响应,且请求不会被进一步处理。有效值为: - All: 所有预演阶段都将被处理

fieldManager

字符串

fieldmanager 是与进行这些更改的参与者或实体相关联的名称。该值必须小于或是 128 个字符长,且仅包含可打印的字符,如 https://golang.org/pkg/unicode/#IsPrint 所定义的那样。

fieldValidation

string

fieldValidation 指示服务器如何处理包含了未知或重复字段的请求 (POST/PUT/PATCH) 中的对象。有效值为: - Ignore :忽略从对象中静默丢弃的未知字段,并将忽略所有除最后一个重复字段以外的所有字段。这是 v1.23 版本之前的默认行为- Warn: 这会通过标准的警告响应头为从对象丢弃的每个未知字段以及遇到的每个重复字段,发送警告。如果没有其他错误,请求仍会成功,且只保留重复字段的最后一个。这是 v1.23+ 的的默认行为 - Strict: 如果从对象中删除了任何未知字段,或者存在任何重复字段,请求将失败并带有 BadRequest 错误。从服务器返回的错误将包含遇到的,以及重复的字段。

表 6.7. 主体参数
参数类型描述

正文(body)

Operator 模式

 
表 6.8. HTTP 响应
HTTP 代码响应正文

200 - OK

Operator 模式

201 - Created

Operator 模式

202 - Accepted

Operator 模式

401 - Unauthorized

6.2.2. /apis/operators.coreos.com/v1/operators/{name}

表 6.9. 全局路径参数
参数类型描述

name

字符串

Operator 的名称

表 6.10. 全局查询参数
参数类型描述

pretty

字符串

如果为 'true',则输出会经过 pretty print 处理。

HTTP 方法
DELETE
描述
删除 Operator
表 6.11. 查询参数
参数类型描述

dryRun

字符串

出现时,表示不应保留修改。无效的或未被识别的 dryRun 指令将导致错误响应,且请求不会被进一步处理。有效值为: - All: 所有预演阶段都将被处理

gracePeriodSeconds

整数

应该删除对象前的持续时间(以秒为单位)。值必须是非负整数。值为零表示立即删除。如果这个值是 nil,则会使用指定类型的默认宽限期。如果没有指定,则默认为每个对象值。零表示立即删除。

orphanDependents

布尔值

弃用:请使用 PropagationPolicy,此字段将在 1.7 中弃用。如果依赖对象是孤立的。如果为 true/false,则 "orphan" finalizer 将添加到对象的终结器列表中。可以设置此字段或 PropagationPolicy,但不能同时设置。

propagationPolicy

字符串

是否执行垃圾回收。可以设置此字段或 OrphanDependents,但不能同时设置两者。默认策略由 metadata.finalizers 和特定于资源的默认策略中设置的现有终结器决定。可接受的值有: 'Orphan' - 孤立的依赖项; 'Background' - 允许垃圾收集器删除依赖项,"Foreground' - 删除前台所有依赖的级联策略。

表 6.12. 主体参数
参数类型描述

正文(body)

DeleteOptions 模式

 
表 6.13. HTTP 响应
HTTP 代码响应正文

200 - OK

Status 模式

202 - Accepted

Status 模式

401 - Unauthorized

HTTP 方法
GET
描述
阅读指定的 Operator
表 6.14. 查询参数
参数类型描述

resourceVersion

字符串

resourceVersion 对可能给请求提供服务的资源版本设置一个约束。详情请查看 https://kubernetes.io/docs/reference/using-api/api-concepts/#resource-versions

默认为未设置

表 6.15. HTTP 响应
HTTP 代码响应正文

200 - OK

Operator 模式

401 - Unauthorized

HTTP 方法
PATCH
描述
部分更新指定的 Operator
表 6.16. 查询参数
参数类型描述

dryRun

字符串

出现时,表示不应保留修改。无效的或未被识别的 dryRun 指令将导致错误响应,且请求不会被进一步处理。有效值为: - All: 所有预演阶段都将被处理

fieldManager

字符串

fieldmanager 是与进行这些更改的参与者或实体相关联的名称。该值必须小于或是 128 个字符长,且仅包含可打印的字符,如 https://golang.org/pkg/unicode/#IsPrint 所定义的那样。应用请求(application/apply-patch)需要此字段,但对非应用补丁类型(JsonPatch、MergePatch、MergePatch)是可选的。

fieldValidation

string

fieldValidation 指示服务器如何处理包含了未知或重复字段的请求 (POST/PUT/PATCH) 中的对象。有效值为: - Ignore :忽略从对象中静默丢弃的未知字段,并将忽略所有除最后一个重复字段以外的所有字段。这是 v1.23 版本之前的默认行为- Warn: 这会通过标准的警告响应头为从对象丢弃的每个未知字段以及遇到的每个重复字段,发送警告。如果没有其他错误,请求仍会成功,且只保留重复字段的最后一个。这是 v1.23+ 的的默认行为 - Strict: 如果从对象中删除了任何未知字段,或者存在任何重复字段,请求将失败并带有 BadRequest 错误。从服务器返回的错误将包含遇到的,以及重复的字段。

force

布尔值

强制要"强制"应用请求。这意味着用户将重新分配由其他人员拥有的冲突字段。对于非应用补丁请求,必须取消设置 force 标志。

表 6.17. 主体参数
参数类型描述

正文(body)

Patch 模式

 
表 6.18. HTTP 响应
HTTP 代码响应正文

200 - OK

Operator 模式

401 - Unauthorized

HTTP 方法
PUT
描述
替换指定的 Operator
表 6.19. 查询参数
参数类型描述

dryRun

字符串

出现时,表示不应保留修改。无效的或未被识别的 dryRun 指令将导致错误响应,且请求不会被进一步处理。有效值为: - All: 所有预演阶段都将被处理

fieldManager

字符串

fieldmanager 是与进行这些更改的参与者或实体相关联的名称。该值必须小于或是 128 个字符长,且仅包含可打印的字符,如 https://golang.org/pkg/unicode/#IsPrint 所定义的那样。

fieldValidation

string

fieldValidation 指示服务器如何处理包含了未知或重复字段的请求 (POST/PUT/PATCH) 中的对象。有效值为: - Ignore :忽略从对象中静默丢弃的未知字段,并将忽略所有除最后一个重复字段以外的所有字段。这是 v1.23 版本之前的默认行为- Warn: 这会通过标准的警告响应头为从对象丢弃的每个未知字段以及遇到的每个重复字段,发送警告。如果没有其他错误,请求仍会成功,且只保留重复字段的最后一个。这是 v1.23+ 的的默认行为 - Strict: 如果从对象中删除了任何未知字段,或者存在任何重复字段,请求将失败并带有 BadRequest 错误。从服务器返回的错误将包含遇到的,以及重复的字段。

表 6.20. 主体参数
参数类型描述

正文(body)

Operator 模式

 
表 6.21. HTTP 响应
HTTP 代码响应正文

200 - OK

Operator 模式

201 - Created

Operator 模式

401 - Unauthorized

6.2.3. /apis/operators.coreos.com/v1/operators/{name}/status

表 6.22. 全局路径参数
参数类型描述

name

字符串

Operator 的名称

表 6.23. 全局查询参数
参数类型描述

pretty

字符串

如果为 'true',则输出会经过 pretty print 处理。

HTTP 方法
GET
描述
指定 Operator 的读取状态
表 6.24. 查询参数
参数类型描述

resourceVersion

字符串

resourceVersion 对可能给请求提供服务的资源版本设置一个约束。详情请查看 https://kubernetes.io/docs/reference/using-api/api-concepts/#resource-versions

默认为未设置

表 6.25. HTTP 响应
HTTP 代码响应正文

200 - OK

Operator 模式

401 - Unauthorized

HTTP 方法
PATCH
描述
部分更新指定 Operator 的状态
表 6.26. 查询参数
参数类型描述

dryRun

字符串

出现时,表示不应保留修改。无效的或未被识别的 dryRun 指令将导致错误响应,且请求不会被进一步处理。有效值为: - All: 所有预演阶段都将被处理

fieldManager

字符串

fieldmanager 是与进行这些更改的参与者或实体相关联的名称。该值必须小于或是 128 个字符长,且仅包含可打印的字符,如 https://golang.org/pkg/unicode/#IsPrint 所定义的那样。应用请求(application/apply-patch)需要此字段,但对非应用补丁类型(JsonPatch、MergePatch、MergePatch)是可选的。

fieldValidation

string

fieldValidation 指示服务器如何处理包含了未知或重复字段的请求 (POST/PUT/PATCH) 中的对象。有效值为: - Ignore :忽略从对象中静默丢弃的未知字段,并将忽略所有除最后一个重复字段以外的所有字段。这是 v1.23 版本之前的默认行为- Warn: 这会通过标准的警告响应头为从对象丢弃的每个未知字段以及遇到的每个重复字段,发送警告。如果没有其他错误,请求仍会成功,且只保留重复字段的最后一个。这是 v1.23+ 的的默认行为 - Strict: 如果从对象中删除了任何未知字段,或者存在任何重复字段,请求将失败并带有 BadRequest 错误。从服务器返回的错误将包含遇到的,以及重复的字段。

force

布尔值

强制要"强制"应用请求。这意味着用户将重新分配由其他人员拥有的冲突字段。对于非应用补丁请求,必须取消设置 force 标志。

表 6.27. 主体参数
参数类型描述

正文(body)

Patch 模式

 
表 6.28. HTTP 响应
HTTP 代码响应正文

200 - OK

Operator 模式

401 - Unauthorized

HTTP 方法
PUT
描述
替换指定 Operator 的状态
表 6.29. 查询参数
参数类型描述

dryRun

字符串

出现时,表示不应保留修改。无效的或未被识别的 dryRun 指令将导致错误响应,且请求不会被进一步处理。有效值为: - All: 所有预演阶段都将被处理

fieldManager

字符串

fieldmanager 是与进行这些更改的参与者或实体相关联的名称。该值必须小于或是 128 个字符长,且仅包含可打印的字符,如 https://golang.org/pkg/unicode/#IsPrint 所定义的那样。

fieldValidation

string

fieldValidation 指示服务器如何处理包含了未知或重复字段的请求 (POST/PUT/PATCH) 中的对象。有效值为: - Ignore :忽略从对象中静默丢弃的未知字段,并将忽略所有除最后一个重复字段以外的所有字段。这是 v1.23 版本之前的默认行为- Warn: 这会通过标准的警告响应头为从对象丢弃的每个未知字段以及遇到的每个重复字段,发送警告。如果没有其他错误,请求仍会成功,且只保留重复字段的最后一个。这是 v1.23+ 的的默认行为 - Strict: 如果从对象中删除了任何未知字段,或者存在任何重复字段,请求将失败并带有 BadRequest 错误。从服务器返回的错误将包含遇到的,以及重复的字段。

表 6.30. 主体参数
参数类型描述

正文(body)

Operator 模式

 
表 6.31. HTTP 响应
HTTP 代码响应正文

200 - OK

Operator 模式

201 - Created

Operator 模式

401 - Unauthorized

第 7 章 OperatorCondition [operators.coreos.com/v2]

描述
OperatorCondition 是一个类型为 OperatorCondition 的自定义资源,用于向 OLM 传递有关 Operator 状态的信息。
类型
object
必填
  • metadata

7.1. 规格

属性类型描述

apiVersion

字符串

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

kind

字符串

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

metadata

ObjectMeta

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

spec

对象

OperatorConditionSpec 允许 Operator 向 OLM 报告状态,并为集群管理员提供手动覆盖 Operator 报告的状态的功能。

status

对象

OperatorConditionStatus 允许 OLM 传达观察到哪些条件。

7.1.1. .spec

描述
OperatorConditionSpec 允许 Operator 向 OLM 报告状态,并为集群管理员提供手动覆盖 Operator 报告的状态的功能。
类型
object
属性类型描述

conditions

array

 

conditions[]

对象

条件包含此 API 资源当前状态的一个方面的详情。--- 这个结构旨在直接用作字段路径 .status.conditions 中的数组。例如,输入 FooStatus struct{ // Represents the observations of a foo’s current state. // Known .status.conditions.type are: "Available", "Progressing", and "Degraded" // +patchMergeKey=type // +patchStrategy=merge // +listType=map // +listMapKey=type Conditions []metav1.Condition json:"conditions,omitempty" patchStrategy:"merge" patchMergeKey:"type" protobuf:"bytes,1,rep,name=conditions" // other fields }

部署

数组(字符串)

 

overrides

array

 

overrides[]

对象

条件包含此 API 资源当前状态的一个方面的详情。--- 这个结构旨在直接用作字段路径 .status.conditions 中的数组。例如,输入 FooStatus struct{ // Represents the observations of a foo’s current state. // Known .status.conditions.type are: "Available", "Progressing", and "Degraded" // +patchMergeKey=type // +patchStrategy=merge // +listType=map // +listMapKey=type Conditions []metav1.Condition json:"conditions,omitempty" patchStrategy:"merge" patchMergeKey:"type" protobuf:"bytes,1,rep,name=conditions" // other fields }

serviceAccounts

数组(字符串)

 

7.1.2. .spec.conditions

描述
类型
array

7.1.3. .spec.conditions[]

描述
条件包含此 API 资源当前状态的一个方面的详情。--- 这个结构旨在直接用作字段路径 .status.conditions 中的数组。例如,输入 FooStatus struct{ // Represents the observations of a foo’s current state. // Known .status.conditions.type are: "Available", "Progressing", and "Degraded" // +patchMergeKey=type // +patchStrategy=merge // +listType=map // +listMapKey=type Conditions []metav1.Condition json:"conditions,omitempty" patchStrategy:"merge" patchMergeKey:"type" protobuf:"bytes,1,rep,name=conditions" // other fields }
类型
object
必填
  • lastTransitionTime
  • message
  • reason
  • status
  • type
属性类型描述

lastTransitionTime

字符串

lastTransitionTime 是条件从一个状态转换到另一个状态最后一次的时间。这应该是底层条件变化的时间。如果为未知,则使用 API 字段更改的时间是可以接受的。

message

字符串

Message 是人类可读的消息,指示有关转换的详细信息。这可能是一个空字符串。

observedGeneration

整数

observedGeneration 代表 .metadata.generation,这是条件设置所基于的条件。例如,如果 .metadata.generation 目前为 12,但 .status.conditions[x].observedGeneration 是 9,则代表条件与实例的当前状态已不匹配。

reason

字符串

reason 包含程序标识符,指示条件最后一次转换的原因。特定条件类型的制作者可能会定义预期的值和此字段的含义,以及这些值是否被视为有保证的 API。该值应该是 CamelCase 字符串。此字段可能不是空的。

status

字符串

条件的状态,True, False, Unknown 之一。

type

字符串

CamelCase 或 foo.example.com/CamelCase 中的条件类型。-- Many .condition.type 值在资源间是一致的,但因为任意条件可能很有用(请参阅 .node.status.conditions),deconflict 的能力非常重要。它匹配的正则表达式是 (dns1123SubdomainFmt/)? (qualifiedNameFmt)

7.1.4. .spec.overrides

描述
类型
array

7.1.5. .spec.overrides[]

描述
条件包含此 API 资源当前状态的一个方面的详情。--- 这个结构旨在直接用作字段路径 .status.conditions 中的数组。例如,输入 FooStatus struct{ // Represents the observations of a foo’s current state. // Known .status.conditions.type are: "Available", "Progressing", and "Degraded" // +patchMergeKey=type // +patchStrategy=merge // +listType=map // +listMapKey=type Conditions []metav1.Condition json:"conditions,omitempty" patchStrategy:"merge" patchMergeKey:"type" protobuf:"bytes,1,rep,name=conditions" // other fields }
类型
object
必填
  • message
  • reason
  • status
  • type
属性类型描述

lastTransitionTime

字符串

lastTransitionTime 是条件从一个状态转换到另一个状态最后一次的时间。这应该是底层条件变化的时间。如果为未知,则使用 API 字段更改的时间是可以接受的。

message

字符串

Message 是人类可读的消息,指示有关转换的详细信息。这可能是一个空字符串。

observedGeneration

整数

observedGeneration 代表 .metadata.generation,这是条件设置所基于的条件。例如,如果 .metadata.generation 目前为 12,但 .status.conditions[x].observedGeneration 是 9,则代表条件与实例的当前状态已不匹配。

reason

字符串

reason 包含程序标识符,指示条件最后一次转换的原因。特定条件类型的制作者可能会定义预期的值和此字段的含义,以及这些值是否被视为有保证的 API。该值应该是 CamelCase 字符串。此字段可能不是空的。

status

字符串

条件的状态,True, False, Unknown 之一。

type

字符串

CamelCase 或 foo.example.com/CamelCase 中的条件类型。-- Many .condition.type 值在资源间是一致的,但因为任意条件可能很有用(请参阅 .node.status.conditions),deconflict 的能力非常重要。它匹配的正则表达式是 (dns1123SubdomainFmt/)? (qualifiedNameFmt)

7.1.6. .status

描述
OperatorConditionStatus 允许 OLM 传达观察到哪些条件。
类型
object
属性类型描述

conditions

array

 

conditions[]

对象

条件包含此 API 资源当前状态的一个方面的详情。--- 这个结构旨在直接用作字段路径 .status.conditions 中的数组。例如,输入 FooStatus struct{ // Represents the observations of a foo’s current state. // Known .status.conditions.type are: "Available", "Progressing", and "Degraded" // +patchMergeKey=type // +patchStrategy=merge // +listType=map // +listMapKey=type Conditions []metav1.Condition json:"conditions,omitempty" patchStrategy:"merge" patchMergeKey:"type" protobuf:"bytes,1,rep,name=conditions" // other fields }

7.1.7. .status.conditions

描述
类型
array

7.1.8. .status.conditions[]

描述
条件包含此 API 资源当前状态的一个方面的详情。--- 这个结构旨在直接用作字段路径 .status.conditions 中的数组。例如,输入 FooStatus struct{ // Represents the observations of a foo’s current state. // Known .status.conditions.type are: "Available", "Progressing", and "Degraded" // +patchMergeKey=type // +patchStrategy=merge // +listType=map // +listMapKey=type Conditions []metav1.Condition json:"conditions,omitempty" patchStrategy:"merge" patchMergeKey:"type" protobuf:"bytes,1,rep,name=conditions" // other fields }
类型
object
必填
  • lastTransitionTime
  • message
  • reason
  • status
  • type
属性类型描述

lastTransitionTime

字符串

lastTransitionTime 是条件从一个状态转换到另一个状态最后一次的时间。这应该是底层条件变化的时间。如果为未知,则使用 API 字段更改的时间是可以接受的。

message

字符串

Message 是人类可读的消息,指示有关转换的详细信息。这可能是一个空字符串。

observedGeneration

整数

observedGeneration 代表 .metadata.generation,这是条件设置所基于的条件。例如,如果 .metadata.generation 目前为 12,但 .status.conditions[x].observedGeneration 是 9,则代表条件与实例的当前状态已不匹配。

reason

字符串

reason 包含程序标识符,指示条件最后一次转换的原因。特定条件类型的制作者可能会定义预期的值和此字段的含义,以及这些值是否被视为有保证的 API。该值应该是 CamelCase 字符串。此字段可能不是空的。

status

字符串

条件的状态,True, False, Unknown 之一。

type

字符串

CamelCase 或 foo.example.com/CamelCase 中的条件类型。-- Many .condition.type 值在资源间是一致的,但因为任意条件可能很有用(请参阅 .node.status.conditions),deconflict 的能力非常重要。它匹配的正则表达式是 (dns1123SubdomainFmt/)? (qualifiedNameFmt)

7.2. API 端点

可用的 API 端点如下:

  • /apis/operators.coreos.com/v2/operatorconditions

    • GET: 列出类型为 OperatorCondition 的对象
  • /apis/operators.coreos.com/v2/namespaces/{namespace}/operatorconditions

    • DELETE: 删除 OperatorCondition 集合
    • GET: 列出类型为 OperatorCondition 的对象
    • POST :创建一个 OperatorCondition
  • /apis/operators.coreos.com/v2/namespaces/{namespace}/operatorconditions/{name}

    • DELETE: 删除 OperatorCondition
    • GET :读取指定的 OperatorCondition
    • PATCH: 部分更新指定的 OperatorCondition
    • PUT :替换指定的 OperatorCondition
  • /apis/operators.coreos.com/v2/namespaces/{namespace}/operatorconditions/{name}/status

    • GET :指定 OperatorCondition 的读取状态
    • PATCH: 部分更新指定 OperatorCondition 的状态
    • PUT :替换指定 OperatorCondition 的状态

7.2.1. /apis/operators.coreos.com/v2/operatorconditions

表 7.1. 全局查询参数
参数类型描述

allowWatchBookmarks

布尔值

allowWatchBookmarks请求类型为“BOOKMARK”的监视事件。不实现书签的服务器可能会忽略这个标志和书签,由服务器自由裁量发送。客户端不应假设书签在任何特定间隔返回,也不会假定服务器在会话期间发送任何 BOOKMARK 事件。如果这不是监视,则忽略此字段。

继续

字符串

从服务器检索更多结果时,应设置 continue 选项。由于这个值是定义的服务器,因此客户端只能使用之前查询结果中的 continue 值,并带有相同的查询参数(除 continue 值除外),因此服务器可能会拒绝它无法识别的值。如果指定的 continue 值不再有效,无论是因为过期时间(通常为 5 到十五分钟)还是服务器上的配置更改,服务器将会与继续令牌一起响应 410 ResourceExpired 错误。如果客户端需要一致的列表,它必须重启其列表,而无需 continue 字段。否则,客户端可能会发送另一个带有 410 错误接收的令牌的列表请求,服务器将以从下一个密钥开始开始的列表响应,但从最新的快照开始,这与上一个列表结果中不一致 - 在第一个列表请求后将包含在响应中,只要它们的密钥位于 "next key" 后。

当 watch 为 true 时不支持此字段。客户端可以从服务器返回的最后一个 resourceVersion 值开始监视,而不丢失任何修改。

fieldSelector

字符串

一个选择器,用于限制其字段返回的对象列表。默认为任何内容。

labelSelector

字符串

一个选择器,用于限制其标签返回的对象列表。默认为任何内容。

limit

整数

limit 是列表调用返回的最大响应数。如果存在更多项目,服务器会将列表元数据上的 continue 字段设置为可用于同一初始查询的值,以检索下一个结果集合。如果过滤所有请求的对象,则设置限制可能会返回少于请求项目数量(最多为零项),并且客户端只应使用 continue 字段的存在,以确定是否有更多结果可用。服务器可能会选择不支持 limit 参数,并返回所有可用的结果。如果指定了 limit,并且 continue 字段为空,客户端可能会假定没有更多结果可用。如果 watch 为 true,则不支持此字段。

服务器保证,在使用时返回的对象将与在没有限制限制的情况下发出单个列表调用相同 - 也就是说,在发出第一个请求后没有创建、修改或删除对象。这有时被称为一致的快照,并确保使用限制来接收非常大结果的较小的块的客户端可确保它们看到所有可能的对象。如果在块列表中更新对象,则返回第一个列表结果时存在的对象版本。

pretty

字符串

如果为 'true',则输出会经过 pretty print 处理。

resourceVersion

字符串

resourceVersion 对可能给请求提供服务的资源版本设置一个约束。详情请查看 https://kubernetes.io/docs/reference/using-api/api-concepts/#resource-versions

默认为未设置

resourceVersionMatch

字符串

resourceVersionMatch 决定如何将 resourceVersion 应用到列表调用。强烈建议您为设置 resourceVersion 的 list 调用设置 resourceVersionMatch。详情请参阅 https://kubernetes.io/docs/reference/using-api/api-concepts/#resource-versions

默认为未设置

sendInitialEvents

布尔值

sendInitialEvents=true 可以和 watch=true 一起设置。在这种情况下,观察流将以复合事件开头,以生成集合中对象的当前状态。发送完所有这些事件后,将发送合成"Bookmark"事件。书签将报告与对象集合对应的 ResourceVersion (RV),并使用 "k8s.io/initial-events-end": "true" 注解进行标记。之后,监视流将照常进行,从而向监视的对象发送与更改对应的监视事件(按 RV 排序)。

当设置 sendInitialEvents 选项时,我们还需要设置 resourceVersionMatch 选项。监控请求的语义如下: - resourceVersionMatch = NotOlderThan 解释为"数据至少为提供的 resourceVersion'",当状态同步到 'resourceVersion 时,如果状态同步到 ListOptions 提供的 'resourceVersion 时,会发送书签事件。如果未设置 resourceVersion,则这被解释为"consistent read",当请求开始处理时,将发送书签事件。- resourceVersionMatch 设置为任何其他值或未设置 Invalid 错误。

如果 resourceVersion=""resourceVersion="0" (出于向后兼容原因)和 false,则默认为 true。

timeoutSeconds

整数

列表/watch 调用的超时。这限制了调用的持续时间,无论任何活动或不活跃。

watch

布尔值

观察对所描述资源的更改,并将它们作为添加、更新和删除通知的流返回。指定 resourceVersion。

HTTP 方法
GET
描述
列出 kind OperatorCondition 的对象
表 7.2. HTTP 响应
HTTP 代码响应正文

200 - OK

OperatorConditionList 模式

401 - Unauthorized

7.2.2. /apis/operators.coreos.com/v2/namespaces/{namespace}/operatorconditions

表 7.3. 全局路径参数
参数类型描述

namespace

字符串

对象名称和身份验证范围,如团队(team)和项目(project)

表 7.4. 全局查询参数
参数类型描述

pretty

字符串

如果为 'true',则输出会经过 pretty print 处理。

HTTP 方法
DELETE
描述
删除 OperatorCondition 集合
表 7.5. 查询参数
参数类型描述

allowWatchBookmarks

布尔值

allowWatchBookmarks请求类型为“BOOKMARK”的监视事件。不实现书签的服务器可能会忽略这个标志和书签,由服务器自由裁量发送。客户端不应假设书签在任何特定间隔返回,也不会假定服务器在会话期间发送任何 BOOKMARK 事件。如果这不是监视,则忽略此字段。

继续

字符串

从服务器检索更多结果时,应设置 continue 选项。由于这个值是定义的服务器,因此客户端只能使用之前查询结果中的 continue 值,并带有相同的查询参数(除 continue 值除外),因此服务器可能会拒绝它无法识别的值。如果指定的 continue 值不再有效,无论是因为过期时间(通常为 5 到十五分钟)还是服务器上的配置更改,服务器将会与继续令牌一起响应 410 ResourceExpired 错误。如果客户端需要一致的列表,它必须重启其列表,而无需 continue 字段。否则,客户端可能会发送另一个带有 410 错误接收的令牌的列表请求,服务器将以从下一个密钥开始开始的列表响应,但从最新的快照开始,这与上一个列表结果中不一致 - 在第一个列表请求后将包含在响应中,只要它们的密钥位于 "next key" 后。

当 watch 为 true 时不支持此字段。客户端可以从服务器返回的最后一个 resourceVersion 值开始监视,而不丢失任何修改。

fieldSelector

字符串

一个选择器,用于限制其字段返回的对象列表。默认为任何内容。

labelSelector

字符串

一个选择器,用于限制其标签返回的对象列表。默认为任何内容。

limit

整数

limit 是列表调用返回的最大响应数。如果存在更多项目,服务器会将列表元数据上的 continue 字段设置为可用于同一初始查询的值,以检索下一个结果集合。如果过滤所有请求的对象,则设置限制可能会返回少于请求项目数量(最多为零项),并且客户端只应使用 continue 字段的存在,以确定是否有更多结果可用。服务器可能会选择不支持 limit 参数,并返回所有可用的结果。如果指定了 limit,并且 continue 字段为空,客户端可能会假定没有更多结果可用。如果 watch 为 true,则不支持此字段。

服务器保证,在使用时返回的对象将与在没有限制限制的情况下发出单个列表调用相同 - 也就是说,在发出第一个请求后没有创建、修改或删除对象。这有时被称为一致的快照,并确保使用限制来接收非常大结果的较小的块的客户端可确保它们看到所有可能的对象。如果在块列表中更新对象,则返回第一个列表结果时存在的对象版本。

resourceVersion

字符串

resourceVersion 对可能给请求提供服务的资源版本设置一个约束。详情请查看 https://kubernetes.io/docs/reference/using-api/api-concepts/#resource-versions

默认为未设置

resourceVersionMatch

字符串

resourceVersionMatch 决定如何将 resourceVersion 应用到列表调用。强烈建议您为设置 resourceVersion 的 list 调用设置 resourceVersionMatch。详情请参阅 https://kubernetes.io/docs/reference/using-api/api-concepts/#resource-versions

默认为未设置

sendInitialEvents

布尔值

sendInitialEvents=true 可以和 watch=true 一起设置。在这种情况下,观察流将以复合事件开头,以生成集合中对象的当前状态。发送完所有这些事件后,将发送合成"Bookmark"事件。书签将报告与对象集合对应的 ResourceVersion (RV),并使用 "k8s.io/initial-events-end": "true" 注解进行标记。之后,监视流将照常进行,从而向监视的对象发送与更改对应的监视事件(按 RV 排序)。

当设置 sendInitialEvents 选项时,我们还需要设置 resourceVersionMatch 选项。监控请求的语义如下: - resourceVersionMatch = NotOlderThan 解释为"数据至少为提供的 resourceVersion'",当状态同步到 'resourceVersion 时,如果状态同步到 ListOptions 提供的 'resourceVersion 时,会发送书签事件。如果未设置 resourceVersion,则这被解释为"consistent read",当请求开始处理时,将发送书签事件。- resourceVersionMatch 设置为任何其他值或未设置 Invalid 错误。

如果 resourceVersion=""resourceVersion="0" (出于向后兼容原因)和 false,则默认为 true。

timeoutSeconds

整数

列表/watch 调用的超时。这限制了调用的持续时间,无论任何活动或不活跃。

watch

布尔值

观察对所描述资源的更改,并将它们作为添加、更新和删除通知的流返回。指定 resourceVersion。

表 7.6. HTTP 响应
HTTP 代码响应正文

200 - OK

Status 模式

401 - Unauthorized

HTTP 方法
GET
描述
列出 kind OperatorCondition 的对象
表 7.7. 查询参数
参数类型描述

allowWatchBookmarks

布尔值

allowWatchBookmarks请求类型为“BOOKMARK”的监视事件。不实现书签的服务器可能会忽略这个标志和书签,由服务器自由裁量发送。客户端不应假设书签在任何特定间隔返回,也不会假定服务器在会话期间发送任何 BOOKMARK 事件。如果这不是监视,则忽略此字段。

继续

字符串

从服务器检索更多结果时,应设置 continue 选项。由于这个值是定义的服务器,因此客户端只能使用之前查询结果中的 continue 值,并带有相同的查询参数(除 continue 值除外),因此服务器可能会拒绝它无法识别的值。如果指定的 continue 值不再有效,无论是因为过期时间(通常为 5 到十五分钟)还是服务器上的配置更改,服务器将会与继续令牌一起响应 410 ResourceExpired 错误。如果客户端需要一致的列表,它必须重启其列表,而无需 continue 字段。否则,客户端可能会发送另一个带有 410 错误接收的令牌的列表请求,服务器将以从下一个密钥开始开始的列表响应,但从最新的快照开始,这与上一个列表结果中不一致 - 在第一个列表请求后将包含在响应中,只要它们的密钥位于 "next key" 后。

当 watch 为 true 时不支持此字段。客户端可以从服务器返回的最后一个 resourceVersion 值开始监视,而不丢失任何修改。

fieldSelector

字符串

一个选择器,用于限制其字段返回的对象列表。默认为任何内容。

labelSelector

字符串

一个选择器,用于限制其标签返回的对象列表。默认为任何内容。

limit

整数

limit 是列表调用返回的最大响应数。如果存在更多项目,服务器会将列表元数据上的 continue 字段设置为可用于同一初始查询的值,以检索下一个结果集合。如果过滤所有请求的对象,则设置限制可能会返回少于请求项目数量(最多为零项),并且客户端只应使用 continue 字段的存在,以确定是否有更多结果可用。服务器可能会选择不支持 limit 参数,并返回所有可用的结果。如果指定了 limit,并且 continue 字段为空,客户端可能会假定没有更多结果可用。如果 watch 为 true,则不支持此字段。

服务器保证,在使用时返回的对象将与在没有限制限制的情况下发出单个列表调用相同 - 也就是说,在发出第一个请求后没有创建、修改或删除对象。这有时被称为一致的快照,并确保使用限制来接收非常大结果的较小的块的客户端可确保它们看到所有可能的对象。如果在块列表中更新对象,则返回第一个列表结果时存在的对象版本。

resourceVersion

字符串

resourceVersion 对可能给请求提供服务的资源版本设置一个约束。详情请查看 https://kubernetes.io/docs/reference/using-api/api-concepts/#resource-versions

默认为未设置

resourceVersionMatch

字符串

resourceVersionMatch 决定如何将 resourceVersion 应用到列表调用。强烈建议您为设置 resourceVersion 的 list 调用设置 resourceVersionMatch。详情请参阅 https://kubernetes.io/docs/reference/using-api/api-concepts/#resource-versions

默认为未设置

sendInitialEvents

布尔值

sendInitialEvents=true 可以和 watch=true 一起设置。在这种情况下,观察流将以复合事件开头,以生成集合中对象的当前状态。发送完所有这些事件后,将发送合成"Bookmark"事件。书签将报告与对象集合对应的 ResourceVersion (RV),并使用 "k8s.io/initial-events-end": "true" 注解进行标记。之后,监视流将照常进行,从而向监视的对象发送与更改对应的监视事件(按 RV 排序)。

当设置 sendInitialEvents 选项时,我们还需要设置 resourceVersionMatch 选项。监控请求的语义如下: - resourceVersionMatch = NotOlderThan 解释为"数据至少为提供的 resourceVersion'",当状态同步到 'resourceVersion 时,如果状态同步到 ListOptions 提供的 'resourceVersion 时,会发送书签事件。如果未设置 resourceVersion,则这被解释为"consistent read",当请求开始处理时,将发送书签事件。- resourceVersionMatch 设置为任何其他值或未设置 Invalid 错误。

如果 resourceVersion=""resourceVersion="0" (出于向后兼容原因)和 false,则默认为 true。

timeoutSeconds

整数

列表/watch 调用的超时。这限制了调用的持续时间,无论任何活动或不活跃。

watch

布尔值

观察对所描述资源的更改,并将它们作为添加、更新和删除通知的流返回。指定 resourceVersion。

表 7.8. HTTP 响应
HTTP 代码响应正文

200 - OK

OperatorConditionList 模式

401 - Unauthorized

HTTP 方法
POST
描述
创建 OperatorCondition
表 7.9. 查询参数
参数类型描述

dryRun

字符串

出现时,表示不应保留修改。无效的或未被识别的 dryRun 指令将导致错误响应,且请求不会被进一步处理。有效值为: - All: 所有预演阶段都将被处理

fieldManager

字符串

fieldmanager 是与进行这些更改的参与者或实体相关联的名称。该值必须小于或是 128 个字符长,且仅包含可打印的字符,如 https://golang.org/pkg/unicode/#IsPrint 所定义的那样。

fieldValidation

string

fieldValidation 指示服务器如何处理包含了未知或重复字段的请求 (POST/PUT/PATCH) 中的对象。有效值为: - Ignore :忽略从对象中静默丢弃的未知字段,并将忽略所有除最后一个重复字段以外的所有字段。这是 v1.23 版本之前的默认行为- Warn: 这会通过标准的警告响应头为从对象丢弃的每个未知字段以及遇到的每个重复字段,发送警告。如果没有其他错误,请求仍会成功,且只保留重复字段的最后一个。这是 v1.23+ 的的默认行为 - Strict: 如果从对象中删除了任何未知字段,或者存在任何重复字段,请求将失败并带有 BadRequest 错误。从服务器返回的错误将包含遇到的,以及重复的字段。

表 7.10. 主体参数
参数类型描述

正文(body)

OperatorCondition 模式

 
表 7.11. HTTP 响应
HTTP 代码响应正文

200 - OK

OperatorCondition 模式

201 - Created

OperatorCondition 模式

202 - Accepted

OperatorCondition 模式

401 - Unauthorized

7.2.3. /apis/operators.coreos.com/v2/namespaces/{namespace}/operatorconditions/{name}

表 7.12. 全局路径参数
参数类型描述

name

字符串

OperatorCondition 的名称

namespace

字符串

对象名称和身份验证范围,如团队(team)和项目(project)

表 7.13. 全局查询参数
参数类型描述

pretty

字符串

如果为 'true',则输出会经过 pretty print 处理。

HTTP 方法
DELETE
描述
删除 OperatorCondition
表 7.14. 查询参数
参数类型描述

dryRun

字符串

出现时,表示不应保留修改。无效的或未被识别的 dryRun 指令将导致错误响应,且请求不会被进一步处理。有效值为: - All: 所有预演阶段都将被处理

gracePeriodSeconds

整数

应该删除对象前的持续时间(以秒为单位)。值必须是非负整数。值为零表示立即删除。如果这个值是 nil,则会使用指定类型的默认宽限期。如果没有指定,则默认为每个对象值。零表示立即删除。

orphanDependents

布尔值

弃用:请使用 PropagationPolicy,此字段将在 1.7 中弃用。如果依赖对象是孤立的。如果为 true/false,则 "orphan" finalizer 将添加到对象的终结器列表中。可以设置此字段或 PropagationPolicy,但不能同时设置。

propagationPolicy

字符串

是否执行垃圾回收。可以设置此字段或 OrphanDependents,但不能同时设置两者。默认策略由 metadata.finalizers 和特定于资源的默认策略中设置的现有终结器决定。可接受的值有: 'Orphan' - 孤立的依赖项; 'Background' - 允许垃圾收集器删除依赖项,"Foreground' - 删除前台所有依赖的级联策略。

表 7.15. 主体参数
参数类型描述

正文(body)

DeleteOptions 模式

 
表 7.16. HTTP 响应
HTTP 代码响应正文

200 - OK

Status 模式

202 - Accepted

Status 模式

401 - Unauthorized

HTTP 方法
GET
描述
阅读指定的 OperatorCondition
表 7.17. 查询参数
参数类型描述

resourceVersion

字符串

resourceVersion 对可能给请求提供服务的资源版本设置一个约束。详情请查看 https://kubernetes.io/docs/reference/using-api/api-concepts/#resource-versions

默认为未设置

表 7.18. HTTP 响应
HTTP 代码响应正文

200 - OK

OperatorCondition 模式

401 - Unauthorized

HTTP 方法
PATCH
描述
部分更新指定的 OperatorCondition
表 7.19. 查询参数
参数类型描述

dryRun

字符串

出现时,表示不应保留修改。无效的或未被识别的 dryRun 指令将导致错误响应,且请求不会被进一步处理。有效值为: - All: 所有预演阶段都将被处理

fieldManager

字符串

fieldmanager 是与进行这些更改的参与者或实体相关联的名称。该值必须小于或是 128 个字符长,且仅包含可打印的字符,如 https://golang.org/pkg/unicode/#IsPrint 所定义的那样。应用请求(application/apply-patch)需要此字段,但对非应用补丁类型(JsonPatch、MergePatch、MergePatch)是可选的。

fieldValidation

string

fieldValidation 指示服务器如何处理包含了未知或重复字段的请求 (POST/PUT/PATCH) 中的对象。有效值为: - Ignore :忽略从对象中静默丢弃的未知字段,并将忽略所有除最后一个重复字段以外的所有字段。这是 v1.23 版本之前的默认行为- Warn: 这会通过标准的警告响应头为从对象丢弃的每个未知字段以及遇到的每个重复字段,发送警告。如果没有其他错误,请求仍会成功,且只保留重复字段的最后一个。这是 v1.23+ 的的默认行为 - Strict: 如果从对象中删除了任何未知字段,或者存在任何重复字段,请求将失败并带有 BadRequest 错误。从服务器返回的错误将包含遇到的,以及重复的字段。

force

布尔值

强制要"强制"应用请求。这意味着用户将重新分配由其他人员拥有的冲突字段。对于非应用补丁请求,必须取消设置 force 标志。

表 7.20. 主体参数
参数类型描述

正文(body)

Patch 模式

 
表 7.21. HTTP 响应
HTTP 代码响应正文

200 - OK

OperatorCondition 模式

401 - Unauthorized

HTTP 方法
PUT
描述
替换指定的 OperatorCondition
表 7.22. 查询参数
参数类型描述

dryRun

字符串

出现时,表示不应保留修改。无效的或未被识别的 dryRun 指令将导致错误响应,且请求不会被进一步处理。有效值为: - All: 所有预演阶段都将被处理

fieldManager

字符串

fieldmanager 是与进行这些更改的参与者或实体相关联的名称。该值必须小于或是 128 个字符长,且仅包含可打印的字符,如 https://golang.org/pkg/unicode/#IsPrint 所定义的那样。

fieldValidation

string

fieldValidation 指示服务器如何处理包含了未知或重复字段的请求 (POST/PUT/PATCH) 中的对象。有效值为: - Ignore :忽略从对象中静默丢弃的未知字段,并将忽略所有除最后一个重复字段以外的所有字段。这是 v1.23 版本之前的默认行为- Warn: 这会通过标准的警告响应头为从对象丢弃的每个未知字段以及遇到的每个重复字段,发送警告。如果没有其他错误,请求仍会成功,且只保留重复字段的最后一个。这是 v1.23+ 的的默认行为 - Strict: 如果从对象中删除了任何未知字段,或者存在任何重复字段,请求将失败并带有 BadRequest 错误。从服务器返回的错误将包含遇到的,以及重复的字段。

表 7.23. 主体参数
参数类型描述

正文(body)

OperatorCondition 模式

 
表 7.24. HTTP 响应
HTTP 代码响应正文

200 - OK

OperatorCondition 模式

201 - Created

OperatorCondition 模式

401 - Unauthorized

7.2.4. /apis/operators.coreos.com/v2/namespaces/{namespace}/operatorconditions/{name}/status

表 7.25. 全局路径参数
参数类型描述

name

字符串

OperatorCondition 的名称

namespace

字符串

对象名称和身份验证范围,如团队(team)和项目(project)

表 7.26. 全局查询参数
参数类型描述

pretty

字符串

如果为 'true',则输出会经过 pretty print 处理。

HTTP 方法
GET
描述
指定 OperatorCondition 的读取状态
表 7.27. 查询参数
参数类型描述

resourceVersion

字符串

resourceVersion 对可能给请求提供服务的资源版本设置一个约束。详情请查看 https://kubernetes.io/docs/reference/using-api/api-concepts/#resource-versions

默认为未设置

表 7.28. HTTP 响应
HTTP 代码响应正文

200 - OK

OperatorCondition 模式

401 - Unauthorized

HTTP 方法
PATCH
描述
部分更新指定 OperatorCondition 的状态
表 7.29. 查询参数
参数类型描述

dryRun

字符串

出现时,表示不应保留修改。无效的或未被识别的 dryRun 指令将导致错误响应,且请求不会被进一步处理。有效值为: - All: 所有预演阶段都将被处理

fieldManager

字符串

fieldmanager 是与进行这些更改的参与者或实体相关联的名称。该值必须小于或是 128 个字符长,且仅包含可打印的字符,如 https://golang.org/pkg/unicode/#IsPrint 所定义的那样。应用请求(application/apply-patch)需要此字段,但对非应用补丁类型(JsonPatch、MergePatch、MergePatch)是可选的。

fieldValidation

string

fieldValidation 指示服务器如何处理包含了未知或重复字段的请求 (POST/PUT/PATCH) 中的对象。有效值为: - Ignore :忽略从对象中静默丢弃的未知字段,并将忽略所有除最后一个重复字段以外的所有字段。这是 v1.23 版本之前的默认行为- Warn: 这会通过标准的警告响应头为从对象丢弃的每个未知字段以及遇到的每个重复字段,发送警告。如果没有其他错误,请求仍会成功,且只保留重复字段的最后一个。这是 v1.23+ 的的默认行为 - Strict: 如果从对象中删除了任何未知字段,或者存在任何重复字段,请求将失败并带有 BadRequest 错误。从服务器返回的错误将包含遇到的,以及重复的字段。

force

布尔值

强制要"强制"应用请求。这意味着用户将重新分配由其他人员拥有的冲突字段。对于非应用补丁请求,必须取消设置 force 标志。

表 7.30. 主体参数
参数类型描述

正文(body)

Patch 模式

 
表 7.31. HTTP 响应
HTTP 代码响应正文

200 - OK

OperatorCondition 模式

401 - Unauthorized

HTTP 方法
PUT
描述
替换指定 OperatorCondition 的状态
表 7.32. 查询参数
参数类型描述

dryRun

字符串

出现时,表示不应保留修改。无效的或未被识别的 dryRun 指令将导致错误响应,且请求不会被进一步处理。有效值为: - All: 所有预演阶段都将被处理

fieldManager

字符串

fieldmanager 是与进行这些更改的参与者或实体相关联的名称。该值必须小于或是 128 个字符长,且仅包含可打印的字符,如 https://golang.org/pkg/unicode/#IsPrint 所定义的那样。

fieldValidation

string

fieldValidation 指示服务器如何处理包含了未知或重复字段的请求 (POST/PUT/PATCH) 中的对象。有效值为: - Ignore :忽略从对象中静默丢弃的未知字段,并将忽略所有除最后一个重复字段以外的所有字段。这是 v1.23 版本之前的默认行为- Warn: 这会通过标准的警告响应头为从对象丢弃的每个未知字段以及遇到的每个重复字段,发送警告。如果没有其他错误,请求仍会成功,且只保留重复字段的最后一个。这是 v1.23+ 的的默认行为 - Strict: 如果从对象中删除了任何未知字段,或者存在任何重复字段,请求将失败并带有 BadRequest 错误。从服务器返回的错误将包含遇到的,以及重复的字段。

表 7.33. 主体参数
参数类型描述

正文(body)

OperatorCondition 模式

 
表 7.34. HTTP 响应
HTTP 代码响应正文

200 - OK

OperatorCondition 模式

201 - Created

OperatorCondition 模式

401 - Unauthorized

第 8 章 OperatorGroup [operators.coreos.com/v1]

描述
OperatorGroup 是 OLM 管理的 Operator 的多租户单元。它将 Operator 的安装限制到一组指定的目标命名空间。
类型
object
必填
  • metadata

8.1. 规格

属性类型描述

apiVersion

字符串

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

kind

字符串

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

metadata

ObjectMeta

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

spec

对象

OperatorGroupSpec 是 OperatorGroup 资源的 spec。

status

对象

OperatorGroupStatus 是 OperatorGroupResource 的状态。

8.1.1. .spec

描述
OperatorGroupSpec 是 OperatorGroup 资源的 spec。
类型
object
属性类型描述

selector

对象

selector 选择 OperatorGroup 的目标命名空间。

serviceAccountName

字符串

serviceAccountName 是 admin 指定的服务帐户,它将在此 operator 组中部署 operator。

staticProvidedAPIs

布尔值

静态告诉 OLM 不会更新 OperatorGroup 的提供的API 注解

targetNamespaces

数组(字符串)

targetNamespaces 是要目标的一组明确的命名空间。如果设置了,则忽略 Selector。

upgradeStrategy

string

UpgradeStrategy 为命名空间中的 Operator 定义升级策略。目前有两种支持的升级策略: Default: OLM 只允许 clusterServiceVersions 从 succeeded 阶段移到替换阶段。这实际上意味着,如果安装或升级失败时,OLM 不允许 Operator 移至下一版本。TechPreviewUnsafeFailForward:OLM 将允许 clusterServiceVersions 从成功阶段或失败的阶段移到替换阶段。另外,当订阅引用失败的 installPlan 且使用现有 Operator 集合的新升级来更新目录时,OLM 将生成新的 installPlans。警告: TechPreviewUnsafeFailForward 升级策略不安全,并可能导致意外行为或无法恢复的数据丢失,除非您深入了解在命名空间中管理的 Operator 集合。

8.1.2. .spec.selector

描述
selector 选择 OperatorGroup 的目标命名空间。
类型
object
属性类型描述

matchExpressions

array

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

matchExpressions[]

对象

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

matchLabels

对象(字符串)

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

8.1.3. .spec.selector.matchExpressions

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

8.1.4. .spec.selector.matchExpressions[]

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

key

字符串

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

operator

字符串

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

数组(字符串)

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

8.1.5. .status

描述
OperatorGroupStatus 是 OperatorGroupResource 的状态。
类型
object
必填
  • lastUpdated
属性类型描述

conditions

array

条件是 OperatorGroup 条件的数组。

conditions[]

对象

条件包含此 API 资源当前状态的一个方面的详情。--- 这个结构旨在直接用作字段路径 .status.conditions 中的数组。例如,输入 FooStatus struct{ // Represents the observations of a foo’s current state. // Known .status.conditions.type are: "Available", "Progressing", and "Degraded" // +patchMergeKey=type // +patchStrategy=merge // +listType=map // +listMapKey=type Conditions []metav1.Condition json:"conditions,omitempty" patchStrategy:"merge" patchMergeKey:"type" protobuf:"bytes,1,rep,name=conditions" // other fields }

lastUpdated

字符串

lastUpdated 是 OperatorGroup 最后一次更新状态的时间戳。

命名空间

数组(字符串)

namespace 是 OperatorGroup 的目标命名空间集。

serviceAccountRef

对象

serviceAccountRef 引用指定的服务帐户对象。

8.1.6. .status.conditions

描述
条件是 OperatorGroup 条件的数组。
类型
array

8.1.7. .status.conditions[]

描述
条件包含此 API 资源当前状态的一个方面的详情。--- 这个结构旨在直接用作字段路径 .status.conditions 中的数组。例如,输入 FooStatus struct{ // Represents the observations of a foo’s current state. // Known .status.conditions.type are: "Available", "Progressing", and "Degraded" // +patchMergeKey=type // +patchStrategy=merge // +listType=map // +listMapKey=type Conditions []metav1.Condition json:"conditions,omitempty" patchStrategy:"merge" patchMergeKey:"type" protobuf:"bytes,1,rep,name=conditions" // other fields }
类型
object
必填
  • lastTransitionTime
  • message
  • reason
  • status
  • type
属性类型描述

lastTransitionTime

字符串

lastTransitionTime 是条件从一个状态转换到另一个状态最后一次的时间。这应该是底层条件变化的时间。如果为未知,则使用 API 字段更改的时间是可以接受的。

message

字符串

Message 是人类可读的消息,指示有关转换的详细信息。这可能是一个空字符串。

observedGeneration

整数

observedGeneration 代表 .metadata.generation,这是条件设置所基于的条件。例如,如果 .metadata.generation 目前为 12,但 .status.conditions[x].observedGeneration 是 9,则代表条件与实例的当前状态已不匹配。

reason

字符串

reason 包含程序标识符,指示条件最后一次转换的原因。特定条件类型的制作者可能会定义预期的值和此字段的含义,以及这些值是否被视为有保证的 API。该值应该是 CamelCase 字符串。此字段可能不是空的。

status

字符串

条件的状态,True, False, Unknown 之一。

type

字符串

CamelCase 或 foo.example.com/CamelCase 中的条件类型。-- Many .condition.type 值在资源间是一致的,但因为任意条件可能很有用(请参阅 .node.status.conditions),deconflict 的能力非常重要。它匹配的正则表达式是 (dns1123SubdomainFmt/)? (qualifiedNameFmt)

8.1.8. .status.serviceAccountRef

描述
serviceAccountRef 引用指定的服务帐户对象。
类型
object
属性类型描述

apiVersion

字符串

引用的 API 版本。

fieldPath

字符串

如果引用的是对象的一部分而非整个对象,则该字符串应包含有效的 JSON/Go 字段访问声明,如 desiredState.manifest.containers[2]。例如,如果对象引用是一个 pod 中的容器,它应该还以下类似: "spec.containers{name}"(其中 "name" 是指触发事件的容器的名称),如果不使用容器名称,则应类似于 "spec.containers[2]"(使用此 pod 中索引值为 2 的容器)。选择这个语法的原因是,为了有一些指向对象部分的正确定义方法。Todo: 这个设计不是最终设计的,且该字段在将来会有所改变。

kind

字符串

引用的类型。更多信息: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds

name

字符串

引用的名称。更多信息: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names

namespace

字符串

引用的命名空间。更多信息: https://kubernetes.io/docs/concepts/overview/working-with-objects/namespaces/

resourceVersion

字符串

指定构成这个引用的 resourceVersion(如果存在)。更多信息: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#concurrency-control-and-consistency

uid

字符串

引用的 UID。更多信息: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#uids

8.2. API 端点

可用的 API 端点如下:

  • /apis/operators.coreos.com/v1/operatorgroups

    • GET :列出 OperatorGroup 类型的对象
  • /apis/operators.coreos.com/v1/namespaces/{namespace}/operatorgroups

    • DELETE :删除 OperatorGroup 集合
    • GET :列出 OperatorGroup 类型的对象
    • POST :创建 OperatorGroup
  • /apis/operators.coreos.com/v1/namespaces/{namespace}/operatorgroups/{name}

    • DELETE :删除 OperatorGroup
    • GET :读取指定的 OperatorGroup
    • PATCH: 部分更新指定的 OperatorGroup
    • PUT :替换指定的 OperatorGroup
  • /apis/operators.coreos.com/v1/namespaces/{namespace}/operatorgroups/{name}/status

    • GET :指定 OperatorGroup 的读取状态
    • PATCH: 部分更新指定 OperatorGroup 的状态
    • PUT :替换指定 OperatorGroup 的状态

8.2.1. /apis/operators.coreos.com/v1/operatorgroups

表 8.1. 全局查询参数
参数类型描述

allowWatchBookmarks

布尔值

allowWatchBookmarks请求类型为“BOOKMARK”的监视事件。不实现书签的服务器可能会忽略这个标志和书签,由服务器自由裁量发送。客户端不应假设书签在任何特定间隔返回,也不会假定服务器在会话期间发送任何 BOOKMARK 事件。如果这不是监视,则忽略此字段。

继续

字符串

从服务器检索更多结果时,应设置 continue 选项。由于这个值是定义的服务器,因此客户端只能使用之前查询结果中的 continue 值,并带有相同的查询参数(除 continue 值除外),因此服务器可能会拒绝它无法识别的值。如果指定的 continue 值不再有效,无论是因为过期时间(通常为 5 到十五分钟)还是服务器上的配置更改,服务器将会与继续令牌一起响应 410 ResourceExpired 错误。如果客户端需要一致的列表,它必须重启其列表,而无需 continue 字段。否则,客户端可能会发送另一个带有 410 错误接收的令牌的列表请求,服务器将以从下一个密钥开始开始的列表响应,但从最新的快照开始,这与上一个列表结果中不一致 - 在第一个列表请求后将包含在响应中,只要它们的密钥位于 "next key" 后。

当 watch 为 true 时不支持此字段。客户端可以从服务器返回的最后一个 resourceVersion 值开始监视,而不丢失任何修改。

fieldSelector

字符串

一个选择器,用于限制其字段返回的对象列表。默认为任何内容。

labelSelector

字符串

一个选择器,用于限制其标签返回的对象列表。默认为任何内容。

limit

整数

limit 是列表调用返回的最大响应数。如果存在更多项目,服务器会将列表元数据上的 continue 字段设置为可用于同一初始查询的值,以检索下一个结果集合。如果过滤所有请求的对象,则设置限制可能会返回少于请求项目数量(最多为零项),并且客户端只应使用 continue 字段的存在,以确定是否有更多结果可用。服务器可能会选择不支持 limit 参数,并返回所有可用的结果。如果指定了 limit,并且 continue 字段为空,客户端可能会假定没有更多结果可用。如果 watch 为 true,则不支持此字段。

服务器保证,在使用时返回的对象将与在没有限制限制的情况下发出单个列表调用相同 - 也就是说,在发出第一个请求后没有创建、修改或删除对象。这有时被称为一致的快照,并确保使用限制来接收非常大结果的较小的块的客户端可确保它们看到所有可能的对象。如果在块列表中更新对象,则返回第一个列表结果时存在的对象版本。

pretty

字符串

如果为 'true',则输出会经过 pretty print 处理。

resourceVersion

字符串

resourceVersion 对可能给请求提供服务的资源版本设置一个约束。详情请查看 https://kubernetes.io/docs/reference/using-api/api-concepts/#resource-versions

默认为未设置

resourceVersionMatch

字符串

resourceVersionMatch 决定如何将 resourceVersion 应用到列表调用。强烈建议您为设置 resourceVersion 的 list 调用设置 resourceVersionMatch。详情请参阅 https://kubernetes.io/docs/reference/using-api/api-concepts/#resource-versions

默认为未设置

sendInitialEvents

布尔值

sendInitialEvents=true 可以和 watch=true 一起设置。在这种情况下,观察流将以复合事件开头,以生成集合中对象的当前状态。发送完所有这些事件后,将发送合成"Bookmark"事件。书签将报告与对象集合对应的 ResourceVersion (RV),并使用 "k8s.io/initial-events-end": "true" 注解进行标记。之后,监视流将照常进行,从而向监视的对象发送与更改对应的监视事件(按 RV 排序)。

当设置 sendInitialEvents 选项时,我们还需要设置 resourceVersionMatch 选项。监控请求的语义如下: - resourceVersionMatch = NotOlderThan 解释为"数据至少为提供的 resourceVersion'",当状态同步到 'resourceVersion 时,如果状态同步到 ListOptions 提供的 'resourceVersion 时,会发送书签事件。如果未设置 resourceVersion,则这被解释为"consistent read",当请求开始处理时,将发送书签事件。- resourceVersionMatch 设置为任何其他值或未设置 Invalid 错误。

如果 resourceVersion=""resourceVersion="0" (出于向后兼容原因)和 false,则默认为 true。

timeoutSeconds

整数

列表/watch 调用的超时。这限制了调用的持续时间,无论任何活动或不活跃。

watch

布尔值

观察对所描述资源的更改,并将它们作为添加、更新和删除通知的流返回。指定 resourceVersion。

HTTP 方法
GET
描述
列出 OperatorGroup 类型的对象
表 8.2. HTTP 响应
HTTP 代码响应正文

200 - OK

OperatorGroupList 模式

401 - Unauthorized

8.2.2. /apis/operators.coreos.com/v1/namespaces/{namespace}/operatorgroups

表 8.3. 全局路径参数
参数类型描述

namespace

字符串

对象名称和身份验证范围,如团队(team)和项目(project)

表 8.4. 全局查询参数
参数类型描述

pretty

字符串

如果为 'true',则输出会经过 pretty print 处理。

HTTP 方法
DELETE
描述
删除 OperatorGroup 集合
表 8.5. 查询参数
参数类型描述

allowWatchBookmarks

布尔值

allowWatchBookmarks请求类型为“BOOKMARK”的监视事件。不实现书签的服务器可能会忽略这个标志和书签,由服务器自由裁量发送。客户端不应假设书签在任何特定间隔返回,也不会假定服务器在会话期间发送任何 BOOKMARK 事件。如果这不是监视,则忽略此字段。

继续

字符串

从服务器检索更多结果时,应设置 continue 选项。由于这个值是定义的服务器,因此客户端只能使用之前查询结果中的 continue 值,并带有相同的查询参数(除 continue 值除外),因此服务器可能会拒绝它无法识别的值。如果指定的 continue 值不再有效,无论是因为过期时间(通常为 5 到十五分钟)还是服务器上的配置更改,服务器将会与继续令牌一起响应 410 ResourceExpired 错误。如果客户端需要一致的列表,它必须重启其列表,而无需 continue 字段。否则,客户端可能会发送另一个带有 410 错误接收的令牌的列表请求,服务器将以从下一个密钥开始开始的列表响应,但从最新的快照开始,这与上一个列表结果中不一致 - 在第一个列表请求后将包含在响应中,只要它们的密钥位于 "next key" 后。

当 watch 为 true 时不支持此字段。客户端可以从服务器返回的最后一个 resourceVersion 值开始监视,而不丢失任何修改。

fieldSelector

字符串

一个选择器,用于限制其字段返回的对象列表。默认为任何内容。

labelSelector

字符串

一个选择器,用于限制其标签返回的对象列表。默认为任何内容。

limit

整数

limit 是列表调用返回的最大响应数。如果存在更多项目,服务器会将列表元数据上的 continue 字段设置为可用于同一初始查询的值,以检索下一个结果集合。如果过滤所有请求的对象,则设置限制可能会返回少于请求项目数量(最多为零项),并且客户端只应使用 continue 字段的存在,以确定是否有更多结果可用。服务器可能会选择不支持 limit 参数,并返回所有可用的结果。如果指定了 limit,并且 continue 字段为空,客户端可能会假定没有更多结果可用。如果 watch 为 true,则不支持此字段。

服务器保证,在使用时返回的对象将与在没有限制限制的情况下发出单个列表调用相同 - 也就是说,在发出第一个请求后没有创建、修改或删除对象。这有时被称为一致的快照,并确保使用限制来接收非常大结果的较小的块的客户端可确保它们看到所有可能的对象。如果在块列表中更新对象,则返回第一个列表结果时存在的对象版本。

resourceVersion

字符串

resourceVersion 对可能给请求提供服务的资源版本设置一个约束。详情请查看 https://kubernetes.io/docs/reference/using-api/api-concepts/#resource-versions

默认为未设置

resourceVersionMatch

字符串

resourceVersionMatch 决定如何将 resourceVersion 应用到列表调用。强烈建议您为设置 resourceVersion 的 list 调用设置 resourceVersionMatch。详情请参阅 https://kubernetes.io/docs/reference/using-api/api-concepts/#resource-versions

默认为未设置

sendInitialEvents

布尔值

sendInitialEvents=true 可以和 watch=true 一起设置。在这种情况下,观察流将以复合事件开头,以生成集合中对象的当前状态。发送完所有这些事件后,将发送合成"Bookmark"事件。书签将报告与对象集合对应的 ResourceVersion (RV),并使用 "k8s.io/initial-events-end": "true" 注解进行标记。之后,监视流将照常进行,从而向监视的对象发送与更改对应的监视事件(按 RV 排序)。

当设置 sendInitialEvents 选项时,我们还需要设置 resourceVersionMatch 选项。监控请求的语义如下: - resourceVersionMatch = NotOlderThan 解释为"数据至少为提供的 resourceVersion'",当状态同步到 'resourceVersion 时,如果状态同步到 ListOptions 提供的 'resourceVersion 时,会发送书签事件。如果未设置 resourceVersion,则这被解释为"consistent read",当请求开始处理时,将发送书签事件。- resourceVersionMatch 设置为任何其他值或未设置 Invalid 错误。

如果 resourceVersion=""resourceVersion="0" (出于向后兼容原因)和 false,则默认为 true。

timeoutSeconds

整数

列表/watch 调用的超时。这限制了调用的持续时间,无论任何活动或不活跃。

watch

布尔值

观察对所描述资源的更改,并将它们作为添加、更新和删除通知的流返回。指定 resourceVersion。

表 8.6. HTTP 响应
HTTP 代码响应正文

200 - OK

Status 模式

401 - Unauthorized

HTTP 方法
GET
描述
列出 OperatorGroup 类型的对象
表 8.7. 查询参数
参数类型描述

allowWatchBookmarks

布尔值

allowWatchBookmarks请求类型为“BOOKMARK”的监视事件。不实现书签的服务器可能会忽略这个标志和书签,由服务器自由裁量发送。客户端不应假设书签在任何特定间隔返回,也不会假定服务器在会话期间发送任何 BOOKMARK 事件。如果这不是监视,则忽略此字段。

继续

字符串

从服务器检索更多结果时,应设置 continue 选项。由于这个值是定义的服务器,因此客户端只能使用之前查询结果中的 continue 值,并带有相同的查询参数(除 continue 值除外),因此服务器可能会拒绝它无法识别的值。如果指定的 continue 值不再有效,无论是因为过期时间(通常为 5 到十五分钟)还是服务器上的配置更改,服务器将会与继续令牌一起响应 410 ResourceExpired 错误。如果客户端需要一致的列表,它必须重启其列表,而无需 continue 字段。否则,客户端可能会发送另一个带有 410 错误接收的令牌的列表请求,服务器将以从下一个密钥开始开始的列表响应,但从最新的快照开始,这与上一个列表结果中不一致 - 在第一个列表请求后将包含在响应中,只要它们的密钥位于 "next key" 后。

当 watch 为 true 时不支持此字段。客户端可以从服务器返回的最后一个 resourceVersion 值开始监视,而不丢失任何修改。

fieldSelector

字符串

一个选择器,用于限制其字段返回的对象列表。默认为任何内容。

labelSelector

字符串

一个选择器,用于限制其标签返回的对象列表。默认为任何内容。

limit

整数

limit 是列表调用返回的最大响应数。如果存在更多项目,服务器会将列表元数据上的 continue 字段设置为可用于同一初始查询的值,以检索下一个结果集合。如果过滤所有请求的对象,则设置限制可能会返回少于请求项目数量(最多为零项),并且客户端只应使用 continue 字段的存在,以确定是否有更多结果可用。服务器可能会选择不支持 limit 参数,并返回所有可用的结果。如果指定了 limit,并且 continue 字段为空,客户端可能会假定没有更多结果可用。如果 watch 为 true,则不支持此字段。

服务器保证,在使用时返回的对象将与在没有限制限制的情况下发出单个列表调用相同 - 也就是说,在发出第一个请求后没有创建、修改或删除对象。这有时被称为一致的快照,并确保使用限制来接收非常大结果的较小的块的客户端可确保它们看到所有可能的对象。如果在块列表中更新对象,则返回第一个列表结果时存在的对象版本。

resourceVersion

字符串

resourceVersion 对可能给请求提供服务的资源版本设置一个约束。详情请查看 https://kubernetes.io/docs/reference/using-api/api-concepts/#resource-versions

默认为未设置

resourceVersionMatch

字符串

resourceVersionMatch 决定如何将 resourceVersion 应用到列表调用。强烈建议您为设置 resourceVersion 的 list 调用设置 resourceVersionMatch。详情请参阅 https://kubernetes.io/docs/reference/using-api/api-concepts/#resource-versions

默认为未设置

sendInitialEvents

布尔值

sendInitialEvents=true 可以和 watch=true 一起设置。在这种情况下,观察流将以复合事件开头,以生成集合中对象的当前状态。发送完所有这些事件后,将发送合成"Bookmark"事件。书签将报告与对象集合对应的 ResourceVersion (RV),并使用 "k8s.io/initial-events-end": "true" 注解进行标记。之后,监视流将照常进行,从而向监视的对象发送与更改对应的监视事件(按 RV 排序)。

当设置 sendInitialEvents 选项时,我们还需要设置 resourceVersionMatch 选项。监控请求的语义如下: - resourceVersionMatch = NotOlderThan 解释为"数据至少为提供的 resourceVersion'",当状态同步到 'resourceVersion 时,如果状态同步到 ListOptions 提供的 'resourceVersion 时,会发送书签事件。如果未设置 resourceVersion,则这被解释为"consistent read",当请求开始处理时,将发送书签事件。- resourceVersionMatch 设置为任何其他值或未设置 Invalid 错误。

如果 resourceVersion=""resourceVersion="0" (出于向后兼容原因)和 false,则默认为 true。

timeoutSeconds

整数

列表/watch 调用的超时。这限制了调用的持续时间,无论任何活动或不活跃。

watch

布尔值

观察对所描述资源的更改,并将它们作为添加、更新和删除通知的流返回。指定 resourceVersion。

表 8.8. HTTP 响应
HTTP 代码响应正文

200 - OK

OperatorGroupList 模式

401 - Unauthorized

HTTP 方法
POST
描述
创建 OperatorGroup
表 8.9. 查询参数
参数类型描述

dryRun

字符串

出现时,表示不应保留修改。无效的或未被识别的 dryRun 指令将导致错误响应,且请求不会被进一步处理。有效值为: - All: 所有预演阶段都将被处理

fieldManager

字符串

fieldmanager 是与进行这些更改的参与者或实体相关联的名称。该值必须小于或是 128 个字符长,且仅包含可打印的字符,如 https://golang.org/pkg/unicode/#IsPrint 所定义的那样。

fieldValidation

string

fieldValidation 指示服务器如何处理包含了未知或重复字段的请求 (POST/PUT/PATCH) 中的对象。有效值为: - Ignore :忽略从对象中静默丢弃的未知字段,并将忽略所有除最后一个重复字段以外的所有字段。这是 v1.23 版本之前的默认行为- Warn: 这会通过标准的警告响应头为从对象丢弃的每个未知字段以及遇到的每个重复字段,发送警告。如果没有其他错误,请求仍会成功,且只保留重复字段的最后一个。这是 v1.23+ 的的默认行为 - Strict: 如果从对象中删除了任何未知字段,或者存在任何重复字段,请求将失败并带有 BadRequest 错误。从服务器返回的错误将包含遇到的,以及重复的字段。

表 8.10. 主体参数
参数类型描述

正文(body)

OperatorGroup 模式

 
表 8.11. HTTP 响应
HTTP 代码响应正文

200 - OK

OperatorGroup 模式

201 - Created

OperatorGroup 模式

202 - Accepted

OperatorGroup 模式

401 - Unauthorized

8.2.3. /apis/operators.coreos.com/v1/namespaces/{namespace}/operatorgroups/{name}

表 8.12. 全局路径参数
参数类型描述

name

字符串

OperatorGroup 的名称

namespace

字符串

对象名称和身份验证范围,如团队(team)和项目(project)

表 8.13. 全局查询参数
参数类型描述

pretty

字符串

如果为 'true',则输出会经过 pretty print 处理。

HTTP 方法
DELETE
描述
delete an OperatorGroup
表 8.14. 查询参数
参数类型描述

dryRun

字符串

出现时,表示不应保留修改。无效的或未被识别的 dryRun 指令将导致错误响应,且请求不会被进一步处理。有效值为: - All: 所有预演阶段都将被处理

gracePeriodSeconds

整数

应该删除对象前的持续时间(以秒为单位)。值必须是非负整数。值为零表示立即删除。如果这个值是 nil,则会使用指定类型的默认宽限期。如果没有指定,则默认为每个对象值。零表示立即删除。

orphanDependents

布尔值

弃用:请使用 PropagationPolicy,此字段将在 1.7 中弃用。如果依赖对象是孤立的。如果为 true/false,则 "orphan" finalizer 将添加到对象的终结器列表中。可以设置此字段或 PropagationPolicy,但不能同时设置。

propagationPolicy

字符串

是否执行垃圾回收。可以设置此字段或 OrphanDependents,但不能同时设置两者。默认策略由 metadata.finalizers 和特定于资源的默认策略中设置的现有终结器决定。可接受的值有: 'Orphan' - 孤立的依赖项; 'Background' - 允许垃圾收集器删除依赖项,"Foreground' - 删除前台所有依赖的级联策略。

表 8.15. 主体参数
参数类型描述

正文(body)

DeleteOptions 模式

 
表 8.16. HTTP 响应
HTTP 代码响应正文

200 - OK

Status 模式

202 - Accepted

Status 模式

401 - Unauthorized

HTTP 方法
GET
描述
阅读指定的 OperatorGroup
表 8.17. 查询参数
参数类型描述

resourceVersion

字符串

resourceVersion 对可能给请求提供服务的资源版本设置一个约束。详情请查看 https://kubernetes.io/docs/reference/using-api/api-concepts/#resource-versions

默认为未设置

表 8.18. HTTP 响应
HTTP 代码响应正文

200 - OK

OperatorGroup 模式

401 - Unauthorized

HTTP 方法
PATCH
描述
部分更新指定的 OperatorGroup
表 8.19. 查询参数
参数类型描述

dryRun

字符串

出现时,表示不应保留修改。无效的或未被识别的 dryRun 指令将导致错误响应,且请求不会被进一步处理。有效值为: - All: 所有预演阶段都将被处理

fieldManager

字符串

fieldmanager 是与进行这些更改的参与者或实体相关联的名称。该值必须小于或是 128 个字符长,且仅包含可打印的字符,如 https://golang.org/pkg/unicode/#IsPrint 所定义的那样。应用请求(application/apply-patch)需要此字段,但对非应用补丁类型(JsonPatch、MergePatch、MergePatch)是可选的。

fieldValidation

string

fieldValidation 指示服务器如何处理包含了未知或重复字段的请求 (POST/PUT/PATCH) 中的对象。有效值为: - Ignore :忽略从对象中静默丢弃的未知字段,并将忽略所有除最后一个重复字段以外的所有字段。这是 v1.23 版本之前的默认行为- Warn: 这会通过标准的警告响应头为从对象丢弃的每个未知字段以及遇到的每个重复字段,发送警告。如果没有其他错误,请求仍会成功,且只保留重复字段的最后一个。这是 v1.23+ 的的默认行为 - Strict: 如果从对象中删除了任何未知字段,或者存在任何重复字段,请求将失败并带有 BadRequest 错误。从服务器返回的错误将包含遇到的,以及重复的字段。

force

布尔值

强制要"强制"应用请求。这意味着用户将重新分配由其他人员拥有的冲突字段。对于非应用补丁请求,必须取消设置 force 标志。

表 8.20. 主体参数
参数类型描述

正文(body)

Patch 模式

 
表 8.21. HTTP 响应
HTTP 代码响应正文

200 - OK

OperatorGroup 模式

401 - Unauthorized

HTTP 方法
PUT
描述
替换指定的 OperatorGroup
表 8.22. 查询参数
参数类型描述

dryRun

字符串

出现时,表示不应保留修改。无效的或未被识别的 dryRun 指令将导致错误响应,且请求不会被进一步处理。有效值为: - All: 所有预演阶段都将被处理

fieldManager

字符串

fieldmanager 是与进行这些更改的参与者或实体相关联的名称。该值必须小于或是 128 个字符长,且仅包含可打印的字符,如 https://golang.org/pkg/unicode/#IsPrint 所定义的那样。

fieldValidation

string

fieldValidation 指示服务器如何处理包含了未知或重复字段的请求 (POST/PUT/PATCH) 中的对象。有效值为: - Ignore :忽略从对象中静默丢弃的未知字段,并将忽略所有除最后一个重复字段以外的所有字段。这是 v1.23 版本之前的默认行为- Warn: 这会通过标准的警告响应头为从对象丢弃的每个未知字段以及遇到的每个重复字段,发送警告。如果没有其他错误,请求仍会成功,且只保留重复字段的最后一个。这是 v1.23+ 的的默认行为 - Strict: 如果从对象中删除了任何未知字段,或者存在任何重复字段,请求将失败并带有 BadRequest 错误。从服务器返回的错误将包含遇到的,以及重复的字段。

表 8.23. 主体参数
参数类型描述

正文(body)

OperatorGroup 模式

 
表 8.24. HTTP 响应
HTTP 代码响应正文

200 - OK

OperatorGroup 模式

201 - Created

OperatorGroup 模式

401 - Unauthorized

8.2.4. /apis/operators.coreos.com/v1/namespaces/{namespace}/operatorgroups/{name}/status

表 8.25. 全局路径参数
参数类型描述

name

字符串

OperatorGroup 的名称

namespace

字符串

对象名称和身份验证范围,如团队(team)和项目(project)

表 8.26. 全局查询参数
参数类型描述

pretty

字符串

如果为 'true',则输出会经过 pretty print 处理。

HTTP 方法
GET
描述
指定 OperatorGroup 的读取状态
表 8.27. 查询参数
参数类型描述

resourceVersion

字符串

resourceVersion 对可能给请求提供服务的资源版本设置一个约束。详情请查看 https://kubernetes.io/docs/reference/using-api/api-concepts/#resource-versions

默认为未设置

表 8.28. HTTP 响应
HTTP 代码响应正文

200 - OK

OperatorGroup 模式

401 - Unauthorized

HTTP 方法
PATCH
描述
部分更新指定 OperatorGroup 的状态
表 8.29. 查询参数
参数类型描述

dryRun

字符串

出现时,表示不应保留修改。无效的或未被识别的 dryRun 指令将导致错误响应,且请求不会被进一步处理。有效值为: - All: 所有预演阶段都将被处理

fieldManager

字符串

fieldmanager 是与进行这些更改的参与者或实体相关联的名称。该值必须小于或是 128 个字符长,且仅包含可打印的字符,如 https://golang.org/pkg/unicode/#IsPrint 所定义的那样。应用请求(application/apply-patch)需要此字段,但对非应用补丁类型(JsonPatch、MergePatch、MergePatch)是可选的。

fieldValidation

string

fieldValidation 指示服务器如何处理包含了未知或重复字段的请求 (POST/PUT/PATCH) 中的对象。有效值为: - Ignore :忽略从对象中静默丢弃的未知字段,并将忽略所有除最后一个重复字段以外的所有字段。这是 v1.23 版本之前的默认行为- Warn: 这会通过标准的警告响应头为从对象丢弃的每个未知字段以及遇到的每个重复字段,发送警告。如果没有其他错误,请求仍会成功,且只保留重复字段的最后一个。这是 v1.23+ 的的默认行为 - Strict: 如果从对象中删除了任何未知字段,或者存在任何重复字段,请求将失败并带有 BadRequest 错误。从服务器返回的错误将包含遇到的,以及重复的字段。

force

布尔值

强制要"强制"应用请求。这意味着用户将重新分配由其他人员拥有的冲突字段。对于非应用补丁请求,必须取消设置 force 标志。

表 8.30. 主体参数
参数类型描述

正文(body)

Patch 模式

 
表 8.31. HTTP 响应
HTTP 代码响应正文

200 - OK

OperatorGroup 模式

401 - Unauthorized

HTTP 方法
PUT
描述
替换指定 OperatorGroup 的状态
表 8.32. 查询参数
参数类型描述

dryRun

字符串

出现时,表示不应保留修改。无效的或未被识别的 dryRun 指令将导致错误响应,且请求不会被进一步处理。有效值为: - All: 所有预演阶段都将被处理

fieldManager

字符串

fieldmanager 是与进行这些更改的参与者或实体相关联的名称。该值必须小于或是 128 个字符长,且仅包含可打印的字符,如 https://golang.org/pkg/unicode/#IsPrint 所定义的那样。

fieldValidation

string

fieldValidation 指示服务器如何处理包含了未知或重复字段的请求 (POST/PUT/PATCH) 中的对象。有效值为: - Ignore :忽略从对象中静默丢弃的未知字段,并将忽略所有除最后一个重复字段以外的所有字段。这是 v1.23 版本之前的默认行为- Warn: 这会通过标准的警告响应头为从对象丢弃的每个未知字段以及遇到的每个重复字段,发送警告。如果没有其他错误,请求仍会成功,且只保留重复字段的最后一个。这是 v1.23+ 的的默认行为 - Strict: 如果从对象中删除了任何未知字段,或者存在任何重复字段,请求将失败并带有 BadRequest 错误。从服务器返回的错误将包含遇到的,以及重复的字段。

表 8.33. 主体参数
参数类型描述

正文(body)

OperatorGroup 模式

 
表 8.34. HTTP 响应
HTTP 代码响应正文

200 - OK

OperatorGroup 模式

201 - Created

OperatorGroup 模式

401 - Unauthorized

第 9 章 PackageManifest [packages.operators.coreos.com/v1]

描述
PackageManifest 包含有关软件包的信息,这是单个软件包下的一个(或更多)频道的引用。
类型
对象

9.1. 规格

属性类型描述

apiVersion

字符串

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

kind

字符串

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

metadata

ObjectMeta

 

spec

对象

PackageManifestSpec 定义 PackageManifest 的所需状态

status

对象

PackageManifestStatus 代表 PackageManifest 的当前状态

9.1.1. .spec

描述
PackageManifestSpec 定义 PackageManifest 的所需状态
类型
对象

9.1.2. .status

描述
PackageManifestStatus 代表 PackageManifest 的当前状态
类型
object
必填
  • catalogSource
  • catalogSourceDisplayName
  • catalogSourcePublisher
  • catalogSourceNamespace
  • packageName
  • Channels
  • defaultChannel
属性类型描述

catalogSource

字符串

CatalogSource 是此软件包所属的 CatalogSource 的名称

catalogSourceDisplayName

字符串

 

catalogSourceNamespace

字符串

CatalogSourceNamespace 是 owning CatalogSource 的命名空间

catalogSourcePublisher

字符串

 

Channels

array

频道是软件包 ala stablealpha 的声明频道。

channels[]

对象

PackageChannel 在软件包中定义单个频道,指向该软件包的版本。

defaultChannel

字符串

defaultChannel (如果指定)是软件包的默认频道的名称。如果没有明确给定其他频道,则会安装默认频道。如果软件包只有一个频道,则该频道会隐式显示默认频道。

packageName

字符串

packageName 是整个软件包的名称,即 ala etcd

provider

对象

AppLink 定义到应用程序的链接

9.1.3. .status.channels

描述
频道是软件包 ala stablealpha 的声明频道。
类型
array

9.1.4. .status.channels[]

描述
PackageChannel 在软件包中定义单个频道,指向该软件包的版本。
类型
object
必填
  • name
  • currentCSV
  • 条目
属性类型描述

currentCSV

字符串

currentCSV 定义了 CSV 的引用,该 CSV 包含当前用于频道的此软件包版本。

currentCSVDesc

对象

CSVDescription 定义 CSV 的描述

条目

数组

entries 列出频道中的所有 CSV,以及它们的升级边缘。

entries[]

object

ChannelEntry 定义软件包频道的成员。

名称

字符串

name 是频道的名称,如 alphastable

9.1.5. .status.channels[].currentCSVDesc

描述
CSVDescription 定义 CSV 的描述
类型
object
属性类型描述

annotations

对象(字符串)

 

apiservicedefinitions

APIServiceDefinitions

 

customresourcedefinitions

CustomResourceDefinitions

 

description

字符串

LongDescription 是 CSV 的描述

displayName

字符串

displayName 是 CSV 的显示名称

icon

array

图标是 CSV 的 base64 编码图标

icon[]

对象

图标定义 base64 编码图标和介质类型

installModes

数组(InstallMode)

InstallModes 指定支持的安装类型

keywords

数组(字符串)

 

links

array

 

links[]

对象

AppLink 定义到应用程序的链接

maintainers

array

 

maintainers[]

对象

maintainer 定义项目维护人员

成熟度

字符串

 

minKubeVersion

字符串

安装 Operator 的最低 Kubernetes 版本

nativeApis

数组(GroupVersionKind)

 

provider

对象

AppLink 定义到应用程序的链接

relatedImages

数组(字符串)

相关镜像列表

version

OperatorVersion

version 是 CSV 的语义版本

9.1.6. .status.channels[].currentCSVDesc.icon

描述
图标是 CSV 的 base64 编码图标
类型
array

9.1.7. .status.channels[].currentCSVDesc.icon[]

描述
图标定义 base64 编码图标和介质类型
类型
object
属性类型描述

base64data

字符串

 

MediaType

字符串

 

9.1.10. .status.channels[].currentCSVDesc.maintainers

描述
类型
array

9.1.11. .status.channels[].currentCSVDesc.maintainers[]

描述
maintainer 定义项目维护人员
类型
object
属性类型描述

email

字符串

 

name

字符串

 

9.1.12. .status.channels[].currentCSVDesc.provider

描述
AppLink 定义到应用程序的链接
类型
object
属性类型描述

name

字符串

 

url

string

 

9.1.13. .status.channels[].entries

描述
entries 列出频道中的所有 CSV,以及它们的升级边缘。
类型
数组

9.1.14. .status.channels[].entries[]

描述
ChannelEntry 定义软件包频道的成员。
类型
object
必填
  • name
属性类型描述

name

string

name 是此条目的捆绑包的名称。

version

string

version 是此条目的捆绑包版本。

9.1.15. .status.provider

描述
AppLink 定义到应用程序的链接
类型
object
属性类型描述

name

字符串

 

url

字符串

 

9.2. API 端点

可用的 API 端点如下:

  • /apis/packages.operators.coreos.com/v1/packagemanifests

    • GET: 列出类型为 PackageManifest 的对象
  • /apis/packages.operators.coreos.com/v1/namespaces/{namespace}/packagemanifests

    • GET: 列出类型为 PackageManifest 的对象
  • /apis/packages.operators.coreos.com/v1/namespaces/{namespace}/packagemanifests/{name}

    • GET :读取指定的 PackageManifest
  • /apis/packages.operators.coreos.com/v1/namespaces/{namespace}/packagemanifests/{name}/icon

    • GET :将 GET 请求连接到 PackageManifest 的图标

9.2.1. /apis/packages.operators.coreos.com/v1/packagemanifests

表 9.1. 全局查询参数
参数类型描述

allowWatchBookmarks

布尔值

allowWatchBookmarks请求类型为“BOOKMARK”的监视事件。不实现书签的服务器可能会忽略这个标志和书签,由服务器自由裁量发送。客户端不应假设书签在任何特定间隔返回,也不会假定服务器在会话期间发送任何 BOOKMARK 事件。如果这不是监视,则忽略此字段。

继续

字符串

从服务器检索更多结果时,应设置 continue 选项。由于这个值是定义的服务器,因此客户端只能使用之前查询结果中的 continue 值,并带有相同的查询参数(除 continue 值除外),因此服务器可能会拒绝它无法识别的值。如果指定的 continue 值不再有效,无论是因为过期时间(通常为 5 到十五分钟)还是服务器上的配置更改,服务器将会与继续令牌一起响应 410 ResourceExpired 错误。如果客户端需要一致的列表,它必须重启其列表,而无需 continue 字段。否则,客户端可能会发送另一个带有 410 错误接收的令牌的列表请求,服务器将以从下一个密钥开始开始的列表响应,但从最新的快照开始,这与上一个列表结果中不一致 - 在第一个列表请求后将包含在响应中,只要它们的密钥位于 "next key" 后。

当 watch 为 true 时不支持此字段。客户端可以从服务器返回的最后一个 resourceVersion 值开始监视,而不丢失任何修改。

fieldSelector

字符串

一个选择器,用于限制其字段返回的对象列表。默认为任何内容。

labelSelector

字符串

一个选择器,用于限制其标签返回的对象列表。默认为任何内容。

limit

整数

limit 是列表调用返回的最大响应数。如果存在更多项目,服务器会将列表元数据上的 continue 字段设置为可用于同一初始查询的值,以检索下一个结果集合。如果过滤所有请求的对象,则设置限制可能会返回少于请求项目数量(最多为零项),并且客户端只应使用 continue 字段的存在,以确定是否有更多结果可用。服务器可能会选择不支持 limit 参数,并返回所有可用的结果。如果指定了 limit,并且 continue 字段为空,客户端可能会假定没有更多结果可用。如果 watch 为 true,则不支持此字段。

服务器保证,在使用时返回的对象将与在没有限制限制的情况下发出单个列表调用相同 - 也就是说,在发出第一个请求后没有创建、修改或删除对象。这有时被称为一致的快照,并确保使用限制来接收非常大结果的较小的块的客户端可确保它们看到所有可能的对象。如果在块列表中更新对象,则返回第一个列表结果时存在的对象版本。

pretty

字符串

如果为 'true',则输出会经过 pretty print 处理。

resourceVersion

字符串

resourceVersion 对可能给请求提供服务的资源版本设置一个约束。详情请查看 https://kubernetes.io/docs/reference/using-api/api-concepts/#resource-versions

默认为未设置

resourceVersionMatch

字符串

resourceVersionMatch 决定如何将 resourceVersion 应用到列表调用。强烈建议您为设置 resourceVersion 的 list 调用设置 resourceVersionMatch。详情请参阅 https://kubernetes.io/docs/reference/using-api/api-concepts/#resource-versions

默认为未设置

sendInitialEvents

布尔值

sendInitialEvents=true 可以和 watch=true 一起设置。在这种情况下,观察流将以复合事件开头,以生成集合中对象的当前状态。发送完所有这些事件后,将发送合成"Bookmark"事件。书签将报告与对象集合对应的 ResourceVersion (RV),并使用 "k8s.io/initial-events-end": "true" 注解进行标记。之后,监视流将照常进行,从而向监视的对象发送与更改对应的监视事件(按 RV 排序)。

当设置 sendInitialEvents 选项时,我们还需要设置 resourceVersionMatch 选项。监控请求的语义如下: - resourceVersionMatch = NotOlderThan 解释为"数据至少为提供的 resourceVersion'",当状态同步到 'resourceVersion 时,如果状态同步到 ListOptions 提供的 'resourceVersion 时,会发送书签事件。如果未设置 resourceVersion,则这被解释为"consistent read",当请求开始处理时,将发送书签事件。- resourceVersionMatch 设置为任何其他值或未设置 Invalid 错误。

如果 resourceVersion=""resourceVersion="0" (出于向后兼容原因)和 false,则默认为 true。

timeoutSeconds

整数

列表/watch 调用的超时。这限制了调用的持续时间,无论任何活动或不活跃。

watch

布尔值

观察对所描述资源的更改,并将它们作为添加、更新和删除通知的流返回。指定 resourceVersion。

HTTP 方法
GET
描述
列出 PackageManifest 类型的对象
表 9.2. HTTP 响应
HTTP 代码响应正文

200 - OK

PackageManifestList 模式

9.2.2. /apis/packages.operators.coreos.com/v1/namespaces/{namespace}/packagemanifests

表 9.3. 全局路径参数
参数类型描述

namespace

字符串

对象名称和身份验证范围,如团队(team)和项目(project)

表 9.4. 全局查询参数
参数类型描述

allowWatchBookmarks

布尔值

allowWatchBookmarks请求类型为“BOOKMARK”的监视事件。不实现书签的服务器可能会忽略这个标志和书签,由服务器自由裁量发送。客户端不应假设书签在任何特定间隔返回,也不会假定服务器在会话期间发送任何 BOOKMARK 事件。如果这不是监视,则忽略此字段。

继续

字符串

从服务器检索更多结果时,应设置 continue 选项。由于这个值是定义的服务器,因此客户端只能使用之前查询结果中的 continue 值,并带有相同的查询参数(除 continue 值除外),因此服务器可能会拒绝它无法识别的值。如果指定的 continue 值不再有效,无论是因为过期时间(通常为 5 到十五分钟)还是服务器上的配置更改,服务器将会与继续令牌一起响应 410 ResourceExpired 错误。如果客户端需要一致的列表,它必须重启其列表,而无需 continue 字段。否则,客户端可能会发送另一个带有 410 错误接收的令牌的列表请求,服务器将以从下一个密钥开始开始的列表响应,但从最新的快照开始,这与上一个列表结果中不一致 - 在第一个列表请求后将包含在响应中,只要它们的密钥位于 "next key" 后。

当 watch 为 true 时不支持此字段。客户端可以从服务器返回的最后一个 resourceVersion 值开始监视,而不丢失任何修改。

fieldSelector

字符串

一个选择器,用于限制其字段返回的对象列表。默认为任何内容。

labelSelector

字符串

一个选择器,用于限制其标签返回的对象列表。默认为任何内容。

limit

整数

limit 是列表调用返回的最大响应数。如果存在更多项目,服务器会将列表元数据上的 continue 字段设置为可用于同一初始查询的值,以检索下一个结果集合。如果过滤所有请求的对象,则设置限制可能会返回少于请求项目数量(最多为零项),并且客户端只应使用 continue 字段的存在,以确定是否有更多结果可用。服务器可能会选择不支持 limit 参数,并返回所有可用的结果。如果指定了 limit,并且 continue 字段为空,客户端可能会假定没有更多结果可用。如果 watch 为 true,则不支持此字段。

服务器保证,在使用时返回的对象将与在没有限制限制的情况下发出单个列表调用相同 - 也就是说,在发出第一个请求后没有创建、修改或删除对象。这有时被称为一致的快照,并确保使用限制来接收非常大结果的较小的块的客户端可确保它们看到所有可能的对象。如果在块列表中更新对象,则返回第一个列表结果时存在的对象版本。

pretty

字符串

如果为 'true',则输出会经过 pretty print 处理。

resourceVersion

字符串

resourceVersion 对可能给请求提供服务的资源版本设置一个约束。详情请查看 https://kubernetes.io/docs/reference/using-api/api-concepts/#resource-versions

默认为未设置

resourceVersionMatch

字符串

resourceVersionMatch 决定如何将 resourceVersion 应用到列表调用。强烈建议您为设置 resourceVersion 的 list 调用设置 resourceVersionMatch。详情请参阅 https://kubernetes.io/docs/reference/using-api/api-concepts/#resource-versions

默认为未设置

sendInitialEvents

布尔值

sendInitialEvents=true 可以和 watch=true 一起设置。在这种情况下,观察流将以复合事件开头,以生成集合中对象的当前状态。发送完所有这些事件后,将发送合成"Bookmark"事件。书签将报告与对象集合对应的 ResourceVersion (RV),并使用 "k8s.io/initial-events-end": "true" 注解进行标记。之后,监视流将照常进行,从而向监视的对象发送与更改对应的监视事件(按 RV 排序)。

当设置 sendInitialEvents 选项时,我们还需要设置 resourceVersionMatch 选项。监控请求的语义如下: - resourceVersionMatch = NotOlderThan 解释为"数据至少为提供的 resourceVersion'",当状态同步到 'resourceVersion 时,如果状态同步到 ListOptions 提供的 'resourceVersion 时,会发送书签事件。如果未设置 resourceVersion,则这被解释为"consistent read",当请求开始处理时,将发送书签事件。- resourceVersionMatch 设置为任何其他值或未设置 Invalid 错误。

如果 resourceVersion=""resourceVersion="0" (出于向后兼容原因)和 false,则默认为 true。

timeoutSeconds

整数

列表/watch 调用的超时。这限制了调用的持续时间,无论任何活动或不活跃。

watch

布尔值

观察对所描述资源的更改,并将它们作为添加、更新和删除通知的流返回。指定 resourceVersion。

HTTP 方法
GET
描述
列出 PackageManifest 类型的对象
表 9.5. HTTP 响应
HTTP 代码响应正文

200 - OK

PackageManifestList 模式

9.2.3. /apis/packages.operators.coreos.com/v1/namespaces/{namespace}/packagemanifests/{name}

表 9.6. 全局路径参数
参数类型描述

name

字符串

PackageManifest 的名称

namespace

字符串

对象名称和身份验证范围,如团队(team)和项目(project)

表 9.7. 全局查询参数
参数类型描述

pretty

字符串

如果为 'true',则输出会经过 pretty print 处理。

HTTP 方法
GET
描述
阅读指定的 PackageManifest
表 9.8. HTTP 响应
HTTP 代码响应正文

200 - OK

PackageManifest 模式

9.2.4. /apis/packages.operators.coreos.com/v1/namespaces/{namespace}/packagemanifests/{name}/icon

表 9.9. 全局路径参数
参数类型描述

name

字符串

PackageManifest 的名称

namespace

字符串

对象名称和身份验证范围,如团队(team)和项目(project)

HTTP 方法
GET
描述
将 GET 请求连接到 PackageManifest 的图标
表 9.10. HTTP 响应
HTTP 代码响应正文

200 - OK

字符串

第 10 章 Subscription [operators.coreos.com/v1alpha1]

描述
订阅通过跟踪对目录的更改来保持 Operator 最新。
类型
object
必填
  • metadata
  • spec

10.1. 规格

属性类型描述

apiVersion

字符串

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

kind

字符串

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

metadata

ObjectMeta

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

spec

对象

SubscriptionSpec 定义可安装的应用程序

status

对象

 

10.1.1. .spec

描述
SubscriptionSpec 定义可安装的应用程序
类型
object
必填
  • name
  • source
  • sourceNamespace
属性类型描述

channel

字符串

 

config

对象

subscriptionConfig 包含为订阅指定的配置。

installPlanApproval

字符串

Approval 是 InstallPlan 的用户批准策略。它必须是 "Automatic" 或 "Manual"。

name

字符串

 

source

字符串

 

sourceNamespace

字符串

 

startingCSV

字符串

 

10.1.2. .spec.config

描述
subscriptionConfig 包含为订阅指定的配置。
类型
object
属性类型描述

关联性

object

如果指定,覆盖 pod 的调度限制。nil sub-attributes 不会覆盖 这些子属性的 pod.spec 中的原始值。使用空对象({})擦除原始子属性值。

env

array

env 是容器中要设置的环境变量的列表。无法更新。

env[]

对象

EnvVar 代表容器中存在的环境变量。

envFrom

array

envFrom 是在容器中填充环境变量的源列表。源中定义的键必须是 C_IDENTIFIER。当容器启动时,所有无效密钥都会被报告为事件。当多个源中存在键时,与最后一个源关联的值将具有优先权。由带有重复键的 Env 定义的值将具有优先权。不可变。

envFrom[]

对象

EnvFromSource 代表一组 ConfigMap 的源

nodeSelector

对象(字符串)

nodeSelector 是一个选择器,必须为 true 才能使 pod 适合某个节点。选择器必须与节点的标签匹配,以便 pod 调度到该节点上。更多信息: https://kubernetes.io/docs/concepts/configuration/assign-pod-node/

资源

对象

resources 代表此容器所需的计算资源。不可变。更多信息: https://kubernetes.io/docs/concepts/configuration/manage-compute-resources-container/

selector

对象

selector 是要配置的 pod 的标签选择器。其 pod 被选择的现有 ReplicaSet 将会受到此部署的影响。它必须与 pod 模板的标签匹配。

容限(tolerations)

array

容限(toleration)是 pod 的容限。

tolerations[]

对象

此 Toleration 附加到 pod,以使用匹配的 operator <operator> 容许与 triple <key,value,effect> 匹配的任何污点。

volumeMounts

array

要在容器中设置的 VolumeMount 列表。

volumeMounts[]

对象

VolumeMount 描述了容器内卷挂载。

array

podSpec 中设置的卷列表。

volumes[]

对象

卷代表 pod 中的指定卷,可以被 pod 中的任何容器访问。

10.1.3. .spec.config.affinity

描述
如果指定,覆盖 pod 的调度限制。nil sub-attributes 不会覆盖 这些子属性的 pod.spec 中的原始值。使用空对象({})擦除原始子属性值。
类型
object
属性类型描述

nodeAffinity

对象

描述 pod 的节点关联性调度规则。

podAffinity

对象

描述 pod 关联性调度规则(例如,将这个 pod 位于同一个节点、区等)中。

podAntiAffinity

对象

描述 pod 反关联性调度规则(例如,避免将此 pod 放置到同一个节点、区等)。

10.1.4. .spec.config.affinity.nodeAffinity

描述
描述 pod 的节点关联性调度规则。
类型
object
属性类型描述

preferredDuringSchedulingIgnoredDuringExecution

array

调度程序更喜欢将 pod 调度到满足此字段指定的关联性表达式的节点,但可能会选择违反一个或多个表达式的节点。最首选节点是具有最大权重总和的节点,即对于满足所有调度要求(资源请求、必需关联表达式等)的每个节点,计算出一个总和总和总和总和(如果节点与相应的 matchExpressions 匹配),则计算总和最高的节点是最首选的。

preferredDuringSchedulingIgnoredDuringExecution[]

对象

空白的首选调度术语与带有隐式权重 0 (例如,它的一个 no-op)的所有对象匹配。空首选调度术语不匹配任何对象(例如,也是 no-op)。

requiredDuringSchedulingIgnoredDuringExecution

对象

如果在调度时没有满足此字段指定的关联性要求,则 pod 不会被调度到该节点上。如果此字段指定的关联性要求在 pod 执行期间某一点满足(例如,由于更新),则系统可能或可能无法最终从其节点驱除 pod。

10.1.5. .spec.config.affinity.nodeAffinity.preferredDuringSchedulingIgnoredDuringExecution

描述
调度程序更喜欢将 pod 调度到满足此字段指定的关联性表达式的节点,但可能会选择违反一个或多个表达式的节点。最首选节点是具有最大权重总和的节点,即对于满足所有调度要求(资源请求、必需关联表达式等)的每个节点,计算出一个总和总和总和总和(如果节点与相应的 matchExpressions 匹配),则计算总和最高的节点是最首选的。
类型
数组

10.1.6. .spec.config.affinity.nodeAffinity.preferredDuringSchedulingIgnoredDuringExecution[]

描述
空白的首选调度术语与带有隐式权重 0 (例如,它的一个 no-op)的所有对象匹配。空首选调度术语不匹配任何对象(例如,也是 no-op)。
类型
object
必填
  • preference
  • weight
属性类型描述

preference

对象

与对应权重关联的节点选择器术语。

weight

整数

与对应 nodeSelectorTerm 关联的权重,范围为 1-100。

10.1.7. .spec.config.affinity.nodeAffinity.preferredDuringSchedulingIgnoredDuringExecution[].preference

描述
与对应权重关联的节点选择器术语。
类型
object
属性类型描述

matchExpressions

array

按节点标签划分的节点选择器要求列表。

matchExpressions[]

对象

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

matchFields

array

按节点字段划分的节点选择器要求列表。

matchFields[]

对象

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

10.1.8. .spec.config.affinity.nodeAffinity.preferredDuringSchedulingIgnoredDuringExecution[].preference.matchExpressions

描述
按节点标签划分的节点选择器要求列表。
类型
数组

10.1.9. .spec.config.affinity.nodeAffinity.preferredDuringSchedulingIgnoredDuringExecution[].preference.matchExpressions[]

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

key

字符串

选择器应用到的标签键。

operator

字符串

代表键与一组值的关系。有效的运算符为 In、NotIn、Exists、DoesNotExist。gt 和 Lt.

数组(字符串)

字符串值数组。如果运算符是 In 或 NotIn,则值数组必须是非空的。如果运算符是 Exists 或 DoesNotExist,则值数组必须为空。如果运算符是 Gt 或 Lt,则值数组必须具有单个元素,它将解释为整数。这个数组会在策略性合并补丁中被替换。

10.1.10. .spec.config.affinity.nodeAffinity.preferredDuringSchedulingIgnoredDuringExecution[].preference.matchFields

描述
按节点字段划分的节点选择器要求列表。
类型
数组

10.1.11. .spec.config.affinity.nodeAffinity.preferredDuringSchedulingIgnoredDuringExecution[].preference.matchFields[]

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

key

字符串

选择器应用到的标签键。

operator

字符串

代表键与一组值的关系。有效的运算符为 In、NotIn、Exists、DoesNotExist。gt 和 Lt.

数组(字符串)

字符串值数组。如果运算符是 In 或 NotIn,则值数组必须是非空的。如果运算符是 Exists 或 DoesNotExist,则值数组必须为空。如果运算符是 Gt 或 Lt,则值数组必须具有单个元素,它将解释为整数。这个数组会在策略性合并补丁中被替换。

10.1.12. .spec.config.affinity.nodeAffinity.requiredDuringSchedulingIgnoredDuringExecution

描述
如果在调度时没有满足此字段指定的关联性要求,则 pod 不会被调度到该节点上。如果此字段指定的关联性要求在 pod 执行期间某一点满足(例如,由于更新),则系统可能或可能无法最终从其节点驱除 pod。
类型
object
必填
  • nodeSelectorTerms
属性类型描述

nodeSelectorTerms

array

必需。节点选择器术语列表。术语为 ORed。

nodeSelectorTerms[]

对象

null 或空节点选择器术语不匹配任何对象。它们的要求是 AND。TopologySelectorTerm 类型实现 NodeSelectorTerm 的子集。

10.1.13. .spec.config.affinity.nodeAffinity.requiredDuringSchedulingIgnoredDuringExecution.nodeSelectorTerms

描述
必需。节点选择器术语列表。术语为 ORed。
类型
数组

10.1.14. .spec.config.affinity.nodeAffinity.requiredDuringSchedulingIgnoredDuringExecution.nodeSelectorTerms[]

描述
null 或空节点选择器术语不匹配任何对象。它们的要求是 AND。TopologySelectorTerm 类型实现 NodeSelectorTerm 的子集。
类型
object
属性类型描述

matchExpressions

array

按节点标签划分的节点选择器要求列表。

matchExpressions[]

对象

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

matchFields

array

按节点字段划分的节点选择器要求列表。

matchFields[]

对象

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

10.1.15. .spec.config.affinity.nodeAffinity.requiredDuringSchedulingIgnoredDuringExecution.nodeSelectorTerms[].matchExpressions

描述
按节点标签划分的节点选择器要求列表。
类型
数组

10.1.16. .spec.config.affinity.nodeAffinity.requiredDuringSchedulingIgnoredDuringExecution.nodeSelectorTerms[].matchExpressions[]

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

key

字符串

选择器应用到的标签键。

operator

字符串

代表键与一组值的关系。有效的运算符为 In、NotIn、Exists、DoesNotExist。gt 和 Lt.

数组(字符串)

字符串值数组。如果运算符是 In 或 NotIn,则值数组必须是非空的。如果运算符是 Exists 或 DoesNotExist,则值数组必须为空。如果运算符是 Gt 或 Lt,则值数组必须具有单个元素,它将解释为整数。这个数组会在策略性合并补丁中被替换。

10.1.17. .spec.config.affinity.nodeAffinity.requiredDuringSchedulingIgnoredDuringExecution.nodeSelectorTerms[].matchFields

描述
按节点字段划分的节点选择器要求列表。
类型
数组

10.1.18. .spec.config.affinity.nodeAffinity.requiredDuringSchedulingIgnoredDuringExecution.nodeSelectorTerms[].matchFields[]

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

key

字符串

选择器应用到的标签键。

operator

字符串

代表键与一组值的关系。有效的运算符为 In、NotIn、Exists、DoesNotExist。gt 和 Lt.

数组(字符串)

字符串值数组。如果运算符是 In 或 NotIn,则值数组必须是非空的。如果运算符是 Exists 或 DoesNotExist,则值数组必须为空。如果运算符是 Gt 或 Lt,则值数组必须具有单个元素,它将解释为整数。这个数组会在策略性合并补丁中被替换。

10.1.19. .spec.config.affinity.podAffinity

描述
描述 pod 关联性调度规则(例如,将这个 pod 位于同一个节点、区等)中。
类型
object
属性类型描述

preferredDuringSchedulingIgnoredDuringExecution

array

调度程序更喜欢将 pod 调度到满足此字段指定的关联性表达式的节点,但可能会选择违反一个或多个表达式的节点。最首选的节点是具有最大权重总和的节点(即,对于满足所有调度要求的节点(resource request、requiredDuringScheduling 关联性表达式等)的每个节点,计算并迭代此字段元素,并在节点具有与对应 podAffinityTerm 匹配的 pod 时,将"weight"添加到总和(如果节点具有最高 podAffinityTerm)、具有最高总和最高的节点是首选。

preferredDuringSchedulingIgnoredDuringExecution[]

对象

所有匹配的 WeightedPodAffinityTerm 字段的权重添加到每个节点,以查找最首选节点。

requiredDuringSchedulingIgnoredDuringExecution

array

如果在调度时没有满足此字段指定的关联性要求,则 pod 不会被调度到该节点上。如果此字段指定的关联性要求在 pod 执行期间某一点满足(例如,由于 pod 标签更新),则系统可能或可能无法最终从其节点驱除 pod。当有多个元素时,与每个 podAffinityTerm 对应的节点列表都会被交集,例如必须满足所有术语。

requiredDuringSchedulingIgnoredDuringExecution[]

对象

定义一组 pod (即,与给定命名空间相对 labelSelector 匹配的 labelSelector ),该 pod 应该与 pod 共同定位(反关联性)或没有共同定位(反关联性)的节点上运行,其中 co-located 在具有键 <topologyKey> 标签的节点上运行,它与其上运行一组 pod 的 pod 匹配。

10.1.20. .spec.config.affinity.podAffinity.preferredDuringSchedulingIgnoredDuringExecution

描述
调度程序更喜欢将 pod 调度到满足此字段指定的关联性表达式的节点,但可能会选择违反一个或多个表达式的节点。最首选的节点是具有最大权重总和的节点(即,对于满足所有调度要求的节点(resource request、requiredDuringScheduling 关联性表达式等)的每个节点,计算并迭代此字段元素,并在节点具有与对应 podAffinityTerm 匹配的 pod 时,将"weight"添加到总和(如果节点具有最高 podAffinityTerm)、具有最高总和最高的节点是首选。
类型
数组

10.1.21. .spec.config.affinity.podAffinity.preferredDuringSchedulingIgnoredDuringExecution[]

描述
所有匹配的 WeightedPodAffinityTerm 字段的权重添加到每个节点,以查找最首选节点。
类型
object
必填
  • podAffinityTerm
  • weight
属性类型描述

podAffinityTerm

对象

必需。与对应权重关联的 pod 关联性术语。

weight

整数

与对应的 podAffinityTerm 关联的权重,范围为 1-100。

10.1.22. .spec.config.affinity.podAffinity.preferredDuringSchedulingIgnoredDuringExecution[].podAffinityTerm

描述
必需。与对应权重关联的 pod 关联性术语。
类型
object
必填
  • topologyKey
属性类型描述

labelSelector

对象

对一组资源进行标签查询,本例中为 pod。

namespaceSelector

对象

术语适用的命名空间集合上的标签查询。术语应用于此字段选定的命名空间的 union,以及 namespaces 字段中列出的命名空间。null selector 和 null 或空命名空间列表表示"此 pod 的命名空间"。空选择器({})匹配所有命名空间。

命名空间

数组(字符串)

namespaces 指定术语应用到的命名空间名称的静态列表。术语应用到此字段中列出的命名空间的 union,namespaceSelector 选择的命名空间列表和 null namespaceSelector 表示 " this pod 的命名空间"。

topologyKey

字符串

此 pod 应该在指定命名空间中与 labelSelector 匹配的 pod 共存(反关联性),其中 co-located 定义为在运行所选 pod 的节点的值为 running 的节点上运行。不允许为空 topologyKey。

10.1.23. .spec.config.affinity.podAffinity.preferredDuringSchedulingIgnoredDuringExecution[].podAffinityTerm.labelSelector

描述
对一组资源进行标签查询,本例中为 pod。
类型
object
属性类型描述

matchExpressions

array

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

matchExpressions[]

对象

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

matchLabels

对象(字符串)

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

10.1.24. .spec.config.affinity.podAffinity.preferredDuringSchedulingIgnoredDuringExecution[].podAffinityTerm.labelSelector.matchExpressions

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

10.1.25. .spec.config.affinity.podAffinity.preferredDuringSchedulingIgnoredDuringExecution[].podAffinityTerm.labelSelector.matchExpressions[]

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

key

字符串

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

operator

字符串

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

数组(字符串)

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

10.1.26. .spec.config.affinity.podAffinity.preferredDuringSchedulingIgnoredDuringExecution[].podAffinityTerm.namespaceSelector

描述
术语适用的命名空间集合上的标签查询。术语应用于此字段选定的命名空间的 union,以及 namespaces 字段中列出的命名空间。null selector 和 null 或空命名空间列表表示"此 pod 的命名空间"。空选择器({})匹配所有命名空间。
类型
object
属性类型描述

matchExpressions

array

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

matchExpressions[]

对象

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

matchLabels

对象(字符串)

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

10.1.27. .spec.config.affinity.podAffinity.preferredDuringSchedulingIgnoredDuringExecution[].podAffinityTerm.namespaceSelector.matchExpressions

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

10.1.28. .spec.config.affinity.podAffinity.preferredDuringSchedulingIgnoredDuringExecution[].podAffinityTerm.namespaceSelector.matchExpressions[]

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

key

字符串

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

operator

字符串

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

数组(字符串)

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

10.1.29. .spec.config.affinity.podAffinity.requiredDuringSchedulingIgnoredDuringExecution

描述
如果在调度时没有满足此字段指定的关联性要求,则 pod 不会被调度到该节点上。如果此字段指定的关联性要求在 pod 执行期间某一点满足(例如,由于 pod 标签更新),则系统可能或可能无法最终从其节点驱除 pod。当有多个元素时,与每个 podAffinityTerm 对应的节点列表都会被交集,例如必须满足所有术语。
类型
数组

10.1.30. .spec.config.affinity.podAffinity.requiredDuringSchedulingIgnoredDuringExecution[]

描述
定义一组 pod (即,与给定命名空间相对 labelSelector 匹配的 labelSelector ),该 pod 应该与 pod 共同定位(反关联性)或没有共同定位(反关联性)的节点上运行,其中 co-located 在具有键 <topologyKey> 标签的节点上运行,它与其上运行一组 pod 的 pod 匹配。
类型
object
必填
  • topologyKey
属性类型描述

labelSelector

对象

对一组资源进行标签查询,本例中为 pod。

namespaceSelector

对象

术语适用的命名空间集合上的标签查询。术语应用于此字段选定的命名空间的 union,以及 namespaces 字段中列出的命名空间。null selector 和 null 或空命名空间列表表示"此 pod 的命名空间"。空选择器({})匹配所有命名空间。

命名空间

数组(字符串)

namespaces 指定术语应用到的命名空间名称的静态列表。术语应用到此字段中列出的命名空间的 union,namespaceSelector 选择的命名空间列表和 null namespaceSelector 表示 " this pod 的命名空间"。

topologyKey

字符串

此 pod 应该在指定命名空间中与 labelSelector 匹配的 pod 共存(反关联性),其中 co-located 定义为在运行所选 pod 的节点的值为 running 的节点上运行。不允许为空 topologyKey。

10.1.31. .spec.config.affinity.podAffinity.requiredDuringSchedulingIgnoredDuringExecution[].labelSelector

描述
对一组资源进行标签查询,本例中为 pod。
类型
object
属性类型描述

matchExpressions

array

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

matchExpressions[]

对象

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

matchLabels

对象(字符串)

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

10.1.32. .spec.config.affinity.podAffinity.requiredDuringSchedulingIgnoredDuringExecution[].labelSelector.matchExpressions

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

10.1.33. .spec.config.affinity.podAffinity.requiredDuringSchedulingIgnoredDuringExecution[].labelSelector.matchExpressions[]

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

key

字符串

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

operator

字符串

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

数组(字符串)

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

10.1.34. .spec.config.affinity.podAffinity.requiredDuringSchedulingIgnoredDuringExecution[].namespaceSelector

描述
术语适用的命名空间集合上的标签查询。术语应用于此字段选定的命名空间的 union,以及 namespaces 字段中列出的命名空间。null selector 和 null 或空命名空间列表表示"此 pod 的命名空间"。空选择器({})匹配所有命名空间。
类型
object
属性类型描述

matchExpressions

array

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

matchExpressions[]

对象

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

matchLabels

对象(字符串)

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

10.1.35. .spec.config.affinity.podAffinity.requiredDuringSchedulingIgnoredDuringExecution[].namespaceSelector.matchExpressions

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

10.1.36. .spec.config.affinity.podAffinity.requiredDuringSchedulingIgnoredDuringExecution[].namespaceSelector.matchExpressions[]

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

key

字符串

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

operator

字符串

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

数组(字符串)

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

10.1.37. .spec.config.affinity.podAntiAffinity

描述
描述 pod 反关联性调度规则(例如,避免将此 pod 放置到同一个节点、区等)。
类型
object
属性类型描述

preferredDuringSchedulingIgnoredDuringExecution

array

调度程序更喜欢将 pod 调度到满足此字段指定的反关联性表达式的节点,但可能会选择违反一个或多个表达式的节点。最首选的节点是具有最大权重总和的节点,即对于满足所有调度要求(资源请求、requiredDuringScheduling 反关联性表达式等)的每个节点,计算通过此字段元素来计算总和总和(如果节点具有与对应的 podAffinityTerm 匹配的 pod)的总和。

preferredDuringSchedulingIgnoredDuringExecution[]

对象

所有匹配的 WeightedPodAffinityTerm 字段的权重添加到每个节点,以查找最首选节点。

requiredDuringSchedulingIgnoredDuringExecution

array

如果在调度时没有满足此字段指定的反关联性要求,则 pod 不会被调度到该节点上。如果此字段指定的反关联性要求在 Pod 执行期间某一点满足(例如,由于 pod 标签更新),则系统可能或可能无法最终从其节点驱除 pod。当有多个元素时,与每个 podAffinityTerm 对应的节点列表都会被交集,例如必须满足所有术语。

requiredDuringSchedulingIgnoredDuringExecution[]

对象

定义一组 pod (即,与给定命名空间相对 labelSelector 匹配的 labelSelector ),该 pod 应该与 pod 共同定位(反关联性)或没有共同定位(反关联性)的节点上运行,其中 co-located 在具有键 <topologyKey> 标签的节点上运行,它与其上运行一组 pod 的 pod 匹配。

10.1.38. .spec.config.affinity.podAntiAffinity.preferredDuringSchedulingIgnoredDuringExecution

描述
调度程序更喜欢将 pod 调度到满足此字段指定的反关联性表达式的节点,但可能会选择违反一个或多个表达式的节点。最首选的节点是具有最大权重总和的节点,即对于满足所有调度要求(资源请求、requiredDuringScheduling 反关联性表达式等)的每个节点,计算通过此字段元素来计算总和总和(如果节点具有与对应的 podAffinityTerm 匹配的 pod)的总和。
类型
数组

10.1.39. .spec.config.affinity.podAntiAffinity.preferredDuringSchedulingIgnoredDuringExecution[]

描述
所有匹配的 WeightedPodAffinityTerm 字段的权重添加到每个节点,以查找最首选节点。
类型
object
必填
  • podAffinityTerm
  • weight
属性类型描述

podAffinityTerm

对象

必需。与对应权重关联的 pod 关联性术语。

weight

整数

与对应的 podAffinityTerm 关联的权重,范围为 1-100。

10.1.40. .spec.config.affinity.podAntiAffinity.preferredDuringSchedulingIgnoredDuringExecution[].podAffinityTerm

描述
必需。与对应权重关联的 pod 关联性术语。
类型
object
必填
  • topologyKey
属性类型描述

labelSelector

对象

对一组资源进行标签查询,本例中为 pod。

namespaceSelector

对象

术语适用的命名空间集合上的标签查询。术语应用于此字段选定的命名空间的 union,以及 namespaces 字段中列出的命名空间。null selector 和 null 或空命名空间列表表示"此 pod 的命名空间"。空选择器({})匹配所有命名空间。

命名空间

数组(字符串)

namespaces 指定术语应用到的命名空间名称的静态列表。术语应用到此字段中列出的命名空间的 union,namespaceSelector 选择的命名空间列表和 null namespaceSelector 表示 " this pod 的命名空间"。

topologyKey

字符串

此 pod 应该在指定命名空间中与 labelSelector 匹配的 pod 共存(反关联性),其中 co-located 定义为在运行所选 pod 的节点的值为 running 的节点上运行。不允许为空 topologyKey。

10.1.41. .spec.config.affinity.podAntiAffinity.preferredDuringSchedulingIgnoredDuringExecution[].podAffinityTerm.labelSelector

描述
对一组资源进行标签查询,本例中为 pod。
类型
object
属性类型描述

matchExpressions

array

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

matchExpressions[]

对象

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

matchLabels

对象(字符串)

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

10.1.42. .spec.config.affinity.podAntiAffinity.preferredDuringSchedulingIgnoredDuringExecution[].podAffinityTerm.labelSelector.matchExpressions

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

10.1.43. .spec.config.affinity.podAntiAffinity.preferredDuringSchedulingIgnoredDuringExecution[].podAffinityTerm.labelSelector.matchExpressions[]

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

key

字符串

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

operator

字符串

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

数组(字符串)

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

10.1.44. .spec.config.affinity.podAntiAffinity.preferredDuringSchedulingIgnoredDuringExecution[].podAffinityTerm.namespaceSelector

描述
术语适用的命名空间集合上的标签查询。术语应用于此字段选定的命名空间的 union,以及 namespaces 字段中列出的命名空间。null selector 和 null 或空命名空间列表表示"此 pod 的命名空间"。空选择器({})匹配所有命名空间。
类型
object
属性类型描述

matchExpressions

array

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

matchExpressions[]

对象

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

matchLabels

对象(字符串)

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

10.1.45. .spec.config.affinity.podAntiAffinity.preferredDuringSchedulingIgnoredDuringExecution[].podAffinityTerm.namespaceSelector.matchExpressions

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

10.1.46. .spec.config.affinity.podAntiAffinity.preferredDuringSchedulingIgnoredDuringExecution[].podAffinityTerm.namespaceSelector.matchExpressions[]

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

key

字符串

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

operator

字符串

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

数组(字符串)

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

10.1.47. .spec.config.affinity.podAntiAffinity.requiredDuringSchedulingIgnoredDuringExecution

描述
如果在调度时没有满足此字段指定的反关联性要求,则 pod 不会被调度到该节点上。如果此字段指定的反关联性要求在 Pod 执行期间某一点满足(例如,由于 pod 标签更新),则系统可能或可能无法最终从其节点驱除 pod。当有多个元素时,与每个 podAffinityTerm 对应的节点列表都会被交集,例如必须满足所有术语。
类型
数组

10.1.48. .spec.config.affinity.podAntiAffinity.requiredDuringSchedulingIgnoredDuringExecution[]

描述
定义一组 pod (即,与给定命名空间相对 labelSelector 匹配的 labelSelector ),该 pod 应该与 pod 共同定位(反关联性)或没有共同定位(反关联性)的节点上运行,其中 co-located 在具有键 <topologyKey> 标签的节点上运行,它与其上运行一组 pod 的 pod 匹配。
类型
object
必填
  • topologyKey
属性类型描述

labelSelector

对象

对一组资源进行标签查询,本例中为 pod。

namespaceSelector

对象

术语适用的命名空间集合上的标签查询。术语应用于此字段选定的命名空间的 union,以及 namespaces 字段中列出的命名空间。null selector 和 null 或空命名空间列表表示"此 pod 的命名空间"。空选择器({})匹配所有命名空间。

命名空间

数组(字符串)

namespaces 指定术语应用到的命名空间名称的静态列表。术语应用到此字段中列出的命名空间的 union,namespaceSelector 选择的命名空间列表和 null namespaceSelector 表示 " this pod 的命名空间"。

topologyKey

字符串

此 pod 应该在指定命名空间中与 labelSelector 匹配的 pod 共存(反关联性),其中 co-located 定义为在运行所选 pod 的节点的值为 running 的节点上运行。不允许为空 topologyKey。

10.1.49. .spec.config.affinity.podAntiAffinity.requiredDuringSchedulingIgnoredDuringExecution[].labelSelector

描述
对一组资源进行标签查询,本例中为 pod。
类型
object
属性类型描述

matchExpressions

array

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

matchExpressions[]

对象

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

matchLabels

对象(字符串)

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

10.1.50. .spec.config.affinity.podAntiAffinity.requiredDuringSchedulingIgnoredDuringExecution[].labelSelector.matchExpressions

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

10.1.51. .spec.config.affinity.podAntiAffinity.requiredDuringSchedulingIgnoredDuringExecution[].labelSelector.matchExpressions[]

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

key

字符串

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

operator

字符串

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

数组(字符串)

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

10.1.52. .spec.config.affinity.podAntiAffinity.requiredDuringSchedulingIgnoredDuringExecution[].namespaceSelector

描述
术语适用的命名空间集合上的标签查询。术语应用于此字段选定的命名空间的 union,以及 namespaces 字段中列出的命名空间。null selector 和 null 或空命名空间列表表示"此 pod 的命名空间"。空选择器({})匹配所有命名空间。
类型
object
属性类型描述

matchExpressions

array

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

matchExpressions[]

对象

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

matchLabels

对象(字符串)

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

10.1.53. .spec.config.affinity.podAntiAffinity.requiredDuringSchedulingIgnoredDuringExecution[].namespaceSelector.matchExpressions

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

10.1.54. .spec.config.affinity.podAntiAffinity.requiredDuringSchedulingIgnoredDuringExecution[].namespaceSelector.matchExpressions[]

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

key

字符串

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

operator

字符串

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

数组(字符串)

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

10.1.55. .spec.config.env

描述
env 是容器中要设置的环境变量的列表。无法更新。
类型
array

10.1.56. .spec.config.env[]

描述
EnvVar 代表容器中存在的环境变量。
类型
object
必填
  • name
属性类型描述

name

字符串

环境变量的名称。必须是 C_IDENTIFIER。

value

字符串

变量引用 $(VAR_NAME)使用容器中之前定义的环境变量以及任何服务环境变量进行扩展。如果无法解析变量,则输入字符串中的引用将保持不变。双引号被缩减为单个 $,它允许转义 $(VAR_NAME)语法:即 " (VAR_NAME) " 将生成字符串 literal "$(VAR_NAME) "。转义的引用永远不会扩展,无论变量是否存在。默认为 ""。

valueFrom

对象

环境变量的值的源。如果值不为空,则无法使用。

10.1.57. .spec.config.env[].valueFrom

描述
环境变量的值的源。如果值不为空,则无法使用。
类型
object
属性类型描述

configMapKeyRef

对象

选择 ConfigMap 的键。

fieldRef

对象

选择 pod 的字段:支持 metadata.name、metadata.namespace、metadata.labels['<KEY>'], metadata.annotations['<KEY>'], spec.nodeName, spec.serviceAccountName, status.hostIP, status.podIP, status.podIPs.

resourceFieldRef

对象

选择容器的资源:当前仅支持资源限值和请求(limits.cpu, limits.memory, limits.ephemeral-storage, requests.cpu, requests.memory and requests.ephemeral-storage)。

secretKeyRef

对象

在 pod 命名空间中选择 secret 的键

10.1.58. .spec.config.env[].valueFrom.configMapKeyRef

描述
选择 ConfigMap 的键。
类型
object
必填
  • key
属性类型描述

key

字符串

要选择的密钥。

name

字符串

引用的名称。更多信息: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names TODO: 添加其他有用的字段。apiVersion、kind、uid?

optional

布尔值

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

10.1.59. .spec.config.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
属性类型描述

apiVersion

字符串

模式的版本是按术语编写的 FieldPath,默认为 "v1"。

fieldPath

字符串

在指定 API 版本中选择的字段路径。

10.1.60. .spec.config.env[].valueFrom.resourceFieldRef

描述
选择容器的资源:当前仅支持资源限值和请求(limits.cpu, limits.memory, limits.ephemeral-storage, requests.cpu, requests.memory and requests.ephemeral-storage)。
类型
object
必填
  • resource
属性类型描述

containerName

字符串

容器名称:卷需要,对于 env vars是可选的

divisor

integer-or-string

指定公开资源的输出格式,默认为 "1"

resource

字符串

必需:要选择的资源

10.1.61. .spec.config.env[].valueFrom.secretKeyRef

描述
在 pod 命名空间中选择 secret 的键
类型
object
必填
  • key
属性类型描述

key

字符串

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

name

字符串

引用的名称。更多信息: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names TODO: 添加其他有用的字段。apiVersion、kind、uid?

optional

布尔值

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

10.1.62. .spec.config.envFrom

描述
envFrom 是在容器中填充环境变量的源列表。源中定义的键必须是 C_IDENTIFIER。当容器启动时,所有无效密钥都会被报告为事件。当多个源中存在键时,与最后一个源关联的值将具有优先权。由带有重复键的 Env 定义的值将具有优先权。不可变。
类型
array

10.1.63. .spec.config.envFrom[]

描述
EnvFromSource 代表一组 ConfigMap 的源
类型
object
属性类型描述

configMapRef

对象

要从中选择的 ConfigMap

prefix

字符串

要添加到 ConfigMap 中每个键的可选标识符。必须是 C_IDENTIFIER。

secretRef

对象

要从中选择的 Secret

10.1.64. .spec.config.envFrom[].configMapRef

描述
要从中选择的 ConfigMap
类型
object
属性类型描述

name

字符串

引用的名称。更多信息: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names TODO: 添加其他有用的字段。apiVersion、kind、uid?

optional

布尔值

指定是否必须定义 ConfigMap

10.1.65. .spec.config.envFrom[].secretRef

描述
要从中选择的 Secret
类型
object
属性类型描述

name

字符串

引用的名称。更多信息: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names TODO: 添加其他有用的字段。apiVersion、kind、uid?

optional

布尔值

指定是否必须定义 Secret

10.1.66. .spec.config.resources

描述
resources 代表此容器所需的计算资源。不可变。更多信息: https://kubernetes.io/docs/concepts/configuration/manage-compute-resources-container/
类型
object
属性类型描述

声明

数组

claim 列出此容器使用的 spec.resourceClaims 中定义的资源名称。这是一个 alpha 字段,需要启用 DynamicResourceAllocation 功能门。此字段不可变。它只能为容器设置。

claims[]

object

ResourceClaim 引用 PodSpec.ResourceClaims 中的一个条目。

limits

integer-or-string

限制描述了允许的最大计算资源量。更多信息: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/

requests

integer-or-string

Requests 描述了所需的最少计算资源。如果容器省略了 Requests,则默认为 Limits (如果明确指定),否则默认为实现定义的值。请求不能超过限值。更多信息: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/

10.1.67. .spec.config.resources.claims

描述
claim 列出此容器使用的 spec.resourceClaims 中定义的资源名称。这是一个 alpha 字段,需要启用 DynamicResourceAllocation 功能门。此字段不可变。它只能为容器设置。
类型
数组

10.1.68. .spec.config.resources.claims[]

描述
ResourceClaim 引用 PodSpec.ResourceClaims 中的一个条目。
类型
object
必填
  • name
属性类型描述

name

string

name 必须与使用此字段的 Pod 的 pod.spec.resourceClaims 中的一个条目的名称匹配。它允许容器内部使用该资源。

10.1.69. .spec.config.selector

描述
selector 是要配置的 pod 的标签选择器。其 pod 被选择的现有 ReplicaSet 将会受到此部署的影响。它必须与 pod 模板的标签匹配。
类型
object
属性类型描述

matchExpressions

array

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

matchExpressions[]

对象

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

matchLabels

对象(字符串)

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

10.1.70. .spec.config.selector.matchExpressions

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

10.1.71. .spec.config.selector.matchExpressions[]

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

key

字符串

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

operator

字符串

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

数组(字符串)

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

10.1.72. .spec.config.tolerations

描述
容限(toleration)是 pod 的容限。
类型
array

10.1.73. .spec.config.tolerations[]

描述
此 Toleration 附加到 pod,以使用匹配的 operator <operator> 容许与 triple <key,value,effect> 匹配的任何污点。
类型
object
属性类型描述

effect

字符串

effect 表示要匹配的污点效果。空意味着匹配所有污点效果。指定后,允许的值为 NoSchedule,PreferNoSchedule 和 NoExecute。

key

字符串

key 是容限应用到的污点键。empty 表示与所有污点键匹配。如果键为空,则必须存在运算符;组合意味着匹配所有值和所有键。

operator

字符串

Operator 代表键与值的关系。有效的运算符是 Exists 和 Equal。默认值为 Equal。exists 等同于值的通配符,以便 pod 可以容忍特定类别的所有污点。

tolerationSeconds

整数

tolerationSeconds 代表容限的期间(必须生效 NoExecute,否则此字段将被忽略)可以容忍污点。默认情况下,它不会被设置,这意味着容许任何污点(不要驱除)。零值和负值将被视为 0 (立即删除)。

value

字符串

value 是容限匹配的污点值。如果运算符是 Exists,则该值应该为空,否则仅是一个常规字符串。

10.1.74. .spec.config.volumeMounts

描述
要在容器中设置的 VolumeMount 列表。
类型
array

10.1.75. .spec.config.volumeMounts[]

描述
VolumeMount 描述了容器内卷挂载。
类型
object
必填
  • mountPath
  • name
属性类型描述

mountPath

字符串

应挂载卷的容器中的路径。不得包含 ':'。

mountPropagation

字符串

mountPropagation 决定挂载如何从主机传播到容器以及反向传播。如果没有设置,则使用 MountPropagationNone。此字段在 1.10 中是 beta。

name

字符串

这必须与卷的 Name 匹配。

readOnly

布尔值

如果为 true,则以只读方式挂载,否则读写(false 或未指定)。默认为false。

subPath

字符串

应从中挂载容器卷的卷中的路径。默认为 "" (卷的 root)。

subPathExpr

字符串

在应该挂载容器卷的卷中扩展路径。行为与 SubPath 类似,但环境变量引用 $(VAR_NAME)使用容器的环境扩展。默认为 "" (卷的 root)。SubPathExpr 和 SubPath 是互斥的。

10.1.76. .spec.config.volumes

描述
podSpec 中设置的卷列表。
类型
array

10.1.77. .spec.config.volumes[]

描述
卷代表 pod 中的指定卷,可以被 pod 中的任何容器访问。
类型
object
必填
  • name
属性类型描述

awsElasticBlockStore

object

awsElasticBlockStore 代表一个 AWS Disk 资源,附加到 kubelet 的主机机器,然后公开给 pod。更多信息: https://kubernetes.io/docs/concepts/storage/volumes#awselasticblockstore

azureDisk

object

azureDisk 代表主机上的 Azure Data Disk 挂载,并绑定到 pod。

azureFile

object

azureFile 代表主机上的 Azure File Service 挂载,并绑定到 pod。

cephfs

object

CephFS 代表共享 pod 生命周期的主机上的 Ceph FS 挂载

cinder

object

Cinder 代表附加并挂载到 kubelet 主机机器上的 cinder 卷。更多信息: https://examples.k8s.io/mysql-cinder-pd/README.md

configMap

object

ConfigMap 代表应填充此卷的 configMap

csi

object

CSI (Container Storage Interface)代表由特定外部 CSI 驱动程序(Beta 功能)处理的临时存储。

downwardAPI

object

downwardAPI 代表应填充此卷的 pod 的 Downward API

emptyDir

object

emptyDir 代表共享 pod 生命周期的临时目录。更多信息: https://kubernetes.io/docs/concepts/storage/volumes#emptydir

ephemeral

object

ephemeral 代表由集群存储驱动程序处理的卷。卷的生命周期与定义它的 pod 关联 - 将在 pod 启动前创建,并在 pod 被删除时删除。如果 pod 运行(如需要从快照或容量跟踪中恢复)正常卷时,才需要这个卷。c)通过存储类指定存储驱动程序,以及 d)存储驱动程序支持通过 PersistentVolumeClaim 进行动态卷置备(请参阅 EphemeralVolumeSource 以了解有关这个卷类型和 PersistentVolumeClaim 间的连接的更多信息。对于保留的时间超过单个 pod 的生命周期,使用 PersistentVolumeClaim 或特定于供应商的 API 之一。如果使用 CSI 驱动程序,使用 CSI 驱动程序来轻量级本地临时卷 - 如需更多信息,请参阅驱动程序文档。pod 可以同时使用两种类型的临时卷和持久性卷。

fc

object

FC 代表附加到 kubelet 主机机器的光纤通道资源,然后公开给 pod。

flexVolume

object

FlexVolume 代表使用基于 exec 的插件置备的/附加的通用卷资源。

flocker

object

flocker 代表附加到 kubelet 主机机器的 Flocker 卷。这取决于正在运行的 Flocker 控制服务

gcePersistentDisk

object

gcePersistentDisk 代表一个 GCE Disk 资源,该资源附加到 kubelet 的主机机器,然后公开给 pod。更多信息: https://kubernetes.io/docs/concepts/storage/volumes#gcepersistentdisk

gitRepo

object

gitRepo 代表特定修订版本中的 git 存储库。DEPRECATED: GitRepo 已被弃用。要使用 git 存储库置备容器,请将 EmptyDir 挂载到使用 git 克隆存储库的 InitContainer 中,然后将 EmptyDir 挂载到 Pod 的容器中。

glusterfs

object

GlusterFS 代表共享 pod 生命周期的主机上的 Glusterfs 挂载。更多信息: https://examples.k8s.io/volumes/glusterfs/README.md

hostPath

object

hostpath 代表主机机器上直接公开给容器的已存在的文件或目录。这通常用于系统代理或其他允许查看主机机器的特权事情。大多数容器都不需要这样做。更多信息: https://kubernetes.io/docs/concepts/storage/volumes#hostpath -- TODO (jonesdl)我们需要限制哪些人可以使用主机目录挂载,以及谁可以/不能将主机目录挂载为读/写。

iscsi

object

iSCSI 代表附加到 kubelet 主机机器的 ISCSI Disk 资源,然后公开给 pod。更多信息: https://examples.k8s.io/volumes/iscsi/README.md

name

string

卷的名称。必须是 DNS_LABEL,且必须在 pod 中唯一。更多信息: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names

nfs

object

NFS 代表共享 pod 生命周期更多信息的主机上 NFS 挂载: https://kubernetes.io/docs/concepts/storage/volumes#nfs

persistentVolumeClaim

object

persistentVolumeClaimVolumeSource 代表对同一命名空间中的 PersistentVolumeClaim 的引用。更多信息: https://kubernetes.io/docs/concepts/storage/persistent-volumes#persistentvolumeclaims

photonPersistentDisk

object

photonPersistentDisk 代表附加并挂载到 kubelets 主机上的 PhotonController 持久磁盘

portworxVolume

object

portworxVolume 代表附加并挂载到 kubelets 主机上的 portworx 卷

projected

object

一个资源 secret、configmap 和 Downward API 中所有的项目项目

quobyte

object

quobyte 代表共享 pod 生命周期的主机上执行 Quobyte 挂载

rbd

object

RBD 代表共享 pod 生命周期的主机上 Rados 块设备挂载。更多信息: https://examples.k8s.io/volumes/rbd/README.md

scaleIO

object

scaleIO 代表附加并挂载到 Kubernetes 节点上的 ScaleIO 持久性卷。

secret

object

Secret 代表应填充此卷的 secret。更多信息: https://kubernetes.io/docs/concepts/storage/volumes#secret

storageos

object

storageos 代表附加并挂载到 Kubernetes 节点上的 StorageOS 卷。

vsphereVolume

object

vsphereVolume 代表附加并挂载到 kubelets 主机上的 vSphere 卷

10.1.78. .spec.config.volumes[].awsElasticBlockStore

描述
awsElasticBlockStore 代表一个 AWS Disk 资源,附加到 kubelet 的主机机器,然后公开给 pod。更多信息: https://kubernetes.io/docs/concepts/storage/volumes#awselasticblockstore
类型
object
必填
  • volumeID
属性类型描述

fsType

string

fstype 是您要挂载的卷的文件系统类型。提示: 确保主机操作系统支持文件系统类型。示例:"ext4", "xfs", "ntfs"。如果未指定,则隐式推断为 "ext4"。更多信息: https://kubernetes.io/docs/concepts/storage/volumes#awselasticblockstore TODO:如何防止文件系统中的错误影响机器

分区

整数

partition 是您要挂载的卷中的分区。如果省略,则默认使用卷名称来挂载。示例: 对于卷 /dev/sda1,您可以将分区指定为 "1"。同样,/dev/sda 的卷分区是"0" (或者您可以将属性留空)。

readOnly

布尔值

readonly 值 true 将强制 VolumeMount 中的 readOnly 设置。更多信息: https://kubernetes.io/docs/concepts/storage/volumes#awselasticblockstore

volumeID

string

VolumeId 是 AWS (Amazon EBS 卷)中持久磁盘资源的唯一 ID。更多信息: https://kubernetes.io/docs/concepts/storage/volumes#awselasticblockstore

10.1.79. .spec.config.volumes[].azureDisk

描述
azureDisk 代表主机上的 Azure Data Disk 挂载,并绑定到 pod。
类型
object
必填
  • diskName
  • diskURI
属性类型描述

cachingMode

string

cachingMode 是主机缓存模式: None、Read Only、Read Write。

diskName

string

diskname 是 blob 存储中的数据磁盘的 Name

diskURI

string

diskURI 是 blob 存储中的数据磁盘的 URI

fsType

string

fstype 是要挂载的 Filesystem 类型。必须是主机操作系统支持的文件系统类型。Ex. "ext4", "xfs", "ntfs".如果未指定,则隐式推断为 "ext4"。

kind

string

kind 预期值为 Shared: 每个存储帐户 Dedicated 有多个 blob 磁盘:每个存储帐户 Managed: azure managed data disk (only on managed availability set). 默认为 shared

readOnly

布尔值

readonly Defaults to false (read/write)。此处的 readonly 将强制 VolumeMount 中的 ReadOnly 设置。

10.1.80. .spec.config.volumes[].azureFile

描述
azureFile 代表主机上的 Azure File Service 挂载,并绑定到 pod。
类型
object
必填
  • secretName
  • shareName
属性类型描述

readOnly

布尔值

readonly 默认为 false (读/写)。此处的 readonly 将强制 VolumeMount 中的 ReadOnly 设置。

secretName

string

secretName 是包含 Azure Storage Account Name 和 Key 的 secret 名称

shareName

string

sharename 是 azure 共享名称

10.1.81. .spec.config.volumes[].cephfs

描述
CephFS 代表共享 pod 生命周期的主机上的 Ceph FS 挂载
类型
object
必填
  • monitor
属性类型描述

monitor

数组(字符串)

monitor 是必需的: monitor 是 Ceph 监视器更多信息的集合: https://examples.k8s.io/volumes/cephfs/README.md#how-to-use-it

path

string

路径为可选:作为挂载的 root 使用,而不是完整的 Ceph 树,默认为 /

readOnly

布尔值

readonly 为 Optional: Defaults to false (read/write)。此处的 readonly 将强制 VolumeMount 中的 ReadOnly 设置。更多信息: https://examples.k8s.io/volumes/cephfs/README.md#how-to-use-it

secretFile

string

secretfile 为 Optional: SecretFile 是用户密钥环的路径,默认为 /etc/ceph/user.secret 更多信息 :https://examples.k8s.io/volumes/cephfs/README.md#how-to-use-it

secretRef

object

secretRef 为 Optional: SecretRef 对 User 的身份验证 secret 的引用,默认为空。更多信息: https://examples.k8s.io/volumes/cephfs/README.md#how-to-use-it

user

string

User 是可选的:用户是 rados 用户名,默认为 admin 更多信息: https://examples.k8s.io/volumes/cephfs/README.md#how-to-use-it

10.1.82. .spec.config.volumes[].cephfs.secretRef

描述
secretRef 为 Optional: SecretRef 对 User 的身份验证 secret 的引用,默认为空。更多信息: https://examples.k8s.io/volumes/cephfs/README.md#how-to-use-it
类型
object
属性类型描述

name

字符串

引用的名称。更多信息: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names TODO: 添加其他有用的字段。apiVersion、kind、uid?

10.1.83. .spec.config.volumes[].cinder

描述
Cinder 代表附加并挂载到 kubelet 主机机器上的 cinder 卷。更多信息: https://examples.k8s.io/mysql-cinder-pd/README.md
类型
object
必填
  • volumeID
属性类型描述

fsType

string

fstype 是要挂载的文件系统类型。必须是主机操作系统支持的文件系统类型。示例:"ext4", "xfs", "ntfs"。如果未指定,则隐式推断为 "ext4"。更多信息: https://examples.k8s.io/mysql-cinder-pd/README.md

readOnly

布尔值

readonly 默认为 false (读/写)。此处的 readonly 将强制 VolumeMount 中的 ReadOnly 设置。更多信息: https://examples.k8s.io/mysql-cinder-pd/README.md

secretRef

object

secretRef 是可选的:指向包含用于连接到 OpenStack 的参数的 secret 对象。

volumeID

string

用于识别 cinder 中的卷的 VolumeId。更多信息: https://examples.k8s.io/mysql-cinder-pd/README.md

10.1.84. .spec.config.volumes[].cinder.secretRef

描述
secretRef 是可选的:指向包含用于连接到 OpenStack 的参数的 secret 对象。
类型
object
属性类型描述

name

字符串

引用的名称。更多信息: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names TODO: 添加其他有用的字段。apiVersion、kind、uid?

10.1.85. .spec.config.volumes[].configMap

描述
ConfigMap 代表应填充此卷的 configMap
类型
object
属性类型描述

defaultMode

整数

defaultMode 是可选的:默认用于在创建的文件上设置权限的模式位。必须是 0000 到 0777 之间的数值,或者 0 到 511 之间的十进制值。YAML 接受八进制和十进制值,JSON 需要模式位的十进制值。默认值为 0644。路径中的目录不受此设置的影响。这可能与影响文件模式的其他选项(如 fsGroup )冲突,结果可以是其他模式位。

items

数组

如果未指定,则引用的 ConfigMap 的 Data 字段中每个键值对将投射到卷中,其名称是键,内容是值。如果指定,列出的键将投射到指定的路径中,并且不会出现未列出的键。如果指定了没有存在于 ConfigMap 中的键,则卷设置将失败,除非标记为可选。路径必须是相对的,且不能包含 '..' 路径,或者以 '..' 开始。

items[]

对象

将字符串键映射到卷中的路径。

name

字符串

引用的名称。更多信息: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names TODO: 添加其他有用的字段。apiVersion、kind、uid?

optional

布尔值

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

10.1.86. .spec.config.volumes[].configMap.items

描述
如果未指定,则引用的 ConfigMap 的 Data 字段中每个键值对将投射到卷中,其名称是键,内容是值。如果指定,列出的键将投射到指定的路径中,并且不会出现未列出的键。如果指定了没有存在于 ConfigMap 中的键,则卷设置将失败,除非标记为可选。路径必须是相对的,且不能包含 '..' 路径,或者以 '..' 开始。
类型
array

10.1.87. .spec.config.volumes[].configMap.items[]

描述
将字符串键映射到卷中的路径。
类型
object
必填
  • key
  • path
属性类型描述

key

string

key 是项目的关键。

模式

整数

模式为可选:用于设置此文件权限的模式位。必须是 0000 到 0777 之间的数值,或者 0 到 511 之间的十进制值。YAML 接受八进制和十进制值,JSON 需要模式位的十进制值。如果没有指定,则使用卷 defaultMode。这可能与影响文件模式的其他选项(如 fsGroup )冲突,结果可以是其他模式位。

path

string

path 是将键映射到的文件的相对路径。可能不是绝对路径。不得包含路径元素 '..'。不得以字符串 '..' 开头。

10.1.88. .spec.config.volumes[].csi

描述
CSI (Container Storage Interface)代表由特定外部 CSI 驱动程序(Beta 功能)处理的临时存储。
类型
object
必填
  • driver
属性类型描述

driver

string

driver 是处理此卷的 CSI 驱动程序的名称。请参考您的 admin,了解集群中注册的正确名称。

fsType

string

要挂载的 fstype。Ex. "ext4", "xfs", "ntfs".如果没有提供,则会将空值传递给关联的 CSI 驱动程序,该驱动程序将决定要应用的默认文件系统。

nodePublishSecretRef

object

nodePublishSecretRef 是包含敏感信息的 secret 对象的引用,以传递给 CSI 驱动程序,以完成 CSI NodePublishVolume 和 NodeUnpublishVolume 调用。此字段是可选的,如果不需要 secret,则可能会为空。如果 secret 对象包含多个 secret,则会传递所有 secret 引用。

readOnly

布尔值

readonly 为卷指定只读配置。默认为 false (读/写)。

volumeAttributes

对象(字符串)

volumeAttributes 存储传递给 CSI 驱动程序的驱动程序特定属性。有关支持的值,请参阅驱动程序的文档。

10.1.89. .spec.config.volumes[].csi.nodePublishSecretRef

描述
nodePublishSecretRef 是包含敏感信息的 secret 对象的引用,以传递给 CSI 驱动程序,以完成 CSI NodePublishVolume 和 NodeUnpublishVolume 调用。此字段是可选的,如果不需要 secret,则可能会为空。如果 secret 对象包含多个 secret,则会传递所有 secret 引用。
类型
object
属性类型描述

name

字符串

引用的名称。更多信息: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names TODO: 添加其他有用的字段。apiVersion、kind、uid?

10.1.90. .spec.config.volumes[].downwardAPI

描述
downwardAPI 代表应填充此卷的 pod 的 Downward API
类型
object
属性类型描述

defaultMode

整数

可选:默认在创建的文件上使用模式位。必须是 Optional: 模式位,用于默认对创建的文件设置权限。必须是 0000 到 0777 之间的数值,或者 0 到 511 之间的十进制值。YAML 接受八进制和十进制值,JSON 需要模式位的十进制值。默认值为 0644。路径中的目录不受此设置的影响。这可能与影响文件模式的其他选项(如 fsGroup )冲突,结果可以是其他模式位。

items

array

items 是 Downward API 卷文件的列表

items[]

对象

DownwardAPIVolumeFile 代表创建包含 pod 字段的文件的信息

10.1.91. .spec.config.volumes[].downwardAPI.items

描述
items 是 Downward API 卷文件的列表
类型
array

10.1.92. .spec.config.volumes[].downwardAPI.items[]

描述
DownwardAPIVolumeFile 代表创建包含 pod 字段的文件的信息
类型
object
必填
  • path
属性类型描述

fieldRef

对象

必需:选择 pod 的字段:只支持注解、标签、名称和命名空间。

模式

整数

可选:用于设置此文件权限的模式位,必须是 0000 到 0777 之间的数值,或 0 到 511 之间的十进制值。YAML 接受八进制和十进制值,JSON 需要模式位的十进制值。如果没有指定,则使用卷 defaultMode。这可能与影响文件模式的其他选项(如 fsGroup )冲突,结果可以是其他模式位。

path

字符串

必需:Path 是要创建的文件的相对路径名称。不能是绝对的,也不能包含 '..' 路径。必须经过 utf-8 编码。相对路径的第一个项不能以 '..' 开头。

resourceFieldRef

对象

选择容器的资源:目前只支持资源限值和请求(limits.cpu、limits.memory、requests.cpu 和 requests.memory)。

10.1.93. .spec.config.volumes[].downwardAPI.items[].fieldRef

描述
必需:选择 pod 的字段:只支持注解、标签、名称和命名空间。
类型
object
必填
  • fieldPath
属性类型描述

apiVersion

字符串

模式的版本是按术语编写的 FieldPath,默认为 "v1"。

fieldPath

字符串

在指定 API 版本中选择的字段路径。

10.1.94. .spec.config.volumes[].downwardAPI.items[].resourceFieldRef

描述
选择容器的资源:目前只支持资源限值和请求(limits.cpu、limits.memory、requests.cpu 和 requests.memory)。
类型
object
必填
  • resource
属性类型描述

containerName

字符串

容器名称:卷需要,对于 env vars是可选的

divisor

integer-or-string

指定公开资源的输出格式,默认为 "1"

resource

字符串

必需:要选择的资源

10.1.95. .spec.config.volumes[].emptyDir

描述
emptyDir 代表共享 pod 生命周期的临时目录。更多信息: https://kubernetes.io/docs/concepts/storage/volumes#emptydir
类型
object
属性类型描述

string

Medium 代表存储介质类型应支持这个目录。默认值为 "",这意味着使用节点的默认介质。必须是空字符串(默认)或 Memory。更多信息: https://kubernetes.io/docs/concepts/storage/volumes#emptydir

sizeLimit

integer-or-string

sizeLimit 是这个 EmptyDir 卷所需的本地存储总量。大小限制也适用于内存介质。内存用量的最大使用量为此处指定的 SizeLimit 和 pod 中所有容器的内存限值总和。默认值为 nil,这意味着限制未定义。更多信息: https://kubernetes.io/docs/concepts/storage/volumes#emptydir

10.1.96. .spec.config.volumes[].ephemeral

描述
ephemeral 代表由集群存储驱动程序处理的卷。卷的生命周期与定义它的 pod 关联 - 将在 pod 启动前创建,并在 pod 被删除时删除。如果 pod 运行(如需要从快照或容量跟踪中恢复)正常卷时,才需要这个卷。c)通过存储类指定存储驱动程序,以及 d)存储驱动程序支持通过 PersistentVolumeClaim 进行动态卷置备(请参阅 EphemeralVolumeSource 以了解有关这个卷类型和 PersistentVolumeClaim 间的连接的更多信息。对于保留的时间超过单个 pod 的生命周期,使用 PersistentVolumeClaim 或特定于供应商的 API 之一。如果使用 CSI 驱动程序,使用 CSI 驱动程序来轻量级本地临时卷 - 如需更多信息,请参阅驱动程序文档。pod 可以同时使用两种类型的临时卷和持久性卷。
类型
object
属性类型描述

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。

10.1.97. .spec.config.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
属性类型描述

metadata

对象

可能包含创建 PVC 时将复制到 PVC 的标签和注解。不允许其他字段,并在验证过程中被拒绝。

spec

对象

PersistentVolumeClaim 的规格。整个内容保持不变复制到从该模板创建的 PVC 中。PersistentVolumeClaim 中与 相同的字段也有效。

10.1.98. .spec.config.volumes[].ephemeral.volumeClaimTemplate.metadata

描述
可能包含创建 PVC 时将复制到 PVC 的标签和注解。不允许其他字段,并在验证过程中被拒绝。
类型
对象

10.1.99. .spec.config.volumes[].ephemeral.volumeClaimTemplate.spec

描述
PersistentVolumeClaim 的规格。整个内容保持不变复制到从该模板创建的 PVC 中。PersistentVolumeClaim 中与 相同的字段也有效。
类型
object
属性类型描述

accessModes

数组(字符串)

accessModes 包含卷应具有所需的访问模式。更多信息: https://kubernetes.io/docs/concepts/storage/persistent-volumes#access-modes-1

dataSource

object

Datasource 字段可以用来指定:* 一个现有的 VolumeSnapshot 对象(snapshot.storage.k8s.io/VolumeSnapshot)* 一个现有的 PVC (PersistentVolumeClaim),如果置备程序或外部控制器可以支持指定的数据源,它将基于指定数据源的内容创建一个新卷。当启用 AnyVolumeDataSource 功能门时,dataSource 内容将复制到 dataSourceRef 中,当未指定 dataSourceRef.namespace 时,dataSourceRef 内容将复制到 dataSource 中。如果指定了 namespace,则不会将 dataSourceRef 复制到 dataSource 中。

dataSourceRef

object

如果需要非空卷,则 dataSourceRef 指定要使用数据填充卷的对象。这可以是来自非空 API 组(非核心对象)或 PersistentVolumeClaim 对象的任何对象。当指定对象的类型与某些安装的卷填充或动态置备程序匹配时,卷绑定才会成功。此字段将替换 dataSource 字段的功能,如果两个字段都不是空的,则它们必须具有相同的值。为了向后兼容,当命名空间没有在 dataSourceRef 中指定时,如果其中一个为空,则两个字段(dataSource 和 dataSourceRef)都会自动设置为相同的值,另一个是非空的。当在 dataSourceRef 中指定 namespace 时,dataSource 不设置为相同的值,必须为空。dataSource 和 dataSourceRef 之间有三个重要区别:* While dataSource 只允许两种特定类型的对象,dataSourceRef 允许任何非核心对象,以及 PersistentVolumeClaim 对象。* 虽然 dataSource 忽略了禁止的值(丢弃它们),dataSourceRef 保留所有值,并在指定禁止的值时生成错误。* 虽然 dataSource 只允许本地对象,dataSourceRef 允许任何命名空间中的对象。(beta)使用此字段需要启用 AnyVolumeDataSource 功能门。(alpha)使用 dataSourceRef 的 namespace 字段需要启用 CrossNamespaceVolumeDataSource 功能门。

resources

object

resources 代表卷应具有的最小资源。如果启用了 RecoverVolumeExpansionFailure 功能,用户可以指定小于之前值的资源要求,但仍必须高于声明的 status 字段中记录的容量。更多信息: https://kubernetes.io/docs/concepts/storage/persistent-volumes#resources

selector

object

selector 是要考虑绑定的卷的标签查询。

storageClassName

string

storageClassName 是声明所需的 StorageClass 的名称。更多信息: https://kubernetes.io/docs/concepts/storage/persistent-volumes#class-1

volumeMode

字符串

volumeMode 定义声明需要哪些卷类型。当未包含在 claim spec 中时,文件系统的值会被表示。

volumeName

string

volumeName 是对此声明支持的 PersistentVolume 的绑定引用。

10.1.100. .spec.config.volumes[].ephemeral.volumeClaimTemplate.spec.dataSource

描述
Datasource 字段可以用来指定:* 一个现有的 VolumeSnapshot 对象(snapshot.storage.k8s.io/VolumeSnapshot)* 一个现有的 PVC (PersistentVolumeClaim),如果置备程序或外部控制器可以支持指定的数据源,它将基于指定数据源的内容创建一个新卷。当启用 AnyVolumeDataSource 功能门时,dataSource 内容将复制到 dataSourceRef 中,当未指定 dataSourceRef.namespace 时,dataSourceRef 内容将复制到 dataSource 中。如果指定了 namespace,则不会将 dataSourceRef 复制到 dataSource 中。
类型
object
必填
  • kind
  • name
属性类型描述

apiGroup

字符串

APIGroup 是所引用资源的组。如果没有指定 APIGroup,则指定的 Kind 必须位于 core API 组中。对于任何其他第三方类型,需要 APIGroup。

kind

字符串

kind 是被引用的资源类型

name

字符串

name 是被引用的资源的名称

10.1.101. .spec.config.volumes[].ephemeral.volumeClaimTemplate.spec.dataSourceRef

描述
如果需要非空卷,则 dataSourceRef 指定要使用数据填充卷的对象。这可以是来自非空 API 组(非核心对象)或 PersistentVolumeClaim 对象的任何对象。当指定对象的类型与某些安装的卷填充或动态置备程序匹配时,卷绑定才会成功。此字段将替换 dataSource 字段的功能,如果两个字段都不是空的,则它们必须具有相同的值。为了向后兼容,当命名空间没有在 dataSourceRef 中指定时,如果其中一个为空,则两个字段(dataSource 和 dataSourceRef)都会自动设置为相同的值,另一个是非空的。当在 dataSourceRef 中指定 namespace 时,dataSource 不设置为相同的值,必须为空。dataSource 和 dataSourceRef 之间有三个重要区别:* While dataSource 只允许两种特定类型的对象,dataSourceRef 允许任何非核心对象,以及 PersistentVolumeClaim 对象。* 虽然 dataSource 忽略了禁止的值(丢弃它们),dataSourceRef 保留所有值,并在指定禁止的值时生成错误。* 虽然 dataSource 只允许本地对象,dataSourceRef 允许任何命名空间中的对象。(beta)使用此字段需要启用 AnyVolumeDataSource 功能门。(alpha)使用 dataSourceRef 的 namespace 字段需要启用 CrossNamespaceVolumeDataSource 功能门。
类型
object
必填
  • kind
  • name
属性类型描述

apiGroup

字符串

APIGroup 是所引用资源的组。如果没有指定 APIGroup,则指定的 Kind 必须位于 core API 组中。对于任何其他第三方类型,需要 APIGroup。

kind

字符串

kind 是被引用的资源类型

name

字符串

name 是被引用的资源的名称

namespace

string

命名空间是被引用的资源的命名空间,请注意,当指定命名空间时,引用命名空间中需要一个 gateway.networking.k8s.io/ReferenceGrant 对象来允许该命名空间的所有者接受引用。详情请查看 ReferenceGrant 文档。(alpha)此字段需要启用 CrossNamespaceVolumeDataSource 功能门。

10.1.102. .spec.config.volumes[].ephemeral.volumeClaimTemplate.spec.resources

描述
resources 代表卷应具有的最小资源。如果启用了 RecoverVolumeExpansionFailure 功能,用户可以指定小于之前值的资源要求,但仍必须高于声明的 status 字段中记录的容量。更多信息: https://kubernetes.io/docs/concepts/storage/persistent-volumes#resources
类型
object
属性类型描述

声明

数组

claim 列出此容器使用的 spec.resourceClaims 中定义的资源名称。这是一个 alpha 字段,需要启用 DynamicResourceAllocation 功能门。此字段不可变。它只能为容器设置。

claims[]

object

ResourceClaim 引用 PodSpec.ResourceClaims 中的一个条目。

limits

integer-or-string

限制描述了允许的最大计算资源量。更多信息: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/

requests

integer-or-string

Requests 描述了所需的最少计算资源。如果容器省略了 Requests,则默认为 Limits (如果明确指定),否则默认为实现定义的值。请求不能超过限值。更多信息: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/

10.1.103. .spec.config.volumes[].ephemeral.volumeClaimTemplate.spec.resources.claims

描述
claim 列出此容器使用的 spec.resourceClaims 中定义的资源名称。这是一个 alpha 字段,需要启用 DynamicResourceAllocation 功能门。此字段不可变。它只能为容器设置。
类型
数组

10.1.104. .spec.config.volumes[].ephemeral.volumeClaimTemplate.spec.resources.claims[]

描述
ResourceClaim 引用 PodSpec.ResourceClaims 中的一个条目。
类型
object
必填
  • name
属性类型描述

name

string

name 必须与使用此字段的 Pod 的 pod.spec.resourceClaims 中的一个条目的名称匹配。它允许容器内部使用该资源。

10.1.105. .spec.config.volumes[].ephemeral.volumeClaimTemplate.spec.selector

描述
selector 是要考虑绑定的卷的标签查询。
类型
object
属性类型描述

matchExpressions

array

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

matchExpressions[]

对象

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

matchLabels

对象(字符串)

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

10.1.106. .spec.config.volumes[].ephemeral.volumeClaimTemplate.spec.selector.matchExpressions

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

10.1.107. .spec.config.volumes[].ephemeral.volumeClaimTemplate.spec.selector.matchExpressions[]

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

key

字符串

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

operator

字符串

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

数组(字符串)

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

10.1.108. .spec.config.volumes[].fc

描述
FC 代表附加到 kubelet 主机机器的光纤通道资源,然后公开给 pod。
类型
object
属性类型描述

fsType

string

fstype 是要挂载的文件系统类型。必须是主机操作系统支持的文件系统类型。Ex. "ext4", "xfs", "ntfs".如果未指定,则隐式推断为 "ext4"。TODO:如何防止文件系统中的错误破坏计算机

lun

整数

LUN 是可选的:FC 目标 lun 号

readOnly

布尔值

readonly 为 Optional: Defaults to false (read/write)。此处的 readonly 将强制 VolumeMount 中的 ReadOnly 设置。

targetWWNs

数组(字符串)

targetWWNs 是可选:FC 目标全球名称(WWN)

wwids

数组(字符串)

wwids 可选:FC 卷全局范围标识符(wwids) Either wwids 或 targetWWN 和 lun 的组合必须被设置,但不能同时设置。

10.1.109. .spec.config.volumes[].flexVolume

描述
FlexVolume 代表使用基于 exec 的插件置备的/附加的通用卷资源。
类型
object
必填
  • driver
属性类型描述

driver

string

driver 是用于此卷的驱动程序的名称。

fsType

string

fstype 是要挂载的文件系统类型。必须是主机操作系统支持的文件系统类型。Ex. "ext4", "xfs", "ntfs".默认文件系统依赖于 FlexVolume 脚本。

options

对象(字符串)

选项为 Optional:此字段包含额外的命令选项(若有)。

readOnly

布尔值

readonly 为 Optional: 默认为 false (读/写)。此处的 readonly 将强制 VolumeMount 中的 ReadOnly 设置。

secretRef

object

secretRef 是 Optional: secretRef 引用了包含敏感信息的 secret 对象,以传递给插件脚本。如果没有指定 secret 对象,这可能为空。如果 secret 对象包含多个 secret,则所有 secret 都会传递给插件脚本。

10.1.110. .spec.config.volumes[].flexVolume.secretRef

描述
secretRef 是 Optional: secretRef 引用了包含敏感信息的 secret 对象,以传递给插件脚本。如果没有指定 secret 对象,这可能为空。如果 secret 对象包含多个 secret,则所有 secret 都会传递给插件脚本。
类型
object
属性类型描述

name

字符串

引用的名称。更多信息: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names TODO: 添加其他有用的字段。apiVersion、kind、uid?

10.1.111. .spec.config.volumes[].flocker

描述
flocker 代表附加到 kubelet 主机机器的 Flocker 卷。这取决于正在运行的 Flocker 控制服务
类型
object
属性类型描述

datasetName

string

datasetName 是数据存储为 Flocker dataset 上的 metadata → name 的 Name,应被视为已弃用

datasetUUID

string

datasetUUID 是 dataset 的 UUID。这是 Flocker 数据集的唯一标识符

10.1.112. .spec.config.volumes[].gcePersistentDisk

描述
gcePersistentDisk 代表一个 GCE Disk 资源,该资源附加到 kubelet 的主机机器,然后公开给 pod。更多信息: https://kubernetes.io/docs/concepts/storage/volumes#gcepersistentdisk
类型
object
必填
  • pdName
属性类型描述

fsType

string

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

string

pdName 是 GCE 中的 PD 资源的唯一名称。用于识别 GCE 中的磁盘。更多信息: https://kubernetes.io/docs/concepts/storage/volumes#gcepersistentdisk

readOnly

布尔值

此处的 readonly 将强制 VolumeMount 中的 ReadOnly 设置。默认为false。更多信息: https://kubernetes.io/docs/concepts/storage/volumes#gcepersistentdisk

10.1.113. .spec.config.volumes[].gitRepo

描述
gitRepo 代表特定修订版本中的 git 存储库。DEPRECATED: GitRepo 已被弃用。要使用 git 存储库置备容器,请将 EmptyDir 挂载到使用 git 克隆存储库的 InitContainer 中,然后将 EmptyDir 挂载到 Pod 的容器中。
类型
object
必填
  • 软件仓库
属性类型描述

目录

string

directory 是目标目录名称。不得包含或以 '..' 开头。如果提供了 '.',则卷目录将是 git 存储库。否则,如果指定,卷将在带有给定名称的子目录中包含 git 存储库。

软件仓库

string

repository 是 URL

revision

string

revision 是指定修订版本的提交哈希。

10.1.114. .spec.config.volumes[].glusterfs

描述
GlusterFS 代表共享 pod 生命周期的主机上的 Glusterfs 挂载。更多信息: https://examples.k8s.io/volumes/glusterfs/README.md
类型
object
必填
  • 端点
  • path
属性类型描述

端点

string

Endpoints 是 Glusterfs 拓扑的详细信息的端点名称。更多信息: https://examples.k8s.io/volumes/glusterfs/README.md#create-a-pod

path

string

path 是 Glusterfs 卷路径。更多信息: https://examples.k8s.io/volumes/glusterfs/README.md#create-a-pod

readOnly

布尔值

此处的 readonly 将强制 Glusterfs 卷以只读权限挂载。默认为false。更多信息: https://examples.k8s.io/volumes/glusterfs/README.md#create-a-pod

10.1.115. .spec.config.volumes[].hostPath

描述
hostpath 代表主机机器上直接公开给容器的已存在的文件或目录。这通常用于系统代理或其他允许查看主机机器的特权事情。大多数容器都不需要这样做。更多信息: https://kubernetes.io/docs/concepts/storage/volumes#hostpath -- TODO (jonesdl)我们需要限制哪些人可以使用主机目录挂载,以及谁可以/不能将主机目录挂载为读/写。
类型
object
必填
  • path
属性类型描述

path

string

主机上目录的路径。如果路径是符号链接,它将遵循指向实际路径的链接。更多信息: https://kubernetes.io/docs/concepts/storage/volumes#hostpath

type

string

HostPath Volume 默认为 "" 更多信息: https://kubernetes.io/docs/concepts/storage/volumes#hostpath

10.1.116. .spec.config.volumes[].iscsi

描述
iSCSI 代表附加到 kubelet 主机机器的 ISCSI Disk 资源,然后公开给 pod。更多信息: https://examples.k8s.io/volumes/iscsi/README.md
类型
object
必填
  • iqn
  • lun
  • targetPortal
属性类型描述

chapAuthDiscovery

布尔值

chapAuthDiscovery 定义是否支持 iSCSI Discovery CHAP 身份验证

chapAuthSession

布尔值

chapAuthSession 定义是否支持 iSCSI 会话 CHAP 身份验证

fsType

string

fstype 是您要挂载的卷的文件系统类型。提示: 确保主机操作系统支持文件系统类型。示例:"ext4", "xfs", "ntfs"。如果未指定,则隐式推断为 "ext4"。更多信息: https://kubernetes.io/docs/concepts/storage/volumes#iscsi TODO:如何防止文件系统中的错误影响机器

initiatorName

string

initiatorname 是自定义 iSCSI 启动器名称。如果同时使用 iscsiInterface 指定 initiatorName,则会为连接创建新的 iSCSI 接口 <target portal>:<volume name>。

iqn

string

IQN 是目标 iSCSI 限定名称。

iscsiInterface

string

iscsiInterface 是使用 iSCSI 传输的接口名称。默认为 'default'(tcp)。

lun

整数

LUN 表示 iSCSI 目标 Lun 编号。

门户

数组(字符串)

门户是 iSCSI 目标门户列表。如果端口不是默认值(通常为 TCP 端口 860 和 3260),则门户是 IP 或 ip_addr:port。

readOnly

布尔值

此处的 readonly 将强制 VolumeMount 中的 ReadOnly 设置。默认为false。

secretRef

object

secretRef 是 iSCSI 目标和发起方身份验证的 CHAP Secret

targetPortal

string

targetPortal 是 iSCSI 目标门户。如果端口不是默认值(通常为 TCP 端口 860 和 3260),则门户是 IP 或 ip_addr:port。

10.1.117. .spec.config.volumes[].iscsi.secretRef

描述
secretRef 是 iSCSI 目标和发起方身份验证的 CHAP Secret
类型
object
属性类型描述

name

字符串

引用的名称。更多信息: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names TODO: 添加其他有用的字段。apiVersion、kind、uid?

10.1.118. .spec.config.volumes[].nfs

描述
NFS 代表共享 pod 生命周期更多信息的主机上 NFS 挂载: https://kubernetes.io/docs/concepts/storage/volumes#nfs
类型
object
必填
  • path
  • server
属性类型描述

path

string

NFS 服务器导出的路径。更多信息: https://kubernetes.io/docs/concepts/storage/volumes#nfs

readOnly

布尔值

此处的只读将强制使用只读权限挂载 NFS 导出。默认为false。更多信息: https://kubernetes.io/docs/concepts/storage/volumes#nfs

server

string

server 是 NFS 服务器的主机名或 IP 地址。更多信息: https://kubernetes.io/docs/concepts/storage/volumes#nfs

10.1.119. .spec.config.volumes[].persistentVolumeClaim

描述
persistentVolumeClaimVolumeSource 代表对同一命名空间中的 PersistentVolumeClaim 的引用。更多信息: https://kubernetes.io/docs/concepts/storage/persistent-volumes#persistentvolumeclaims
类型
object
必填
  • claimName
属性类型描述

claimName

string

claimName 是与使用这个卷的 pod 相同的命名空间中的 PersistentVolumeClaim 的名称。更多信息: https://kubernetes.io/docs/concepts/storage/persistent-volumes#persistentvolumeclaims

readOnly

布尔值

readonly 将强制 VolumeMount 中的 ReadOnly 设置。默认 false。

10.1.120. .spec.config.volumes[].photonPersistentDisk

描述
photonPersistentDisk 代表附加并挂载到 kubelets 主机上的 PhotonController 持久磁盘
类型
object
必填
  • pdID
属性类型描述

fsType

string

fstype 是要挂载的文件系统类型。必须是主机操作系统支持的文件系统类型。Ex. "ext4", "xfs", "ntfs".如果未指定,则隐式推断为 "ext4"。

pdID

string

pdID 是标识 Photon Controller 持久磁盘的 ID

10.1.121. .spec.config.volumes[].portworxVolume

描述
portworxVolume 代表附加并挂载到 kubelets 主机上的 portworx 卷
类型
object
必填
  • volumeID
属性类型描述

fsType

string

fstype 代表要挂载的文件系统类型必须是主机操作系统支持的文件系统类型。Ex. "ext4", "xfs".如果未指定,则隐式推断为 "ext4"。

readOnly

布尔值

readonly 默认为 false (读/写)。此处的 readonly 将强制 VolumeMount 中的 ReadOnly 设置。

volumeID

string

VolumeId 唯一标识 Portworx 卷

10.1.122. .spec.config.volumes[].projected

描述
一个资源 secret、configmap 和 Downward API 中所有的项目项目
类型
object
属性类型描述

defaultMode

整数

defaultMode 是默认用于在创建的文件上设置权限的模式位。必须是 0000 到 0777 之间的数值,或者 0 到 511 之间的十进制值。YAML 接受八进制和十进制值,JSON 需要模式位的十进制值。路径中的目录不受此设置的影响。这可能与影响文件模式的其他选项(如 fsGroup )冲突,结果可以是其他模式位。

sources

数组

sources 是卷投射列表

sources[]

对象

可投射以及其他支持的卷类型的预测

10.1.123. .spec.config.volumes[].projected.sources

描述
sources 是卷投射列表
类型
array

10.1.124. .spec.config.volumes[].projected.sources[]

描述
可投射以及其他支持的卷类型的预测
类型
object
属性类型描述

configMap

object

有关项目的 configMap 数据的 ConfigMap 信息

downwardAPI

object

downwardAPI 有关项目的 downwardAPI 数据的信息

secret

object

有关项目的 secret 数据的 secret 信息

serviceAccountToken

object

serviceAccountToken 是与项目的 serviceAccountToken 数据相关的信息

10.1.125. .spec.config.volumes[].projected.sources[].configMap

描述
有关项目的 configMap 数据的 ConfigMap 信息
类型
object
属性类型描述

items

数组

如果未指定,则引用的 ConfigMap 的 Data 字段中每个键值对将投射到卷中,其名称是键,内容是值。如果指定,列出的键将投射到指定的路径中,并且不会出现未列出的键。如果指定了没有存在于 ConfigMap 中的键,则卷设置将失败,除非标记为可选。路径必须是相对的,且不能包含 '..' 路径,或者以 '..' 开始。

items[]

对象

将字符串键映射到卷中的路径。

name

字符串

引用的名称。更多信息: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names TODO: 添加其他有用的字段。apiVersion、kind、uid?

optional

布尔值

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

10.1.126. .spec.config.volumes[].projected.sources[].configMap.items

描述
如果未指定,则引用的 ConfigMap 的 Data 字段中每个键值对将投射到卷中,其名称是键,内容是值。如果指定,列出的键将投射到指定的路径中,并且不会出现未列出的键。如果指定了没有存在于 ConfigMap 中的键,则卷设置将失败,除非标记为可选。路径必须是相对的,且不能包含 '..' 路径,或者以 '..' 开始。
类型
array

10.1.127. .spec.config.volumes[].projected.sources[].configMap.items[]

描述
将字符串键映射到卷中的路径。
类型
object
必填
  • key
  • path
属性类型描述

key

string

key 是项目的关键。

模式

整数

模式为可选:用于设置此文件权限的模式位。必须是 0000 到 0777 之间的数值,或者 0 到 511 之间的十进制值。YAML 接受八进制和十进制值,JSON 需要模式位的十进制值。如果没有指定,则使用卷 defaultMode。这可能与影响文件模式的其他选项(如 fsGroup )冲突,结果可以是其他模式位。

path

string

path 是将键映射到的文件的相对路径。可能不是绝对路径。不得包含路径元素 '..'。不得以字符串 '..' 开头。

10.1.128. .spec.config.volumes[].projected.sources[].downwardAPI

描述
downwardAPI 有关项目的 downwardAPI 数据的信息
类型
object
属性类型描述

items

array

items 是 DownwardAPIVolume 文件列表

items[]

对象

DownwardAPIVolumeFile 代表创建包含 pod 字段的文件的信息

10.1.129. .spec.config.volumes[].projected.sources[].downwardAPI.items

描述
items 是 DownwardAPIVolume 文件列表
类型
array

10.1.130. .spec.config.volumes[].projected.sources[].downwardAPI.items[]

描述
DownwardAPIVolumeFile 代表创建包含 pod 字段的文件的信息
类型
object
必填
  • path
属性类型描述

fieldRef

对象

必需:选择 pod 的字段:只支持注解、标签、名称和命名空间。

模式

整数

可选:用于设置此文件权限的模式位,必须是 0000 到 0777 之间的数值,或 0 到 511 之间的十进制值。YAML 接受八进制和十进制值,JSON 需要模式位的十进制值。如果没有指定,则使用卷 defaultMode。这可能与影响文件模式的其他选项(如 fsGroup )冲突,结果可以是其他模式位。

path

字符串

必需:Path 是要创建的文件的相对路径名称。不能是绝对的,也不能包含 '..' 路径。必须经过 utf-8 编码。相对路径的第一个项不能以 '..' 开头。

resourceFieldRef

对象

选择容器的资源:目前只支持资源限值和请求(limits.cpu、limits.memory、requests.cpu 和 requests.memory)。

10.1.131. .spec.config.volumes[].projected.sources[].downwardAPI.items[].fieldRef

描述
必需:选择 pod 的字段:只支持注解、标签、名称和命名空间。
类型
object
必填
  • fieldPath
属性类型描述

apiVersion

字符串

模式的版本是按术语编写的 FieldPath,默认为 "v1"。

fieldPath

字符串

在指定 API 版本中选择的字段路径。

10.1.132. .spec.config.volumes[].projected.sources[].downwardAPI.items[].resourceFieldRef

描述
选择容器的资源:目前只支持资源限值和请求(limits.cpu、limits.memory、requests.cpu 和 requests.memory)。
类型
object
必填
  • resource
属性类型描述

containerName

字符串

容器名称:卷需要,对于 env vars是可选的

divisor

integer-or-string

指定公开资源的输出格式,默认为 "1"

resource

字符串

必需:要选择的资源

10.1.133. .spec.config.volumes[].projected.sources[].secret

描述
有关项目的 secret 数据的 secret 信息
类型
object
属性类型描述

items

数组

如果未指定,则引用 Secret 的 Data 字段中的每个键值对将投射到卷中,其名称是键,内容是值。如果指定,列出的键将投射到指定的路径中,并且不会出现未列出的键。如果指定了没有存在于 Secret 中的密钥,则卷设置将出错,除非标记为可选。路径必须是相对的,且不能包含 '..' 路径,或者以 '..' 开始。

items[]

对象

将字符串键映射到卷中的路径。

name

字符串

引用的名称。更多信息: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names TODO: 添加其他有用的字段。apiVersion、kind、uid?

optional

布尔值

可选字段指定是否必须定义 Secret 或其密钥

10.1.134. .spec.config.volumes[].projected.sources[].secret.items

描述
如果未指定,则引用 Secret 的 Data 字段中的每个键值对将投射到卷中,其名称是键,内容是值。如果指定,列出的键将投射到指定的路径中,并且不会出现未列出的键。如果指定了没有存在于 Secret 中的密钥,则卷设置将出错,除非标记为可选。路径必须是相对的,且不能包含 '..' 路径,或者以 '..' 开始。
类型
array

10.1.135. .spec.config.volumes[].projected.sources[].secret.items[]

描述
将字符串键映射到卷中的路径。
类型
object
必填
  • key
  • path
属性类型描述

key

string

key 是项目的关键。

模式

整数

模式为可选:用于设置此文件权限的模式位。必须是 0000 到 0777 之间的数值,或者 0 到 511 之间的十进制值。YAML 接受八进制和十进制值,JSON 需要模式位的十进制值。如果没有指定,则使用卷 defaultMode。这可能与影响文件模式的其他选项(如 fsGroup )冲突,结果可以是其他模式位。

path

string

path 是将键映射到的文件的相对路径。可能不是绝对路径。不得包含路径元素 '..'。不得以字符串 '..' 开头。

10.1.136. .spec.config.volumes[].projected.sources[].serviceAccountToken

描述
serviceAccountToken 是与项目的 serviceAccountToken 数据相关的信息
类型
object
必填
  • path
属性类型描述

受众

string

受众是令牌的预期使用者。令牌的接收者必须使用令牌使用者中指定的标识符来识别其自身,否则应拒绝令牌。受众默认为 apiserver 的标识符。

expirationSeconds

整数

expirationSeconds 是服务帐户令牌的请求的有效期。当令牌接近过期时,kubelet 卷插件会主动轮转服务帐户令牌。如果令牌的时间超过 80%,或者令牌早于 24 小时,则 kubelet 将开始尝试轮转令牌。默认为 1 小时,且必须至少为 10 分钟。

path

string

path 是与文件挂载点相关的路径,用于将令牌放入其中。

10.1.137. .spec.config.volumes[].quobyte

描述
quobyte 代表共享 pod 生命周期的主机上执行 Quobyte 挂载
类型
object
必填
  • registry
属性类型描述

group

string

将卷访问映射到 Default 的组没有组

readOnly

布尔值

此处的 readonly 将强制使用只读权限挂载 Quobyte 卷。默认为false。

registry

string

registry 代表单个或多个 Quobyte Registry 服务,它指定为 host:port 对(多个条目用逗号分开),它充当卷的中央 registry

tenant

string

在带有动态置备 Quobyte 卷的后端使用中拥有给定 Quobyte 卷的租户,由插件设置

user

string

用户,将卷访问权限映射到 Defaults 到 serivceaccount 用户

string

volume 是按名称引用已创建 Quobyte 卷的字符串。

10.1.138. .spec.config.volumes[].rbd

描述
RBD 代表共享 pod 生命周期的主机上 Rados 块设备挂载。更多信息: https://examples.k8s.io/volumes/rbd/README.md
类型
object
必填
  • image
  • monitor
属性类型描述

fsType

string

fstype 是您要挂载的卷的文件系统类型。提示: 确保主机操作系统支持文件系统类型。示例:"ext4", "xfs", "ntfs"。如果未指定,则隐式推断为 "ext4"。更多信息: https://kubernetes.io/docs/concepts/storage/volumes#rbd TODO:如何防止文件系统中的错误影响机器

image

string

image 是 rados 镜像名称。更多信息: https://examples.k8s.io/volumes/rbd/README.md#how-to-use-it

keyring

string

keyring 是 RBDUser 的密钥环路径。默认为 /etc/ceph/keyring。更多信息: https://examples.k8s.io/volumes/rbd/README.md#how-to-use-it

monitor

数组(字符串)

monitor 是 Ceph 监视器的集合。更多信息: https://examples.k8s.io/volumes/rbd/README.md#how-to-use-it

pool

string

pool 是 rados 池名称。默认为 rbd。更多信息: https://examples.k8s.io/volumes/rbd/README.md#how-to-use-it

readOnly

布尔值

此处的 readonly 将强制 VolumeMount 中的 ReadOnly 设置。默认为false。更多信息: https://examples.k8s.io/volumes/rbd/README.md#how-to-use-it

secretRef

object

secretRef 是 RBDUser 的身份验证 secret 的名称。如果提供的会覆盖密钥环。默认为 nil。更多信息: https://examples.k8s.io/volumes/rbd/README.md#how-to-use-it

user

string

user 是 rados 用户名。默认为 admin。更多信息: https://examples.k8s.io/volumes/rbd/README.md#how-to-use-it

10.1.139. .spec.config.volumes[].rbd.secretRef

描述
secretRef 是 RBDUser 的身份验证 secret 的名称。如果提供的会覆盖密钥环。默认为 nil。更多信息: https://examples.k8s.io/volumes/rbd/README.md#how-to-use-it
类型
object
属性类型描述

name

字符串

引用的名称。更多信息: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names TODO: 添加其他有用的字段。apiVersion、kind、uid?

10.1.140. .spec.config.volumes[].scaleIO

描述
scaleIO 代表附加并挂载到 Kubernetes 节点上的 ScaleIO 持久性卷。
类型
object
必填
  • gateway
  • secretRef
  • system
属性类型描述

fsType

string

fstype 是要挂载的文件系统类型。必须是主机操作系统支持的文件系统类型。Ex. "ext4", "xfs", "ntfs".默认为 "xfs"。

gateway

string

gateway 是 ScaleIO API 网关的主机地址。

protectionDomain

string

protectionDomain 是配置存储的 ScaleIO 保护域的名称。

readOnly

布尔值

readonly Defaults to false (read/write)。此处的 readonly 将强制 VolumeMount 中的 ReadOnly 设置。

secretRef

object

secretRef 引用 ScaleIO 用户和其他敏感信息的 secret。如果没有提供,则登录操作将失败。

sslEnabled

布尔值

sslEnabled Flag 启用/禁用与网关的 SSL 通信,默认为 false

storageMode

string

storageMode 指示卷的存储是否应 ThickProvisioned 或 ThinProvisioned。默认为 ThinProvisioned。

storagePool

string

StoragePool 是与保护域关联的 ScaleIO 存储池。

system

string

system 是 ScaleIO 中配置的存储系统的名称。

volumeName

string

volumeName 是在与这个卷源关联的 ScaleIO 系统中创建的卷的名称。

10.1.141. .spec.config.volumes[].scaleIO.secretRef

描述
secretRef 引用 ScaleIO 用户和其他敏感信息的 secret。如果没有提供,则登录操作将失败。
类型
object
属性类型描述

name

字符串

引用的名称。更多信息: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names TODO: 添加其他有用的字段。apiVersion、kind、uid?

10.1.142. .spec.config.volumes[].secret

描述
Secret 代表应填充此卷的 secret。更多信息: https://kubernetes.io/docs/concepts/storage/volumes#secret
类型
object
属性类型描述

defaultMode

整数

defaultMode 是可选:默认用于设置创建文件的权限的模式位。必须是 0000 到 0777 之间的数值,或者 0 到 511 之间的十进制值。YAML 接受八进制和十进制值,JSON 需要模式位的十进制值。默认值为 0644。路径中的目录不受此设置的影响。这可能与影响文件模式的其他选项(如 fsGroup )冲突,结果可以是其他模式位。

items

数组

如果未指定项目,则引用 Secret 的 Data 字段中的每个键值对将投射到卷中,其名称是键,内容是值。如果指定,列出的键将投射到指定的路径中,并且不会出现未列出的键。如果指定了没有存在于 Secret 中的密钥,则卷设置将出错,除非标记为可选。路径必须是相对的,且不能包含 '..' 路径,或者以 '..' 开始。

items[]

对象

将字符串键映射到卷中的路径。

optional

布尔值

可选字段指定是否必须定义 Secret 或其密钥

secretName

string

secretName 是要使用的 pod 命名空间中的 secret 名称。更多信息: https://kubernetes.io/docs/concepts/storage/volumes#secret

10.1.143. .spec.config.volumes[].secret.items

描述
如果未指定项目,则引用 Secret 的 Data 字段中的每个键值对将投射到卷中,其名称是键,内容是值。如果指定,列出的键将投射到指定的路径中,并且不会出现未列出的键。如果指定了没有存在于 Secret 中的密钥,则卷设置将出错,除非标记为可选。路径必须是相对的,且不能包含 '..' 路径,或者以 '..' 开始。
类型
array

10.1.144. .spec.config.volumes[].secret.items[]

描述
将字符串键映射到卷中的路径。
类型
object
必填
  • key
  • path
属性类型描述

key

string

key 是项目的关键。

模式

整数

模式为可选:用于设置此文件权限的模式位。必须是 0000 到 0777 之间的数值,或者 0 到 511 之间的十进制值。YAML 接受八进制和十进制值,JSON 需要模式位的十进制值。如果没有指定,则使用卷 defaultMode。这可能与影响文件模式的其他选项(如 fsGroup )冲突,结果可以是其他模式位。

path

string

path 是将键映射到的文件的相对路径。可能不是绝对路径。不得包含路径元素 '..'。不得以字符串 '..' 开头。

10.1.145. .spec.config.volumes[].storageos

描述
storageos 代表附加并挂载到 Kubernetes 节点上的 StorageOS 卷。
类型
object
属性类型描述

fsType

string

fstype 是要挂载的文件系统类型。必须是主机操作系统支持的文件系统类型。Ex. "ext4", "xfs", "ntfs".如果未指定,则隐式推断为 "ext4"。

readOnly

布尔值

readonly 默认为 false (读/写)。此处的 readonly 将强制 VolumeMount 中的 ReadOnly 设置。

secretRef

object

secretRef 指定用于获取 StorageOS API 凭证的 secret。如果没有指定,则会尝试默认值。

volumeName

string

volumeName 是 StorageOS 卷的人类可读名称。卷名称仅在命名空间中唯一。

volumeNamespace

string

volumeNamespace 指定 StorageOS 中的卷范围。如果没有指定命名空间,则使用 Pod 的命名空间。这允许在 StorageOS 中镜像 Kubernetes 名称进行更紧密的集成。将 VolumeName 设置为任何名称,以覆盖默认的行为。如果没有在 StorageOS 中使用命名空间,则设置为 "default"。将创建在 StorageOS 中没有预先存在的命名空间。

10.1.146. .spec.config.volumes[].storageos.secretRef

描述
secretRef 指定用于获取 StorageOS API 凭证的 secret。如果没有指定,则会尝试默认值。
类型
object
属性类型描述

name

字符串

引用的名称。更多信息: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names TODO: 添加其他有用的字段。apiVersion、kind、uid?

10.1.147. .spec.config.volumes[].vsphereVolume

描述
vsphereVolume 代表附加并挂载到 kubelets 主机上的 vSphere 卷
类型
object
必填
  • volumePath
属性类型描述

fsType

string

fstype 是要挂载的文件系统类型。必须是主机操作系统支持的文件系统类型。Ex. "ext4", "xfs", "ntfs".如果未指定,则隐式推断为 "ext4"。

storagePolicyID

string

storagePolicyID 是与 StoragePolicyName 关联的存储策略 Based Management (SPBM)配置集 ID。

storagePolicyName

string

StoragePolicyName 是存储基于策略的管理(SPBM)配置集名称。

volumePath

string

volumePath 是标识 vSphere 卷 vmdk 的路径

10.1.148. .status

描述
类型
object
必填
  • lastUpdated
属性类型描述

catalogHealth

array

catalogHealth 包含其相关 CatalogSource 状态的订阅视图。它用于确定与 CatalogSources 相关的 SubscriptionStatusConditions。

catalogHealth[]

对象

SubscriptionCatalogHealth 描述了订阅所了解的 CatalogSource 的健康状况。

conditions

array

条件是有关订阅当前状态的最新可用影响列表。

conditions[]

对象

SubscriptionCondition 代表订阅状态的最新可用影响。

currentCSV

字符串

currentCSV 是订阅正在进入的 CSV。

installPlanGeneration

整数

InstallPlanGeneration 是当前安装计划的生成

installPlanRef

对象

installPlanRef 是包含订阅当前 CSV 的最新 InstallPlan 的引用。

installedCSV

字符串

installedCSV 是订阅当前安装的 CSV。

InstallPlan

对象

install 是 Subscription 生成的最新 InstallPlan 的引用。DEPRECATED: InstallPlanRef

lastUpdated

字符串

lastUpdated 代表订阅状态最后一次更新的时间。

reason

字符串

原因是订阅转换到当前状态的原因。

state

字符串

State 代表订阅的当前状态

10.1.149. .status.catalogHealth

描述
catalogHealth 包含其相关 CatalogSource 状态的订阅视图。它用于确定与 CatalogSources 相关的 SubscriptionStatusConditions。
类型
array

10.1.150. .status.catalogHealth[]

描述
SubscriptionCatalogHealth 描述了订阅所了解的 CatalogSource 的健康状况。
类型
object
必填
  • catalogSourceRef
  • 健康
  • lastUpdated
属性类型描述

catalogSourceRef

对象

catalogSourceRef 是 CatalogSource 的引用。

健康

布尔值

如果 CatalogSource 处于健康状态,则健康为 true;否则为 false。

lastUpdated

字符串

lastUpdated 代表 CatalogSourceHealth 最后一次更改的时间

10.1.151. .status.catalogHealth[].catalogSourceRef

描述
catalogSourceRef 是 CatalogSource 的引用。
类型
object
属性类型描述

apiVersion

字符串

引用的 API 版本。

fieldPath

字符串

如果引用的是对象的一部分而非整个对象,则该字符串应包含有效的 JSON/Go 字段访问声明,如 desiredState.manifest.containers[2]。例如,如果对象引用是一个 pod 中的容器,它应该还以下类似: "spec.containers{name}"(其中 "name" 是指触发事件的容器的名称),如果不使用容器名称,则应类似于 "spec.containers[2]"(使用此 pod 中索引值为 2 的容器)。选择这个语法的原因是,为了有一些指向对象部分的正确定义方法。Todo: 这个设计不是最终设计的,且该字段在将来会有所改变。

kind

字符串

引用的类型。更多信息: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds

name

字符串

引用的名称。更多信息: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names

namespace

字符串

引用的命名空间。更多信息: https://kubernetes.io/docs/concepts/overview/working-with-objects/namespaces/

resourceVersion

字符串

指定构成这个引用的 resourceVersion(如果存在)。更多信息: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#concurrency-control-and-consistency

uid

字符串

引用的 UID。更多信息: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#uids

10.1.152. .status.conditions

描述
条件是有关订阅当前状态的最新可用影响列表。
类型
array

10.1.153. .status.conditions[]

描述
SubscriptionCondition 代表订阅状态的最新可用影响。
类型
object
必填
  • status
  • type
属性类型描述

lastHeartbeatTime

字符串

LastHeartbeatTime 是我们最后一次获得给定条件更新的时间

lastTransitionTime

字符串

lastTransitionTime 是条件从一个状态传输到另一个状态最后一次的时间

message

字符串

Message 是人类可读的消息,表示有关最后一次转换的详细信息。

reason

字符串

reason 是条件最后一次转换的一个单词 CamelCase 原因。

status

字符串

status 是条件的状态,True, False, Unknown 之一。

type

字符串

type 是 Subscription 条件的类型。

10.1.154. .status.installPlanRef

描述
installPlanRef 是包含订阅当前 CSV 的最新 InstallPlan 的引用。
类型
object
属性类型描述

apiVersion

字符串

引用的 API 版本。

fieldPath

字符串

如果引用的是对象的一部分而非整个对象,则该字符串应包含有效的 JSON/Go 字段访问声明,如 desiredState.manifest.containers[2]。例如,如果对象引用是一个 pod 中的容器,它应该还以下类似: "spec.containers{name}"(其中 "name" 是指触发事件的容器的名称),如果不使用容器名称,则应类似于 "spec.containers[2]"(使用此 pod 中索引值为 2 的容器)。选择这个语法的原因是,为了有一些指向对象部分的正确定义方法。Todo: 这个设计不是最终设计的,且该字段在将来会有所改变。

kind

字符串

引用的类型。更多信息: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds

name

字符串

引用的名称。更多信息: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names

namespace

字符串

引用的命名空间。更多信息: https://kubernetes.io/docs/concepts/overview/working-with-objects/namespaces/

resourceVersion

字符串

指定构成这个引用的 resourceVersion(如果存在)。更多信息: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#concurrency-control-and-consistency

uid

字符串

引用的 UID。更多信息: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#uids

10.1.155. .status.installplan

描述
install 是 Subscription 生成的最新 InstallPlan 的引用。DEPRECATED: InstallPlanRef
类型
object
必填
  • apiVersion
  • kind
  • name
  • uuid
属性类型描述

apiVersion

字符串

 

kind

字符串

 

name

字符串

 

uuid

字符串

UID 是拥有唯一 ID 值的类型,包括 UUID。由于我们不仅使用 UUID,因此这是一个别名字符串。作为一种类型捕获意图,有助于确保 UID 和名称不会被限制。

10.2. API 端点

可用的 API 端点如下:

  • /apis/operators.coreos.com/v1alpha1/subscriptions

    • GET: 列出类型为 Subscription 的对象
  • /apis/operators.coreos.com/v1alpha1/namespaces/{namespace}/subscriptions

    • DELETE :删除订阅集合
    • GET: 列出类型为 Subscription 的对象
    • POST :创建订阅
  • /apis/operators.coreos.com/v1alpha1/namespaces/{namespace}/subscriptions/{name}

    • DELETE :删除订阅
    • GET :读取指定的订阅
    • PATCH: 部分更新指定的订阅
    • PUT :替换指定的订阅
  • /apis/operators.coreos.com/v1alpha1/namespaces/{namespace}/subscriptions/{name}/status

    • GET :指定订阅的读取状态
    • PATCH: 部分更新指定订阅的状态
    • PUT :替换指定订阅的状态

10.2.1. /apis/operators.coreos.com/v1alpha1/subscriptions

表 10.1. 全局查询参数
参数类型描述

allowWatchBookmarks

布尔值

allowWatchBookmarks请求类型为“BOOKMARK”的监视事件。不实现书签的服务器可能会忽略这个标志和书签,由服务器自由裁量发送。客户端不应假设书签在任何特定间隔返回,也不会假定服务器在会话期间发送任何 BOOKMARK 事件。如果这不是监视,则忽略此字段。

继续

字符串

从服务器检索更多结果时,应设置 continue 选项。由于这个值是定义的服务器,因此客户端只能使用之前查询结果中的 continue 值,并带有相同的查询参数(除 continue 值除外),因此服务器可能会拒绝它无法识别的值。如果指定的 continue 值不再有效,无论是因为过期时间(通常为 5 到十五分钟)还是服务器上的配置更改,服务器将会与继续令牌一起响应 410 ResourceExpired 错误。如果客户端需要一致的列表,它必须重启其列表,而无需 continue 字段。否则,客户端可能会发送另一个带有 410 错误接收的令牌的列表请求,服务器将以从下一个密钥开始开始的列表响应,但从最新的快照开始,这与上一个列表结果中不一致 - 在第一个列表请求后将包含在响应中,只要它们的密钥位于 "next key" 后。

当 watch 为 true 时不支持此字段。客户端可以从服务器返回的最后一个 resourceVersion 值开始监视,而不丢失任何修改。

fieldSelector

字符串

一个选择器,用于限制其字段返回的对象列表。默认为任何内容。

labelSelector

字符串

一个选择器,用于限制其标签返回的对象列表。默认为任何内容。

limit

整数

limit 是列表调用返回的最大响应数。如果存在更多项目,服务器会将列表元数据上的 continue 字段设置为可用于同一初始查询的值,以检索下一个结果集合。如果过滤所有请求的对象,则设置限制可能会返回少于请求项目数量(最多为零项),并且客户端只应使用 continue 字段的存在,以确定是否有更多结果可用。服务器可能会选择不支持 limit 参数,并返回所有可用的结果。如果指定了 limit,并且 continue 字段为空,客户端可能会假定没有更多结果可用。如果 watch 为 true,则不支持此字段。

服务器保证,在使用时返回的对象将与在没有限制限制的情况下发出单个列表调用相同 - 也就是说,在发出第一个请求后没有创建、修改或删除对象。这有时被称为一致的快照,并确保使用限制来接收非常大结果的较小的块的客户端可确保它们看到所有可能的对象。如果在块列表中更新对象,则返回第一个列表结果时存在的对象版本。

pretty

字符串

如果为 'true',则输出会经过 pretty print 处理。

resourceVersion

字符串

resourceVersion 对可能给请求提供服务的资源版本设置一个约束。详情请查看 https://kubernetes.io/docs/reference/using-api/api-concepts/#resource-versions

默认为未设置

resourceVersionMatch

字符串

resourceVersionMatch 决定如何将 resourceVersion 应用到列表调用。强烈建议您为设置 resourceVersion 的 list 调用设置 resourceVersionMatch。详情请参阅 https://kubernetes.io/docs/reference/using-api/api-concepts/#resource-versions

默认为未设置

sendInitialEvents

布尔值

sendInitialEvents=true 可以和 watch=true 一起设置。在这种情况下,观察流将以复合事件开头,以生成集合中对象的当前状态。发送完所有这些事件后,将发送合成"Bookmark"事件。书签将报告与对象集合对应的 ResourceVersion (RV),并使用 "k8s.io/initial-events-end": "true" 注解进行标记。之后,监视流将照常进行,从而向监视的对象发送与更改对应的监视事件(按 RV 排序)。

当设置 sendInitialEvents 选项时,我们还需要设置 resourceVersionMatch 选项。监控请求的语义如下: - resourceVersionMatch = NotOlderThan 解释为"数据至少为提供的 resourceVersion'",当状态同步到 'resourceVersion 时,如果状态同步到 ListOptions 提供的 'resourceVersion 时,会发送书签事件。如果未设置 resourceVersion,则这被解释为"consistent read",当请求开始处理时,将发送书签事件。- resourceVersionMatch 设置为任何其他值或未设置 Invalid 错误。

如果 resourceVersion=""resourceVersion="0" (出于向后兼容原因)和 false,则默认为 true。

timeoutSeconds

整数

列表/watch 调用的超时。这限制了调用的持续时间,无论任何活动或不活跃。

watch

布尔值

观察对所描述资源的更改,并将它们作为添加、更新和删除通知的流返回。指定 resourceVersion。

HTTP 方法
GET
描述
列出类型为 Subscription 的对象
表 10.2. HTTP 响应
HTTP 代码响应正文

200 - OK

SubscriptionList 模式

401 - Unauthorized

10.2.2. /apis/operators.coreos.com/v1alpha1/namespaces/{namespace}/subscriptions

表 10.3. 全局路径参数
参数类型描述

namespace

字符串

对象名称和身份验证范围,如团队(team)和项目(project)

表 10.4. 全局查询参数
参数类型描述

pretty

字符串

如果为 'true',则输出会经过 pretty print 处理。

HTTP 方法
DELETE
描述
删除订阅集合
表 10.5. 查询参数
参数类型描述

allowWatchBookmarks

布尔值

allowWatchBookmarks请求类型为“BOOKMARK”的监视事件。不实现书签的服务器可能会忽略这个标志和书签,由服务器自由裁量发送。客户端不应假设书签在任何特定间隔返回,也不会假定服务器在会话期间发送任何 BOOKMARK 事件。如果这不是监视,则忽略此字段。

继续

字符串

从服务器检索更多结果时,应设置 continue 选项。由于这个值是定义的服务器,因此客户端只能使用之前查询结果中的 continue 值,并带有相同的查询参数(除 continue 值除外),因此服务器可能会拒绝它无法识别的值。如果指定的 continue 值不再有效,无论是因为过期时间(通常为 5 到十五分钟)还是服务器上的配置更改,服务器将会与继续令牌一起响应 410 ResourceExpired 错误。如果客户端需要一致的列表,它必须重启其列表,而无需 continue 字段。否则,客户端可能会发送另一个带有 410 错误接收的令牌的列表请求,服务器将以从下一个密钥开始开始的列表响应,但从最新的快照开始,这与上一个列表结果中不一致 - 在第一个列表请求后将包含在响应中,只要它们的密钥位于 "next key" 后。

当 watch 为 true 时不支持此字段。客户端可以从服务器返回的最后一个 resourceVersion 值开始监视,而不丢失任何修改。

fieldSelector

字符串

一个选择器,用于限制其字段返回的对象列表。默认为任何内容。

labelSelector

字符串

一个选择器,用于限制其标签返回的对象列表。默认为任何内容。

limit

整数

limit 是列表调用返回的最大响应数。如果存在更多项目,服务器会将列表元数据上的 continue 字段设置为可用于同一初始查询的值,以检索下一个结果集合。如果过滤所有请求的对象,则设置限制可能会返回少于请求项目数量(最多为零项),并且客户端只应使用 continue 字段的存在,以确定是否有更多结果可用。服务器可能会选择不支持 limit 参数,并返回所有可用的结果。如果指定了 limit,并且 continue 字段为空,客户端可能会假定没有更多结果可用。如果 watch 为 true,则不支持此字段。

服务器保证,在使用时返回的对象将与在没有限制限制的情况下发出单个列表调用相同 - 也就是说,在发出第一个请求后没有创建、修改或删除对象。这有时被称为一致的快照,并确保使用限制来接收非常大结果的较小的块的客户端可确保它们看到所有可能的对象。如果在块列表中更新对象,则返回第一个列表结果时存在的对象版本。

resourceVersion

字符串

resourceVersion 对可能给请求提供服务的资源版本设置一个约束。详情请查看 https://kubernetes.io/docs/reference/using-api/api-concepts/#resource-versions

默认为未设置

resourceVersionMatch

字符串

resourceVersionMatch 决定如何将 resourceVersion 应用到列表调用。强烈建议您为设置 resourceVersion 的 list 调用设置 resourceVersionMatch。详情请参阅 https://kubernetes.io/docs/reference/using-api/api-concepts/#resource-versions

默认为未设置

sendInitialEvents

布尔值

sendInitialEvents=true 可以和 watch=true 一起设置。在这种情况下,观察流将以复合事件开头,以生成集合中对象的当前状态。发送完所有这些事件后,将发送合成"Bookmark"事件。书签将报告与对象集合对应的 ResourceVersion (RV),并使用 "k8s.io/initial-events-end": "true" 注解进行标记。之后,监视流将照常进行,从而向监视的对象发送与更改对应的监视事件(按 RV 排序)。

当设置 sendInitialEvents 选项时,我们还需要设置 resourceVersionMatch 选项。监控请求的语义如下: - resourceVersionMatch = NotOlderThan 解释为"数据至少为提供的 resourceVersion'",当状态同步到 'resourceVersion 时,如果状态同步到 ListOptions 提供的 'resourceVersion 时,会发送书签事件。如果未设置 resourceVersion,则这被解释为"consistent read",当请求开始处理时,将发送书签事件。- resourceVersionMatch 设置为任何其他值或未设置 Invalid 错误。

如果 resourceVersion=""resourceVersion="0" (出于向后兼容原因)和 false,则默认为 true。

timeoutSeconds

整数

列表/watch 调用的超时。这限制了调用的持续时间,无论任何活动或不活跃。

watch

布尔值

观察对所描述资源的更改,并将它们作为添加、更新和删除通知的流返回。指定 resourceVersion。

表 10.6. HTTP 响应
HTTP 代码响应正文

200 - OK

Status 模式

401 - Unauthorized

HTTP 方法
GET
描述
列出类型为 Subscription 的对象
表 10.7. 查询参数
参数类型描述

allowWatchBookmarks

布尔值

allowWatchBookmarks请求类型为“BOOKMARK”的监视事件。不实现书签的服务器可能会忽略这个标志和书签,由服务器自由裁量发送。客户端不应假设书签在任何特定间隔返回,也不会假定服务器在会话期间发送任何 BOOKMARK 事件。如果这不是监视,则忽略此字段。

继续

字符串

从服务器检索更多结果时,应设置 continue 选项。由于这个值是定义的服务器,因此客户端只能使用之前查询结果中的 continue 值,并带有相同的查询参数(除 continue 值除外),因此服务器可能会拒绝它无法识别的值。如果指定的 continue 值不再有效,无论是因为过期时间(通常为 5 到十五分钟)还是服务器上的配置更改,服务器将会与继续令牌一起响应 410 ResourceExpired 错误。如果客户端需要一致的列表,它必须重启其列表,而无需 continue 字段。否则,客户端可能会发送另一个带有 410 错误接收的令牌的列表请求,服务器将以从下一个密钥开始开始的列表响应,但从最新的快照开始,这与上一个列表结果中不一致 - 在第一个列表请求后将包含在响应中,只要它们的密钥位于 "next key" 后。

当 watch 为 true 时不支持此字段。客户端可以从服务器返回的最后一个 resourceVersion 值开始监视,而不丢失任何修改。

fieldSelector

字符串

一个选择器,用于限制其字段返回的对象列表。默认为任何内容。

labelSelector

字符串

一个选择器,用于限制其标签返回的对象列表。默认为任何内容。

limit

整数

limit 是列表调用返回的最大响应数。如果存在更多项目,服务器会将列表元数据上的 continue 字段设置为可用于同一初始查询的值,以检索下一个结果集合。如果过滤所有请求的对象,则设置限制可能会返回少于请求项目数量(最多为零项),并且客户端只应使用 continue 字段的存在,以确定是否有更多结果可用。服务器可能会选择不支持 limit 参数,并返回所有可用的结果。如果指定了 limit,并且 continue 字段为空,客户端可能会假定没有更多结果可用。如果 watch 为 true,则不支持此字段。

服务器保证,在使用时返回的对象将与在没有限制限制的情况下发出单个列表调用相同 - 也就是说,在发出第一个请求后没有创建、修改或删除对象。这有时被称为一致的快照,并确保使用限制来接收非常大结果的较小的块的客户端可确保它们看到所有可能的对象。如果在块列表中更新对象,则返回第一个列表结果时存在的对象版本。

resourceVersion

字符串

resourceVersion 对可能给请求提供服务的资源版本设置一个约束。详情请查看 https://kubernetes.io/docs/reference/using-api/api-concepts/#resource-versions

默认为未设置

resourceVersionMatch

字符串

resourceVersionMatch 决定如何将 resourceVersion 应用到列表调用。强烈建议您为设置 resourceVersion 的 list 调用设置 resourceVersionMatch。详情请参阅 https://kubernetes.io/docs/reference/using-api/api-concepts/#resource-versions

默认为未设置

sendInitialEvents

布尔值

sendInitialEvents=true 可以和 watch=true 一起设置。在这种情况下,观察流将以复合事件开头,以生成集合中对象的当前状态。发送完所有这些事件后,将发送合成"Bookmark"事件。书签将报告与对象集合对应的 ResourceVersion (RV),并使用 "k8s.io/initial-events-end": "true" 注解进行标记。之后,监视流将照常进行,从而向监视的对象发送与更改对应的监视事件(按 RV 排序)。

当设置 sendInitialEvents 选项时,我们还需要设置 resourceVersionMatch 选项。监控请求的语义如下: - resourceVersionMatch = NotOlderThan 解释为"数据至少为提供的 resourceVersion'",当状态同步到 'resourceVersion 时,如果状态同步到 ListOptions 提供的 'resourceVersion 时,会发送书签事件。如果未设置 resourceVersion,则这被解释为"consistent read",当请求开始处理时,将发送书签事件。- resourceVersionMatch 设置为任何其他值或未设置 Invalid 错误。

如果 resourceVersion=""resourceVersion="0" (出于向后兼容原因)和 false,则默认为 true。

timeoutSeconds

整数

列表/watch 调用的超时。这限制了调用的持续时间,无论任何活动或不活跃。

watch

布尔值

观察对所描述资源的更改,并将它们作为添加、更新和删除通知的流返回。指定 resourceVersion。

表 10.8. HTTP 响应
HTTP 代码响应正文

200 - OK

SubscriptionList 模式

401 - Unauthorized

HTTP 方法
POST
描述
创建订阅
表 10.9. 查询参数
参数类型描述

dryRun

字符串

出现时,表示不应保留修改。无效的或未被识别的 dryRun 指令将导致错误响应,且请求不会被进一步处理。有效值为: - All: 所有预演阶段都将被处理

fieldManager

字符串

fieldmanager 是与进行这些更改的参与者或实体相关联的名称。该值必须小于或是 128 个字符长,且仅包含可打印的字符,如 https://golang.org/pkg/unicode/#IsPrint 所定义的那样。

fieldValidation

string

fieldValidation 指示服务器如何处理包含了未知或重复字段的请求 (POST/PUT/PATCH) 中的对象。有效值为: - Ignore :忽略从对象中静默丢弃的未知字段,并将忽略所有除最后一个重复字段以外的所有字段。这是 v1.23 版本之前的默认行为- Warn: 这会通过标准的警告响应头为从对象丢弃的每个未知字段以及遇到的每个重复字段,发送警告。如果没有其他错误,请求仍会成功,且只保留重复字段的最后一个。这是 v1.23+ 的的默认行为 - Strict: 如果从对象中删除了任何未知字段,或者存在任何重复字段,请求将失败并带有 BadRequest 错误。从服务器返回的错误将包含遇到的,以及重复的字段。

表 10.10. 主体参数
参数类型描述

正文(body)

Subscription 模式

 
表 10.11. HTTP 响应
HTTP 代码响应正文

200 - OK

Subscription 模式

201 - Created

Subscription 模式

202 - Accepted

Subscription 模式

401 - Unauthorized

10.2.3. /apis/operators.coreos.com/v1alpha1/namespaces/{namespace}/subscriptions/{name}

表 10.12. 全局路径参数
参数类型描述

name

字符串

订阅的名称

namespace

字符串

对象名称和身份验证范围,如团队(team)和项目(project)

表 10.13. 全局查询参数
参数类型描述

pretty

字符串

如果为 'true',则输出会经过 pretty print 处理。

HTTP 方法
DELETE
描述
删除订阅
表 10.14. 查询参数
参数类型描述

dryRun

字符串

出现时,表示不应保留修改。无效的或未被识别的 dryRun 指令将导致错误响应,且请求不会被进一步处理。有效值为: - All: 所有预演阶段都将被处理

gracePeriodSeconds

整数

应该删除对象前的持续时间(以秒为单位)。值必须是非负整数。值为零表示立即删除。如果这个值是 nil,则会使用指定类型的默认宽限期。如果没有指定,则默认为每个对象值。零表示立即删除。

orphanDependents

布尔值

弃用:请使用 PropagationPolicy,此字段将在 1.7 中弃用。如果依赖对象是孤立的。如果为 true/false,则 "orphan" finalizer 将添加到对象的终结器列表中。可以设置此字段或 PropagationPolicy,但不能同时设置。

propagationPolicy

字符串

是否执行垃圾回收。可以设置此字段或 OrphanDependents,但不能同时设置两者。默认策略由 metadata.finalizers 和特定于资源的默认策略中设置的现有终结器决定。可接受的值有: 'Orphan' - 孤立的依赖项; 'Background' - 允许垃圾收集器删除依赖项,"Foreground' - 删除前台所有依赖的级联策略。

表 10.15. 主体参数
参数类型描述

正文(body)

DeleteOptions 模式

 
表 10.16. HTTP 响应
HTTP 代码响应正文

200 - OK

Status 模式

202 - Accepted

Status 模式

401 - Unauthorized

HTTP 方法
GET
描述
阅读指定的订阅
表 10.17. 查询参数
参数类型描述

resourceVersion

字符串

resourceVersion 对可能给请求提供服务的资源版本设置一个约束。详情请查看 https://kubernetes.io/docs/reference/using-api/api-concepts/#resource-versions

默认为未设置

表 10.18. HTTP 响应
HTTP 代码响应正文

200 - OK

Subscription 模式

401 - Unauthorized

HTTP 方法
PATCH
描述
部分更新指定的订阅
表 10.19. 查询参数
参数类型描述

dryRun

字符串

出现时,表示不应保留修改。无效的或未被识别的 dryRun 指令将导致错误响应,且请求不会被进一步处理。有效值为: - All: 所有预演阶段都将被处理

fieldManager

字符串

fieldmanager 是与进行这些更改的参与者或实体相关联的名称。该值必须小于或是 128 个字符长,且仅包含可打印的字符,如 https://golang.org/pkg/unicode/#IsPrint 所定义的那样。应用请求(application/apply-patch)需要此字段,但对非应用补丁类型(JsonPatch、MergePatch、MergePatch)是可选的。

fieldValidation

string

fieldValidation 指示服务器如何处理包含了未知或重复字段的请求 (POST/PUT/PATCH) 中的对象。有效值为: - Ignore :忽略从对象中静默丢弃的未知字段,并将忽略所有除最后一个重复字段以外的所有字段。这是 v1.23 版本之前的默认行为- Warn: 这会通过标准的警告响应头为从对象丢弃的每个未知字段以及遇到的每个重复字段,发送警告。如果没有其他错误,请求仍会成功,且只保留重复字段的最后一个。这是 v1.23+ 的的默认行为 - Strict: 如果从对象中删除了任何未知字段,或者存在任何重复字段,请求将失败并带有 BadRequest 错误。从服务器返回的错误将包含遇到的,以及重复的字段。

force

布尔值

强制要"强制"应用请求。这意味着用户将重新分配由其他人员拥有的冲突字段。对于非应用补丁请求,必须取消设置 force 标志。

表 10.20. 主体参数
参数类型描述

正文(body)

Patch 模式

 
表 10.21. HTTP 响应
HTTP 代码响应正文

200 - OK

Subscription 模式

401 - Unauthorized

HTTP 方法
PUT
描述
替换指定的订阅
表 10.22. 查询参数
参数类型描述

dryRun

字符串

出现时,表示不应保留修改。无效的或未被识别的 dryRun 指令将导致错误响应,且请求不会被进一步处理。有效值为: - All: 所有预演阶段都将被处理

fieldManager

字符串

fieldmanager 是与进行这些更改的参与者或实体相关联的名称。该值必须小于或是 128 个字符长,且仅包含可打印的字符,如 https://golang.org/pkg/unicode/#IsPrint 所定义的那样。

fieldValidation

string

fieldValidation 指示服务器如何处理包含了未知或重复字段的请求 (POST/PUT/PATCH) 中的对象。有效值为: - Ignore :忽略从对象中静默丢弃的未知字段,并将忽略所有除最后一个重复字段以外的所有字段。这是 v1.23 版本之前的默认行为- Warn: 这会通过标准的警告响应头为从对象丢弃的每个未知字段以及遇到的每个重复字段,发送警告。如果没有其他错误,请求仍会成功,且只保留重复字段的最后一个。这是 v1.23+ 的的默认行为 - Strict: 如果从对象中删除了任何未知字段,或者存在任何重复字段,请求将失败并带有 BadRequest 错误。从服务器返回的错误将包含遇到的,以及重复的字段。

表 10.23. 主体参数
参数类型描述

正文(body)

Subscription 模式

 
表 10.24. HTTP 响应
HTTP 代码响应正文

200 - OK

Subscription 模式

201 - Created

Subscription 模式

401 - Unauthorized

10.2.4. /apis/operators.coreos.com/v1alpha1/namespaces/{namespace}/subscriptions/{name}/status

表 10.25. 全局路径参数
参数类型描述

name

字符串

订阅的名称

namespace

字符串

对象名称和身份验证范围,如团队(team)和项目(project)

表 10.26. 全局查询参数
参数类型描述

pretty

字符串

如果为 'true',则输出会经过 pretty print 处理。

HTTP 方法
GET
描述
指定 Subscription 的读取状态
表 10.27. 查询参数
参数类型描述

resourceVersion

字符串

resourceVersion 对可能给请求提供服务的资源版本设置一个约束。详情请查看 https://kubernetes.io/docs/reference/using-api/api-concepts/#resource-versions

默认为未设置

表 10.28. HTTP 响应
HTTP 代码响应正文

200 - OK

Subscription 模式

401 - Unauthorized

HTTP 方法
PATCH
描述
部分更新指定订阅的状态
表 10.29. 查询参数
参数类型描述

dryRun

字符串

出现时,表示不应保留修改。无效的或未被识别的 dryRun 指令将导致错误响应,且请求不会被进一步处理。有效值为: - All: 所有预演阶段都将被处理

fieldManager

字符串

fieldmanager 是与进行这些更改的参与者或实体相关联的名称。该值必须小于或是 128 个字符长,且仅包含可打印的字符,如 https://golang.org/pkg/unicode/#IsPrint 所定义的那样。应用请求(application/apply-patch)需要此字段,但对非应用补丁类型(JsonPatch、MergePatch、MergePatch)是可选的。

fieldValidation

string

fieldValidation 指示服务器如何处理包含了未知或重复字段的请求 (POST/PUT/PATCH) 中的对象。有效值为: - Ignore :忽略从对象中静默丢弃的未知字段,并将忽略所有除最后一个重复字段以外的所有字段。这是 v1.23 版本之前的默认行为- Warn: 这会通过标准的警告响应头为从对象丢弃的每个未知字段以及遇到的每个重复字段,发送警告。如果没有其他错误,请求仍会成功,且只保留重复字段的最后一个。这是 v1.23+ 的的默认行为 - Strict: 如果从对象中删除了任何未知字段,或者存在任何重复字段,请求将失败并带有 BadRequest 错误。从服务器返回的错误将包含遇到的,以及重复的字段。

force

布尔值

强制要"强制"应用请求。这意味着用户将重新分配由其他人员拥有的冲突字段。对于非应用补丁请求,必须取消设置 force 标志。

表 10.30. 主体参数
参数类型描述

正文(body)

Patch 模式

 
表 10.31. HTTP 响应
HTTP 代码响应正文

200 - OK

Subscription 模式

401 - Unauthorized

HTTP 方法
PUT
描述
替换指定订阅的状态
表 10.32. 查询参数
参数类型描述

dryRun

字符串

出现时,表示不应保留修改。无效的或未被识别的 dryRun 指令将导致错误响应,且请求不会被进一步处理。有效值为: - All: 所有预演阶段都将被处理

fieldManager

字符串

fieldmanager 是与进行这些更改的参与者或实体相关联的名称。该值必须小于或是 128 个字符长,且仅包含可打印的字符,如 https://golang.org/pkg/unicode/#IsPrint 所定义的那样。

fieldValidation

string

fieldValidation 指示服务器如何处理包含了未知或重复字段的请求 (POST/PUT/PATCH) 中的对象。有效值为: - Ignore :忽略从对象中静默丢弃的未知字段,并将忽略所有除最后一个重复字段以外的所有字段。这是 v1.23 版本之前的默认行为- Warn: 这会通过标准的警告响应头为从对象丢弃的每个未知字段以及遇到的每个重复字段,发送警告。如果没有其他错误,请求仍会成功,且只保留重复字段的最后一个。这是 v1.23+ 的的默认行为 - Strict: 如果从对象中删除了任何未知字段,或者存在任何重复字段,请求将失败并带有 BadRequest 错误。从服务器返回的错误将包含遇到的,以及重复的字段。

表 10.33. 主体参数
参数类型描述

正文(body)

Subscription 模式

 
表 10.34. HTTP 响应
HTTP 代码响应正文

200 - OK

Subscription 模式

201 - Created

Subscription 模式

401 - Unauthorized

Legal Notice

Copyright © 2024 Red Hat, Inc.

OpenShift documentation is licensed under the Apache License 2.0 (https://www.apache.org/licenses/LICENSE-2.0).

Modified versions must remove all Red Hat trademarks.

Portions adapted from https://github.com/kubernetes-incubator/service-catalog/ with modifications by Red Hat.

Red Hat, Red Hat Enterprise Linux, the Red Hat logo, the Shadowman logo, JBoss, OpenShift, Fedora, the Infinity logo, and RHCE are trademarks of Red Hat, Inc., registered in the United States and other countries.

Linux® is the registered trademark of Linus Torvalds in the United States and other countries.

Java® is a registered trademark of Oracle and/or its affiliates.

XFS® is a trademark of Silicon Graphics International Corp. or its subsidiaries in the United States and/or other countries.

MySQL® is a registered trademark of MySQL AB in the United States, the European Union and other countries.

Node.js® is an official trademark of Joyent. Red Hat Software Collections is not formally related to or endorsed by the official Joyent Node.js open source or commercial project.

The OpenStack® Word Mark and OpenStack logo are either registered trademarks/service marks or trademarks/service marks of the OpenStack Foundation, in the United States and other countries and are used with the OpenStack Foundation’s permission. We are not affiliated with, endorsed or sponsored by the OpenStack Foundation, or the OpenStack community.

All other trademarks are the property of their respective owners.

Red Hat logoGithubRedditYoutubeTwitter

学习

尝试、购买和销售

社区

关于红帽文档

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

让开源更具包容性

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

關於紅帽

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

© 2024 Red Hat, Inc.