第 3 章 PodTemplate [v1]


描述
PodTemplate 描述了用于创建预定义 pod 副本的模板。
类型
对象

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

模板

object

PodTemplateSpec 描述了从模板创建 pod 应具有的数据

3.1.1. .template

描述
PodTemplateSpec 描述了从模板创建 pod 应具有的数据
类型
object
属性类型描述

metadata

ObjectMeta

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

spec

object

PodSpec 是 pod 的描述。

3.1.2. .template.spec

描述
PodSpec 是 pod 的描述。
类型
object
必填
  • containers
属性类型描述

activeDeadlineSeconds

整数

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

关联性

object

关联性是一组关联性调度规则。

automountServiceAccountToken

布尔值

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

containers

array

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

containers[]

对象

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

dnsConfig

object

PodDNSConfig 除了从 DNSPolicy 生成的外,还定义了 pod 的 DNS 参数。

dnsPolicy

字符串

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

可能枚举值: - "ClusterFirst" 表示 pod 应该首先使用集群 DNS,除非 hostNetwork 为 true,如果可用,则回退到默认值(由 kubelet 确定)。- "ClusterFirstWithHostNet" 表示 pod 应首先使用集群 DNS,如果可用,则回退到默认值(由 kubelet 确定)。kubelet)DNS 设置。- "Default "表示 pod 应使用默认值(由 kubelet决定)DNS 设置。- "None "表示 pod 应使用空的 DNS 设置。应该通过 DNSConfig 定义 DNS 参数(如名称服务器和搜索路径)。

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

PodOS 定义 pod 的 OS 参数。

开销

对象(数量)

开销代表了与为给定 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。

可能枚举值: - "Never" 表示 pod 不会抢占优先级较低的其他 pod。- "PreemptLowerPriority" 表示 pod 可以抢占优先级较低的其他 pod。

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

可能枚举值: - "Always" - "Never" - "OnFailure"

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

object

PodSecurityContext 包含 pod 级别的安全属性和通用容器设置。container.securityContext 中也存在一些字段。container.securityContext 的字段值优先于 PodSecurityContext 的字段值。

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\SYSTEM\CurrentControlSet\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.3. .template.spec.affinity

描述
关联性是一组关联性调度规则。
类型
object
属性类型描述

nodeAffinity

object

节点关联性是一组节点关联性调度规则。

podAffinity

object

pod 关联性是一组 pod 关联性调度规则。

podAntiAffinity

object

Pod 反关联性是一组 pod 反关联性调度规则。

3.1.4. .template.spec.affinity.nodeAffinity

描述
节点关联性是一组节点关联性调度规则。
类型
object
属性类型描述

preferredDuringSchedulingIgnoredDuringExecution

array

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

preferredDuringSchedulingIgnoredDuringExecution[]

对象

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

requiredDuringSchedulingIgnoredDuringExecution

object

节点选择器代表一组节点上一个或多个标签查询的结果的 union;即,它代表节点选择器术语所代表的选择器或选择器。

3.1.5. .template.spec.affinity.nodeAffinity.preferredDuringSchedulingIgnoredDuringExecution

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

3.1.6. .template.spec.affinity.nodeAffinity.preferredDuringSchedulingIgnoredDuringExecution[]

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

preference

object

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

weight

整数

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

3.1.7. .template.spec.affinity.nodeAffinity.preferredDuringSchedulingIgnoredDuringExecution[].preference

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

matchExpressions

array

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

matchExpressions[]

对象

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

matchFields

array

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

matchFields[]

对象

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

3.1.8. .template.spec.affinity.nodeAffinity.preferredDuringSchedulingIgnoredDuringExecution[].preference.matchExpressions

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

3.1.9. .template.spec.affinity.nodeAffinity.preferredDuringSchedulingIgnoredDuringExecution[].preference.matchExpressions[]

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

key

字符串

选择器应用到的标签键。

operator

字符串

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

可能枚举值: - "DoesNotExist" - "Exists" - "Gt" - "In" - "Lt" - "NotIn"

values

数组(字符串)

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

3.1.10. .template.spec.affinity.nodeAffinity.preferredDuringSchedulingIgnoredDuringExecution[].preference.matchFields

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

3.1.11. .template.spec.affinity.nodeAffinity.preferredDuringSchedulingIgnoredDuringExecution[].preference.matchFields[]

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

key

字符串

选择器应用到的标签键。

operator

字符串

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

可能枚举值: - "DoesNotExist" - "Exists" - "Gt" - "In" - "Lt" - "NotIn"

values

数组(字符串)

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

3.1.12. .template.spec.affinity.nodeAffinity.requiredDuringSchedulingIgnoredDuringExecution

描述
节点选择器代表一组节点上一个或多个标签查询的结果的 union;即,它代表节点选择器术语所代表的选择器或选择器。
类型
object
必填
  • nodeSelectorTerms
属性类型描述

nodeSelectorTerms

array

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

nodeSelectorTerms[]

对象

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

3.1.13. .template.spec.affinity.nodeAffinity.requiredDuringSchedulingIgnoredDuringExecution.nodeSelectorTerms

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

3.1.14. .template.spec.affinity.nodeAffinity.requiredDuringSchedulingIgnoredDuringExecution.nodeSelectorTerms[]

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

matchExpressions

array

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

matchExpressions[]

对象

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

matchFields

array

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

matchFields[]

对象

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

3.1.15. .template.spec.affinity.nodeAffinity.requiredDuringSchedulingIgnoredDuringExecution.nodeSelectorTerms[].matchExpressions

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

3.1.16. .template.spec.affinity.nodeAffinity.requiredDuringSchedulingIgnoredDuringExecution.nodeSelectorTerms[].matchExpressions[]

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

key

字符串

选择器应用到的标签键。

operator

字符串

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

可能枚举值: - "DoesNotExist" - "Exists" - "Gt" - "In" - "Lt" - "NotIn"

values

数组(字符串)

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

3.1.17. .template.spec.affinity.nodeAffinity.requiredDuringSchedulingIgnoredDuringExecution.nodeSelectorTerms[].matchFields

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

3.1.18. .template.spec.affinity.nodeAffinity.requiredDuringSchedulingIgnoredDuringExecution.nodeSelectorTerms[].matchFields[]

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

key

字符串

选择器应用到的标签键。

operator

字符串

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

可能枚举值: - "DoesNotExist" - "Exists" - "Gt" - "In" - "Lt" - "NotIn"

values

数组(字符串)

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

3.1.19. .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.20. .template.spec.affinity.podAffinity.preferredDuringSchedulingIgnoredDuringExecution

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

3.1.21. .template.spec.affinity.podAffinity.preferredDuringSchedulingIgnoredDuringExecution[]

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

podAffinityTerm

object

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

weight

整数

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

3.1.22. .template.spec.affinity.podAffinity.preferredDuringSchedulingIgnoredDuringExecution[].podAffinityTerm

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

labelSelector

LabelSelector

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

namespaceSelector

LabelSelector

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

命名空间

数组(字符串)

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

topologyKey

字符串

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

3.1.23. .template.spec.affinity.podAffinity.requiredDuringSchedulingIgnoredDuringExecution

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

3.1.24. .template.spec.affinity.podAffinity.requiredDuringSchedulingIgnoredDuringExecution[]

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

labelSelector

LabelSelector

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

namespaceSelector

LabelSelector

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

命名空间

数组(字符串)

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

topologyKey

字符串

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

3.1.25. .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.26. .template.spec.affinity.podAntiAffinity.preferredDuringSchedulingIgnoredDuringExecution

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

3.1.27. .template.spec.affinity.podAntiAffinity.preferredDuringSchedulingIgnoredDuringExecution[]

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

podAffinityTerm

object

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

weight

整数

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

3.1.28. .template.spec.affinity.podAntiAffinity.preferredDuringSchedulingIgnoredDuringExecution[].podAffinityTerm

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

labelSelector

LabelSelector

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

namespaceSelector

LabelSelector

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

命名空间

数组(字符串)

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

topologyKey

字符串

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

3.1.29. .template.spec.affinity.podAntiAffinity.requiredDuringSchedulingIgnoredDuringExecution

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

3.1.30. .template.spec.affinity.podAntiAffinity.requiredDuringSchedulingIgnoredDuringExecution[]

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

labelSelector

LabelSelector

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

namespaceSelector

LabelSelector

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

命名空间

数组(字符串)

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

topologyKey

字符串

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

3.1.31. .template.spec.containers

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

3.1.32. .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

可能枚举值: - "Always" 表示 kubelet 始终尝试拉取最新的镜像。如果拉取失败,则容器将失败。- "IfNotPresent" 表示如果镜像在磁盘上不存在,kubelet 会拉取。如果镜像不存在且拉取失败,则容器将失败。- "Never" 表示 kubelet 永不拉取镜像,但只使用本地镜像。如果镜像不存在,容器将失败

lifecycle

object

lifecycle 描述了管理系统响应容器生命周期事件应执行的操作。对于 PostStart 和 PreStop 生命周期处理程序,容器块的管理直到操作完成,除非容器进程失败,在这种情况下,处理程序会被中止。

livenessProbe

object

probe 描述要针对容器执行的健康检查,以确定它是否处于活动状态或准备好接收流量。

名称

字符串

指定为 DNS_LABEL 的容器名称。pod 中的每个容器都必须具有唯一的名称(DNS_LABEL)。无法更新。

ports

array

从容器公开的端口列表。这里没有指定端口不会阻止公开该端口。所有正在侦听容器内默认"0.0.0.0"地址的端口均可从网络访问。使用策略合并补丁修改阵列可能会破坏数据。如需更多信息,请参阅 https://github.com/kubernetes/kubernetes/issues/108255。无法更新。

ports[]

对象

containerPort 代表单个容器中的网络端口。

readinessProbe

object

probe 描述要针对容器执行的健康检查,以确定它是否处于活动状态或准备好接收流量。

resizePolicy

数组

容器的资源重新定义策略。

resizePolicy[]

object

ContainerResizePolicy 代表容器的资源重新定义策略。

resources

对象

ResourceRequirements 描述了计算资源要求。

restartPolicy

string

restartPolicy 定义 pod 中单个容器的重启行为。此字段只能为 init 容器设置,唯一允许的值是 "Always"。对于非init 容器或没有指定此字段时,重启行为由 Pod 的重启策略和容器类型定义。将 init 容器的 RestartPolicy 设置为 "Always" 将具有以下效果:此 init 容器将持续重启退出,直到所有常规容器都终止为止。所有常规容器完成后,所有带有 restartPolicy "Always" 的 init 容器都会被关闭。这个生命周期与普通 init 容器不同,通常被称为 "sidecar" 容器。虽然这个 init 容器仍然在 init 容器序列中启动,但它不会等待容器完成,然后才能进入下一个 init 容器。相反,下一个 init 容器会在此 init 容器启动后,或者在任何 startupProbe 成功完成后启动。

securityContext

object

securityContext 包含要应用到容器的安全配置。SecurityContext 和 PodSecurityContext 中都存在一些字段。当两者都被设置时,SecurityContext 中的值将具有优先权。

startupProbe

object

probe 描述要针对容器执行的健康检查,以确定它是否处于活动状态或准备好接收流量。

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。无法更新。

可能枚举值:- "FallbackToLogsOnError" 将在容器退出时读取容器状态消息的最新内容,并且 terminationMessagePath 没有任何内容。- "File" 是默认行为,并在容器退出时将容器状态消息设置为容器的 terminationMessagePath 的内容。

tty

布尔值

此容器是否应为自己分配 TTY,也要求 'stdin' 为 true。默认为 false。

volumeDevices

array

volumeDevices 是容器要使用的块设备列表。

volumeDevices[]

对象

volumeDevice 描述了容器中原始块设备的映射。

volumeMounts

array

要挂载到容器文件系统的 Pod 卷。无法更新。

volumeMounts[]

对象

VolumeMount 描述了容器内卷挂载。

workingDir

字符串

容器的工作目录。如果未指定,则将使用容器运行时的默认值,该默认值可能在容器镜像中配置。无法更新。

3.1.33. .template.spec.containers[].env

描述
容器中要设置的环境变量列表。无法更新。
类型
数组

3.1.34. .template.spec.containers[].env[]

描述
EnvVar 代表容器中存在的环境变量。
类型
object
必填
  • name
属性类型描述

name

字符串

环境变量的名称。必须是 C_IDENTIFIER。

value

字符串

