第 10 章 Subscription [operators.coreos.com/v1alpha1]
- 描述
- 订阅通过跟踪对目录的更改来保持 Operator 最新。
- 类型
-
object
- 必填
-
metadata
-
spec
-
10.1. 规格
属性 | 类型 | 描述 |
---|---|---|
|
| APIVersion 定义对象的这个表示法的版本化的 schema。服务器应该将识别的模式转换为最新的内部值,并可拒绝未识别的值。更多信息: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources |
|
| kind 是一个字符串值,代表此对象所代表的 REST 资源。服务器可以从客户端向其提交请求的端点推断。无法更新。采用驼峰拼写法 (CamelCase)。更多信息: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds |
| 标准对象元数据。更多信息: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#metadata | |
|
| SubscriptionSpec 定义可安装的应用程序 |
|
|
10.1.1. .spec
- 描述
- SubscriptionSpec 定义可安装的应用程序
- 类型
-
object
- 必填
-
name
-
source
-
sourceNamespace
-
属性 | 类型 | 描述 |
---|---|---|
|
| |
|
| subscriptionConfig 包含为订阅指定的配置。 |
|
| Approval 是 InstallPlan 的用户批准策略。它必须是 "Automatic" 或 "Manual"。 |
|
| |
|
| |
|
| |
|
|
10.1.2. .spec.config
- 描述
- subscriptionConfig 包含为订阅指定的配置。
- 类型
-
object
属性 | 类型 | 描述 |
---|---|---|
|
| 如果指定,覆盖 pod 的调度限制。nil sub-attributes 不会覆盖 这些子属性的 pod.spec 中的原始值。使用空对象({})擦除原始子属性值。 |
|
| env 是容器中要设置的环境变量的列表。无法更新。 |
|
| EnvVar 代表容器中存在的环境变量。 |
|
| envFrom 是在容器中填充环境变量的源列表。源中定义的键必须是 C_IDENTIFIER。当容器启动时,所有无效密钥都会被报告为事件。当多个源中存在键时,与最后一个源关联的值将具有优先权。由带有重复键的 Env 定义的值将具有优先权。不可变。 |
|
| EnvFromSource 代表一组 ConfigMap 的源 |
|
| 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 是要配置的 pod 的标签选择器。其 pod 被选择的现有 ReplicaSet 将会受到此部署的影响。它必须与 pod 模板的标签匹配。 |
|
| 容限(toleration)是 pod 的容限。 |
|
| 此 Toleration 附加到 pod,以使用匹配的 operator <operator> 容许与 triple <key,value,effect> 匹配的任何污点。 |
|
| 要在容器中设置的 VolumeMount 列表。 |
|
| VolumeMount 描述了容器内卷挂载。 |
|
| podSpec 中设置的卷列表。 |
|
| 卷代表 pod 中的指定卷,可以被 pod 中的任何容器访问。 |
10.1.3. .spec.config.affinity
- 描述
- 如果指定,覆盖 pod 的调度限制。nil sub-attributes 不会覆盖 这些子属性的 pod.spec 中的原始值。使用空对象({})擦除原始子属性值。
- 类型
-
object
属性 | 类型 | 描述 |
---|---|---|
|
| 描述 pod 的节点关联性调度规则。 |
|
| 描述 pod 关联性调度规则(例如,将这个 pod 位于同一个节点、区等)中。 |
|
| 描述 pod 反关联性调度规则(例如,避免将此 pod 放置到同一个节点、区等)。 |
10.1.4. .spec.config.affinity.nodeAffinity
- 描述
- 描述 pod 的节点关联性调度规则。
- 类型
-
object
属性 | 类型 | 描述 |
---|---|---|
|
| 调度程序更喜欢将 pod 调度到满足此字段指定的关联性表达式的节点,但可能会选择违反一个或多个表达式的节点。最首选节点是具有最大权重总和的节点,即对于满足所有调度要求(资源请求、必需关联表达式等)的每个节点,计算出一个总和总和总和总和(如果节点与相应的 matchExpressions 匹配),则计算总和最高的节点是最首选的。 |
|
| 空白的首选调度术语与带有隐式权重 0 (例如,它的一个 no-op)的所有对象匹配。空首选调度术语不匹配任何对象(例如,也是 no-op)。 |
|
| 如果在调度时没有满足此字段指定的关联性要求,则 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
-
属性 | 类型 | 描述 |
---|---|---|
|
| 与对应权重关联的节点选择器术语。 |
|
| 与对应 nodeSelectorTerm 关联的权重,范围为 1-100。 |
10.1.7. .spec.config.affinity.nodeAffinity.preferredDuringSchedulingIgnoredDuringExecution[].preference
- 描述
- 与对应权重关联的节点选择器术语。
- 类型
-
object
属性 | 类型 | 描述 |
---|---|---|
|
| 按节点标签划分的节点选择器要求列表。 |
|
| 节点选择器要求是一个选择器,其中包含与键和值相关的值、键和值。 |
|
| 按节点字段划分的节点选择器要求列表。 |
|
| 节点选择器要求是一个选择器,其中包含与键和值相关的值、键和值。 |
10.1.8. .spec.config.affinity.nodeAffinity.preferredDuringSchedulingIgnoredDuringExecution[].preference.matchExpressions
- 描述
- 按节点标签划分的节点选择器要求列表。
- 类型
-
数组
10.1.9. .spec.config.affinity.nodeAffinity.preferredDuringSchedulingIgnoredDuringExecution[].preference.matchExpressions[]
- 描述
- 节点选择器要求是一个选择器,其中包含与键和值相关的值、键和值。
- 类型
-
object
- 必填
-
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
-
属性 | 类型 | 描述 |
---|---|---|
|
| 选择器应用到的标签键。 |
|
| 代表键与一组值的关系。有效的运算符为 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
-
属性 | 类型 | 描述 |
---|---|---|
|
| 必需。节点选择器术语列表。术语为 ORed。 |
|
| 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
属性 | 类型 | 描述 |
---|---|---|
|
| 按节点标签划分的节点选择器要求列表。 |
|
| 节点选择器要求是一个选择器,其中包含与键和值相关的值、键和值。 |
|
| 按节点字段划分的节点选择器要求列表。 |
|
| 节点选择器要求是一个选择器,其中包含与键和值相关的值、键和值。 |
10.1.15. .spec.config.affinity.nodeAffinity.requiredDuringSchedulingIgnoredDuringExecution.nodeSelectorTerms[].matchExpressions
- 描述
- 按节点标签划分的节点选择器要求列表。
- 类型
-
数组
10.1.16. .spec.config.affinity.nodeAffinity.requiredDuringSchedulingIgnoredDuringExecution.nodeSelectorTerms[].matchExpressions[]
- 描述
- 节点选择器要求是一个选择器,其中包含与键和值相关的值、键和值。
- 类型
-
object
- 必填
-
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
-
属性 | 类型 | 描述 |
---|---|---|
|
| 选择器应用到的标签键。 |
|
| 代表键与一组值的关系。有效的运算符为 In、NotIn、Exists、DoesNotExist。gt 和 Lt. |
|
| 字符串值数组。如果运算符是 In 或 NotIn,则值数组必须是非空的。如果运算符是 Exists 或 DoesNotExist,则值数组必须为空。如果运算符是 Gt 或 Lt,则值数组必须具有单个元素,它将解释为整数。这个数组会在策略性合并补丁中被替换。 |
10.1.19. .spec.config.affinity.podAffinity
- 描述
- 描述 pod 关联性调度规则(例如,将这个 pod 位于同一个节点、区等)中。
- 类型
-
object
属性 | 类型 | 描述 |
---|---|---|
|
| 调度程序更喜欢将 pod 调度到满足此字段指定的关联性表达式的节点,但可能会选择违反一个或多个表达式的节点。最首选的节点是具有最大权重总和的节点(即,对于满足所有调度要求的节点(resource request、requiredDuringScheduling 关联性表达式等)的每个节点,计算并迭代此字段元素,并在节点具有与对应 podAffinityTerm 匹配的 pod 时,将"weight"添加到总和(如果节点具有最高 podAffinityTerm)、具有最高总和最高的节点是首选。 |
|
| 所有匹配的 WeightedPodAffinityTerm 字段的权重添加到每个节点,以查找最首选节点。 |
|
| 如果在调度时没有满足此字段指定的关联性要求,则 pod 不会被调度到该节点上。如果此字段指定的关联性要求在 pod 执行期间某一点满足(例如,由于 pod 标签更新),则系统可能或可能无法最终从其节点驱除 pod。当有多个元素时,与每个 podAffinityTerm 对应的节点列表都会被交集,例如必须满足所有术语。 |
|
| 定义一组 pod (即,与给定命名空间相对 labelSelector 匹配的 labelSelector ),该 pod 应该与 pod 共同定位(反关联性)或没有共同定位(反关联性)的节点上运行,其中 co-located 在具有键 <topologyKey> 标签的节点上运行,它与其上运行一组 pod 的 pod 匹配。 |
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
-
属性 | 类型 | 描述 |
---|---|---|
|
| 必需。与对应权重关联的 pod 关联性术语。 |
|
| 与对应的 podAffinityTerm 关联的权重,范围为 1-100。 |
10.1.22. .spec.config.affinity.podAffinity.preferredDuringSchedulingIgnoredDuringExecution[].podAffinityTerm
- 描述
- 必需。与对应权重关联的 pod 关联性术语。
- 类型
-
object
- 必填
-
topologyKey
-
属性 | 类型 | 描述 |
---|---|---|
|
| 对一组资源进行标签查询,本例中为 pod。 |
|
| 术语适用的命名空间集合上的标签查询。术语应用于此字段选定的命名空间的 union,以及 namespaces 字段中列出的命名空间。null selector 和 null 或空命名空间列表表示"此 pod 的命名空间"。空选择器({})匹配所有命名空间。 |
|
| namespaces 指定术语应用到的命名空间名称的静态列表。术语应用到此字段中列出的命名空间的 union,namespaceSelector 选择的命名空间列表和 null namespaceSelector 表示 " this pod 的命名空间"。 |
|
| 此 pod 应该在指定命名空间中与 labelSelector 匹配的 pod 共存(反关联性),其中 co-located 定义为在运行所选 pod 的节点的值为 running 的节点上运行。不允许为空 topologyKey。 |
10.1.23. .spec.config.affinity.podAffinity.preferredDuringSchedulingIgnoredDuringExecution[].podAffinityTerm.labelSelector
- 描述
- 对一组资源进行标签查询,本例中为 pod。
- 类型
-
object
属性 | 类型 | 描述 |
---|---|---|
|
| matchExpressions 是标签选择器要求列表。要求的逻辑关系是 AND。 |
|
| 标签选择器要求是一个选择器,其中包含与键和值相关的值、键和值。 |
|
| 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 是选择器应用到的标签键。 |
|
| 运算符代表一个键与一组值的关系。有效的运算符是 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 是标签选择器要求列表。要求的逻辑关系是 AND。 |
|
| 标签选择器要求是一个选择器,其中包含与键和值相关的值、键和值。 |
|
| 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 是选择器应用到的标签键。 |
|
| 运算符代表一个键与一组值的关系。有效的运算符是 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
-
属性 | 类型 | 描述 |
---|---|---|
|
| 对一组资源进行标签查询,本例中为 pod。 |
|
| 术语适用的命名空间集合上的标签查询。术语应用于此字段选定的命名空间的 union,以及 namespaces 字段中列出的命名空间。null selector 和 null 或空命名空间列表表示"此 pod 的命名空间"。空选择器({})匹配所有命名空间。 |
|
| namespaces 指定术语应用到的命名空间名称的静态列表。术语应用到此字段中列出的命名空间的 union,namespaceSelector 选择的命名空间列表和 null namespaceSelector 表示 " this pod 的命名空间"。 |
|
| 此 pod 应该在指定命名空间中与 labelSelector 匹配的 pod 共存(反关联性),其中 co-located 定义为在运行所选 pod 的节点的值为 running 的节点上运行。不允许为空 topologyKey。 |
10.1.31. .spec.config.affinity.podAffinity.requiredDuringSchedulingIgnoredDuringExecution[].labelSelector
- 描述
- 对一组资源进行标签查询,本例中为 pod。
- 类型
-
object
属性 | 类型 | 描述 |
---|---|---|
|
| matchExpressions 是标签选择器要求列表。要求的逻辑关系是 AND。 |
|
| 标签选择器要求是一个选择器,其中包含与键和值相关的值、键和值。 |
|
| 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 是选择器应用到的标签键。 |
|
| 运算符代表一个键与一组值的关系。有效的运算符是 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 是标签选择器要求列表。要求的逻辑关系是 AND。 |
|
| 标签选择器要求是一个选择器,其中包含与键和值相关的值、键和值。 |
|
| 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 是选择器应用到的标签键。 |
|
| 运算符代表一个键与一组值的关系。有效的运算符是 In、NotIn、Exists 和 DoesNotExist。 |
|
| 值是字符串值的数组。如果运算符是 In 或 NotIn,则值数组必须是非空的。如果运算符是 Exists 或 DoesNotExist,则值数组必须为空。这个数组会在策略性合并补丁中被替换。 |
10.1.37. .spec.config.affinity.podAntiAffinity
- 描述
- 描述 pod 反关联性调度规则(例如,避免将此 pod 放置到同一个节点、区等)。
- 类型
-
object
属性 | 类型 | 描述 |
---|---|---|
|
| 调度程序更喜欢将 pod 调度到满足此字段指定的反关联性表达式的节点,但可能会选择违反一个或多个表达式的节点。最首选的节点是具有最大权重总和的节点,即对于满足所有调度要求(资源请求、requiredDuringScheduling 反关联性表达式等)的每个节点,计算通过此字段元素来计算总和总和(如果节点具有与对应的 podAffinityTerm 匹配的 pod)的总和。 |
|
| 所有匹配的 WeightedPodAffinityTerm 字段的权重添加到每个节点,以查找最首选节点。 |
|
| 如果在调度时没有满足此字段指定的反关联性要求,则 pod 不会被调度到该节点上。如果此字段指定的反关联性要求在 Pod 执行期间某一点满足(例如,由于 pod 标签更新),则系统可能或可能无法最终从其节点驱除 pod。当有多个元素时,与每个 podAffinityTerm 对应的节点列表都会被交集,例如必须满足所有术语。 |
|
| 定义一组 pod (即,与给定命名空间相对 labelSelector 匹配的 labelSelector ),该 pod 应该与 pod 共同定位(反关联性)或没有共同定位(反关联性)的节点上运行,其中 co-located 在具有键 <topologyKey> 标签的节点上运行,它与其上运行一组 pod 的 pod 匹配。 |
10.1.38. .spec.config.affinity.podAntiAffinity.preferredDuringSchedulingIgnoredDuringExecution
- 描述
- 调度程序更喜欢将 pod 调度到满足此字段指定的反关联性表达式的节点,但可能会选择违反一个或多个表达式的节点。最首选的节点是具有最大权重总和的节点,即对于满足所有调度要求(资源请求、requiredDuringScheduling 反关联性表达式等)的每个节点,计算通过此字段元素来计算总和总和(如果节点具有与对应的 podAffinityTerm 匹配的 pod)的总和。
- 类型
-
数组
10.1.39. .spec.config.affinity.podAntiAffinity.preferredDuringSchedulingIgnoredDuringExecution[]
- 描述
- 所有匹配的 WeightedPodAffinityTerm 字段的权重添加到每个节点,以查找最首选节点。
- 类型
-
object
- 必填
-
podAffinityTerm
-
weight
-
属性 | 类型 | 描述 |
---|---|---|
|
| 必需。与对应权重关联的 pod 关联性术语。 |
|
| 与对应的 podAffinityTerm 关联的权重,范围为 1-100。 |
10.1.40. .spec.config.affinity.podAntiAffinity.preferredDuringSchedulingIgnoredDuringExecution[].podAffinityTerm
- 描述
- 必需。与对应权重关联的 pod 关联性术语。
- 类型
-
object
- 必填
-
topologyKey
-
属性 | 类型 | 描述 |
---|---|---|
|
| 对一组资源进行标签查询,本例中为 pod。 |
|
| 术语适用的命名空间集合上的标签查询。术语应用于此字段选定的命名空间的 union,以及 namespaces 字段中列出的命名空间。null selector 和 null 或空命名空间列表表示"此 pod 的命名空间"。空选择器({})匹配所有命名空间。 |
|
| namespaces 指定术语应用到的命名空间名称的静态列表。术语应用到此字段中列出的命名空间的 union,namespaceSelector 选择的命名空间列表和 null namespaceSelector 表示 " this pod 的命名空间"。 |
|
| 此 pod 应该在指定命名空间中与 labelSelector 匹配的 pod 共存(反关联性),其中 co-located 定义为在运行所选 pod 的节点的值为 running 的节点上运行。不允许为空 topologyKey。 |
10.1.41. .spec.config.affinity.podAntiAffinity.preferredDuringSchedulingIgnoredDuringExecution[].podAffinityTerm.labelSelector
- 描述
- 对一组资源进行标签查询,本例中为 pod。
- 类型
-
object
属性 | 类型 | 描述 |
---|---|---|
|
| matchExpressions 是标签选择器要求列表。要求的逻辑关系是 AND。 |
|
| 标签选择器要求是一个选择器,其中包含与键和值相关的值、键和值。 |
|
| 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 是选择器应用到的标签键。 |
|
| 运算符代表一个键与一组值的关系。有效的运算符是 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 是标签选择器要求列表。要求的逻辑关系是 AND。 |
|
| 标签选择器要求是一个选择器,其中包含与键和值相关的值、键和值。 |
|
| 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 是选择器应用到的标签键。 |
|
| 运算符代表一个键与一组值的关系。有效的运算符是 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
-
属性 | 类型 | 描述 |
---|---|---|
|
| 对一组资源进行标签查询,本例中为 pod。 |
|
| 术语适用的命名空间集合上的标签查询。术语应用于此字段选定的命名空间的 union,以及 namespaces 字段中列出的命名空间。null selector 和 null 或空命名空间列表表示"此 pod 的命名空间"。空选择器({})匹配所有命名空间。 |
|
| namespaces 指定术语应用到的命名空间名称的静态列表。术语应用到此字段中列出的命名空间的 union,namespaceSelector 选择的命名空间列表和 null namespaceSelector 表示 " this pod 的命名空间"。 |
|
| 此 pod 应该在指定命名空间中与 labelSelector 匹配的 pod 共存(反关联性),其中 co-located 定义为在运行所选 pod 的节点的值为 running 的节点上运行。不允许为空 topologyKey。 |
10.1.49. .spec.config.affinity.podAntiAffinity.requiredDuringSchedulingIgnoredDuringExecution[].labelSelector
- 描述
- 对一组资源进行标签查询,本例中为 pod。
- 类型
-
object
属性 | 类型 | 描述 |
---|---|---|
|
| matchExpressions 是标签选择器要求列表。要求的逻辑关系是 AND。 |
|
| 标签选择器要求是一个选择器,其中包含与键和值相关的值、键和值。 |
|
| 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 是选择器应用到的标签键。 |
|
| 运算符代表一个键与一组值的关系。有效的运算符是 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 是标签选择器要求列表。要求的逻辑关系是 AND。 |
|
| 标签选择器要求是一个选择器,其中包含与键和值相关的值、键和值。 |
|
| 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 是选择器应用到的标签键。 |
|
| 运算符代表一个键与一组值的关系。有效的运算符是 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
-
属性 | 类型 | 描述 |
---|---|---|
|
| 环境变量的名称。必须是 C_IDENTIFIER。 |
|
| 变量引用 $(VAR_NAME)使用容器中之前定义的环境变量以及任何服务环境变量进行扩展。如果无法解析变量,则输入字符串中的引用将保持不变。双引号被缩减为一个单个 $,它用于转义 $(VAR_NAME)语法:即 " (VAR_NAME) " 将生成字符串 "$(VAR_NAME) "。转义的引用永远不会扩展,无论变量是否存在。默认为 ""。 |
|
| 环境变量的值的源。如果值不为空,则无法使用。 |
10.1.57. .spec.config.env[].valueFrom
- 描述
- 环境变量的值的源。如果值不为空,则无法使用。
- 类型
-
object
属性 | 类型 | 描述 |
---|---|---|
|
| 选择 ConfigMap 的键。 |
|
|
选择 pod 的字段:支持 metadata.name、metadata.namespace、 |
|
| 选择容器的资源:当前仅支持资源限值和请求(limits.cpu, limits.memory, limits.ephemeral-storage, requests.cpu, requests.memory and requests.ephemeral-storage)。 |
|
| 在 pod 命名空间中选择 secret 的键 |
10.1.58. .spec.config.env[].valueFrom.configMapKeyRef
- 描述
- 选择 ConfigMap 的键。
- 类型
-
object
- 必填
-
key
-
属性 | 类型 | 描述 |
---|---|---|
|
| 要选择的密钥。 |
|
| 引用的名称。更多信息: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names TODO: 添加其他有用的字段。apiVersion、kind、uid? |
|
| 指定是否必须定义 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
-
属性 | 类型 | 描述 |
---|---|---|
|
| 模式的版本是按术语编写的 FieldPath,默认为 "v1"。 |
|
| 在指定 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
-
属性 | 类型 | 描述 |
---|---|---|
|
| 容器名称:卷需要,对于 env vars是可选的 |
|
| 指定公开资源的输出格式,默认为 "1" |
|
| 必需:要选择的资源 |
10.1.61. .spec.config.env[].valueFrom.secretKeyRef
- 描述
- 在 pod 命名空间中选择 secret 的键
- 类型
-
object
- 必填
-
key
-
属性 | 类型 | 描述 |
---|---|---|
|
| 要从中选择的 secret 的密钥。必须是一个有效的 secret 密钥。 |
|
| 引用的名称。更多信息: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names TODO: 添加其他有用的字段。apiVersion、kind、uid? |
|
| 指定是否需要定义 Secret 还是其密钥 |
10.1.62. .spec.config.envFrom
- 描述
- envFrom 是在容器中填充环境变量的源列表。源中定义的键必须是 C_IDENTIFIER。当容器启动时,所有无效密钥都会被报告为事件。当多个源中存在键时,与最后一个源关联的值将具有优先权。由带有重复键的 Env 定义的值将具有优先权。不可变。
- 类型
-
array
10.1.63. .spec.config.envFrom[]
- 描述
- EnvFromSource 代表一组 ConfigMap 的源
- 类型
-
object
属性 | 类型 | 描述 |
---|---|---|
|
| 要从中选择的 ConfigMap |
|
| 要添加到 ConfigMap 中每个键的可选标识符。必须是 C_IDENTIFIER。 |
|
| 要从中选择的 Secret |
10.1.64. .spec.config.envFrom[].configMapRef
- 描述
- 要从中选择的 ConfigMap
- 类型
-
object
属性 | 类型 | 描述 |
---|---|---|
|
| 引用的名称。更多信息: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names TODO: 添加其他有用的字段。apiVersion、kind、uid? |
|
| 指定是否必须定义 ConfigMap |
10.1.65. .spec.config.envFrom[].secretRef
- 描述
- 要从中选择的 Secret
- 类型
-
object
属性 | 类型 | 描述 |
---|---|---|
|
| 引用的名称。更多信息: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names TODO: 添加其他有用的字段。apiVersion、kind、uid? |
|
| 指定是否必须定义 Secret |
10.1.66. .spec.config.resources
- 描述
- resources 代表此容器所需的计算资源。不可变。更多信息: https://kubernetes.io/docs/concepts/configuration/manage-compute-resources-container/
- 类型
-
object
属性 | 类型 | 描述 |
---|---|---|
|
| 限制描述了允许的最大计算资源量。更多信息: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/ |
|
| Requests 描述了所需的最少计算资源。如果容器省略了 Requests,则默认为 Limits (如果明确指定),否则默认为实现定义的值。更多信息: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/ |
10.1.67. .spec.config.selector
- 描述
- selector 是要配置的 pod 的标签选择器。其 pod 被选择的现有 ReplicaSet 将会受到此部署的影响。它必须与 pod 模板的标签匹配。
- 类型
-
object
属性 | 类型 | 描述 |
---|---|---|
|
| matchExpressions 是标签选择器要求列表。要求的逻辑关系是 AND。 |
|
| 标签选择器要求是一个选择器,其中包含与键和值相关的值、键和值。 |
|
| matchLabels 是 {key,value} 对的映射。MatchLabels 映射中的单个 {key,value} 等同于 matchExpressions 的一个元素,其 key 字段是 "key",运算符是 "In",值数组仅包含 "value"。要求的逻辑关系是 AND。 |
10.1.68. .spec.config.selector.matchExpressions
- 描述
- matchExpressions 是标签选择器要求列表。要求的逻辑关系是 AND。
- 类型
-
array
10.1.69. .spec.config.selector.matchExpressions[]
- 描述
- 标签选择器要求是一个选择器,其中包含与键和值相关的值、键和值。
- 类型
-
object
- 必填
-
key
-
operator
-
属性 | 类型 | 描述 |
---|---|---|
|
| key 是选择器应用到的标签键。 |
|
| 运算符代表一个键与一组值的关系。有效的运算符是 In、NotIn、Exists 和 DoesNotExist。 |
|
| 值是字符串值的数组。如果运算符是 In 或 NotIn,则值数组必须是非空的。如果运算符是 Exists 或 DoesNotExist,则值数组必须为空。这个数组会在策略性合并补丁中被替换。 |
10.1.70. .spec.config.tolerations
- 描述
- 容限(toleration)是 pod 的容限。
- 类型
-
array
10.1.71. .spec.config.tolerations[]
- 描述
- 此 Toleration 附加到 pod,以使用匹配的 operator <operator> 容许与 triple <key,value,effect> 匹配的任何污点。
- 类型
-
object
属性 | 类型 | 描述 |
---|---|---|
|
| effect 表示要匹配的污点效果。空意味着匹配所有污点效果。指定后,允许的值为 NoSchedule,PreferNoSchedule 和 NoExecute。 |
|
| key 是容限应用到的污点键。empty 表示与所有污点键匹配。如果键为空,则必须存在运算符;组合意味着匹配所有值和所有键。 |
|
| Operator 代表键与值的关系。有效的运算符是 Exists 和 Equal。默认值为 Equal。exists 等同于值的通配符,以便 pod 可以容忍特定类别的所有污点。 |
|
| tolerationSeconds 代表容限的期间(必须生效 NoExecute,否则此字段将被忽略)可以容忍污点。默认情况下,它不会被设置,这意味着容许任何污点(不要驱除)。零值和负值将被视为 0 (立即删除)。 |
|
| value 是容限匹配的污点值。如果运算符是 Exists,则该值应该为空,否则仅是一个常规字符串。 |
10.1.72. .spec.config.volumeMounts
- 描述
- 要在容器中设置的 VolumeMount 列表。
- 类型
-
array
10.1.73. .spec.config.volumeMounts[]
- 描述
- VolumeMount 描述了容器内卷挂载。
- 类型
-
object
- 必填
-
mountPath
-
name
-
属性 | 类型 | 描述 |
---|---|---|
|
| 应挂载卷的容器中的路径。不得包含 ':'。 |
|
| mountPropagation 决定挂载如何从主机传播到容器以及反向传播。如果没有设置,则使用 MountPropagationNone。此字段在 1.10 中是 beta。 |
|
| 这必须与卷的 Name 匹配。 |
|
| 如果为 true,则以只读方式挂载,否则读写(false 或未指定)。默认为false。 |
|
| 应从中挂载容器卷的卷中的路径。默认为 "" (卷的 root)。 |
|
| 在应该挂载容器卷的卷中扩展路径。行为与 SubPath 类似,但环境变量引用 $(VAR_NAME)使用容器的环境扩展。默认为 "" (卷的 root)。SubPathExpr 和 SubPath 是互斥的。 |
10.1.74. .spec.config.volumes
- 描述
- podSpec 中设置的卷列表。
- 类型
-
array
10.1.75. .spec.config.volumes[]
- 描述
- 卷代表 pod 中的指定卷,可以被 pod 中的任何容器访问。
- 类型
-
object
- 必填
-
name
-
属性 | 类型 | 描述 |
---|---|---|
|
| awsElasticBlockStore 代表一个 AWS Disk 资源,附加到 kubelet 的主机机器,然后公开给 pod。更多信息: https://kubernetes.io/docs/concepts/storage/volumes#awselasticblockstore |
|
| azureDisk 代表主机上的 Azure Data Disk 挂载,并绑定到 pod。 |
|
| azureFile 代表主机上的 Azure File Service 挂载,并绑定到 pod。 |
|
| CephFS 代表共享 pod 生命周期的主机上的 Ceph FS 挂载 |
|
| Cinder 代表附加并挂载到 kubelet 主机机器上的 cinder 卷。更多信息: https://examples.k8s.io/mysql-cinder-pd/README.md |
|
| ConfigMap 代表应填充此卷的 configMap |
|
| CSI (Container Storage Interface)代表由特定外部 CSI 驱动程序(Beta 功能)处理的临时存储。 |
|
| downwardAPI 代表应填充此卷的 pod 的 Downward API |
|
| emptyDir 代表共享 pod 生命周期的临时目录。更多信息: https://kubernetes.io/docs/concepts/storage/volumes#emptydir |
|
| ephemeral 代表由集群存储驱动程序处理的卷。卷的生命周期与定义它的 pod 关联 - 将在 pod 启动前创建,并在 pod 被删除时删除。如果 pod 运行(如需要从快照或容量跟踪中恢复)正常卷时,才需要这个卷。c)通过存储类指定存储驱动程序,以及 d)存储驱动程序支持通过 PersistentVolumeClaim 进行动态卷置备(请参阅 EphemeralVolumeSource 以了解有关这个卷类型和 PersistentVolumeClaim 间的连接的更多信息。对于保留的时间超过单个 pod 的生命周期,使用 PersistentVolumeClaim 或特定于供应商的 API 之一。如果使用 CSI 驱动程序,使用 CSI 驱动程序来轻量级本地临时卷 - 如需更多信息,请参阅驱动程序文档。pod 可以同时使用两种类型的临时卷和持久性卷。 |
|
| FC 代表附加到 kubelet 主机机器的光纤通道资源,然后公开给 pod。 |
|
| FlexVolume 代表使用基于 exec 的插件置备的/附加的通用卷资源。 |
|
| flocker 代表附加到 kubelet 主机机器的 Flocker 卷。这取决于正在运行的 Flocker 控制服务 |
|
| gcePersistentDisk 代表一个 GCE Disk 资源,该资源附加到 kubelet 的主机机器,然后公开给 pod。更多信息: https://kubernetes.io/docs/concepts/storage/volumes#gcepersistentdisk |
|
| gitRepo 代表特定修订版本中的 git 存储库。DEPRECATED: GitRepo 已被弃用。要使用 git 存储库置备容器,请将 EmptyDir 挂载到使用 git 克隆存储库的 InitContainer 中,然后将 EmptyDir 挂载到 Pod 的容器中。 |
|
| GlusterFS 代表共享 pod 生命周期的主机上的 Glusterfs 挂载。更多信息: https://examples.k8s.io/volumes/glusterfs/README.md |
|
| hostpath 代表主机机器上直接公开给容器的已存在的文件或目录。这通常用于系统代理或其他允许查看主机机器的特权事情。大多数容器都不需要这样做。更多信息: https://kubernetes.io/docs/concepts/storage/volumes#hostpath -- TODO (jonesdl)我们需要限制哪些人可以使用主机目录挂载,以及谁可以/不能将主机目录挂载为读/写。 |
|
| iSCSI 代表附加到 kubelet 主机机器的 ISCSI Disk 资源,然后公开给 pod。更多信息: https://examples.k8s.io/volumes/iscsi/README.md |
|
| 卷的名称。必须是 DNS_LABEL,且必须在 pod 中唯一。更多信息: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names |
|
| NFS 代表共享 pod 生命周期更多信息的主机上 NFS 挂载: https://kubernetes.io/docs/concepts/storage/volumes#nfs |
|
| persistentVolumeClaimVolumeSource 代表对同一命名空间中的 PersistentVolumeClaim 的引用。更多信息: https://kubernetes.io/docs/concepts/storage/persistent-volumes#persistentvolumeclaims |
|
| photonPersistentDisk 代表附加并挂载到 kubelets 主机上的 PhotonController 持久磁盘 |
|
| portworxVolume 代表附加并挂载到 kubelets 主机上的 portworx 卷 |
|
| 一个资源 secret、configmap 和 Downward API 中所有的项目项目 |
|
| quobyte 代表共享 pod 生命周期的主机上执行 Quobyte 挂载 |
|
| RBD 代表共享 pod 生命周期的主机上 Rados 块设备挂载。更多信息: https://examples.k8s.io/volumes/rbd/README.md |
|
| scaleIO 代表附加并挂载到 Kubernetes 节点上的 ScaleIO 持久性卷。 |
|
| Secret 代表应填充此卷的 secret。更多信息: https://kubernetes.io/docs/concepts/storage/volumes#secret |
|
| storageos 代表附加并挂载到 Kubernetes 节点上的 StorageOS 卷。 |
|
| vsphereVolume 代表附加并挂载到 kubelets 主机上的 vSphere 卷 |
10.1.76. .spec.config.volumes[].awsElasticBlockStore
- 描述
- awsElasticBlockStore 代表一个 AWS Disk 资源,附加到 kubelet 的主机机器,然后公开给 pod。更多信息: https://kubernetes.io/docs/concepts/storage/volumes#awselasticblockstore
- 类型
-
object
- 必填
-
volumeID
-
属性 | 类型 | 描述 |
---|---|---|
|
| fstype 是您要挂载的卷的文件系统类型。提示: 确保主机操作系统支持文件系统类型。示例:"ext4", "xfs", "ntfs"。如果未指定,则隐式推断为 "ext4"。更多信息: https://kubernetes.io/docs/concepts/storage/volumes#awselasticblockstore TODO:如何防止文件系统中的错误影响机器 |
|
| partition 是您要挂载的卷中的分区。如果省略,则默认使用卷名称来挂载。示例: 对于卷 /dev/sda1,您可以将分区指定为 "1"。同样,/dev/sda 的卷分区是"0" (或者您可以将属性留空)。 |
|
| readonly 值 true 将强制 VolumeMount 中的 readOnly 设置。更多信息: https://kubernetes.io/docs/concepts/storage/volumes#awselasticblockstore |
|
| VolumeId 是 AWS (Amazon EBS 卷)中持久磁盘资源的唯一 ID。更多信息: https://kubernetes.io/docs/concepts/storage/volumes#awselasticblockstore |
10.1.77. .spec.config.volumes[].azureDisk
- 描述
- azureDisk 代表主机上的 Azure Data Disk 挂载,并绑定到 pod。
- 类型
-
object
- 必填
-
diskName
-
diskURI
-
属性 | 类型 | 描述 |
---|---|---|
|
| cachingMode 是主机缓存模式: None、Read Only、Read Write。 |
|
| diskname 是 blob 存储中的数据磁盘的 Name |
|
| diskURI 是 blob 存储中的数据磁盘的 URI |
|
| fstype 是要挂载的 Filesystem 类型。必须是主机操作系统支持的文件系统类型。例如,"ext4", "xfs", "ntfs".如果未指定,则隐式推断为 "ext4"。 |
|
| kind 预期值为 Shared: 每个存储帐户 Dedicated 有多个 blob 磁盘:每个存储帐户 Managed: azure managed data disk (only on managed availability set). 默认为 shared |
|
| readonly Defaults to false (read/write)。此处的 readonly 将强制 VolumeMount 中的 ReadOnly 设置。 |
10.1.78. .spec.config.volumes[].azureFile
- 描述
- azureFile 代表主机上的 Azure File Service 挂载,并绑定到 pod。
- 类型
-
object
- 必填
-
secretName
-
shareName
-
属性 | 类型 | 描述 |
---|---|---|
|
| readonly 默认为 false (读/写)。此处的 readonly 将强制 VolumeMount 中的 ReadOnly 设置。 |
|
| secretName 是包含 Azure Storage Account Name 和 Key 的 secret 名称 |
|
| sharename 是 azure 共享名称 |
10.1.79. .spec.config.volumes[].cephfs
- 描述
- CephFS 代表共享 pod 生命周期的主机上的 Ceph FS 挂载
- 类型
-
object
- 必填
-
monitor
-
属性 | 类型 | 描述 |
---|---|---|
|
| monitor 是必需的: monitor 是 Ceph 监视器更多信息的集合: https://examples.k8s.io/volumes/cephfs/README.md#how-to-use-it |
|
| 路径为可选:作为挂载的 root 使用,而不是完整的 Ceph 树,默认为 / |
|
| readonly 为 Optional: Defaults to false (read/write)。此处的 readonly 将强制 VolumeMount 中的 ReadOnly 设置。更多信息: https://examples.k8s.io/volumes/cephfs/README.md#how-to-use-it |
|
| secretfile 为 Optional: SecretFile 是用户密钥环的路径,默认为 /etc/ceph/user.secret 更多信息 :https://examples.k8s.io/volumes/cephfs/README.md#how-to-use-it |
|
| secretRef 为 Optional: SecretRef 对 User 的身份验证 secret 的引用,默认为空。更多信息: https://examples.k8s.io/volumes/cephfs/README.md#how-to-use-it |
|
| User 是可选的:用户是 rados 用户名,默认为 admin 更多信息: https://examples.k8s.io/volumes/cephfs/README.md#how-to-use-it |
10.1.80. .spec.config.volumes[].cephfs.secretRef
- 描述
- secretRef 为 Optional: SecretRef 对 User 的身份验证 secret 的引用,默认为空。更多信息: https://examples.k8s.io/volumes/cephfs/README.md#how-to-use-it
- 类型
-
object
属性 | 类型 | 描述 |
---|---|---|
|
| 引用的名称。更多信息: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names TODO: 添加其他有用的字段。apiVersion、kind、uid? |
10.1.81. .spec.config.volumes[].cinder
- 描述
- Cinder 代表附加并挂载到 kubelet 主机机器上的 cinder 卷。更多信息: https://examples.k8s.io/mysql-cinder-pd/README.md
- 类型
-
object
- 必填
-
volumeID
-
属性 | 类型 | 描述 |
---|---|---|
|
| fstype 是要挂载的文件系统类型。必须是主机操作系统支持的文件系统类型。示例:"ext4", "xfs", "ntfs"。如果未指定,则隐式推断为 "ext4"。更多信息: https://examples.k8s.io/mysql-cinder-pd/README.md |
|
| readonly 默认为 false (读/写)。此处的 readonly 将强制 VolumeMount 中的 ReadOnly 设置。更多信息: https://examples.k8s.io/mysql-cinder-pd/README.md |
|
| secretRef 是可选的:指向包含用于连接到 OpenStack 的参数的 secret 对象。 |
|
| 用于识别 cinder 中的卷的 VolumeId。更多信息: https://examples.k8s.io/mysql-cinder-pd/README.md |
10.1.82. .spec.config.volumes[].cinder.secretRef
- 描述
- secretRef 是可选的:指向包含用于连接到 OpenStack 的参数的 secret 对象。
- 类型
-
object
属性 | 类型 | 描述 |
---|---|---|
|
| 引用的名称。更多信息: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names TODO: 添加其他有用的字段。apiVersion、kind、uid? |
10.1.83. .spec.config.volumes[].configMap
- 描述
- ConfigMap 代表应填充此卷的 configMap
- 类型
-
object
属性 | 类型 | 描述 |
---|---|---|
|
| defaultMode 是可选的:默认用于在创建的文件上设置权限的模式位。必须是一个 0000 到 0777 之间的八进制数值,或者 0 到 511 之间的十进制值。YAML 接受八进制和十进制值,JSON 需要模式位的值为十进制值。默认值为 0644。路径中的目录不受此设置的影响。这可能与影响文件模式的其他选项(如 fsGroup )冲突,结果可以是其他模式位。 |
|
| 如果未指定,则引用的 ConfigMap 的 Data 字段中每个键值对将投射到卷中,其名称是键,内容是值。如果指定,列出的键将投射到指定的路径中,并且不会出现未列出的键。如果指定了没有存在于 ConfigMap 中的键,则卷设置将失败,除非标记为可选。路径必须是相对的,且不能包含 '..' 路径,或者以 '..' 开始。 |
|
| 将字符串键映射到卷中的路径。 |
|
| 引用的名称。更多信息: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names TODO: 添加其他有用的字段。apiVersion、kind、uid? |
|
| (可选)指定是否必须定义 ConfigMap 或其键 |
10.1.84. .spec.config.volumes[].configMap.items
- 描述
- 如果未指定,则引用的 ConfigMap 的 Data 字段中每个键值对将投射到卷中,其名称是键,内容是值。如果指定,列出的键将投射到指定的路径中,并且不会出现未列出的键。如果指定了没有存在于 ConfigMap 中的键,则卷设置将失败,除非标记为可选。路径必须是相对的,且不能包含 '..' 路径,或者以 '..' 开始。
- 类型
-
array
10.1.85. .spec.config.volumes[].configMap.items[]
- 描述
- 将字符串键映射到卷中的路径。
- 类型
-
object
- 必填
-
key
-
path
-
属性 | 类型 | 描述 |
---|---|---|
|
| key 是项目的关键。 |
|
| 模式为可选:用于设置此文件权限的模式位。必须是一个 0000 到 0777 之间的八进制数值,或者 0 到 511 之间的十进制值。YAML 接受八进制和十进制值,JSON 需要模式位的值为十进制值。如果没有指定,则使用卷 defaultMode。这可能与影响文件模式的其他选项(如 fsGroup )冲突,结果可以是其他模式位。 |
|
| path 是将键映射到的文件的相对路径。可能不是绝对路径。不得包含路径元素 '..'。不得以字符串 '..' 开头。 |
10.1.86. .spec.config.volumes[].csi
- 描述
- CSI (Container Storage Interface)代表由特定外部 CSI 驱动程序(Beta 功能)处理的临时存储。
- 类型
-
object
- 必填
-
driver
-
属性 | 类型 | 描述 |
---|---|---|
|
| driver 是处理此卷的 CSI 驱动程序的名称。请联系您的 admin,了解集群中注册的正确名称。 |
|
| 要挂载的 fstype。例如,"ext4", "xfs", "ntfs".如果没有提供,则会将空值传递给关联的 CSI 驱动程序,该驱动程序将决定要应用的默认文件系统。 |
|
| nodePublishSecretRef 是包含敏感信息的 secret 对象的引用,以传递给 CSI 驱动程序,以完成 CSI NodePublishVolume 和 NodeUnpublishVolume 调用。此字段是可选的,如果不需要 secret,则可能会为空。如果 secret 对象包含多个 secret,则会传递所有 secret 引用。 |
|
| readOnly 将卷指定为只读。默认为 false (读/写)。 |
|
| volumeAttributes 存储传递给 CSI 驱动程序的驱动程序特定属性。有关支持的值,请参阅驱动程序的文档。 |
10.1.87. .spec.config.volumes[].csi.nodePublishSecretRef
- 描述
- nodePublishSecretRef 是包含敏感信息的 secret 对象的引用,以传递给 CSI 驱动程序,以完成 CSI NodePublishVolume 和 NodeUnpublishVolume 调用。此字段是可选的,如果不需要 secret,则可能会为空。如果 secret 对象包含多个 secret,则会传递所有 secret 引用。
- 类型
-
object
属性 | 类型 | 描述 |
---|---|---|
|
| 引用的名称。更多信息: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names TODO: 添加其他有用的字段。apiVersion、kind、uid? |
10.1.88. .spec.config.volumes[].downwardAPI
- 描述
- downwardAPI 代表应填充此卷的 pod 的 Downward API
- 类型
-
object
属性 | 类型 | 描述 |
---|---|---|
|
| 可选:默认在创建的文件上使用模式位。必须是 Optional: 模式位,用于默认对创建的文件设置权限。必须是一个 0000 到 0777 之间的八进制数值,或者 0 到 511 之间的十进制值。YAML 接受八进制和十进制值,JSON 需要模式位的值为十进制值。默认值为 0644。路径中的目录不受此设置的影响。这可能与影响文件模式的其他选项(如 fsGroup )冲突,结果可以是其他模式位。 |
|
| items 是 Downward API 卷文件的列表 |
|
| DownwardAPIVolumeFile 代表创建包含 pod 字段的文件的信息 |
10.1.89. .spec.config.volumes[].downwardAPI.items
- 描述
- items 是 Downward API 卷文件的列表
- 类型
-
array
10.1.90. .spec.config.volumes[].downwardAPI.items[]
- 描述
- DownwardAPIVolumeFile 代表创建包含 pod 字段的文件的信息
- 类型
-
object
- 必填
-
path
-
属性 | 类型 | 描述 |
---|---|---|
|
| 必需:选择 pod 的字段:只支持注解、标签、名称和命名空间。 |
|
| 可选:用于设置此文件权限的模式位,必须是 0000 到 0777 之间的数值,或 0 到 511 之间的十进制值。YAML 接受八进制和十进制值,JSON 需要模式位的值为十进制值。如果没有指定,则使用卷 defaultMode。这可能与影响文件模式的其他选项(如 fsGroup )冲突,结果可以是其他模式位。 |
|
| 必需:Path 是要创建的文件的相对路径名称。不能是绝对的,也不能包含 '..' 路径。必须经过 utf-8 编码。相对路径的第一个项不能以 '..' 开头。 |
|
| 选择容器的资源:目前只支持资源限值和请求(limits.cpu、limits.memory、requests.cpu 和 requests.memory)。 |
10.1.91. .spec.config.volumes[].downwardAPI.items[].fieldRef
- 描述
- 必需:选择 pod 的字段:只支持注解、标签、名称和命名空间。
- 类型
-
object
- 必填
-
fieldPath
-
属性 | 类型 | 描述 |
---|---|---|
|
| 模式的版本是按术语编写的 FieldPath,默认为 "v1"。 |
|
| 在指定 API 版本中选择的字段路径。 |
10.1.92. .spec.config.volumes[].downwardAPI.items[].resourceFieldRef
- 描述
- 选择容器的资源:目前只支持资源限值和请求(limits.cpu、limits.memory、requests.cpu 和 requests.memory)。
- 类型
-
object
- 必填
-
resource
-
属性 | 类型 | 描述 |
---|---|---|
|
| 容器名称:卷需要,对于 env vars是可选的 |
|
| 指定公开资源的输出格式,默认为 "1" |
|
| 必需:要选择的资源 |
10.1.93. .spec.config.volumes[].emptyDir
- 描述
- emptyDir 代表共享 pod 生命周期的临时目录。更多信息: https://kubernetes.io/docs/concepts/storage/volumes#emptydir
- 类型
-
object
属性 | 类型 | 描述 |
---|---|---|
|
| Medium 代表存储介质类型应支持这个目录。默认值为 "",这意味着使用节点的默认介质。必须是空字符串(默认)或 Memory。更多信息: https://kubernetes.io/docs/concepts/storage/volumes#emptydir |
|
| sizeLimit 是这个 EmptyDir 卷所需的本地存储总量。大小限制也适用于内存介质。内存用量的最大使用量为此处指定的 SizeLimit 和 pod 中所有容器的内存限值总和。默认值为 nil,这意味着限制未定义。更多信息: http://kubernetes.io/docs/user-guide/volumes#emptydir |
10.1.94. .spec.config.volumes[].ephemeral
- 描述
- ephemeral 代表由集群存储驱动程序处理的卷。卷的生命周期与定义它的 pod 关联 - 将在 pod 启动前创建,并在 pod 被删除时删除。如果 pod 运行(如需要从快照或容量跟踪中恢复)正常卷时,才需要这个卷。c)通过存储类指定存储驱动程序,以及 d)存储驱动程序支持通过 PersistentVolumeClaim 进行动态卷置备(请参阅 EphemeralVolumeSource 以了解有关这个卷类型和 PersistentVolumeClaim 间的连接的更多信息。对于保留的时间超过单个 pod 的生命周期,使用 PersistentVolumeClaim 或特定于供应商的 API 之一。如果使用 CSI 驱动程序,使用 CSI 驱动程序来轻量级本地临时卷 - 如需更多信息,请参阅驱动程序文档。pod 可以同时使用两种类型的临时卷和持久性卷。
- 类型
-
object
属性 | 类型 | 描述 |
---|---|---|
|
|
将用于创建独立 PVC 来置备卷。嵌入此 EphemeralVolumeSource 的 pod 将是 PVC 的所有者,即 PVC 将与 pod 一起删除。PVC 的名称将是 < |
10.1.95. .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
-
属性 | 类型 | 描述 |
---|---|---|
|
| 可能包含创建 PVC 时将复制到 PVC 的标签和注解。不允许其他字段,并在验证过程中被拒绝。 |
|
| PersistentVolumeClaim 的规格。整个内容保持不变复制到从该模板创建的 PVC 中。PersistentVolumeClaim 中与 相同的字段也有效。 |
10.1.96. .spec.config.volumes[].ephemeral.volumeClaimTemplate.metadata
- 描述
- 可能包含创建 PVC 时将复制到 PVC 的标签和注解。不允许其他字段,并在验证过程中被拒绝。
- 类型
-
对象
10.1.97. .spec.config.volumes[].ephemeral.volumeClaimTemplate.spec
- 描述
- PersistentVolumeClaim 的规格。整个内容保持不变复制到从该模板创建的 PVC 中。PersistentVolumeClaim 中与 相同的字段也有效。
- 类型
-
object
属性 | 类型 | 描述 |
---|---|---|
|
| accessModes 包含卷应具有所需的访问模式。更多信息: https://kubernetes.io/docs/concepts/storage/persistent-volumes#access-modes-1 |
|
| Datasource 字段可以用来指定:* 一个现有的 VolumeSnapshot 对象(snapshot.storage.k8s.io/VolumeSnapshot)* 一个现有的 PVC (PersistentVolumeClaim),如果置备程序或外部控制器可以支持指定的数据源,它将基于指定数据源的内容创建一个新卷。如果启用了 AnyVolumeDataSource 功能门,此字段始终与 DataSourceRef 字段具有相同的内容。 |
|
| 如果需要非空卷,则 dataSourceRef 指定要使用数据填充卷的对象。这可能是来自非空 API 组(非核心对象)或 PersistentVolumeClaim 对象的任何本地对象。当指定对象的类型与某些安装的卷填充或动态置备程序匹配时,卷绑定才会成功。此字段将替换 DataSource 字段的功能,如果两个字段都不是空的,则它们必须具有相同的值。为向后兼容,如果其中一个字段为空,则两个字段(DataSource 和 DataSourceRef)将自动设置为相同的值,另一个是非空的。DataSource 和 DataSourceRef 之间有两个重要区别:* While DataSource 只允许两种特定类型的对象,DataSourceRef 允许任何非核心对象和 PersistentVolumeClaim 对象。* 虽然 DataSource 忽略了禁止的值(丢弃它们),DataSourceRef 保留所有值,并在指定禁止的值时生成错误。(beta)使用此字段需要启用 AnyVolumeDataSource 功能门。 |
|
| resources 代表卷应具有的最小资源。如果启用了 RecoverVolumeExpansionFailure 功能,用户可以指定小于之前值的资源要求,但仍必须高于声明的 status 字段中记录的容量。更多信息: https://kubernetes.io/docs/concepts/storage/persistent-volumes#resources |
|
| selector 是要考虑绑定的卷的标签查询。 |
|
| storageClassName 是声明所需的 StorageClass 的名称。更多信息: https://kubernetes.io/docs/concepts/storage/persistent-volumes#class-1 |
|
| volumeMode 定义声明需要哪些卷类型。当未包含在 claim spec 中时,文件系统的值会被表示。 |
|
| volumeName 是对此声明支持的 PersistentVolume 的绑定引用。 |
10.1.98. .spec.config.volumes[].ephemeral.volumeClaimTemplate.spec.dataSource
- 描述
- Datasource 字段可以用来指定:* 一个现有的 VolumeSnapshot 对象(snapshot.storage.k8s.io/VolumeSnapshot)* 一个现有的 PVC (PersistentVolumeClaim),如果置备程序或外部控制器可以支持指定的数据源,它将基于指定数据源的内容创建一个新卷。如果启用了 AnyVolumeDataSource 功能门,此字段始终与 DataSourceRef 字段具有相同的内容。
- 类型
-
object
- 必填
-
kind
-
name
-
属性 | 类型 | 描述 |
---|---|---|
|
| APIGroup 是所引用资源的组。如果没有指定 APIGroup,则指定的 Kind 必须位于 core API 组中。对于任何其他第三方类型,需要 APIGroup。 |
|
| kind 是被引用的资源类型 |
|
| name 是被引用的资源的名称 |
10.1.99. .spec.config.volumes[].ephemeral.volumeClaimTemplate.spec.dataSourceRef
- 描述
- 如果需要非空卷,则 dataSourceRef 指定要使用数据填充卷的对象。这可能是来自非空 API 组(非核心对象)或 PersistentVolumeClaim 对象的任何本地对象。当指定对象的类型与某些安装的卷填充或动态置备程序匹配时,卷绑定才会成功。此字段将替换 DataSource 字段的功能,如果两个字段都不是空的,则它们必须具有相同的值。为向后兼容,如果其中一个字段为空,则两个字段(DataSource 和 DataSourceRef)将自动设置为相同的值,另一个是非空的。DataSource 和 DataSourceRef 之间有两个重要区别:* While DataSource 只允许两种特定类型的对象,DataSourceRef 允许任何非核心对象和 PersistentVolumeClaim 对象。* 虽然 DataSource 忽略了禁止的值(丢弃它们),DataSourceRef 保留所有值,并在指定禁止的值时生成错误。(beta)使用此字段需要启用 AnyVolumeDataSource 功能门。
- 类型
-
object
- 必填
-
kind
-
name
-
属性 | 类型 | 描述 |
---|---|---|
|
| APIGroup 是所引用资源的组。如果没有指定 APIGroup,则指定的 Kind 必须位于 core API 组中。对于任何其他第三方类型,需要 APIGroup。 |
|
| kind 是被引用的资源类型 |
|
| name 是被引用的资源的名称 |
10.1.100. .spec.config.volumes[].ephemeral.volumeClaimTemplate.spec.resources
- 描述
- resources 代表卷应具有的最小资源。如果启用了 RecoverVolumeExpansionFailure 功能,用户可以指定小于之前值的资源要求,但仍必须高于声明的 status 字段中记录的容量。更多信息: https://kubernetes.io/docs/concepts/storage/persistent-volumes#resources
- 类型
-
object
属性 | 类型 | 描述 |
---|---|---|
|
| 限制描述了允许的最大计算资源量。更多信息: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/ |
|
| Requests 描述了所需的最少计算资源。如果容器省略了 Requests,则默认为 Limits (如果明确指定),否则默认为实现定义的值。更多信息: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/ |
10.1.101. .spec.config.volumes[].ephemeral.volumeClaimTemplate.spec.selector
- 描述
- selector 是要考虑绑定的卷的标签查询。
- 类型
-
object
属性 | 类型 | 描述 |
---|---|---|
|
| matchExpressions 是标签选择器要求列表。要求的逻辑关系是 AND。 |
|
| 标签选择器要求是一个选择器,其中包含与键和值相关的值、键和值。 |
|
| matchLabels 是 {key,value} 对的映射。MatchLabels 映射中的单个 {key,value} 等同于 matchExpressions 的一个元素,其 key 字段是 "key",运算符是 "In",值数组仅包含 "value"。要求的逻辑关系是 AND。 |
10.1.102. .spec.config.volumes[].ephemeral.volumeClaimTemplate.spec.selector.matchExpressions
- 描述
- matchExpressions 是标签选择器要求列表。要求的逻辑关系是 AND。
- 类型
-
array
10.1.103. .spec.config.volumes[].ephemeral.volumeClaimTemplate.spec.selector.matchExpressions[]
- 描述
- 标签选择器要求是一个选择器,其中包含与键和值相关的值、键和值。
- 类型
-
object
- 必填
-
key
-
operator
-
属性 | 类型 | 描述 |
---|---|---|
|
| key 是选择器应用到的标签键。 |
|
| 运算符代表一个键与一组值的关系。有效的运算符是 In、NotIn、Exists 和 DoesNotExist。 |
|
| 值是字符串值的数组。如果运算符是 In 或 NotIn,则值数组必须是非空的。如果运算符是 Exists 或 DoesNotExist,则值数组必须为空。这个数组会在策略性合并补丁中被替换。 |
10.1.104. .spec.config.volumes[].fc
- 描述
- FC 代表附加到 kubelet 主机机器的光纤通道资源,然后公开给 pod。
- 类型
-
object
属性 | 类型 | 描述 |
---|---|---|
|
| fstype 是要挂载的文件系统类型。必须是主机操作系统支持的文件系统类型。Ex. "ext4", "xfs", "ntfs".如果未指定,则隐式推断为 "ext4"。TODO:如何防止文件系统中的错误破坏计算机 |
|
| LUN 是可选的:FC 目标 lun 号 |
|
| readonly 为 Optional: Defaults to false (read/write)。此处的 readonly 将强制 VolumeMount 中的 ReadOnly 设置。 |
|
| targetWWNs 是可选:FC 目标全球名称(WWN) |
|
| wwids 可选:FC 卷全局范围标识符(wwids) Either wwids 或 targetWWN 和 lun 的组合必须被设置,但不能同时设置。 |
10.1.105. .spec.config.volumes[].flexVolume
- 描述
- FlexVolume 代表使用基于 exec 的插件置备的/附加的通用卷资源。
- 类型
-
object
- 必填
-
driver
-
属性 | 类型 | 描述 |
---|---|---|
|
| driver 是用于此卷的驱动程序的名称。 |
|
| fstype 是要挂载的文件系统类型。必须是主机操作系统支持的文件系统类型。Ex. "ext4", "xfs", "ntfs".默认文件系统依赖于 FlexVolume 脚本。 |
|
| 选项为 Optional:此字段包含额外的命令选项(若有)。 |
|
| readonly 为 Optional: 默认为 false (读/写)。此处的 readonly 将强制 VolumeMount 中的 ReadOnly 设置。 |
|
| secretRef 是 Optional: secretRef 引用了包含敏感信息的 secret 对象,以传递给插件脚本。如果没有指定 secret 对象,这可能为空。如果 secret 对象包含多个 secret,则所有 secret 都会传递给插件脚本。 |
10.1.106. .spec.config.volumes[].flexVolume.secretRef
- 描述
- secretRef 是 Optional: secretRef 引用了包含敏感信息的 secret 对象,以传递给插件脚本。如果没有指定 secret 对象,这可能为空。如果 secret 对象包含多个 secret,则所有 secret 都会传递给插件脚本。
- 类型
-
object
属性 | 类型 | 描述 |
---|---|---|
|
| 引用的名称。更多信息: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names TODO: 添加其他有用的字段。apiVersion、kind、uid? |
10.1.107. .spec.config.volumes[].flocker
- 描述
- flocker 代表附加到 kubelet 主机机器的 Flocker 卷。这取决于正在运行的 Flocker 控制服务
- 类型
-
object
属性 | 类型 | 描述 |
---|---|---|
|
|
datasetName 是数据存储为 Flocker dataset 上的 metadata |
|
| datasetUUID 是 dataset 的 UUID。这是 Flocker 数据集的唯一标识符 |
10.1.108. .spec.config.volumes[].gcePersistentDisk
- 描述
- gcePersistentDisk 代表一个 GCE Disk 资源,该资源附加到 kubelet 的主机机器,然后公开给 pod。更多信息: https://kubernetes.io/docs/concepts/storage/volumes#gcepersistentdisk
- 类型
-
object
- 必填
-
pdName
-
属性 | 类型 | 描述 |
---|---|---|
|
| fstype 是您要挂载的卷的文件系统类型。提示: 确保主机操作系统支持文件系统类型。示例:"ext4", "xfs", "ntfs"。如果未指定,则隐式推断为 "ext4"。更多信息: https://kubernetes.io/docs/concepts/storage/volumes#gcepersistentdisk TODO:如何防止文件系统中的错误影响机器 |
|
| partition 是您要挂载的卷中的分区。如果省略,则默认使用卷名称来挂载。示例: 对于卷 /dev/sda1,您可以将分区指定为 "1"。同样,/dev/sda 的卷分区是"0" (或者您可以将属性留空)。更多信息: https://kubernetes.io/docs/concepts/storage/volumes#gcepersistentdisk |
|
| pdName 是 GCE 中的 PD 资源的唯一名称。用于识别 GCE 中的磁盘。更多信息: https://kubernetes.io/docs/concepts/storage/volumes#gcepersistentdisk |
|
| 此处的 readonly 将强制 VolumeMount 中的 ReadOnly 设置。默认为false。更多信息: https://kubernetes.io/docs/concepts/storage/volumes#gcepersistentdisk |
10.1.109. .spec.config.volumes[].gitRepo
- 描述
- gitRepo 代表特定修订版本中的 git 存储库。DEPRECATED: GitRepo 已被弃用。要使用 git 存储库置备容器,请将 EmptyDir 挂载到使用 git 克隆存储库的 InitContainer 中,然后将 EmptyDir 挂载到 Pod 的容器中。
- 类型
-
object
- 必填
-
软件仓库
-
属性 | 类型 | 描述 |
---|---|---|
|
| directory 是目标目录名称。不得包含或以 '..' 开头。如果提供了 '.',则卷目录将是 git 存储库。否则,如果指定,卷将在带有给定名称的子目录中包含 git 存储库。 |
|
| repository 是 URL |
|
| revision 是指定修订版本的提交哈希。 |
10.1.110. .spec.config.volumes[].glusterfs
- 描述
- GlusterFS 代表共享 pod 生命周期的主机上的 Glusterfs 挂载。更多信息: https://examples.k8s.io/volumes/glusterfs/README.md
- 类型
-
object
- 必填
-
端点
-
path
-
属性 | 类型 | 描述 |
---|---|---|
|
| Endpoints 是 Glusterfs 拓扑的详细信息的端点名称。更多信息: https://examples.k8s.io/volumes/glusterfs/README.md#create-a-pod |
|
| path 是 Glusterfs 卷路径。更多信息: https://examples.k8s.io/volumes/glusterfs/README.md#create-a-pod |
|
| 此处的 readonly 将强制 Glusterfs 卷以只读权限挂载。默认为false。更多信息: https://examples.k8s.io/volumes/glusterfs/README.md#create-a-pod |
10.1.111. .spec.config.volumes[].hostPath
- 描述
- hostpath 代表主机机器上直接公开给容器的已存在的文件或目录。这通常用于系统代理或其他允许查看主机机器的特权事情。大多数容器都不需要这样做。更多信息: https://kubernetes.io/docs/concepts/storage/volumes#hostpath -- TODO (jonesdl)我们需要限制哪些人可以使用主机目录挂载,以及谁可以/不能将主机目录挂载为读/写。
- 类型
-
object
- 必填
-
path
-
属性 | 类型 | 描述 |
---|---|---|
|
| 主机上目录的路径。如果路径是符号链接,它将遵循指向实际路径的链接。更多信息: https://kubernetes.io/docs/concepts/storage/volumes#hostpath |
|
| HostPath Volume 默认为 "" 更多信息: https://kubernetes.io/docs/concepts/storage/volumes#hostpath |
10.1.112. .spec.config.volumes[].iscsi
- 描述
- iSCSI 代表附加到 kubelet 主机机器的 ISCSI Disk 资源,然后公开给 pod。更多信息: https://examples.k8s.io/volumes/iscsi/README.md
- 类型
-
object
- 必填
-
iqn
-
lun
-
targetPortal
-
属性 | 类型 | 描述 |
---|---|---|
|
| chapAuthDiscovery 定义是否支持 iSCSI Discovery CHAP 身份验证 |
|
| chapAuthSession 定义是否支持 iSCSI 会话 CHAP 身份验证 |
|
| fstype 是您要挂载的卷的文件系统类型。提示: 确保主机操作系统支持文件系统类型。示例:"ext4", "xfs", "ntfs"。如果未指定,则隐式推断为 "ext4"。更多信息: https://kubernetes.io/docs/concepts/storage/volumes#iscsi TODO:如何防止文件系统中的错误影响机器 |
|
| initiatorname 是自定义 iSCSI 启动器名称。如果同时使用 iscsiInterface 指定 initiatorName,则会为连接创建新的 iSCSI 接口 <target portal>:<volume name>。 |
|
| IQN 是目标 iSCSI 限定名称。 |
|
| iscsiInterface 是使用 iSCSI 传输的接口名称。默认为 'default'(tcp)。 |
|
| LUN 表示 iSCSI 目标 Lun 编号。 |
|
| 门户是 iSCSI 目标门户列表。如果端口不是默认值(通常为 TCP 端口 860 和 3260),则门户是 IP 或 ip_addr:port。 |
|
| 此处的 readonly 将强制 VolumeMount 中的 ReadOnly 设置。默认为false。 |
|
| secretRef 是 iSCSI 目标和发起方身份验证的 CHAP Secret |
|
| targetPortal 是 iSCSI 目标门户。如果端口不是默认值(通常为 TCP 端口 860 和 3260),则门户是 IP 或 ip_addr:port。 |
10.1.113. .spec.config.volumes[].iscsi.secretRef
- 描述
- secretRef 是 iSCSI 目标和发起方身份验证的 CHAP Secret
- 类型
-
object
属性 | 类型 | 描述 |
---|---|---|
|
| 引用的名称。更多信息: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names TODO: 添加其他有用的字段。apiVersion、kind、uid? |
10.1.114. .spec.config.volumes[].nfs
- 描述
- NFS 代表共享 pod 生命周期更多信息的主机上 NFS 挂载: https://kubernetes.io/docs/concepts/storage/volumes#nfs
- 类型
-
object
- 必填
-
path
-
server
-
属性 | 类型 | 描述 |
---|---|---|
|
| NFS 服务器导出的路径。更多信息: https://kubernetes.io/docs/concepts/storage/volumes#nfs |
|
| 此处的只读将强制使用只读权限挂载 NFS 导出。默认为false。更多信息: https://kubernetes.io/docs/concepts/storage/volumes#nfs |
|
| server 是 NFS 服务器的主机名或 IP 地址。更多信息: https://kubernetes.io/docs/concepts/storage/volumes#nfs |
10.1.115. .spec.config.volumes[].persistentVolumeClaim
- 描述
- persistentVolumeClaimVolumeSource 代表对同一命名空间中的 PersistentVolumeClaim 的引用。更多信息: https://kubernetes.io/docs/concepts/storage/persistent-volumes#persistentvolumeclaims
- 类型
-
object
- 必填
-
claimName
-
属性 | 类型 | 描述 |
---|---|---|
|
| claimName 是与使用这个卷的 pod 相同的命名空间中的 PersistentVolumeClaim 的名称。更多信息: https://kubernetes.io/docs/concepts/storage/persistent-volumes#persistentvolumeclaims |
|
| readonly 将强制 VolumeMount 中的 ReadOnly 设置。默认 false。 |
10.1.116. .spec.config.volumes[].photonPersistentDisk
- 描述
- photonPersistentDisk 代表附加并挂载到 kubelets 主机上的 PhotonController 持久磁盘
- 类型
-
object
- 必填
-
pdID
-
属性 | 类型 | 描述 |
---|---|---|
|
| fstype 是要挂载的文件系统类型。必须是主机操作系统支持的文件系统类型。Ex. "ext4", "xfs", "ntfs".如果未指定,则隐式推断为 "ext4"。 |
|
| pdID 是标识 Photon Controller 持久磁盘的 ID |
10.1.117. .spec.config.volumes[].portworxVolume
- 描述
- portworxVolume 代表附加并挂载到 kubelets 主机上的 portworx 卷
- 类型
-
object
- 必填
-
volumeID
-
属性 | 类型 | 描述 |
---|---|---|
|
| fstype 代表要挂载的文件系统类型必须是主机操作系统支持的文件系统类型。Ex. "ext4", "xfs".如果未指定,则隐式推断为 "ext4"。 |
|
| readonly 默认为 false (读/写)。此处的 readonly 将强制 VolumeMount 中的 ReadOnly 设置。 |
|
| VolumeId 唯一标识 Portworx 卷 |
10.1.118. .spec.config.volumes[].projected
- 描述
- 一个资源 secret、configmap 和 Downward API 中所有的项目项目
- 类型
-
object
属性 | 类型 | 描述 |
---|---|---|
|
| defaultMode 是默认用于在创建的文件上设置权限的模式位。必须是 0000 到 0777 之间的数值,或者 0 到 511 之间的十进制值。YAML 接受八进制和十进制值,JSON 需要模式位的十进制值。路径中的目录不受此设置的影响。这可能与影响文件模式的其他选项(如 fsGroup )冲突,结果可以是其他模式位。 |
|
| sources 是卷投射列表 |
|
| 可投射以及其他支持的卷类型的预测 |
10.1.119. .spec.config.volumes[].projected.sources
- 描述
- sources 是卷投射列表
- 类型
-
array
10.1.120. .spec.config.volumes[].projected.sources[]
- 描述
- 可投射以及其他支持的卷类型的预测
- 类型
-
object
属性 | 类型 | 描述 |
---|---|---|
|
| 有关项目的 configMap 数据的 ConfigMap 信息 |
|
| downwardAPI 有关项目的 downwardAPI 数据的信息 |
|
| 有关项目的 secret 数据的 secret 信息 |
|
| serviceAccountToken 是与项目的 serviceAccountToken 数据相关的信息 |
10.1.121. .spec.config.volumes[].projected.sources[].configMap
- 描述
- 有关项目的 configMap 数据的 ConfigMap 信息
- 类型
-
object
属性 | 类型 | 描述 |
---|---|---|
|
| 如果未指定,则引用的 ConfigMap 的 Data 字段中每个键值对将投射到卷中,其名称是键,内容是值。如果指定,列出的键将投射到指定的路径中,并且不会出现未列出的键。如果指定了没有存在于 ConfigMap 中的键,则卷设置将失败,除非标记为可选。路径必须是相对的,且不能包含 '..' 路径,或者以 '..' 开始。 |
|
| 将字符串键映射到卷中的路径。 |
|
| 引用的名称。更多信息: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names TODO: 添加其他有用的字段。apiVersion、kind、uid? |
|
| 可选指定是否必须定义 ConfigMap 还是其键 |
10.1.122. .spec.config.volumes[].projected.sources[].configMap.items
- 描述
- 如果未指定,则引用的 ConfigMap 的 Data 字段中每个键值对将投射到卷中,其名称是键,内容是值。如果指定,列出的键将投射到指定的路径中,并且不会出现未列出的键。如果指定了没有存在于 ConfigMap 中的键,则卷设置将失败,除非标记为可选。路径必须是相对的,且不能包含 '..' 路径,或者以 '..' 开始。
- 类型
-
array
10.1.123. .spec.config.volumes[].projected.sources[].configMap.items[]
- 描述
- 将字符串键映射到卷中的路径。
- 类型
-
object
- 必填
-
key
-
path
-
属性 | 类型 | 描述 |
---|---|---|
|
| key 是项目的关键。 |
|
| 模式为可选:用于设置此文件权限的模式位。必须是 0000 到 0777 之间的数值,或者 0 到 511 之间的十进制值。YAML 接受八进制和十进制值,JSON 需要模式位的十进制值。如果没有指定,则使用卷 defaultMode。这可能与影响文件模式的其他选项(如 fsGroup )冲突,结果可以是其他模式位。 |
|
| path 是将键映射到的文件的相对路径。可能不是绝对路径。不得包含路径元素 '..'。不得以字符串 '..' 开头。 |
10.1.124. .spec.config.volumes[].projected.sources[].downwardAPI
- 描述
- downwardAPI 有关项目的 downwardAPI 数据的信息
- 类型
-
object
属性 | 类型 | 描述 |
---|---|---|
|
| items 是 DownwardAPIVolume 文件列表 |
|
| DownwardAPIVolumeFile 代表创建包含 pod 字段的文件的信息 |
10.1.125. .spec.config.volumes[].projected.sources[].downwardAPI.items
- 描述
- items 是 DownwardAPIVolume 文件列表
- 类型
-
array
10.1.126. .spec.config.volumes[].projected.sources[].downwardAPI.items[]
- 描述
- DownwardAPIVolumeFile 代表创建包含 pod 字段的文件的信息
- 类型
-
object
- 必填
-
path
-
属性 | 类型 | 描述 |
---|---|---|
|
| 必需:选择 pod 的字段:只支持注解、标签、名称和命名空间。 |
|
| 可选:用于设置此文件权限的模式位,必须是 0000 到 0777 之间的数值,或 0 到 511 之间的十进制值。YAML 接受八进制和十进制值,JSON 需要模式位的十进制值。如果没有指定,则使用卷 defaultMode。这可能与影响文件模式的其他选项(如 fsGroup )冲突,结果可以是其他模式位。 |
|
| 必需:Path 是要创建的文件的相对路径名称。不能是绝对的,也不能包含 '..' 路径。必须经过 utf-8 编码。相对路径的第一个项不能以 '..' 开头。 |
|
| 选择容器的资源:目前只支持资源限值和请求(limits.cpu、limits.memory、requests.cpu 和 requests.memory)。 |
10.1.127. .spec.config.volumes[].projected.sources[].downwardAPI.items[].fieldRef
- 描述
- 必需:选择 pod 的字段:只支持注解、标签、名称和命名空间。
- 类型
-
object
- 必填
-
fieldPath
-
属性 | 类型 | 描述 |
---|---|---|
|
| 模式的版本是按术语编写的 FieldPath,默认为 "v1"。 |
|
| 在指定 API 版本中选择的字段路径。 |
10.1.128. .spec.config.volumes[].projected.sources[].downwardAPI.items[].resourceFieldRef
- 描述
- 选择容器的资源:目前只支持资源限值和请求(limits.cpu、limits.memory、requests.cpu 和 requests.memory)。
- 类型
-
object
- 必填
-
resource
-
属性 | 类型 | 描述 |
---|---|---|
|
| 容器名称:卷需要,对于 env vars是可选的 |
|
| 指定公开资源的输出格式,默认为 "1" |
|
| 必需:要选择的资源 |
10.1.129. .spec.config.volumes[].projected.sources[].secret
- 描述
- 有关项目的 secret 数据的 secret 信息
- 类型
-
object
属性 | 类型 | 描述 |
---|---|---|
|
| 如果未指定,则引用 Secret 的 Data 字段中的每个键值对将投射到卷中,其名称是键,内容是值。如果指定,列出的键将投射到指定的路径中,并且不会出现未列出的键。如果指定了没有存在于 Secret 中的密钥,则卷设置将出错,除非标记为可选。路径必须是相对的,且不能包含 '..' 路径,或者以 '..' 开始。 |
|
| 将字符串键映射到卷中的路径。 |
|
| 引用的名称。更多信息: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names TODO: 添加其他有用的字段。apiVersion、kind、uid? |
|
| 可选字段指定是否必须定义 Secret 或其密钥 |
10.1.130. .spec.config.volumes[].projected.sources[].secret.items
- 描述
- 如果未指定,则引用 Secret 的 Data 字段中的每个键值对将投射到卷中,其名称是键,内容是值。如果指定,列出的键将投射到指定的路径中,并且不会出现未列出的键。如果指定了没有存在于 Secret 中的密钥,则卷设置将出错,除非标记为可选。路径必须是相对的,且不能包含 '..' 路径,或者以 '..' 开始。
- 类型
-
array
10.1.131. .spec.config.volumes[].projected.sources[].secret.items[]
- 描述
- 将字符串键映射到卷中的路径。
- 类型
-
object
- 必填
-
key
-
path
-
属性 | 类型 | 描述 |
---|---|---|
|
| key 是项目的关键。 |
|
| 模式为可选:用于设置此文件权限的模式位。必须是 0000 到 0777 之间的数值,或者 0 到 511 之间的十进制值。YAML 接受八进制和十进制值,JSON 需要模式位的十进制值。如果没有指定,则使用卷 defaultMode。这可能与影响文件模式的其他选项(如 fsGroup )冲突,结果可以是其他模式位。 |
|
| path 是将键映射到的文件的相对路径。可能不是绝对路径。不得包含路径元素 '..'。不得以字符串 '..' 开头。 |
10.1.132. .spec.config.volumes[].projected.sources[].serviceAccountToken
- 描述
- serviceAccountToken 是与项目的 serviceAccountToken 数据相关的信息
- 类型
-
object
- 必填
-
path
-
属性 | 类型 | 描述 |
---|---|---|
|
| 受众是令牌的预期使用者。令牌的接收者必须使用令牌使用者中指定的标识符来识别其自身,否则应拒绝令牌。受众默认为 apiserver 的标识符。 |
|
| expirationSeconds 是服务帐户令牌的请求的有效期。当令牌接近过期时,kubelet 卷插件会主动轮转服务帐户令牌。如果令牌的时间超过 80%,或者令牌早于 24 小时,则 kubelet 将开始尝试轮转令牌。默认为 1 小时,且必须至少为 10 分钟。 |
|
| path 是与文件挂载点相关的路径,用于将令牌放入其中。 |
10.1.133. .spec.config.volumes[].quobyte
- 描述
- quobyte 代表共享 pod 生命周期的主机上执行 Quobyte 挂载
- 类型
-
object
- 必填
-
registry
-
卷
-
属性 | 类型 | 描述 |
---|---|---|
|
| 将卷访问映射到 Default 的组没有组 |
|
| 此处的 readonly 将强制使用只读权限挂载 Quobyte 卷。默认为false。 |
|
| registry 代表单个或多个 Quobyte Registry 服务,它指定为 host:port 对(多个条目用逗号分开),它充当卷的中央 registry |
|
| 在带有动态置备 Quobyte 卷的后端使用中拥有给定 Quobyte 卷的租户,由插件设置 |
|
| 用户,将卷访问权限映射到 Defaults 到 serivceaccount 用户 |
|
| volume 是按名称引用已创建 Quobyte 卷的字符串。 |
10.1.134. .spec.config.volumes[].rbd
- 描述
- RBD 代表共享 pod 生命周期的主机上 Rados 块设备挂载。更多信息: https://examples.k8s.io/volumes/rbd/README.md
- 类型
-
object
- 必填
-
image
-
monitor
-
属性 | 类型 | 描述 |
---|---|---|
|
| fstype 是您要挂载的卷的文件系统类型。提示: 确保主机操作系统支持文件系统类型。示例:"ext4", "xfs", "ntfs"。如果未指定,则隐式推断为 "ext4"。更多信息: https://kubernetes.io/docs/concepts/storage/volumes#rbd TODO:如何防止文件系统中的错误影响机器 |
|
| image 是 rados 镜像名称。更多信息: https://examples.k8s.io/volumes/rbd/README.md#how-to-use-it |
|
| keyring 是 RBDUser 的密钥环路径。默认为 /etc/ceph/keyring。更多信息: https://examples.k8s.io/volumes/rbd/README.md#how-to-use-it |
|
| monitor 是 Ceph 监视器的集合。更多信息: https://examples.k8s.io/volumes/rbd/README.md#how-to-use-it |
|
| pool 是 rados 池名称。默认为 rbd。更多信息: https://examples.k8s.io/volumes/rbd/README.md#how-to-use-it |
|
| 此处的 readonly 将强制 VolumeMount 中的 ReadOnly 设置。默认为false。更多信息: https://examples.k8s.io/volumes/rbd/README.md#how-to-use-it |
|
| secretRef 是 RBDUser 的身份验证 secret 的名称。如果提供的会覆盖密钥环。默认为 nil。更多信息: https://examples.k8s.io/volumes/rbd/README.md#how-to-use-it |
|
| user 是 rados 用户名。默认为 admin。更多信息: https://examples.k8s.io/volumes/rbd/README.md#how-to-use-it |
10.1.135. .spec.config.volumes[].rbd.secretRef
- 描述
- secretRef 是 RBDUser 的身份验证 secret 的名称。如果提供的会覆盖密钥环。默认为 nil。更多信息: https://examples.k8s.io/volumes/rbd/README.md#how-to-use-it
- 类型
-
object
属性 | 类型 | 描述 |
---|---|---|
|
| 引用的名称。更多信息: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names TODO: 添加其他有用的字段。apiVersion、kind、uid? |
10.1.136. .spec.config.volumes[].scaleIO
- 描述
- scaleIO 代表附加并挂载到 Kubernetes 节点上的 ScaleIO 持久性卷。
- 类型
-
object
- 必填
-
gateway
-
secretRef
-
system
-
属性 | 类型 | 描述 |
---|---|---|
|
| fstype 是要挂载的文件系统类型。必须是主机操作系统支持的文件系统类型。Ex. "ext4", "xfs", "ntfs".默认为 "xfs"。 |
|
| gateway 是 ScaleIO API 网关的主机地址。 |
|
| protectionDomain 是配置存储的 ScaleIO 保护域的名称。 |
|
| readonly Defaults to false (read/write)。此处的 readonly 将强制 VolumeMount 中的 ReadOnly 设置。 |
|
| secretRef 引用 ScaleIO 用户和其他敏感信息的 secret。如果没有提供,则登录操作将失败。 |
|
| sslEnabled Flag 启用/禁用与网关的 SSL 通信,默认为 false |
|
| storageMode 指示卷的存储是否应 ThickProvisioned 或 ThinProvisioned。默认为 ThinProvisioned。 |
|
| StoragePool 是与保护域关联的 ScaleIO 存储池。 |
|
| system 是 ScaleIO 中配置的存储系统的名称。 |
|
| volumeName 是在与这个卷源关联的 ScaleIO 系统中创建的卷的名称。 |
10.1.137. .spec.config.volumes[].scaleIO.secretRef
- 描述
- secretRef 引用 ScaleIO 用户和其他敏感信息的 secret。如果没有提供,则登录操作将失败。
- 类型
-
object
属性 | 类型 | 描述 |
---|---|---|
|
| 引用的名称。更多信息: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names TODO: 添加其他有用的字段。apiVersion、kind、uid? |
10.1.138. .spec.config.volumes[].secret
- 描述
- Secret 代表应填充此卷的 secret。更多信息: https://kubernetes.io/docs/concepts/storage/volumes#secret
- 类型
-
object
属性 | 类型 | 描述 |
---|---|---|
|
| defaultMode 是可选:默认用于设置创建文件的权限的模式位。必须是 0000 到 0777 之间的数值,或者 0 到 511 之间的十进制值。YAML 接受八进制和十进制值,JSON 需要模式位的十进制值。默认值为 0644。路径中的目录不受此设置的影响。这可能与影响文件模式的其他选项(如 fsGroup )冲突,结果可以是其他模式位。 |
|
| 如果未指定项目,则引用 Secret 的 Data 字段中的每个键值对将投射到卷中,其名称是键,内容是值。如果指定,列出的键将投射到指定的路径中,并且不会出现未列出的键。如果指定了没有存在于 Secret 中的密钥,则卷设置将出错,除非标记为可选。路径必须是相对的,且不能包含 '..' 路径,或者以 '..' 开始。 |
|
| 将字符串键映射到卷中的路径。 |
|
| 可选字段指定是否必须定义 Secret 或其密钥 |
|
| secretName 是要使用的 pod 命名空间中的 secret 名称。更多信息: https://kubernetes.io/docs/concepts/storage/volumes#secret |
10.1.139. .spec.config.volumes[].secret.items
- 描述
- 如果未指定项目,则引用 Secret 的 Data 字段中的每个键值对将投射到卷中,其名称是键,内容是值。如果指定,列出的键将投射到指定的路径中,并且不会出现未列出的键。如果指定了没有存在于 Secret 中的密钥,则卷设置将出错,除非标记为可选。路径必须是相对的,且不能包含 '..' 路径,或者以 '..' 开始。
- 类型
-
array
10.1.140. .spec.config.volumes[].secret.items[]
- 描述
- 将字符串键映射到卷中的路径。
- 类型
-
object
- 必填
-
key
-
path
-
属性 | 类型 | 描述 |
---|---|---|
|
| key 是项目的关键。 |
|
| 模式为可选:用于设置此文件权限的模式位。必须是 0000 到 0777 之间的数值,或者 0 到 511 之间的十进制值。YAML 接受八进制和十进制值,JSON 需要模式位的十进制值。如果没有指定,则使用卷 defaultMode。这可能与影响文件模式的其他选项(如 fsGroup )冲突,结果可以是其他模式位。 |
|
| path 是将键映射到的文件的相对路径。可能不是绝对路径。不得包含路径元素 '..'。不得以字符串 '..' 开头。 |
10.1.141. .spec.config.volumes[].storageos
- 描述
- storageos 代表附加并挂载到 Kubernetes 节点上的 StorageOS 卷。
- 类型
-
object
属性 | 类型 | 描述 |
---|---|---|
|
| fstype 是要挂载的文件系统类型。必须是主机操作系统支持的文件系统类型。Ex. "ext4", "xfs", "ntfs".如果未指定,则隐式推断为 "ext4"。 |
|
| readonly 默认为 false (读/写)。此处的 readonly 将强制 VolumeMount 中的 ReadOnly 设置。 |
|
| secretRef 指定用于获取 StorageOS API 凭证的 secret。如果没有指定,则会尝试默认值。 |
|
| volumeName 是 StorageOS 卷的人类可读名称。卷名称仅在命名空间中唯一。 |
|
| volumeNamespace 指定 StorageOS 中的卷范围。如果没有指定命名空间,则使用 Pod 的命名空间。这允许在 StorageOS 中镜像 Kubernetes 名称进行更紧密的集成。将 VolumeName 设置为任何名称,以覆盖默认的行为。如果没有在 StorageOS 中使用命名空间,则设置为 "default"。将创建在 StorageOS 中没有预先存在的命名空间。 |
10.1.142. .spec.config.volumes[].storageos.secretRef
- 描述
- secretRef 指定用于获取 StorageOS API 凭证的 secret。如果没有指定,则会尝试默认值。
- 类型
-
object
属性 | 类型 | 描述 |
---|---|---|
|
| 引用的名称。更多信息: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names TODO: 添加其他有用的字段。apiVersion、kind、uid? |
10.1.143. .spec.config.volumes[].vsphereVolume
- 描述
- vsphereVolume 代表附加并挂载到 kubelets 主机上的 vSphere 卷
- 类型
-
object
- 必填
-
volumePath
-
属性 | 类型 | 描述 |
---|---|---|
|
| fstype 是要挂载的文件系统类型。必须是主机操作系统支持的文件系统类型。Ex. "ext4", "xfs", "ntfs".如果未指定,则隐式推断为 "ext4"。 |
|
| storagePolicyID 是与 StoragePolicyName 关联的存储策略 Based Management (SPBM)配置集 ID。 |
|
| StoragePolicyName 是存储基于策略的管理(SPBM)配置集名称。 |
|
| volumePath 是标识 vSphere 卷 vmdk 的路径 |
10.1.144. .status
- 描述
- 类型
-
object
- 必填
-
lastUpdated
-
属性 | 类型 | 描述 |
---|---|---|
|
| catalogHealth 包含其相关 CatalogSource 状态的订阅视图。它用于确定与 CatalogSources 相关的 SubscriptionStatusConditions。 |
|
| SubscriptionCatalogHealth 描述了订阅所了解的 CatalogSource 的健康状况。 |
|
| 条件是有关订阅当前状态的最新可用影响列表。 |
|
| SubscriptionCondition 代表订阅状态的最新可用影响。 |
|
| currentCSV 是订阅正在进入的 CSV。 |
|
| InstallPlanGeneration 是当前安装计划的生成 |
|
| installPlanRef 是包含订阅当前 CSV 的最新 InstallPlan 的引用。 |
|
| installedCSV 是订阅当前安装的 CSV。 |
|
| install 是 Subscription 生成的最新 InstallPlan 的引用。DEPRECATED: InstallPlanRef |
|
| lastUpdated 代表订阅状态最后一次更新的时间。 |
|
| 原因是订阅转换到当前状态的原因。 |
|
| State 代表订阅的当前状态 |
10.1.145. .status.catalogHealth
- 描述
- catalogHealth 包含其相关 CatalogSource 状态的订阅视图。它用于确定与 CatalogSources 相关的 SubscriptionStatusConditions。
- 类型
-
array
10.1.146. .status.catalogHealth[]
- 描述
- SubscriptionCatalogHealth 描述了订阅所了解的 CatalogSource 的健康状况。
- 类型
-
object
- 必填
-
catalogSourceRef
-
健康
-
lastUpdated
-
属性 | 类型 | 描述 |
---|---|---|
|
| catalogSourceRef 是 CatalogSource 的引用。 |
|
| 如果 CatalogSource 处于健康状态,则健康为 true;否则为 false。 |
|
| lastUpdated 代表 CatalogSourceHealth 最后一次更改的时间 |
10.1.147. .status.catalogHealth[].catalogSourceRef
- 描述
- catalogSourceRef 是 CatalogSource 的引用。
- 类型
-
object
属性 | 类型 | 描述 |
---|---|---|
|
| 引用的 API 版本。 |
|
| 如果引用的是对象的一部分而非整个对象,则该字符串应包含有效的 JSON/Go 字段访问声明,如 desiredState.manifest.containers[2]。例如,如果对象引用是一个 pod 中的容器,它应该还以下类似: "spec.containers{name}"(其中 "name" 是指触发事件的容器的名称),如果不使用容器名称,则应类似于 "spec.containers[2]"(使用此 pod 中索引值为 2 的容器)。选择这个语法的原因是,为了有一些指向对象部分的正确定义方法。Todo: 这个设计不是最终设计的,且该字段在将来会有所改变。 |
|
| 引用的类型。更多信息: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds |
|
| 引用的名称。更多信息: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names |
|
| 引用的命名空间。更多信息: https://kubernetes.io/docs/concepts/overview/working-with-objects/namespaces/ |
|
| 指定构成这个引用的 resourceVersion(如果存在)。更多信息: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#concurrency-control-and-consistency |
|
| 引用的 UID。更多信息: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#uids |
10.1.148. .status.conditions
- 描述
- 条件是有关订阅当前状态的最新可用影响列表。
- 类型
-
array
10.1.149. .status.conditions[]
- 描述
- SubscriptionCondition 代表订阅状态的最新可用影响。
- 类型
-
object
- 必填
-
status
-
type
-
属性 | 类型 | 描述 |
---|---|---|
|
| LastHeartbeatTime 是我们最后一次获得给定条件更新的时间 |
|
| lastTransitionTime 是条件从一个状态传输到另一个状态最后一次的时间 |
|
| Message 是人类可读的消息,表示有关最后一次转换的详细信息。 |
|
| reason 是条件最后一次转换的一个单词 CamelCase 原因。 |
|
| status 是条件的状态,True, False, Unknown 之一。 |
|
| type 是 Subscription 条件的类型。 |
10.1.150. .status.installPlanRef
- 描述
- installPlanRef 是包含订阅当前 CSV 的最新 InstallPlan 的引用。
- 类型
-
object
属性 | 类型 | 描述 |
---|---|---|
|
| 引用的 API 版本。 |
|
| 如果引用的是对象的一部分而非整个对象,则该字符串应包含有效的 JSON/Go 字段访问声明,如 desiredState.manifest.containers[2]。例如,如果对象引用是一个 pod 中的容器,它应该还以下类似: "spec.containers{name}"(其中 "name" 是指触发事件的容器的名称),如果不使用容器名称,则应类似于 "spec.containers[2]"(使用此 pod 中索引值为 2 的容器)。选择这个语法的原因是,为了有一些指向对象部分的正确定义方法。Todo: 这个设计不是最终设计的,且该字段在将来会有所改变。 |
|
| 引用的类型。更多信息: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds |
|
| 引用的名称。更多信息: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names |
|
| 引用的命名空间。更多信息: https://kubernetes.io/docs/concepts/overview/working-with-objects/namespaces/ |
|
| 指定构成这个引用的 resourceVersion(如果存在)。更多信息: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#concurrency-control-and-consistency |
|
| 引用的 UID。更多信息: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#uids |
10.1.151. .status.installplan
- 描述
- install 是 Subscription 生成的最新 InstallPlan 的引用。DEPRECATED: InstallPlanRef
- 类型
-
object
- 必填
-
apiVersion
-
kind
-
name
-
uuid
-
属性 | 类型 | 描述 |
---|---|---|
|
| |
|
| |
|
| |
|
| UID 是拥有唯一 ID 值的类型,包括 UUID。由于我们不仅使用 UUID,因此这是一个别名字符串。作为一种类型捕获意图,有助于确保 UID 和名称不会被限制。 |