变量引用 $(VAR_NAME)使用容器中之前定义的环境变量以及任何服务环境变量进行扩展。如果无法解析变量,则输入字符串中的引用将保持不变。双引号被缩减为单个 $,它允许转义 $(VAR_NAME)语法:即 " (VAR_NAME) " 将生成字符串 literal "$(VAR_NAME) "。转义的引用永远不会扩展,无论变量是否存在。默认为 ""。

valueFrom

object

EnvVarSource 代表 EnvVar 的值的源。

3.1.35. .template.spec.containers[].env[].valueFrom

描述
EnvVarSource 代表 EnvVar 的值的源。
类型
object
属性类型描述

configMapKeyRef

object

从 ConfigMap 中选择一个键。

fieldRef

object

ObjectFieldSelector 选择对象的 APIVersioned 字段。

resourceFieldRef

object

ResourceFieldSelector 代表容器资源(cpu、memory)及其输出格式

secretKeyRef

object

SecretKeySelector 选择 Secret 的密钥。

3.1.36. .template.spec.containers[].env[].valueFrom.configMapKeyRef

描述
从 ConfigMap 中选择一个键。
类型
object
必填
  • key
属性类型描述

key

字符串

要选择的密钥。

name

字符串

引用的名称。更多信息: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names

optional

布尔值

指定是否必须定义 ConfigMap 还是其键

3.1.37. .template.spec.containers[].env[].valueFrom.fieldRef

描述
ObjectFieldSelector 选择对象的 APIVersioned 字段。
类型
object
必填
  • fieldPath
属性类型描述

apiVersion

字符串

模式的版本是按术语编写的 FieldPath,默认为 "v1"。

fieldPath

字符串

在指定 API 版本中选择的字段路径。

3.1.38. .template.spec.containers[].env[].valueFrom.resourceFieldRef

描述
ResourceFieldSelector 代表容器资源(cpu、memory)及其输出格式
类型
object
必填
  • resource
属性类型描述

containerName

字符串

容器名称:卷需要,对于 env vars是可选的

divisor

数量

指定公开资源的输出格式,默认为 "1"

resource

字符串

必需:要选择的资源

3.1.39. .template.spec.containers[].env[].valueFrom.secretKeyRef

描述
SecretKeySelector 选择 Secret 的密钥。
类型
object
必填
  • key
属性类型描述

key

字符串

要从中选择的 secret 的密钥。必须是一个有效的 secret 密钥。

name

字符串

引用的名称。更多信息: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names

optional

布尔值

指定是否需要定义 Secret 还是其密钥

3.1.40. .template.spec.containers[].envFrom

描述
在容器中填充环境变量的源列表。源中定义的键必须是 C_IDENTIFIER。当容器启动时,所有无效密钥都会被报告为事件。当多个源中存在键时,与最后一个源关联的值将具有优先权。由带有重复键的 Env 定义的值将具有优先权。无法更新。
类型
数组

3.1.41. .template.spec.containers[].envFrom[]

描述
EnvFromSource 代表一组 ConfigMap 的源
类型
object
属性类型描述

configMapRef

object

ConfigMapEnvSource 选择一个 ConfigMap 来填充环境变量。

目标 ConfigMap 的 Data 字段的内容将作为环境变量表示键值对。

prefix

字符串

要添加到 ConfigMap 中每个键的可选标识符。必须是 C_IDENTIFIER。

secretRef

object

SecretEnvSource 选择一个 Secret 来填充环境变量。

目标 Secret 的 Data 字段的内容将作为环境变量表示键值对。

3.1.42. .template.spec.containers[].envFrom[].configMapRef

描述

ConfigMapEnvSource 选择一个 ConfigMap 来填充环境变量。

目标 ConfigMap 的 Data 字段的内容将作为环境变量表示键值对。

类型
object
属性类型描述

name

字符串

引用的名称。更多信息: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names

optional

布尔值

指定是否必须定义 ConfigMap

3.1.43. .template.spec.containers[].envFrom[].secretRef

描述

SecretEnvSource 选择一个 Secret 来填充环境变量。

目标 Secret 的 Data 字段的内容将作为环境变量表示键值对。

类型
object
属性类型描述

name

字符串

引用的名称。更多信息: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names

optional

布尔值

指定是否必须定义 Secret

3.1.44. .template.spec.containers[].lifecycle

描述
lifecycle 描述了管理系统响应容器生命周期事件应执行的操作。对于 PostStart 和 PreStop 生命周期处理程序,容器块的管理直到操作完成,除非容器进程失败,在这种情况下,处理程序会被中止。
类型
object
属性类型描述

postStart

object

LifecycleHandler 定义应在生命周期 hook 中执行的操作。除 TCPSocket 外,只能指定其中一个字段。

preStop

object

LifecycleHandler 定义应在生命周期 hook 中执行的操作。除 TCPSocket 外,只能指定其中一个字段。

3.1.45. .template.spec.containers[].lifecycle.postStart

描述
LifecycleHandler 定义应在生命周期 hook 中执行的操作。除 TCPSocket 外,只能指定其中一个字段。
类型
object
属性类型描述

exec

object

ExecAction 描述了 "run in container" 操作。

httpGet

object

HTTPGetAction 描述了基于 HTTP Get 请求的操作。

tcpSocket

object

TCPSocketAction 描述了基于打开套接字的操作

3.1.46. .template.spec.containers[].lifecycle.postStart.exec

描述
ExecAction 描述了 "run in container" 操作。
类型
object
属性类型描述

命令

数组(字符串)

命令是在容器内执行的命令行,而 命令的工作目录是容器文件系统中的 root ('/')。命令只是 exec'd,它不会在 shell 中运行,因此传统的 shell 指令('|' 等)将无法工作。要使用 shell,您需要明确调用该 shell。0 的退出状态被视为 live/healthy,非零不健康。

3.1.47. .template.spec.containers[].lifecycle.postStart.httpGet

描述
HTTPGetAction 描述了基于 HTTP Get 请求的操作。
类型
object
必填
  • port
属性类型描述

主机

字符串

要连接到的主机名,默认为 pod IP。您可能想在 httpHeaders 中设置"主机"。

httpHeaders

array

在请求中设置的自定义标头。HTTP 允许重复的标头。

httpHeaders[]

对象

HTTPHeader 描述了在 HTTP 探测中使用的自定义标头

path

字符串

在 HTTP 服务器上访问的路径。

port

IntOrString

用于访问容器的端口的名称或编号。number 必须在 1 到 65535 之间。名称必须是 IANA_SVC_NAME。

scheme

字符串

用于连接到主机的方案。默认为 HTTP。

可能枚举值: - "HTTP" 表示使用的方案为 http:// - "HTTPS" 表示使用的方案是 https://

3.1.48. .template.spec.containers[].lifecycle.postStart.httpGet.httpHeaders

描述
在请求中设置的自定义标头。HTTP 允许重复的标头。
类型
数组

3.1.49. .template.spec.containers[].lifecycle.postStart.httpGet.httpHeaders[]

描述
HTTPHeader 描述了在 HTTP 探测中使用的自定义标头
类型
object
必填
  • name
  • value
属性类型描述

name

string

标头字段名称。这将在输出时规范,因此理解 case-variant 名称与相同的标头一样。

value

字符串

标头字段值

3.1.50. .template.spec.containers[].lifecycle.postStart.tcpSocket

描述
TCPSocketAction 描述了基于打开套接字的操作
类型
object
必填
  • port
属性类型描述

主机

字符串

可选:要连接到的主机名,默认为 pod IP。

port

IntOrString

用于访问容器的端口的编号或名称。number 必须在 1 到 65535 之间。名称必须是 IANA_SVC_NAME。

3.1.51. .template.spec.containers[].lifecycle.preStop

描述
LifecycleHandler 定义应在生命周期 hook 中执行的操作。除 TCPSocket 外,只能指定其中一个字段。
类型
object
属性类型描述

exec

object

ExecAction 描述了 "run in container" 操作。

httpGet

object

HTTPGetAction 描述了基于 HTTP Get 请求的操作。

tcpSocket

object

TCPSocketAction 描述了基于打开套接字的操作

3.1.52. .template.spec.containers[].lifecycle.preStop.exec

描述
ExecAction 描述了 "run in container" 操作。
类型
object
属性类型描述

命令

数组(字符串)

命令是在容器内执行的命令行,而 命令的工作目录是容器文件系统中的 root ('/')。命令只是 exec'd,它不会在 shell 中运行,因此传统的 shell 指令('|' 等)将无法工作。要使用 shell,您需要明确调用该 shell。0 的退出状态被视为 live/healthy,非零不健康。

3.1.53. .template.spec.containers[].lifecycle.preStop.httpGet

描述
HTTPGetAction 描述了基于 HTTP Get 请求的操作。
类型
object
必填
  • port
属性类型描述

主机

字符串

要连接到的主机名,默认为 pod IP。您可能想在 httpHeaders 中设置"主机"。

httpHeaders

array

在请求中设置的自定义标头。HTTP 允许重复的标头。

httpHeaders[]

对象

HTTPHeader 描述了在 HTTP 探测中使用的自定义标头

path

字符串

在 HTTP 服务器上访问的路径。

port

IntOrString

用于访问容器的端口的名称或编号。number 必须在 1 到 65535 之间。名称必须是 IANA_SVC_NAME。

scheme

字符串

用于连接到主机的方案。默认为 HTTP。

可能枚举值: - "HTTP" 表示使用的方案为 http:// - "HTTPS" 表示使用的方案是 https://

3.1.54. .template.spec.containers[].lifecycle.preStop.httpGet.httpHeaders

描述
在请求中设置的自定义标头。HTTP 允许重复的标头。
类型
数组

3.1.55. .template.spec.containers[].lifecycle.preStop.httpGet.httpHeaders[]

描述
HTTPHeader 描述了在 HTTP 探测中使用的自定义标头
类型
object
必填
  • name
  • value
属性类型描述

name

string

标头字段名称。这将在输出时规范,因此理解 case-variant 名称与相同的标头一样。

value

字符串

标头字段值

3.1.56. .template.spec.containers[].lifecycle.preStop.tcpSocket

描述
TCPSocketAction 描述了基于打开套接字的操作
类型
object
必填
  • port
属性类型描述

主机

字符串

可选:要连接到的主机名,默认为 pod IP。

port

IntOrString

用于访问容器的端口的编号或名称。number 必须在 1 到 65535 之间。名称必须是 IANA_SVC_NAME。

3.1.57. .template.spec.containers[].livenessProbe

描述
probe 描述要针对容器执行的健康检查,以确定它是否处于活动状态或准备好接收流量。
类型
object
属性类型描述

exec

object

ExecAction 描述了 "run in container" 操作。

failureThreshold

整数

在成功后,探测被视为失败的最小连续失败。默认值为 3。最小值为 1。

grpc

object

GRPC 指定涉及 GRPC 端口的操作。

httpGet

object

HTTPGetAction 描述了基于 HTTP Get 请求的操作。

initialDelaySeconds

整数

容器启动存活度探测前的秒数。更多信息: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes

periodSeconds

整数

执行探测的频率(以秒为单位)。默认值为 10 秒。最小值为 1。

successThreshold

整数

在失败后,探测至少连续成功会被视为成功。默认为 1。对于存活度和启动,必须为 1。最小值为 1。

tcpSocket

object

TCPSocketAction 描述了基于打开套接字的操作

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.58. .template.spec.containers[].livenessProbe.exec

描述
ExecAction 描述了 "run in container" 操作。
类型
object
属性类型描述

命令

数组(字符串)

命令是在容器内执行的命令行,而 命令的工作目录是容器文件系统中的 root ('/')。命令只是 exec'd,它不会在 shell 中运行,因此传统的 shell 指令('|' 等)将无法工作。要使用 shell,您需要明确调用该 shell。0 的退出状态被视为 live/healthy,非零不健康。

3.1.59. .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.60. .template.spec.containers[].livenessProbe.httpGet

描述
HTTPGetAction 描述了基于 HTTP Get 请求的操作。
类型
object
必填
  • port
属性类型描述

主机

字符串

要连接到的主机名,默认为 pod IP。您可能想在 httpHeaders 中设置"主机"。

httpHeaders

array

在请求中设置的自定义标头。HTTP 允许重复的标头。

httpHeaders[]

对象

HTTPHeader 描述了在 HTTP 探测中使用的自定义标头

path

字符串

在 HTTP 服务器上访问的路径。

port

IntOrString

用于访问容器的端口的名称或编号。number 必须在 1 到 65535 之间。名称必须是 IANA_SVC_NAME。

scheme

字符串

用于连接到主机的方案。默认为 HTTP。

可能枚举值: - "HTTP" 表示使用的方案为 http:// - "HTTPS" 表示使用的方案是 https://

3.1.61. .template.spec.containers[].livenessProbe.httpGet.httpHeaders

描述
在请求中设置的自定义标头。HTTP 允许重复的标头。
类型
数组

3.1.62. .template.spec.containers[].livenessProbe.httpGet.httpHeaders[]

描述
HTTPHeader 描述了在 HTTP 探测中使用的自定义标头
类型
object
必填
  • name
  • value
属性类型描述

name

string

标头字段名称。这将在输出时规范,因此理解 case-variant 名称与相同的标头一样。

value

字符串

标头字段值

3.1.63. .template.spec.containers[].livenessProbe.tcpSocket

描述
TCPSocketAction 描述了基于打开套接字的操作
类型
object
必填
  • port
属性类型描述

主机

字符串

可选:要连接到的主机名,默认为 pod IP。

port

IntOrString

用于访问容器的端口的编号或名称。number 必须在 1 到 65535 之间。名称必须是 IANA_SVC_NAME。

3.1.64. .template.spec.containers[].ports

描述
从容器公开的端口列表。这里没有指定端口不会阻止公开该端口。所有正在侦听容器内默认"0.0.0.0"地址的端口均可从网络访问。使用策略合并补丁修改阵列可能会破坏数据。如需更多信息,请参阅 https://github.com/kubernetes/kubernetes/issues/108255。无法更新。
类型
数组

3.1.65. .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"。

可能枚举值: - "SCTP" 是 SCTP 协议。- "TCP" 是 TCP 协议。- "UDP" 是 UDP 协议。

3.1.66. .template.spec.containers[].readinessProbe

描述
probe 描述要针对容器执行的健康检查,以确定它是否处于活动状态或准备好接收流量。
类型
object
属性类型描述

exec

object

ExecAction 描述了 "run in container" 操作。

failureThreshold

整数

在成功后,探测被视为失败的最小连续失败。默认值为 3。最小值为 1。

grpc

object

GRPC 指定涉及 GRPC 端口的操作。

httpGet

object

HTTPGetAction 描述了基于 HTTP Get 请求的操作。

initialDelaySeconds

整数

容器启动存活度探测前的秒数。更多信息: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes

periodSeconds

整数

执行探测的频率(以秒为单位)。默认值为 10 秒。最小值为 1。

successThreshold

整数

在失败后,探测至少连续成功会被视为成功。默认为 1。对于存活度和启动,必须为 1。最小值为 1。

tcpSocket

object

TCPSocketAction 描述了基于打开套接字的操作

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.67. .template.spec.containers[].readinessProbe.exec

描述
ExecAction 描述了 "run in container" 操作。
类型
object
属性类型描述

命令

数组(字符串)

命令是在容器内执行的命令行,而 命令的工作目录是容器文件系统中的 root ('/')。命令只是 exec'd,它不会在 shell 中运行,因此传统的 shell 指令('|' 等)将无法工作。要使用 shell,您需要明确调用该 shell。0 的退出状态被视为 live/healthy,非零不健康。

3.1.68. .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.69. .template.spec.containers[].readinessProbe.httpGet

描述
HTTPGetAction 描述了基于 HTTP Get 请求的操作。
类型
object
必填
  • port
属性类型描述

主机

字符串

要连接到的主机名,默认为 pod IP。您可能想在 httpHeaders 中设置"主机"。

httpHeaders

array

在请求中设置的自定义标头。HTTP 允许重复的标头。

httpHeaders[]

对象

HTTPHeader 描述了在 HTTP 探测中使用的自定义标头

path

字符串

在 HTTP 服务器上访问的路径。

port

IntOrString

用于访问容器的端口的名称或编号。number 必须在 1 到 65535 之间。名称必须是 IANA_SVC_NAME。

scheme

字符串

用于连接到主机的方案。默认为 HTTP。

可能枚举值: - "HTTP" 表示使用的方案为 http:// - "HTTPS" 表示使用的方案是 https://

3.1.70. .template.spec.containers[].readinessProbe.httpGet.httpHeaders

描述
在请求中设置的自定义标头。HTTP 允许重复的标头。
类型
数组

3.1.71. .template.spec.containers[].readinessProbe.httpGet.httpHeaders[]

描述
HTTPHeader 描述了在 HTTP 探测中使用的自定义标头
类型
object
必填
  • name
  • value
属性类型描述

name

string

标头字段名称。这将在输出时规范,因此理解 case-variant 名称与相同的标头一样。

value

字符串

标头字段值

3.1.72. .template.spec.containers[].readinessProbe.tcpSocket

描述
TCPSocketAction 描述了基于打开套接字的操作
类型
object
必填
  • port
属性类型描述

主机

字符串

可选:要连接到的主机名,默认为 pod IP。

port

IntOrString

用于访问容器的端口的编号或名称。number 必须在 1 到 65535 之间。名称必须是 IANA_SVC_NAME。

3.1.73. .template.spec.containers[].resizePolicy

描述
容器的资源重新定义策略。
类型
数组

3.1.74. .template.spec.containers[].resizePolicy[]

描述
ContainerResizePolicy 代表容器的资源重新定义策略。
类型
object
必填
  • resourceName
  • restartPolicy
属性类型描述

resourceName

string

此资源重新定义策略应用到的资源的名称。支持的值有:cpu、memory。

restartPolicy

string

在指定资源调整大小时,重启策略会被应用。如果没有指定,则默认为 NotRequired。

3.1.75. .template.spec.containers[].resources

描述
ResourceRequirements 描述了计算资源要求。
类型
object
属性类型描述

声明

数组

claim 列出此容器使用的 spec.resourceClaims 中定义的资源名称。

这是一个 alpha 字段,需要启用 DynamicResourceAllocation 功能门。

此字段不可变。它只能为容器设置。

claims[]

object

ResourceClaim 引用 PodSpec.ResourceClaims 中的一个条目。

limits

对象(数量)

限制描述了允许的最大计算资源量。更多信息: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/

requests

对象(数量)

Requests 描述了所需的最少计算资源。如果容器省略了 Requests,则默认为 Limits (如果明确指定),否则默认为实现定义的值。请求不能超过限值。更多信息: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/

3.1.76. .template.spec.containers[].resources.claims

描述

claim 列出此容器使用的 spec.resourceClaims 中定义的资源名称。

这是一个 alpha 字段,需要启用 DynamicResourceAllocation 功能门。

此字段不可变。它只能为容器设置。

类型
数组

3.1.77. .template.spec.containers[].resources.claims[]

描述
ResourceClaim 引用 PodSpec.ResourceClaims 中的一个条目。
类型
object
必填
  • name
属性类型描述

name

string

name 必须与使用此字段的 Pod 的 pod.spec.resourceClaims 中的一个条目的名称匹配。它允许容器内部使用该资源。

3.1.78. .template.spec.containers[].securityContext

描述
securityContext 包含要应用到容器的安全配置。SecurityContext 和 PodSecurityContext 中都存在一些字段。当两者都被设置时,SecurityContext 中的值将具有优先权。
类型
object
属性类型描述

allowPrivilegeEscalation

布尔值

allowPrivilegeEscalation 控制进程是否可以比其父进程获得更多特权。此 bool 直接控制容器进程上是否设置了 no_new_privs 标志。当容器是 : 1)作为 CAP_SYS_ADMIN 具有 CAP_SYS_ADMIN 时,allowPrivilegeEscalation 始终为 true,请注意,当 spec.os.name 是 windows 时,不能设置此字段。

功能

object

从正在运行的容器中添加和移除 POSIX 功能。

privileged

布尔值

以特权模式运行容器。特权容器中的进程本质上等同于主机上的 root。默认为false。请注意,当 spec.os.name 是 windows 时无法设置此字段。

procMount

字符串

procMount 表示用于容器的 proc 挂载类型。默认为 DefaultProcMount,它将容器运行时默认值用于只读路径和屏蔽的路径。这要求启用 ProcMountType 功能标记。请注意,当 spec.os.name 是 windows 时无法设置此字段。

可能枚举值: - "Default" 对 /proc 的 readonly 和 masked 路径使用容器运行时默认值。大多数容器运行时屏蔽 /proc 中的特定路径以避免意外出现特殊设备或信息的安全。- "Unmasked" 会绕过容器运行时的默认行为,并确保新创建的 /proc 容器保留在不做任何修改的情况下。

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

object

seLinuxOptions 是要应用到容器的标签

seccompProfile

object

SeccompProfile 定义 pod/容器的 seccomp 配置集设置。只能设置一个配置文件源。

windowsOptions

object

WindowsSecurityContextOptions 包含特定于 Windows 的选项和凭证。

3.1.79. .template.spec.containers[].securityContext.capabilities

描述
从正在运行的容器中添加和移除 POSIX 功能。
类型
object
属性类型描述

add

数组(字符串)

添加了功能

drop

数组(字符串)

删除的功能

3.1.80. .template.spec.containers[].securityContext.seLinuxOptions

描述
seLinuxOptions 是要应用到容器的标签
类型
object
属性类型描述

level

字符串

level 是适用于容器的 SELinux 级别标签。

role

字符串

role 是适用于容器的 SELinux 角色标签。

type

字符串

type 是适用于容器的 SELinux 类型标签。

user

字符串

user 是适用于容器的 SELinux 用户标签。

3.1.81. .template.spec.containers[].securityContext.seccompProfile

描述
SeccompProfile 定义 pod/容器的 seccomp 配置集设置。只能设置一个配置文件源。
类型
object
必填
  • type
属性类型描述

localhostProfile

字符串

localhostProfile 表示应使用节点上文件中定义的配置集。该配置集必须在节点上预先配置才能正常工作。必须是一个降序路径,相对于 kubelet 配置的 seccomp 配置集位置。如果类型为"Localhost",则必须设置。不得为任何其他类型设置。

type

字符串

Type 表示将应用了哪些 seccomp 配置集。有效选项有:

localhost - 应该使用节点上文件中定义的配置文件。RuntimeDefault - 应使用容器运行时默认配置集。unconfined - 不应应用配置集。

可能枚举值: - "Localhost" 表示应使用节点上文件中定义的配置集。文件相对于 <kubelet-root-dir>/seccomp。- "RuntimeDefault" 代表默认的容器运行时 seccomp 配置集。- "Unconfined" 表示没有应用 seccomp 配置集(A.K.A. unconfined)。

3.1.82. .template.spec.containers[].securityContext.windowsOptions

描述
WindowsSecurityContextOptions 包含特定于 Windows 的选项和凭证。
类型
object
属性类型描述

gmsaCredentialSpec

字符串

GMSACredentialSpec 是 GMSA 准入 Webhook (https://github.com/kubernetes-sigs/windows-gmsa)内联由 GMSACredentialSpec 命名的 GMSA 凭证规格的内容。

gmsaCredentialSpecName

字符串

GMSACredentialSpecName 是要使用的 GMSA 凭证规格的名称。

hostProcess

布尔值

HostProcess 确定容器是否应作为"主机进程"容器运行。所有 Pod 的容器都必须具有相同的有效的 HostProcess 值(不允许混合 HostProcess 容器和非主机进程容器)。另外,如果 HostProcess 为 true,则 HostNetwork 也必须设置为 true。

runAsUserName

字符串

Windows 中的 UserName,以运行容器进程的入口点。如果未指定,则默认为在镜像元数据中指定的用户。也可以在 PodSecurityContext 中设置。如果在 SecurityContext 和 PodSecurityContext 中设置,则 SecurityContext 中指定的值具有优先权。

3.1.83. .template.spec.containers[].startupProbe

描述
probe 描述要针对容器执行的健康检查,以确定它是否处于活动状态或准备好接收流量。
类型
object
属性类型描述

exec

object

ExecAction 描述了 "run in container" 操作。

failureThreshold

整数

在成功后,探测被视为失败的最小连续失败。默认值为 3。最小值为 1。

grpc

object

GRPC 指定涉及 GRPC 端口的操作。

httpGet

object

HTTPGetAction 描述了基于 HTTP Get 请求的操作。

initialDelaySeconds

整数

容器启动存活度探测前的秒数。更多信息: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes

periodSeconds

整数

执行探测的频率(以秒为单位)。默认值为 10 秒。最小值为 1。

successThreshold

整数

在失败后,探测至少连续成功会被视为成功。默认为 1。对于存活度和启动,必须为 1。最小值为 1。

tcpSocket

object

TCPSocketAction 描述了基于打开套接字的操作

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.84. .template.spec.containers[].startupProbe.exec

描述
ExecAction 描述了 "run in container" 操作。
类型
object
属性类型描述

命令

数组(字符串)

命令是在容器内执行的命令行,而 命令的工作目录是容器文件系统中的 root ('/')。命令只是 exec'd,它不会在 shell 中运行,因此传统的 shell 指令('|' 等)将无法工作。要使用 shell,您需要明确调用该 shell。0 的退出状态被视为 live/healthy,非零不健康。

3.1.85. .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.86. .template.spec.containers[].startupProbe.httpGet

描述
HTTPGetAction 描述了基于 HTTP Get 请求的操作。
类型
object
必填
  • port
属性类型描述

主机

字符串

要连接到的主机名,默认为 pod IP。您可能想在 httpHeaders 中设置"主机"。

httpHeaders

array

在请求中设置的自定义标头。HTTP 允许重复的标头。

httpHeaders[]

对象

HTTPHeader 描述了在 HTTP 探测中使用的自定义标头

path

字符串

在 HTTP 服务器上访问的路径。

port

IntOrString

用于访问容器的端口的名称或编号。number 必须在 1 到 65535 之间。名称必须是 IANA_SVC_NAME。

scheme

字符串

用于连接到主机的方案。默认为 HTTP。

可能枚举值: - "HTTP" 表示使用的方案为 http:// - "HTTPS" 表示使用的方案是 https://

3.1.87. .template.spec.containers[].startupProbe.httpGet.httpHeaders

描述
在请求中设置的自定义标头。HTTP 允许重复的标头。
类型
数组

3.1.88. .template.spec.containers[].startupProbe.httpGet.httpHeaders[]

描述
HTTPHeader 描述了在 HTTP 探测中使用的自定义标头
类型
object
必填
  • name
  • value
属性类型描述

name

string

标头字段名称。这将在输出时规范,因此理解 case-variant 名称与相同的标头一样。

value

字符串

标头字段值

3.1.89. .template.spec.containers[].startupProbe.tcpSocket

描述
TCPSocketAction 描述了基于打开套接字的操作
类型
object
必填
  • port
属性类型描述

主机

字符串

可选:要连接到的主机名,默认为 pod IP。

port

IntOrString

用于访问容器的端口的编号或名称。number 必须在 1 到 65535 之间。名称必须是 IANA_SVC_NAME。

3.1.90. .template.spec.containers[].volumeDevices

描述
volumeDevices 是容器要使用的块设备列表。
类型
数组

3.1.91. .template.spec.containers[].volumeDevices[]

描述
volumeDevice 描述了容器中原始块设备的映射。
类型
object
必填
  • name
  • devicePath
属性类型描述

devicePath

字符串

DevicePath 是该设备要映射到的容器内的路径。

name

字符串

name 必须与 pod 中 persistentVolumeClaim 的名称匹配

3.1.92. .template.spec.containers[].volumeMounts

描述
要挂载到容器文件系统的 Pod 卷。无法更新。
类型
数组

3.1.93. .template.spec.containers[].volumeMounts[]

描述
VolumeMount 描述了容器内卷挂载。
类型
object
必填
  • 名称
  • mountPath
属性类型描述

mountPath

字符串

应挂载卷的容器中的路径。不得包含 ':'。

mountPropagation

字符串

mountPropagation 决定挂载如何从主机传播到容器以及反向传播。如果没有设置,则使用 MountPropagationNone。此字段在 1.10 中是 beta。

可能枚举值: - "双向" 意味着容器中的卷将从主机或其他容器接收新挂载,并且自己的挂载将从容器传播到主机或其他容器。请注意,这个模式会递归应用到卷中的所有挂载("rshared"在 Linux 术语中)。- "HostToContainer" 表示容器中的卷将从主机或其他容器接收新挂载,但容器中挂载的文件系统不会传播到主机或其他容器中。请注意,这个模式会递归应用到卷中的所有挂载("在 Linux 术语中")。- "None" 表示容器中的卷不会从主机或其他容器接收新挂载,挂载到容器内的文件系统不会传播到主机或其他容器。请注意,这个模式在 Linux 术语中对应于"私有"。

名称

字符串

这必须与卷的 Name 匹配。

readOnly

布尔值

如果为 true,则以只读方式挂载,否则读写(false 或未指定)。默认为false。

subPath

字符串

应从中挂载容器卷的卷中的路径。默认为 "" (卷的 root)。

subPathExpr

字符串

在应该挂载容器卷的卷中扩展路径。行为与 SubPath 类似,但环境变量引用 $(VAR_NAME)使用容器的环境扩展。默认为 "" (卷的 root)。SubPathExpr 和 SubPath 是互斥的。

3.1.94. .template.spec.dnsConfig

描述
PodDNSConfig 除了从 DNSPolicy 生成的外,还定义了 pod 的 DNS 参数。
类型
object
属性类型描述

nameservers

数组(字符串)

DNS 名称服务器 IP 地址列表。这将附加到从 DNSPolicy 生成的基本名称服务器中。重复的名称服务器将被删除。

options

array

DNS 解析器选项列表。这将与 DNSPolicy 生成的基本选项合并。删除重复的条目。Options 中提供的解析选项将覆盖基本 DNSPolicy 中显示的选项。

options[]

对象

PodDNSConfigOption 定义 pod 的 DNS 解析器选项。

搜索

数组(字符串)

用于 host-name 查找的 DNS 搜索域列表。这将附加到从 DNSPolicy 生成的基本搜索路径中。删除重复的搜索路径。

3.1.95. .template.spec.dnsConfig.options

描述
DNS 解析器选项列表。这将与 DNSPolicy 生成的基本选项合并。删除重复的条目。Options 中提供的解析选项将覆盖基本 DNSPolicy 中显示的选项。
类型
数组

3.1.96. .template.spec.dnsConfig.options[]

描述
PodDNSConfigOption 定义 pod 的 DNS 解析器选项。
类型
object
属性类型描述

name

字符串

必需。

value

string

 

3.1.97. .template.spec.ephemeralContainers

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

3.1.98. .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

可能枚举值: - "Always" 表示 kubelet 始终尝试拉取最新的镜像。如果拉取失败,则容器将失败。- "IfNotPresent" 表示如果镜像在磁盘上不存在,kubelet 会拉取。如果镜像不存在且拉取失败,则容器将失败。- "Never" 表示 kubelet 永不拉取镜像,但只使用本地镜像。如果镜像不存在,容器将失败

lifecycle

object

lifecycle 描述了管理系统响应容器生命周期事件应执行的操作。对于 PostStart 和 PreStop 生命周期处理程序,容器块的管理直到操作完成,除非容器进程失败,在这种情况下,处理程序会被中止。

livenessProbe

object

probe 描述要针对容器执行的健康检查,以确定它是否处于活动状态或准备好接收流量。

名称

字符串

指定为 DNS_LABEL 的临时容器的名称。此名称在所有容器、init 容器和临时容器中必须是唯一的。

ports

array

临时容器不允许使用端口。

ports[]

对象

containerPort 代表单个容器中的网络端口。

readinessProbe

object

probe 描述要针对容器执行的健康检查,以确定它是否处于活动状态或准备好接收流量。

resizePolicy

数组

容器的资源重新定义策略。

resizePolicy[]

object

ContainerResizePolicy 代表容器的资源重新定义策略。

resources

对象

ResourceRequirements 描述了计算资源要求。

restartPolicy

string

重启容器的策略,以管理 pod 中每个容器的重启行为。这只能为 init 容器设置。您不能在临时容器上设置此字段。

securityContext

object

securityContext 包含要应用到容器的安全配置。SecurityContext 和 PodSecurityContext 中都存在一些字段。当两者都被设置时,SecurityContext 中的值将具有优先权。

startupProbe

object

probe 描述要针对容器执行的健康检查,以确定它是否处于活动状态或准备好接收流量。

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。无法更新。

可能枚举值:- "FallbackToLogsOnError" 将在容器退出时读取容器状态消息的最新内容,并且 terminationMessagePath 没有任何内容。- "File" 是默认行为,并在容器退出时将容器状态消息设置为容器的 terminationMessagePath 的内容。

tty

布尔值

此容器是否应为自己分配 TTY,也要求 'stdin' 为 true。默认为 false。

volumeDevices

array

volumeDevices 是容器要使用的块设备列表。

volumeDevices[]

对象

volumeDevice 描述了容器中原始块设备的映射。

volumeMounts

array

要挂载到容器文件系统的 Pod 卷。临时容器不允许使用 subPath 挂载。无法更新。

volumeMounts[]

对象

VolumeMount 描述了容器内卷挂载。

workingDir

字符串

容器的工作目录。如果未指定,则将使用容器运行时的默认值,该默认值可能在容器镜像中配置。无法更新。

3.1.99. .template.spec.ephemeralContainers[].env

描述
容器中要设置的环境变量列表。无法更新。
类型
数组

3.1.100. .template.spec.ephemeralContainers[].env[]

描述
EnvVar 代表容器中存在的环境变量。
类型
object
必填
  • name
属性类型描述

name

字符串

环境变量的名称。必须是 C_IDENTIFIER。

value

字符串

变量引用 $(VAR_NAME)使用容器中之前定义的环境变量以及任何服务环境变量进行扩展。如果无法解析变量,则输入字符串中的引用将保持不变。双引号被缩减为单个 $,它允许转义 $(VAR_NAME)语法:即 " (VAR_NAME) " 将生成字符串 literal "$(VAR_NAME) "。转义的引用永远不会扩展,无论变量是否存在。默认为 ""。

valueFrom

object

EnvVarSource 代表 EnvVar 的值的源。

3.1.101. .template.spec.ephemeralContainers[].env[].valueFrom

描述
EnvVarSource 代表 EnvVar 的值的源。
类型
object
属性类型描述

configMapKeyRef

object

从 ConfigMap 中选择一个键。

fieldRef

object

ObjectFieldSelector 选择对象的 APIVersioned 字段。

resourceFieldRef

object

ResourceFieldSelector 代表容器资源(cpu、memory)及其输出格式

secretKeyRef

object

SecretKeySelector 选择 Secret 的密钥。

3.1.102. .template.spec.ephemeralContainers[].env[].valueFrom.configMapKeyRef

描述
从 ConfigMap 中选择一个键。
类型
object
必填
  • key
属性类型描述

key

字符串

要选择的密钥。

name

字符串

引用的名称。更多信息: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names

optional

布尔值

指定是否必须定义 ConfigMap 还是其键

3.1.103. .template.spec.ephemeralContainers[].env[].valueFrom.fieldRef

描述
ObjectFieldSelector 选择对象的 APIVersioned 字段。
类型
object
必填
  • fieldPath
属性类型描述

apiVersion

字符串

模式的版本是按术语编写的 FieldPath,默认为 "v1"。

fieldPath

字符串

在指定 API 版本中选择的字段路径。

3.1.104. .template.spec.ephemeralContainers[].env[].valueFrom.resourceFieldRef

描述
ResourceFieldSelector 代表容器资源(cpu、memory)及其输出格式
类型
object
必填
  • resource
属性类型描述

containerName

字符串

容器名称:卷需要,对于 env vars是可选的

divisor

数量

指定公开资源的输出格式,默认为 "1"

resource

字符串

必需:要选择的资源

3.1.105. .template.spec.ephemeralContainers[].env[].valueFrom.secretKeyRef

描述
SecretKeySelector 选择 Secret 的密钥。
类型
object
必填
  • key
属性类型描述

key

字符串

要从中选择的 secret 的密钥。必须是一个有效的 secret 密钥。

name

字符串

引用的名称。更多信息: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names

optional

布尔值

指定是否需要定义 Secret 还是其密钥

3.1.106. .template.spec.ephemeralContainers[].envFrom

描述
在容器中填充环境变量的源列表。源中定义的键必须是 C_IDENTIFIER。当容器启动时,所有无效密钥都会被报告为事件。当多个源中存在键时,与最后一个源关联的值将具有优先权。由带有重复键的 Env 定义的值将具有优先权。无法更新。
类型
数组

3.1.107. .template.spec.ephemeralContainers[].envFrom[]

描述
EnvFromSource 代表一组 ConfigMap 的源
类型
object
属性类型描述

configMapRef

object

ConfigMapEnvSource 选择一个 ConfigMap 来填充环境变量。

目标 ConfigMap 的 Data 字段的内容将作为环境变量表示键值对。

prefix

字符串

要添加到 ConfigMap 中每个键的可选标识符。必须是 C_IDENTIFIER。

secretRef

object

SecretEnvSource 选择一个 Secret 来填充环境变量。

目标 Secret 的 Data 字段的内容将作为环境变量表示键值对。

3.1.108. .template.spec.ephemeralContainers[].envFrom[].configMapRef

描述

ConfigMapEnvSource 选择一个 ConfigMap 来填充环境变量。

目标 ConfigMap 的 Data 字段的内容将作为环境变量表示键值对。

类型
object
属性类型描述

name

字符串

引用的名称。更多信息: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names

optional

布尔值

指定是否必须定义 ConfigMap

3.1.109. .template.spec.ephemeralContainers[].envFrom[].secretRef

描述

SecretEnvSource 选择一个 Secret 来填充环境变量。

目标 Secret 的 Data 字段的内容将作为环境变量表示键值对。

类型
object
属性类型描述

name

字符串

引用的名称。更多信息: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names

optional

布尔值

指定是否必须定义 Secret

3.1.110. .template.spec.ephemeralContainers[].lifecycle

描述
lifecycle 描述了管理系统响应容器生命周期事件应执行的操作。对于 PostStart 和 PreStop 生命周期处理程序,容器块的管理直到操作完成,除非容器进程失败,在这种情况下,处理程序会被中止。
类型
object
属性类型描述

postStart

object

LifecycleHandler 定义应在生命周期 hook 中执行的操作。除 TCPSocket 外,只能指定其中一个字段。

preStop

object

LifecycleHandler 定义应在生命周期 hook 中执行的操作。除 TCPSocket 外,只能指定其中一个字段。

3.1.111. .template.spec.ephemeralContainers[].lifecycle.postStart

描述
LifecycleHandler 定义应在生命周期 hook 中执行的操作。除 TCPSocket 外,只能指定其中一个字段。
类型
object
属性类型描述

exec

object

ExecAction 描述了 "run in container" 操作。

httpGet

object

HTTPGetAction 描述了基于 HTTP Get 请求的操作。

tcpSocket

object

TCPSocketAction 描述了基于打开套接字的操作

3.1.112. .template.spec.ephemeralContainers[].lifecycle.postStart.exec

描述
ExecAction 描述了 "run in container" 操作。
类型
object
属性类型描述

命令

数组(字符串)

命令是在容器内执行的命令行,而 命令的工作目录是容器文件系统中的 root ('/')。命令只是 exec'd,它不会在 shell 中运行,因此传统的 shell 指令('|' 等)将无法工作。要使用 shell,您需要明确调用该 shell。0 的退出状态被视为 live/healthy,非零不健康。

3.1.113. .template.spec.ephemeralContainers[].lifecycle.postStart.httpGet

描述
HTTPGetAction 描述了基于 HTTP Get 请求的操作。
类型
object
必填
  • port
属性类型描述

主机

字符串

要连接到的主机名,默认为 pod IP。您可能想在 httpHeaders 中设置"主机"。

httpHeaders

array

在请求中设置的自定义标头。HTTP 允许重复的标头。

httpHeaders[]

对象

HTTPHeader 描述了在 HTTP 探测中使用的自定义标头

path

字符串

在 HTTP 服务器上访问的路径。

port

IntOrString

用于访问容器的端口的名称或编号。number 必须在 1 到 65535 之间。名称必须是 IANA_SVC_NAME。

scheme

字符串

用于连接到主机的方案。默认为 HTTP。

可能枚举值: - "HTTP" 表示使用的方案为 http:// - "HTTPS" 表示使用的方案是 https://

3.1.114. .template.spec.ephemeralContainers[].lifecycle.postStart.httpGet.httpHeaders

描述
在请求中设置的自定义标头。HTTP 允许重复的标头。
类型
数组

3.1.115. .template.spec.ephemeralContainers[].lifecycle.postStart.httpGet.httpHeaders[]

描述
HTTPHeader 描述了在 HTTP 探测中使用的自定义标头
类型
object
必填
  • name
  • value
属性类型描述

name

string

标头字段名称。这将在输出时规范,因此理解 case-variant 名称与相同的标头一样。

value

字符串

标头字段值

3.1.116. .template.spec.ephemeralContainers[].lifecycle.postStart.tcpSocket

描述
TCPSocketAction 描述了基于打开套接字的操作
类型
object
必填
  • port
属性类型描述

主机

字符串

可选:要连接到的主机名,默认为 pod IP。

port

IntOrString

用于访问容器的端口的编号或名称。number 必须在 1 到 65535 之间。名称必须是 IANA_SVC_NAME。

3.1.117. .template.spec.ephemeralContainers[].lifecycle.preStop

描述
LifecycleHandler 定义应在生命周期 hook 中执行的操作。除 TCPSocket 外,只能指定其中一个字段。
类型
object
属性类型描述

exec

object

ExecAction 描述了 "run in container" 操作。

httpGet

object

HTTPGetAction 描述了基于 HTTP Get 请求的操作。

tcpSocket

object

TCPSocketAction 描述了基于打开套接字的操作

3.1.118. .template.spec.ephemeralContainers[].lifecycle.preStop.exec

描述
ExecAction 描述了 "run in container" 操作。
类型
object
属性类型描述

命令

数组(字符串)

命令是在容器内执行的命令行,而 命令的工作目录是容器文件系统中的 root ('/')。命令只是 exec'd,它不会在 shell 中运行,因此传统的 shell 指令('|' 等)将无法工作。要使用 shell,您需要明确调用该 shell。0 的退出状态被视为 live/healthy,非零不健康。

3.1.119. .template.spec.ephemeralContainers[].lifecycle.preStop.httpGet

描述
HTTPGetAction 描述了基于 HTTP Get 请求的操作。
类型
object
必填
  • port
属性类型描述

主机

字符串

要连接到的主机名,默认为 pod IP。您可能想在 httpHeaders 中设置"主机"。

httpHeaders

array

在请求中设置的自定义标头。HTTP 允许重复的标头。

httpHeaders[]

对象

HTTPHeader 描述了在 HTTP 探测中使用的自定义标头

path

字符串

在 HTTP 服务器上访问的路径。

port

IntOrString

用于访问容器的端口的名称或编号。number 必须在 1 到 65535 之间。名称必须是 IANA_SVC_NAME。

scheme

字符串

用于连接到主机的方案。默认为 HTTP。

可能枚举值: - "HTTP" 表示使用的方案为 http:// - "HTTPS" 表示使用的方案是 https://

3.1.120. .template.spec.ephemeralContainers[].lifecycle.preStop.httpGet.httpHeaders

描述
在请求中设置的自定义标头。HTTP 允许重复的标头。
类型
数组

3.1.121. .template.spec.ephemeralContainers[].lifecycle.preStop.httpGet.httpHeaders[]

描述
HTTPHeader 描述了在 HTTP 探测中使用的自定义标头
类型
object
必填
  • name
  • value
属性类型描述

name

string

标头字段名称。这将在输出时规范,因此理解 case-variant 名称与相同的标头一样。

value

字符串

标头字段值

3.1.122. .template.spec.ephemeralContainers[].lifecycle.preStop.tcpSocket

描述
TCPSocketAction 描述了基于打开套接字的操作
类型
object
必填
  • port
属性类型描述

主机

字符串

可选:要连接到的主机名,默认为 pod IP。

port

IntOrString

用于访问容器的端口的编号或名称。number 必须在 1 到 65535 之间。名称必须是 IANA_SVC_NAME。

3.1.123. .template.spec.ephemeralContainers[].livenessProbe

描述
probe 描述要针对容器执行的健康检查,以确定它是否处于活动状态或准备好接收流量。
类型
object
属性类型描述

exec

object

ExecAction 描述了 "run in container" 操作。

failureThreshold

整数

在成功后,探测被视为失败的最小连续失败。默认值为 3。最小值为 1。

grpc

object

GRPC 指定涉及 GRPC 端口的操作。

httpGet

object

HTTPGetAction 描述了基于 HTTP Get 请求的操作。

initialDelaySeconds

整数

容器启动存活度探测前的秒数。更多信息: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes

periodSeconds

整数

执行探测的频率(以秒为单位)。默认值为 10 秒。最小值为 1。

successThreshold

整数

在失败后,探测至少连续成功会被视为成功。默认为 1。对于存活度和启动,必须为 1。最小值为 1。

tcpSocket

object

TCPSocketAction 描述了基于打开套接字的操作

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.124. .template.spec.ephemeralContainers[].livenessProbe.exec

描述
ExecAction 描述了 "run in container" 操作。
类型
object
属性类型描述

命令

数组(字符串)

命令是在容器内执行的命令行,而 命令的工作目录是容器文件系统中的 root ('/')。命令只是 exec'd,它不会在 shell 中运行,因此传统的 shell 指令('|' 等)将无法工作。要使用 shell,您需要明确调用该 shell。0 的退出状态被视为 live/healthy,非零不健康。

3.1.125. .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.126. .template.spec.ephemeralContainers[].livenessProbe.httpGet

描述
HTTPGetAction 描述了基于 HTTP Get 请求的操作。
类型
object
必填
  • port
属性类型描述

主机

字符串

要连接到的主机名,默认为 pod IP。您可能想在 httpHeaders 中设置"主机"。

httpHeaders

array

在请求中设置的自定义标头。HTTP 允许重复的标头。

httpHeaders[]

对象

HTTPHeader 描述了在 HTTP 探测中使用的自定义标头

path

字符串

在 HTTP 服务器上访问的路径。

port

IntOrString

用于访问容器的端口的名称或编号。number 必须在 1 到 65535 之间。名称必须是 IANA_SVC_NAME。

scheme

字符串

用于连接到主机的方案。默认为 HTTP。

可能枚举值: - "HTTP" 表示使用的方案为 http:// - "HTTPS" 表示使用的方案是 https://

3.1.127. .template.spec.ephemeralContainers[].livenessProbe.httpGet.httpHeaders

描述
在请求中设置的自定义标头。HTTP 允许重复的标头。
类型
数组

3.1.128. .template.spec.ephemeralContainers[].livenessProbe.httpGet.httpHeaders[]

描述
HTTPHeader 描述了在 HTTP 探测中使用的自定义标头
类型
object
必填
  • name
  • value
属性类型描述

name

string

标头字段名称。这将在输出时规范,因此理解 case-variant 名称与相同的标头一样。

value

字符串

标头字段值

3.1.129. .template.spec.ephemeralContainers[].livenessProbe.tcpSocket

描述
TCPSocketAction 描述了基于打开套接字的操作
类型
object
必填
  • port
属性类型描述

主机

字符串

可选:要连接到的主机名,默认为 pod IP。

port

IntOrString

用于访问容器的端口的编号或名称。number 必须在 1 到 65535 之间。名称必须是 IANA_SVC_NAME。

3.1.130. .template.spec.ephemeralContainers[].ports

描述
临时容器不允许使用端口。
类型
数组

3.1.131. .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"。

可能枚举值: - "SCTP" 是 SCTP 协议。- "TCP" 是 TCP 协议。- "UDP" 是 UDP 协议。

3.1.132. .template.spec.ephemeralContainers[].readinessProbe

描述
probe 描述要针对容器执行的健康检查,以确定它是否处于活动状态或准备好接收流量。
类型
object
属性类型描述

exec

object

ExecAction 描述了 "run in container" 操作。

failureThreshold

整数

在成功后,探测被视为失败的最小连续失败。默认值为 3。最小值为 1。

grpc

object

GRPC 指定涉及 GRPC 端口的操作。

httpGet

object

HTTPGetAction 描述了基于 HTTP Get 请求的操作。

initialDelaySeconds

整数

容器启动存活度探测前的秒数。更多信息: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes

periodSeconds

整数

执行探测的频率(以秒为单位)。默认值为 10 秒。最小值为 1。

successThreshold

整数

在失败后,探测至少连续成功会被视为成功。默认为 1。对于存活度和启动,必须为 1。最小值为 1。

tcpSocket

object

TCPSocketAction 描述了基于打开套接字的操作

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.133. .template.spec.ephemeralContainers[].readinessProbe.exec

描述
ExecAction 描述了 "run in container" 操作。
类型
object
属性类型描述

命令

数组(字符串)

命令是在容器内执行的命令行,而 命令的工作目录是容器文件系统中的 root ('/')。命令只是 exec'd,它不会在 shell 中运行,因此传统的 shell 指令('|' 等)将无法工作。要使用 shell,您需要明确调用该 shell。0 的退出状态被视为 live/healthy,非零不健康。

3.1.134. .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.135. .template.spec.ephemeralContainers[].readinessProbe.httpGet

描述
HTTPGetAction 描述了基于 HTTP Get 请求的操作。
类型
object
必填
  • port
属性类型描述

主机

字符串

要连接到的主机名,默认为 pod IP。您可能想在 httpHeaders 中设置"主机"。

httpHeaders

array

在请求中设置的自定义标头。HTTP 允许重复的标头。

httpHeaders[]

对象

HTTPHeader 描述了在 HTTP 探测中使用的自定义标头

path

字符串

在 HTTP 服务器上访问的路径。

port

IntOrString

用于访问容器的端口的名称或编号。number 必须在 1 到 65535 之间。名称必须是 IANA_SVC_NAME。

scheme

字符串

用于连接到主机的方案。默认为 HTTP。

可能枚举值: - "HTTP" 表示使用的方案为 http:// - "HTTPS" 表示使用的方案是 https://

3.1.136. .template.spec.ephemeralContainers[].readinessProbe.httpGet.httpHeaders

描述
在请求中设置的自定义标头。HTTP 允许重复的标头。
类型
数组

3.1.137. .template.spec.ephemeralContainers[].readinessProbe.httpGet.httpHeaders[]

描述
HTTPHeader 描述了在 HTTP 探测中使用的自定义标头
类型
object
必填
  • name
  • value
属性类型描述

name

string

标头字段名称。这将在输出时规范,因此理解 case-variant 名称与相同的标头一样。

value

字符串

标头字段值

3.1.138. .template.spec.ephemeralContainers[].readinessProbe.tcpSocket

描述
TCPSocketAction 描述了基于打开套接字的操作
类型
object
必填
  • port
属性类型描述

主机

字符串

可选:要连接到的主机名,默认为 pod IP。

port

IntOrString

用于访问容器的端口的编号或名称。number 必须在 1 到 65535 之间。名称必须是 IANA_SVC_NAME。

3.1.139. .template.spec.ephemeralContainers[].resizePolicy

描述
容器的资源重新定义策略。
类型
数组

3.1.140. .template.spec.ephemeralContainers[].resizePolicy[]

描述
ContainerResizePolicy 代表容器的资源重新定义策略。
类型
object
必填
  • resourceName
  • restartPolicy
属性类型描述

resourceName

string

此资源重新定义策略应用到的资源的名称。支持的值有:cpu、memory。

restartPolicy

string

在指定资源调整大小时,重启策略会被应用。如果没有指定,则默认为 NotRequired。

3.1.141. .template.spec.ephemeralContainers[].resources

描述
ResourceRequirements 描述了计算资源要求。
类型
object
属性类型描述

声明

数组

claim 列出此容器使用的 spec.resourceClaims 中定义的资源名称。

这是一个 alpha 字段,需要启用 DynamicResourceAllocation 功能门。

此字段不可变。它只能为容器设置。

claims[]

object

ResourceClaim 引用 PodSpec.ResourceClaims 中的一个条目。

limits

对象(数量)

限制描述了允许的最大计算资源量。更多信息: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/

requests

对象(数量)

Requests 描述了所需的最少计算资源。如果容器省略了 Requests,则默认为 Limits (如果明确指定),否则默认为实现定义的值。请求不能超过限值。更多信息: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/

3.1.142. .template.spec.ephemeralContainers[].resources.claims

描述

claim 列出此容器使用的 spec.resourceClaims 中定义的资源名称。

这是一个 alpha 字段,需要启用 DynamicResourceAllocation 功能门。

此字段不可变。它只能为容器设置。

类型
数组

3.1.143. .template.spec.ephemeralContainers[].resources.claims[]

描述
ResourceClaim 引用 PodSpec.ResourceClaims 中的一个条目。
类型
object
必填
  • name
属性类型描述

name

string

name 必须与使用此字段的 Pod 的 pod.spec.resourceClaims 中的一个条目的名称匹配。它允许容器内部使用该资源。

3.1.144. .template.spec.ephemeralContainers[].securityContext

描述
securityContext 包含要应用到容器的安全配置。SecurityContext 和 PodSecurityContext 中都存在一些字段。当两者都被设置时,SecurityContext 中的值将具有优先权。
类型
object
属性类型描述

allowPrivilegeEscalation

布尔值

allowPrivilegeEscalation 控制进程是否可以比其父进程获得更多特权。此 bool 直接控制容器进程上是否设置了 no_new_privs 标志。当容器是 : 1)作为 CAP_SYS_ADMIN 具有 CAP_SYS_ADMIN 时,allowPrivilegeEscalation 始终为 true,请注意,当 spec.os.name 是 windows 时,不能设置此字段。

功能

object

从正在运行的容器中添加和移除 POSIX 功能。

privileged

布尔值

以特权模式运行容器。特权容器中的进程本质上等同于主机上的 root。默认为false。请注意,当 spec.os.name 是 windows 时无法设置此字段。

procMount

字符串

procMount 表示用于容器的 proc 挂载类型。默认为 DefaultProcMount,它将容器运行时默认值用于只读路径和屏蔽的路径。这要求启用 ProcMountType 功能标记。请注意,当 spec.os.name 是 windows 时无法设置此字段。

可能枚举值: - "Default" 对 /proc 的 readonly 和 masked 路径使用容器运行时默认值。大多数容器运行时屏蔽 /proc 中的特定路径以避免意外出现特殊设备或信息的安全。- "Unmasked" 会绕过容器运行时的默认行为,并确保新创建的 /proc 容器保留在不做任何修改的情况下。

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

object

seLinuxOptions 是要应用到容器的标签

seccompProfile

object

SeccompProfile 定义 pod/容器的 seccomp 配置集设置。只能设置一个配置文件源。

windowsOptions

object

WindowsSecurityContextOptions 包含特定于 Windows 的选项和凭证。

3.1.145. .template.spec.ephemeralContainers[].securityContext.capabilities

描述
从正在运行的容器中添加和移除 POSIX 功能。
类型
object
属性类型描述

add

数组(字符串)

添加了功能

drop

数组(字符串)

删除的功能

3.1.146. .template.spec.ephemeralContainers[].securityContext.seLinuxOptions

描述
seLinuxOptions 是要应用到容器的标签
类型
object
属性类型描述

level

字符串

level 是适用于容器的 SELinux 级别标签。

role

字符串

role 是适用于容器的 SELinux 角色标签。

type

字符串

type 是适用于容器的 SELinux 类型标签。

user

字符串

user 是适用于容器的 SELinux 用户标签。

3.1.147. .template.spec.ephemeralContainers[].securityContext.seccompProfile

描述
SeccompProfile 定义 pod/容器的 seccomp 配置集设置。只能设置一个配置文件源。
类型
object
必填
  • type
属性类型描述

localhostProfile

字符串

localhostProfile 表示应使用节点上文件中定义的配置集。该配置集必须在节点上预先配置才能正常工作。必须是一个降序路径,相对于 kubelet 配置的 seccomp 配置集位置。如果类型为"Localhost",则必须设置。不得为任何其他类型设置。

type

字符串

Type 表示将应用了哪些 seccomp 配置集。有效选项有:

localhost - 应该使用节点上文件中定义的配置文件。RuntimeDefault - 应使用容器运行时默认配置集。unconfined - 不应应用配置集。

可能枚举值: - "Localhost" 表示应使用节点上文件中定义的配置集。文件相对于 <kubelet-root-dir>/seccomp。- "RuntimeDefault" 代表默认的容器运行时 seccomp 配置集。- "Unconfined" 表示没有应用 seccomp 配置集(A.K.A. unconfined)。

3.1.148. .template.spec.ephemeralContainers[].securityContext.windowsOptions

描述
WindowsSecurityContextOptions 包含特定于 Windows 的选项和凭证。
类型
object
属性类型描述

gmsaCredentialSpec

字符串

GMSACredentialSpec 是 GMSA 准入 Webhook (https://github.com/kubernetes-sigs/windows-gmsa)内联由 GMSACredentialSpec 命名的 GMSA 凭证规格的内容。

gmsaCredentialSpecName

字符串

GMSACredentialSpecName 是要使用的 GMSA 凭证规格的名称。

hostProcess

布尔值

HostProcess 确定容器是否应作为"主机进程"容器运行。所有 Pod 的容器都必须具有相同的有效的 HostProcess 值(不允许混合 HostProcess 容器和非主机进程容器)。另外,如果 HostProcess 为 true,则 HostNetwork 也必须设置为 true。

runAsUserName

字符串

Windows 中的 UserName,以运行容器进程的入口点。如果未指定,则默认为在镜像元数据中指定的用户。也可以在 PodSecurityContext 中设置。如果在 SecurityContext 和 PodSecurityContext 中设置,则 SecurityContext 中指定的值具有优先权。

3.1.149. .template.spec.ephemeralContainers[].startupProbe

描述
probe 描述要针对容器执行的健康检查,以确定它是否处于活动状态或准备好接收流量。
类型
object
属性类型描述

exec

object

ExecAction 描述了 "run in container" 操作。

failureThreshold

整数

在成功后,探测被视为失败的最小连续失败。默认值为 3。最小值为 1。

grpc

object

GRPC 指定涉及 GRPC 端口的操作。

httpGet

object

HTTPGetAction 描述了基于 HTTP Get 请求的操作。

initialDelaySeconds

整数

容器启动存活度探测前的秒数。更多信息: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes

periodSeconds

整数

执行探测的频率(以秒为单位)。默认值为 10 秒。最小值为 1。

successThreshold

整数

在失败后,探测至少连续成功会被视为成功。默认为 1。对于存活度和启动,必须为 1。最小值为 1。

tcpSocket

object

TCPSocketAction 描述了基于打开套接字的操作

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.150. .template.spec.ephemeralContainers[].startupProbe.exec

描述
ExecAction 描述了 "run in container" 操作。
类型
object
属性类型描述

命令

数组(字符串)

命令是在容器内执行的命令行,而 命令的工作目录是容器文件系统中的 root ('/')。命令只是 exec'd,它不会在 shell 中运行,因此传统的 shell 指令('|' 等)将无法工作。要使用 shell,您需要明确调用该 shell。0 的退出状态被视为 live/healthy,非零不健康。

3.1.151. .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.152. .template.spec.ephemeralContainers[].startupProbe.httpGet

描述
HTTPGetAction 描述了基于 HTTP Get 请求的操作。
类型
object
必填
  • port
属性类型描述

主机

字符串

要连接到的主机名,默认为 pod IP。您可能想在 httpHeaders 中设置"主机"。

httpHeaders

array

在请求中设置的自定义标头。HTTP 允许重复的标头。

httpHeaders[]

对象

HTTPHeader 描述了在 HTTP 探测中使用的自定义标头

path

字符串

在 HTTP 服务器上访问的路径。

port

IntOrString

用于访问容器的端口的名称或编号。number 必须在 1 到 65535 之间。名称必须是 IANA_SVC_NAME。

scheme

字符串

用于连接到主机的方案。默认为 HTTP。

可能枚举值: - "HTTP" 表示使用的方案为 http:// - "HTTPS" 表示使用的方案是 https://

3.1.153. .template.spec.ephemeralContainers[].startupProbe.httpGet.httpHeaders

描述
在请求中设置的自定义标头。HTTP 允许重复的标头。
类型
数组

3.1.154. .template.spec.ephemeralContainers[].startupProbe.httpGet.httpHeaders[]

描述
HTTPHeader 描述了在 HTTP 探测中使用的自定义标头
类型
object
必填
  • name
  • value
属性类型描述

name

string

标头字段名称。这将在输出时规范,因此理解 case-variant 名称与相同的标头一样。

value

字符串

标头字段值

3.1.155. .template.spec.ephemeralContainers[].startupProbe.tcpSocket

描述
TCPSocketAction 描述了基于打开套接字的操作
类型
object
必填
  • port
属性类型描述

主机

字符串

可选:要连接到的主机名,默认为 pod IP。

port

IntOrString

用于访问容器的端口的编号或名称。number 必须在 1 到 65535 之间。名称必须是 IANA_SVC_NAME。

3.1.156. .template.spec.ephemeralContainers[].volumeDevices

描述
volumeDevices 是容器要使用的块设备列表。
类型
数组

3.1.157. .template.spec.ephemeralContainers[].volumeDevices[]

描述
volumeDevice 描述了容器中原始块设备的映射。
类型
object
必填
  • name
  • devicePath
属性类型描述

devicePath

字符串

DevicePath 是该设备要映射到的容器内的路径。

name

字符串

name 必须与 pod 中 persistentVolumeClaim 的名称匹配

3.1.158. .template.spec.ephemeralContainers[].volumeMounts

描述
要挂载到容器文件系统的 Pod 卷。临时容器不允许使用 subPath 挂载。无法更新。
类型
数组

3.1.159. .template.spec.ephemeralContainers[].volumeMounts[]

描述
VolumeMount 描述了容器内卷挂载。
类型
object
必填
  • 名称
  • mountPath
属性类型描述

mountPath

字符串

应挂载卷的容器中的路径。不得包含 ':'。

mountPropagation

字符串

mountPropagation 决定挂载如何从主机传播到容器以及反向传播。如果没有设置,则使用 MountPropagationNone。此字段在 1.10 中是 beta。

可能枚举值: - "双向" 意味着容器中的卷将从主机或其他容器接收新挂载,并且自己的挂载将从容器传播到主机或其他容器。请注意,这个模式会递归应用到卷中的所有挂载("rshared"在 Linux 术语中)。- "HostToContainer" 表示容器中的卷将从主机或其他容器接收新挂载,但容器中挂载的文件系统不会传播到主机或其他容器中。请注意,这个模式会递归应用到卷中的所有挂载("在 Linux 术语中")。- "None" 表示容器中的卷不会从主机或其他容器接收新挂载,挂载到容器内的文件系统不会传播到主机或其他容器。请注意,这个模式在 Linux 术语中对应于"私有"。

名称

字符串

这必须与卷的 Name 匹配。

readOnly

布尔值

如果为 true,则以只读方式挂载,否则读写(false 或未指定)。默认为false。

subPath

字符串

应从中挂载容器卷的卷中的路径。默认为 "" (卷的 root)。

subPathExpr

字符串

在应该挂载容器卷的卷中扩展路径。行为与 SubPath 类似,但环境变量引用 $(VAR_NAME)使用容器的环境扩展。默认为 "" (卷的 root)。SubPathExpr 和 SubPath 是互斥的。

3.1.160. .template.spec.hostAliases

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

3.1.161. .template.spec.hostAliases[]

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

主机名

数组(字符串)

以上 IP 地址的主机名。

ip

字符串

主机文件条目的 IP 地址。

3.1.162. .template.spec.imagePullSecrets

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

3.1.163. .template.spec.imagePullSecrets[]

描述
LocalObjectReference 包含足够信息,供您在同一命名空间中找到引用的对象。
类型
object
属性类型描述

name

字符串

引用的名称。更多信息: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names

3.1.164. .template.spec.initContainers

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

3.1.165. .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

可能枚举值: - "Always" 表示 kubelet 始终尝试拉取最新的镜像。如果拉取失败,则容器将失败。- "IfNotPresent" 表示如果镜像在磁盘上不存在,kubelet 会拉取。如果镜像不存在且拉取失败,则容器将失败。- "Never" 表示 kubelet 永不拉取镜像,但只使用本地镜像。如果镜像不存在,容器将失败

lifecycle

object

lifecycle 描述了管理系统响应容器生命周期事件应执行的操作。对于 PostStart 和 PreStop 生命周期处理程序,容器块的管理直到操作完成,除非容器进程失败,在这种情况下,处理程序会被中止。

livenessProbe

object

probe 描述要针对容器执行的健康检查,以确定它是否处于活动状态或准备好接收流量。

名称

字符串

指定为 DNS_LABEL 的容器名称。pod 中的每个容器都必须具有唯一的名称(DNS_LABEL)。无法更新。

ports

array

从容器公开的端口列表。这里没有指定端口不会阻止公开该端口。所有正在侦听容器内默认"0.0.0.0"地址的端口均可从网络访问。使用策略合并补丁修改阵列可能会破坏数据。如需更多信息,请参阅 https://github.com/kubernetes/kubernetes/issues/108255。无法更新。

ports[]

对象

containerPort 代表单个容器中的网络端口。

readinessProbe

object

probe 描述要针对容器执行的健康检查,以确定它是否处于活动状态或准备好接收流量。

resizePolicy

数组

容器的资源重新定义策略。

resizePolicy[]

object

ContainerResizePolicy 代表容器的资源重新定义策略。

resources

对象

ResourceRequirements 描述了计算资源要求。

restartPolicy

string

restartPolicy 定义 pod 中单个容器的重启行为。此字段只能为 init 容器设置,唯一允许的值是 "Always"。对于非init 容器或没有指定此字段时,重启行为由 Pod 的重启策略和容器类型定义。将 init 容器的 RestartPolicy 设置为 "Always" 将具有以下效果:此 init 容器将持续重启退出,直到所有常规容器都终止为止。所有常规容器完成后,所有带有 restartPolicy "Always" 的 init 容器都会被关闭。这个生命周期与普通 init 容器不同,通常被称为 "sidecar" 容器。虽然这个 init 容器仍然在 init 容器序列中启动,但它不会等待容器完成,然后才能进入下一个 init 容器。相反,下一个 init 容器会在此 init 容器启动后,或者在任何 startupProbe 成功完成后启动。

securityContext

object

securityContext 包含要应用到容器的安全配置。SecurityContext 和 PodSecurityContext 中都存在一些字段。当两者都被设置时,SecurityContext 中的值将具有优先权。

startupProbe

object

probe 描述要针对容器执行的健康检查,以确定它是否处于活动状态或准备好接收流量。

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。无法更新。

可能枚举值:- "FallbackToLogsOnError" 将在容器退出时读取容器状态消息的最新内容,并且 terminationMessagePath 没有任何内容。- "File" 是默认行为,并在容器退出时将容器状态消息设置为容器的 terminationMessagePath 的内容。

tty

布尔值

此容器是否应为自己分配 TTY,也要求 'stdin' 为 true。默认为 false。

volumeDevices

array

volumeDevices 是容器要使用的块设备列表。

volumeDevices[]

对象

volumeDevice 描述了容器中原始块设备的映射。

volumeMounts

array

要挂载到容器文件系统的 Pod 卷。无法更新。

volumeMounts[]

对象

VolumeMount 描述了容器内卷挂载。

workingDir

字符串

容器的工作目录。如果未指定,则将使用容器运行时的默认值,该默认值可能在容器镜像中配置。无法更新。

3.1.166. .template.spec.initContainers[].env

描述
容器中要设置的环境变量列表。无法更新。
类型
数组

3.1.167. .template.spec.initContainers[].env[]

描述
EnvVar 代表容器中存在的环境变量。
类型
object
必填
  • name
属性类型描述

name

字符串

环境变量的名称。必须是 C_IDENTIFIER。

value

字符串

变量引用 $(VAR_NAME)使用容器中之前定义的环境变量以及任何服务环境变量进行扩展。如果无法解析变量,则输入字符串中的引用将保持不变。双引号被缩减为单个 $,它允许转义 $(VAR_NAME)语法:即 " (VAR_NAME) " 将生成字符串 literal "$(VAR_NAME) "。转义的引用永远不会扩展,无论变量是否存在。默认为 ""。

valueFrom

object

EnvVarSource 代表 EnvVar 的值的源。

3.1.168. .template.spec.initContainers[].env[].valueFrom

描述
EnvVarSource 代表 EnvVar 的值的源。
类型
object
属性类型描述

configMapKeyRef

object

从 ConfigMap 中选择一个键。

fieldRef

object

ObjectFieldSelector 选择对象的 APIVersioned 字段。

resourceFieldRef

object

ResourceFieldSelector 代表容器资源(cpu、memory)及其输出格式

secretKeyRef

object

SecretKeySelector 选择 Secret 的密钥。

3.1.169. .template.spec.initContainers[].env[].valueFrom.configMapKeyRef

描述
从 ConfigMap 中选择一个键。
类型
object
必填
  • key
属性类型描述

key

字符串

要选择的密钥。

name

字符串

引用的名称。更多信息: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names

optional

布尔值

指定是否必须定义 ConfigMap 还是其键

3.1.170. .template.spec.initContainers[].env[].valueFrom.fieldRef

描述
ObjectFieldSelector 选择对象的 APIVersioned 字段。
类型
object
必填
  • fieldPath
属性类型描述

apiVersion

字符串

模式的版本是按术语编写的 FieldPath,默认为 "v1"。

fieldPath

字符串

在指定 API 版本中选择的字段路径。

3.1.171. .template.spec.initContainers[].env[].valueFrom.resourceFieldRef

描述
ResourceFieldSelector 代表容器资源(cpu、memory)及其输出格式
类型
object
必填
  • resource
属性类型描述

containerName

字符串

容器名称:卷需要,对于 env vars是可选的

divisor

数量

指定公开资源的输出格式,默认为 "1"

resource

字符串

必需:要选择的资源

3.1.172. .template.spec.initContainers[].env[].valueFrom.secretKeyRef

描述
SecretKeySelector 选择 Secret 的密钥。
类型
object
必填
  • key
属性类型描述

key

字符串

要从中选择的 secret 的密钥。必须是一个有效的 secret 密钥。

name

字符串

引用的名称。更多信息: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names

optional

布尔值

指定是否需要定义 Secret 还是其密钥

3.1.173. .template.spec.initContainers[].envFrom

描述
在容器中填充环境变量的源列表。源中定义的键必须是 C_IDENTIFIER。当容器启动时,所有无效密钥都会被报告为事件。当多个源中存在键时,与最后一个源关联的值将具有优先权。由带有重复键的 Env 定义的值将具有优先权。无法更新。
类型
数组

3.1.174. .template.spec.initContainers[].envFrom[]

描述
EnvFromSource 代表一组 ConfigMap 的源
类型
object
属性类型描述

configMapRef

object

ConfigMapEnvSource 选择一个 ConfigMap 来填充环境变量。

目标 ConfigMap 的 Data 字段的内容将作为环境变量表示键值对。

prefix

字符串

要添加到 ConfigMap 中每个键的可选标识符。必须是 C_IDENTIFIER。

secretRef

object

SecretEnvSource 选择一个 Secret 来填充环境变量。

目标 Secret 的 Data 字段的内容将作为环境变量表示键值对。

3.1.175. .template.spec.initContainers[].envFrom[].configMapRef

描述

ConfigMapEnvSource 选择一个 ConfigMap 来填充环境变量。

目标 ConfigMap 的 Data 字段的内容将作为环境变量表示键值对。

类型
object
属性类型描述

name

字符串

引用的名称。更多信息: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names

optional

布尔值

指定是否必须定义 ConfigMap

3.1.176. .template.spec.initContainers[].envFrom[].secretRef

描述

SecretEnvSource 选择一个 Secret 来填充环境变量。

目标 Secret 的 Data 字段的内容将作为环境变量表示键值对。

类型
object
属性类型描述

name

字符串

引用的名称。更多信息: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names

optional

布尔值

指定是否必须定义 Secret

3.1.177. .template.spec.initContainers[].lifecycle

描述
lifecycle 描述了管理系统响应容器生命周期事件应执行的操作。对于 PostStart 和 PreStop 生命周期处理程序,容器块的管理直到操作完成,除非容器进程失败,在这种情况下,处理程序会被中止。
类型
object
属性类型描述

postStart

object

LifecycleHandler 定义应在生命周期 hook 中执行的操作。除 TCPSocket 外,只能指定其中一个字段。

preStop

object

LifecycleHandler 定义应在生命周期 hook 中执行的操作。除 TCPSocket 外,只能指定其中一个字段。

3.1.178. .template.spec.initContainers[].lifecycle.postStart

描述
LifecycleHandler 定义应在生命周期 hook 中执行的操作。除 TCPSocket 外,只能指定其中一个字段。
类型
object
属性类型描述

exec

object

ExecAction 描述了 "run in container" 操作。

httpGet

object

HTTPGetAction 描述了基于 HTTP Get 请求的操作。

tcpSocket

object

TCPSocketAction 描述了基于打开套接字的操作

3.1.179. .template.spec.initContainers[].lifecycle.postStart.exec

描述
ExecAction 描述了 "run in container" 操作。
类型
object
属性类型描述

命令

数组(字符串)

命令是在容器内执行的命令行,而 命令的工作目录是容器文件系统中的 root ('/')。命令只是 exec'd,它不会在 shell 中运行,因此传统的 shell 指令('|' 等)将无法工作。要使用 shell,您需要明确调用该 shell。0 的退出状态被视为 live/healthy,非零不健康。

3.1.180. .template.spec.initContainers[].lifecycle.postStart.httpGet

描述
HTTPGetAction 描述了基于 HTTP Get 请求的操作。
类型
object
必填
  • port
属性类型描述

主机

字符串

要连接到的主机名,默认为 pod IP。您可能想在 httpHeaders 中设置"主机"。

httpHeaders

array

在请求中设置的自定义标头。HTTP 允许重复的标头。

httpHeaders[]

对象

HTTPHeader 描述了在 HTTP 探测中使用的自定义标头

path

字符串

在 HTTP 服务器上访问的路径。

port

IntOrString

用于访问容器的端口的名称或编号。number 必须在 1 到 65535 之间。名称必须是 IANA_SVC_NAME。

scheme

字符串

用于连接到主机的方案。默认为 HTTP。

可能枚举值: - "HTTP" 表示使用的方案为 http:// - "HTTPS" 表示使用的方案是 https://

3.1.181. .template.spec.initContainers[].lifecycle.postStart.httpGet.httpHeaders

描述
在请求中设置的自定义标头。HTTP 允许重复的标头。
类型
数组

3.1.182. .template.spec.initContainers[].lifecycle.postStart.httpGet.httpHeaders[]

描述
HTTPHeader 描述了在 HTTP 探测中使用的自定义标头
类型
object
必填
  • name
  • value
属性类型描述

name

string

标头字段名称。这将在输出时规范,因此理解 case-variant 名称与相同的标头一样。

value

字符串

标头字段值

3.1.183. .template.spec.initContainers[].lifecycle.postStart.tcpSocket

描述
TCPSocketAction 描述了基于打开套接字的操作
类型
object
必填
  • port
属性类型描述

主机

字符串

可选:要连接到的主机名,默认为 pod IP。

port

IntOrString

用于访问容器的端口的编号或名称。number 必须在 1 到 65535 之间。名称必须是 IANA_SVC_NAME。

3.1.184. .template.spec.initContainers[].lifecycle.preStop

描述
LifecycleHandler 定义应在生命周期 hook 中执行的操作。除 TCPSocket 外,只能指定其中一个字段。
类型
object
属性类型描述

exec

object

ExecAction 描述了 "run in container" 操作。

httpGet

object

HTTPGetAction 描述了基于 HTTP Get 请求的操作。

tcpSocket

object

TCPSocketAction 描述了基于打开套接字的操作

3.1.185. .template.spec.initContainers[].lifecycle.preStop.exec

描述
ExecAction 描述了 "run in container" 操作。
类型
object
属性类型描述

命令

数组(字符串)

命令是在容器内执行的命令行,而 命令的工作目录是容器文件系统中的 root ('/')。命令只是 exec'd,它不会在 shell 中运行,因此传统的 shell 指令('|' 等)将无法工作。要使用 shell,您需要明确调用该 shell。0 的退出状态被视为 live/healthy,非零不健康。

3.1.186. .template.spec.initContainers[].lifecycle.preStop.httpGet

描述
HTTPGetAction 描述了基于 HTTP Get 请求的操作。
类型
object
必填
  • port
属性类型描述

主机

字符串

要连接到的主机名,默认为 pod IP。您可能想在 httpHeaders 中设置"主机"。

httpHeaders

array

在请求中设置的自定义标头。HTTP 允许重复的标头。

httpHeaders[]

对象

HTTPHeader 描述了在 HTTP 探测中使用的自定义标头

path

字符串

在 HTTP 服务器上访问的路径。

port

IntOrString

用于访问容器的端口的名称或编号。number 必须在 1 到 65535 之间。名称必须是 IANA_SVC_NAME。

scheme

字符串

用于连接到主机的方案。默认为 HTTP。

可能枚举值: - "HTTP" 表示使用的方案为 http:// - "HTTPS" 表示使用的方案是 https://

3.1.187. .template.spec.initContainers[].lifecycle.preStop.httpGet.httpHeaders

描述
在请求中设置的自定义标头。HTTP 允许重复的标头。
类型
数组

3.1.188. .template.spec.initContainers[].lifecycle.preStop.httpGet.httpHeaders[]

描述
HTTPHeader 描述了在 HTTP 探测中使用的自定义标头
类型
object
必填
  • name
  • value
属性类型描述

name

string

标头字段名称。这将在输出时规范,因此理解 case-variant 名称与相同的标头一样。

value

字符串

标头字段值

3.1.189. .template.spec.initContainers[].lifecycle.preStop.tcpSocket

描述
TCPSocketAction 描述了基于打开套接字的操作
类型
object
必填
  • port
属性类型描述

主机

字符串

可选:要连接到的主机名,默认为 pod IP。

port

IntOrString

用于访问容器的端口的编号或名称。number 必须在 1 到 65535 之间。名称必须是 IANA_SVC_NAME。

3.1.190. .template.spec.initContainers[].livenessProbe

描述
probe 描述要针对容器执行的健康检查,以确定它是否处于活动状态或准备好接收流量。
类型
object
属性类型描述

exec

object

ExecAction 描述了 "run in container" 操作。

failureThreshold

整数

在成功后,探测被视为失败的最小连续失败。默认值为 3。最小值为 1。

grpc

object

GRPC 指定涉及 GRPC 端口的操作。

httpGet

object

HTTPGetAction 描述了基于 HTTP Get 请求的操作。

initialDelaySeconds

整数

容器启动存活度探测前的秒数。更多信息: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes

periodSeconds

整数

执行探测的频率(以秒为单位)。默认值为 10 秒。最小值为 1。

successThreshold

整数

在失败后,探测至少连续成功会被视为成功。默认为 1。对于存活度和启动,必须为 1。最小值为 1。

tcpSocket

object

TCPSocketAction 描述了基于打开套接字的操作

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.191. .template.spec.initContainers[].livenessProbe.exec

描述
ExecAction 描述了 "run in container" 操作。
类型
object
属性类型描述

命令

数组(字符串)

命令是在容器内执行的命令行,而 命令的工作目录是容器文件系统中的 root ('/')。命令只是 exec'd,它不会在 shell 中运行,因此传统的 shell 指令('|' 等)将无法工作。要使用 shell,您需要明确调用该 shell。0 的退出状态被视为 live/healthy,非零不健康。

3.1.192. .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.193. .template.spec.initContainers[].livenessProbe.httpGet

描述
HTTPGetAction 描述了基于 HTTP Get 请求的操作。
类型
object
必填
  • port
属性类型描述

主机

字符串

要连接到的主机名,默认为 pod IP。您可能想在 httpHeaders 中设置"主机"。

httpHeaders

array

在请求中设置的自定义标头。HTTP 允许重复的标头。

httpHeaders[]

对象

HTTPHeader 描述了在 HTTP 探测中使用的自定义标头

path

字符串

在 HTTP 服务器上访问的路径。

port

IntOrString

用于访问容器的端口的名称或编号。number 必须在 1 到 65535 之间。名称必须是 IANA_SVC_NAME。

scheme

字符串

用于连接到主机的方案。默认为 HTTP。

可能枚举值: - "HTTP" 表示使用的方案为 http:// - "HTTPS" 表示使用的方案是 https://

3.1.194. .template.spec.initContainers[].livenessProbe.httpGet.httpHeaders

描述
在请求中设置的自定义标头。HTTP 允许重复的标头。
类型
数组

3.1.195. .template.spec.initContainers[].livenessProbe.httpGet.httpHeaders[]

描述
HTTPHeader 描述了在 HTTP 探测中使用的自定义标头
类型
object
必填
  • name
  • value
属性类型描述

name

string

标头字段名称。这将在输出时规范,因此理解 case-variant 名称与相同的标头一样。

value

字符串

标头字段值

3.1.196. .template.spec.initContainers[].livenessProbe.tcpSocket

描述
TCPSocketAction 描述了基于打开套接字的操作
类型
object
必填
  • port
属性类型描述

主机

字符串

可选:要连接到的主机名,默认为 pod IP。

port

IntOrString

用于访问容器的端口的编号或名称。number 必须在 1 到 65535 之间。名称必须是 IANA_SVC_NAME。

3.1.197. .template.spec.initContainers[].ports

描述
从容器公开的端口列表。这里没有指定端口不会阻止公开该端口。所有正在侦听容器内默认"0.0.0.0"地址的端口均可从网络访问。使用策略合并补丁修改阵列可能会破坏数据。如需更多信息,请参阅 https://github.com/kubernetes/kubernetes/issues/108255。无法更新。
类型

3.1.198. 

   

3.1.199. 

   

默认值为 10 秒。最小值为 1。

successThreshold

整数

在失败后,探测至少连续成功会被视为成功。默认为 1。对于存活度和启动,必须为 1。最小值为 1。

tcpSocket

object

TCPSocketAction 描述了基于打开套接字的操作

terminationGracePeriodSeconds

整数

pod 在探测失败时安全终止所需的可选持续时间(以秒为单位)。宽限期是 pod 中运行的进程发送终止信号和进程被强制停止使用 kill 信号的时间(以秒为单位)。为您的进程设置这个值超过预期清理时间。如果这个值是 nil,则使用 pod 的 terminationGracePeriodSeconds。否则,这个值会覆盖 pod 规格提供的值。值必须是非负整数。值为零表示立即通过终止信号停止(没有关闭的机会)。这是一个 beta 字段,需要启用 ProbeTerminationGracePeriod 功能门。如果未设置,则使用最小值为 1. spec.terminationGracePeriodSeconds。

timeoutSeconds

3.1.200. 

   

3.1.201. 

   

3.1.202. 

   

3.1.203. 

3.1.204. 

   

3.1.205. 

   

3.1.206. 

3.1.207. 

   

3.1.208. 

   

3.1.209. 

3.1.210. 

   

3.1.211. 

   

3.1.212. 

   

3.1.213. 

   

3.1.214. 

   

3.1.215. 

   

3.1.216. 

   

3.1.217. 

   

3.1.218. 

   

3.1.219. 

   

3.1.220. 

3.1.221. 

   

3.1.222. 

   

3.1.223. 

3.1.224. 

   

3.1.225. 

3.1.226. 

   

3.1.227. 

   

3.1.228. 

3.1.229. 

   

3.1.230. 

3.1.231. 

   

3.1.232. 

   

3.1.233. 

3.1.234. 

   

3.1.235. 

   

3.1.236. 

   

3.1.237. 

   

3.1.238. 

3.1.239. 

   

3.1.240. 

   

3.1.241. 

3.1.242. 

   

3.1.243. 

3.1.244. 

   

3.1.245. 

3.1.246. 

   

3.1.247. 

   

3.1.248. 

   

3.1.249. 

   

3.1.250. 

   

3.1.251. 

   

3.1.252. 

   

3.1.253. 

   

3.1.254. 

   

3.1.255. 

3.1.256. 

   

3.1.257. 

   

3.1.258. 

   

3.1.259. 

   

3.1.260. 

3.1.261. 

   

3.1.262. 

   

3.1.263. 

   

3.1.264. 

   

3.1.265. 

   

3.1.266. 

   

3.1.267. 

   

3.1.268. 

   

3.1.269. 

   

3.1.270. 

   

3.1.271. 

3.1.272. 

   

3.1.273. 

   

3.1.274. 

   

3.1.275. 

   

3.1.276. 

   

3.1.277. 

   

3.1.278. 

   

3.1.279. 

   

3.1.280. 

   

3.1.281. 

   

3.1.282. 

   

3.1.283. 

   

3.1.284. 

   

3.1.285. 

   

3.1.286. 

   

3.1.287. 

   

3.1.288. 

3.1.289. 

   

3.1.290. 

   

3.1.291. 

3.1.292. 

   

3.1.293. 

   

3.1.294. 

3.1.295. 

   

3.1.296. 

   

3.1.297. 

   

3.1.298. 

   

3.1.299. 

3.1.300. 

   

3.1.301. 

   

3.1.302. 

   

3.1.303. 

   

3.1.304. 

   

3.1.305. 

   

3.1.306. 

   

3.1.307. 

   

3.1.308. 

3.1.309. 

   

3.1.310. 

   

3.1.311. 

   

3.1.312. 

   

Red Hat logoGithubRedditYoutubeTwitter

学习

尝试、购买和销售

社区

关于红帽文档

通过我们的产品和服务,以及可以信赖的内容,帮助红帽用户创新并实现他们的目标。

让开源更具包容性

红帽致力于替换我们的代码、文档和 Web 属性中存在问题的语言。欲了解更多详情,请参阅红帽博客.

關於紅帽

我们提供强化的解决方案,使企业能够更轻松地跨平台和环境(从核心数据中心到网络边缘)工作。

© 2024 Red Hat, Inc.