Pod 是可在主机上运行的容器集合。此资源由客户端创建,并调度到主机上。
Pod 是可在主机上运行的容器集合。此资源由客户端创建,并调度到主机上。
对象
属性 | 类型 | 描述 |
---|---|---|
|
|
APIVersion 定义此对象表示的版本化模式。服务器应将识别的模式转换为最新的内部值,并可能拒绝无法识别的值。更多信息:https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources |
|
|
Kind 是一个字符串值,表示此对象表示的 REST 资源。服务器可以从此客户端提交请求的端点推断出来。无法更新。使用驼峰式命名法。更多信息: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 |
|
|
|
PodSpec 是 Pod 的描述。 |
|
|
PodStatus 表示有关 Pod 状态的信息。状态可能落后于系统的实际状态,特别是如果托管 Pod 的节点无法联系控制平面。 |
PodSpec 是 Pod 的描述。
对象
containers
属性 | 类型 | 描述 |
---|---|---|
|
|
Pod 在节点上相对于 StartTime 允许活动的可选持续时间(以秒为单位),在此时间之后,系统将主动尝试将其标记为失败并终止关联的容器。值必须是正整数。 |
|
|
Affinity 是一组亲和调度规则。 |
|
|
AutomountServiceAccountToken 指示是否应自动挂载服务帐户令牌。 |
|
|
属于 Pod 的容器列表。目前无法添加或删除容器。Pod 中必须至少有一个容器。无法更新。 |
|
|
您想要在 Pod 中运行的单个应用程序容器。 |
|
|
PodDNSConfig 定义 Pod 的 DNS 参数,以及从 DNSPolicy 生成的参数。 |
|
|
设置 Pod 的 DNS 策略。默认为“ClusterFirst”。有效值为“ClusterFirstWithHostNet”、“ClusterFirst”、“Default”或“None”。DNSConfig 中给出的 DNS 参数将与使用 DNSPolicy 选择的策略合并。要同时设置 DNS 选项和 hostNetwork,必须将 DNS 策略显式指定为“ClusterFirstWithHostNet”。 可能的枚举值:- |
|
|
EnableServiceLinks 指示是否应将有关服务的信息注入 Pod 的环境变量中,匹配 Docker 链接的语法。可选:默认为 true。 |
|
|
在此 Pod 中运行的临时容器列表。可以在现有 Pod 中运行临时容器以执行用户启动的操作,例如调试。创建 Pod 时不能指定此列表,并且无法通过更新 Pod 规范来修改它。要向现有 Pod 添加临时容器,请使用 Pod 的 ephemeralcontainers 子资源。 |
|
|
EphemeralContainer 是一个临时容器,您可以将其添加到现有 Pod 中以执行用户启动的活动,例如调试。临时容器没有资源或调度保证,并且在它们退出或 Pod 被移除或重启时不会重启。如果临时容器导致 Pod 超出其资源分配,则 kubelet 可能会驱逐 Pod。 要添加临时容器,请使用现有 Pod 的 ephemeralcontainers 子资源。临时容器不能被删除或重启。 |
|
|
HostAliases 是一个可选的主机和 IP 列表,如果指定,则会注入到 Pod 的 hosts 文件中。 |
|
|
HostAlias 保存 IP 和主机名之间的映射,这些映射将作为条目注入到 Pod 的 hosts 文件中。 |
|
|
使用宿主机 的 ipc 命名空间。可选:默认为 false。 |
|
|
为该 Pod 请求主机网络。使用宿主机 的网络命名空间。如果设置此选项,则必须指定将使用的端口。默认为 false。 |
|
|
使用宿主机 的 pid 命名空间。可选:默认为 false。 |
|
|
使用宿主机 的用户命名空间。可选:默认为 true。如果设置为 true 或未设置,则 Pod 将在主机用户命名空间中运行,这在 Pod 需要仅主机用户命名空间才有的功能(例如,使用 CAP_SYS_MODULE 加载内核模块)时非常有用。设置为 false 时,将为 Pod 创建一个新的用户命名空间。设置为 false 有助于减轻容器逃逸漏洞,即使允许用户以 root 用户身份运行其容器,也不实际拥有主机上的 root 权限。此字段处于 alpha 级别,只有启用 UserNamespacesSupport 功能的服务器才会处理它。 |
|
|
指定 Pod 的主机名。如果未指定,则 Pod 的主机名将设置为系统定义的值。 |
|
|
ImagePullSecrets 是对同一命名空间中用于拉取此 PodSpec 使用的任何镜像的密钥的引用的可选列表。如果指定,这些密钥将传递给各个拉取器实现以供其使用。更多信息:https://kubernetes.ac.cn/docs/concepts/containers/images#specifying-imagepullsecrets-on-a-pod |
|
|
LocalObjectReference 包含足够的信息,可让您在同一命名空间内找到引用的对象。 |
|
|
属于 Pod 的初始化容器列表。初始化容器在启动容器之前按顺序执行。如果任何初始化容器失败,则认为 Pod 失败,并根据其重启策略进行处理。初始化容器或普通容器的名称在所有容器中必须唯一。初始化容器可能没有生命周期操作、就绪探针、存活探针或启动探针。初始化容器的 resourceRequirements 在调度期间通过查找每种资源类型的最高请求/限制,然后使用该值或普通容器总和的最大值来考虑。限制以类似的方式应用于初始化容器。当前无法添加或删除初始化容器。无法更新。更多信息:https://kubernetes.ac.cn/docs/concepts/workloads/pods/init-containers/ |
|
|
您想要在 Pod 中运行的单个应用程序容器。 |
|
|
NodeName 是将此 Pod 调度到特定节点的请求。如果它非空,调度程序只需将此 Pod 调度到该节点,假设它符合资源要求。 |
|
|
NodeSelector 是一个选择器,对于 Pod 适应节点必须为 true。选择器必须匹配节点的标签,Pod 才能调度到该节点。更多信息:https://kubernetes.ac.cn/docs/concepts/configuration/assign-pod-node/ |
|
|
PodOS 定义 Pod 的操作系统参数。 |
|
Overhead 代表与为给定 RuntimeClass 运行 Pod 相关的资源开销。此字段将在准入时由 RuntimeClass 准入控制器自动填充。如果启用 RuntimeClass 准入控制器,则不得在 Pod 创建请求中设置 overhead。RuntimeClass 准入控制器将拒绝已设置 overhead 的 Pod 创建请求。如果在 PodSpec 中配置和选择了 RuntimeClass,则 Overhead 将设置为相应 RuntimeClass 中定义的值,否则它将保持未设置状态并被视为零。更多信息:https://git.k8s.io/enhancements/keps/sig-node/688-pod-overhead/README.md |
|
|
|
PreemptionPolicy 是抢占具有较低优先级的 Pod 的策略。Never、PreemptLowerPriority 之一。如果未设置,则默认为 PreemptLowerPriority。 可能的枚举值:- |
|
|
优先级值。各种系统组件使用此字段来查找 Pod 的优先级。启用优先级准入控制器时,它会阻止用户设置此字段。准入控制器从 PriorityClassName 填充此字段。值越高,优先级越高。 |
|
|
如果指定,则指示 Pod 的优先级。“system-node-critical”和“system-cluster-critical”是两个特殊的关键字,它们表示最高优先级,前者是最高优先级。任何其他名称都必须通过创建具有该名称的 PriorityClass 对象来定义。如果未指定,则如果没有默认值,则 Pod 优先级将为默认值或零。 |
|
|
如果指定,所有就绪门将用于评估 Pod 就绪状态。当所有容器都就绪并且就绪门中指定的所有条件的状态都等于“True”时,Pod 就绪。更多信息:https://git.k8s.io/enhancements/keps/sig-network/580-pod-readiness-gates |
|
|
PodReadinessGate 包含对 Pod 条件的引用。 |
|
|
ResourceClaims 定义在允许 Pod 启动之前必须分配和保留哪些 ResourceClaims。这些资源将通过名称提供给使用它们的容器。 这是一个 alpha 字段,需要启用 DynamicResourceAllocation 功能网关。 此字段是不可变的。 |
|
|
PodResourceClaim 通过 ClaimSource 引用恰好一个 ResourceClaim。它向其添加一个名称,该名称唯一标识 Pod 内的 ResourceClaim。需要访问 ResourceClaim 的容器使用此名称引用它。 |
|
|
Pod 内所有容器的重启策略。Always、OnFailure、Never 之一。在某些情况下,可能只允许这些值的一个子集。默认为 Always。更多信息:https://kubernetes.ac.cn/docs/concepts/workloads/pods/pod-lifecycle/#restart-policy 可能的枚举值:- |
|
|
RuntimeClassName 指的是 node.k8s.io 组中的 RuntimeClass 对象,应使用该对象来运行此 Pod。如果没有 RuntimeClass 资源与命名类匹配,则不会运行 Pod。如果未设置或为空,则将使用“legacy”RuntimeClass,这是一个具有空定义的隐式类,它使用默认运行时处理程序。更多信息:https://git.k8s.io/enhancements/keps/sig-node/585-runtime-class |
|
|
如果指定,则 Pod 将由指定的调度程序调度。如果未指定,则 Pod 将由默认调度程序调度。 |
|
|
SchedulingGates 是一个不透明的值列表,如果指定,则会阻止调度 Pod。如果 SchedulingGates 不为空,则 Pod 将保持在 SchedulingGated 状态,并且调度程序不会尝试调度 Pod。 SchedulingGates 只能在 Pod 创建时设置,之后才能删除。 |
|
|
PodSchedulingGate 与 Pod 关联以保护其调度。 |
|
|
PodSecurityContext 包含 Pod 级别的安全属性和常见的容器设置。某些字段也存在于 container.securityContext 中。container.securityContext 的字段值优先于 PodSecurityContext 的字段值。 |
|
|
DeprecatedServiceAccount 是 ServiceAccountName 的已弃用别名。已弃用:使用 serviceAccountName 代替。 |
|
|
ServiceAccountName 是用于运行此 Pod 的 ServiceAccount 的名称。更多信息:https://kubernetes.ac.cn/docs/tasks/configure-pod-container/configure-service-account/ |
|
|
如果为 true,则 Pod 的主机名将配置为 Pod 的 FQDN,而不是叶子名称(默认值)。在 Linux 容器中,这意味着在内核的主机名字段(struct utsname 的 nodename 字段)中设置 FQDN。在 Windows 容器中,这意味着将注册表项 HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Tcpip\Parameters 的主机名注册表值设置为 FQDN。如果 Pod 没有 FQDN,则此设置无效。默认为 false。 |
|
|
在 Pod 中的所有容器之间共享单个进程命名空间。设置此选项后,容器将能够查看和发送信号给同一 Pod 中其他容器的进程,并且每个容器中的第一个进程不会被分配 PID 1。HostPID 和 ShareProcessNamespace 不能同时设置。可选:默认为 false。 |
|
|
如果指定,则完全限定的 Pod 主机名将为“<hostname>.<subdomain>.<pod namespace>.svc.<cluster domain>”。如果未指定,则 Pod 将根本没有域名。 |
|
|
Pod 需要优雅终止的可选持续时间(秒)。可以在删除请求中减少此值。值必须是非负整数。值为零表示通过 kill 信号立即停止(没有关闭机会)。如果此值为 nil,则将使用默认的宽限期。宽限期是在向 Pod 中运行的进程发送终止信号与使用 kill 信号强制停止进程之间的时间间隔(秒)。将此值设置为超过进程的预期清理时间的长度。默认为 30 秒。 |
|
|
如果指定,则为 Pod 的容忍度。 |
|
|
此容忍度附加到的 Pod 容忍任何与三元组 <key,value,effect> 匹配的污点,使用匹配运算符 <operator>。 |
|
|
TopologySpreadConstraints 描述了一组 Pod 如何跨拓扑域分布。调度器将以遵守这些约束的方式调度 Pod。所有 topologySpreadConstraints 都是 ANDed。 |
|
|
TopologySpreadConstraint 指定如何在给定的拓扑中分散匹配的 Pod。 |
|
|
Pod 中的容器可以挂载的卷列表。更多信息:https://kubernetes.ac.cn/docs/concepts/storage/volumes |
|
|
Volume 代表 Pod 中一个命名的卷,Pod 中的任何容器都可以访问它。 |
Affinity 是一组亲和调度规则。
对象
属性 | 类型 | 描述 |
---|---|---|
|
|
节点亲和性是一组节点亲和性调度规则。 |
|
|
Pod 亲和性是一组 Pod 间亲和性调度规则。 |
|
|
Pod 反亲和性是一组 Pod 间反亲和性调度规则。 |
节点亲和性是一组节点亲和性调度规则。
对象
属性 | 类型 | 描述 |
---|---|---|
|
|
调度器更倾向于将 Pod 调度到满足此字段指定的亲和性表达式的节点,但它可以选择违反一个或多个表达式的节点。最优选的节点是权重总和最大的节点,即对于满足所有调度要求(资源请求、requiredDuringScheduling 亲和性表达式等)的每个节点,通过迭代此字段的元素并在节点与相应的 matchExpressions 匹配时向总和添加“权重”来计算总和;总和最高的节点(或节点)是最优选的。 |
|
|
一个空的优先调度项匹配所有具有隐式权重 0 的对象(即它是无操作的)。一个 null 优先调度项不匹配任何对象(即也是无操作的)。 |
|
|
节点选择器表示对一组节点进行的一个或多个标签查询结果的并集;也就是说,它表示节点选择器术语表示的选择器的 OR。 |
调度器更倾向于将 Pod 调度到满足此字段指定的亲和性表达式的节点,但它可以选择违反一个或多个表达式的节点。最优选的节点是权重总和最大的节点,即对于满足所有调度要求(资源请求、requiredDuringScheduling 亲和性表达式等)的每个节点,通过迭代此字段的元素并在节点与相应的 matchExpressions 匹配时向总和添加“权重”来计算总和;总和最高的节点(或节点)是最优选的。
数组
一个空的优先调度项匹配所有具有隐式权重 0 的对象(即它是无操作的)。一个 null 优先调度项不匹配任何对象(即也是无操作的)。
对象
weight
preference
属性 | 类型 | 描述 |
---|---|---|
|
|
null 或空的节点选择器项不匹配任何对象。它们的条件是 ANDed。TopologySelectorTerm 类型实现了 NodeSelectorTerm 的一个子集。 |
|
|
与匹配相应的 nodeSelectorTerm 相关的权重,范围为 1-100。 |
null 或空的节点选择器项不匹配任何对象。它们的条件是 ANDed。TopologySelectorTerm 类型实现了 NodeSelectorTerm 的一个子集。
对象
属性 | 类型 | 描述 |
---|---|---|
|
|
根据节点标签的一系列节点选择器要求。 |
|
|
节点选择器要求是一个选择器,它包含值、键和一个关联键和值的运算符。 |
|
|
根据节点字段的一系列节点选择器要求。 |
|
|
节点选择器要求是一个选择器,它包含值、键和一个关联键和值的运算符。 |
根据节点标签的一系列节点选择器要求。
数组
节点选择器要求是一个选择器,它包含值、键和一个关联键和值的运算符。
对象
key
operator
属性 | 类型 | 描述 |
---|---|---|
|
|
选择器应用到的标签键。 |
|
|
表示键与一组值的关系。有效的运算符是 In、NotIn、Exists、DoesNotExist、Gt 和 Lt。 可能的枚举值:- |
|
|
字符串值数组。如果运算符是 In 或 NotIn,则 values 数组必须是非空的。如果运算符是 Exists 或 DoesNotExist,则 values 数组必须为空。如果运算符是 Gt 或 Lt,则 values 数组必须只有一个元素,该元素将被解释为整数。此数组在策略性合并补丁期间被替换。 |
根据节点字段的一系列节点选择器要求。
数组
节点选择器要求是一个选择器,它包含值、键和一个关联键和值的运算符。
对象
key
operator
属性 | 类型 | 描述 |
---|---|---|
|
|
选择器应用到的标签键。 |
|
|
表示键与一组值的关系。有效的运算符是 In、NotIn、Exists、DoesNotExist、Gt 和 Lt。 可能的枚举值:- |
|
|
字符串值数组。如果运算符是 In 或 NotIn,则 values 数组必须是非空的。如果运算符是 Exists 或 DoesNotExist,则 values 数组必须为空。如果运算符是 Gt 或 Lt,则 values 数组必须只有一个元素,该元素将被解释为整数。此数组在策略性合并补丁期间被替换。 |
节点选择器表示对一组节点进行的一个或多个标签查询结果的并集;也就是说,它表示节点选择器术语表示的选择器的 OR。
对象
nodeSelectorTerms
属性 | 类型 | 描述 |
---|---|---|
|
|
必需。节点选择器项列表。这些项是 ORed。 |
|
|
null 或空的节点选择器项不匹配任何对象。它们的条件是 ANDed。TopologySelectorTerm 类型实现了 NodeSelectorTerm 的一个子集。 |
必需。节点选择器项列表。这些项是 ORed。
数组
null 或空的节点选择器项不匹配任何对象。它们的条件是 ANDed。TopologySelectorTerm 类型实现了 NodeSelectorTerm 的一个子集。
对象
属性 | 类型 | 描述 |
---|---|---|
|
|
根据节点标签的一系列节点选择器要求。 |
|
|
节点选择器要求是一个选择器,它包含值、键和一个关联键和值的运算符。 |
|
|
根据节点字段的一系列节点选择器要求。 |
|
|
节点选择器要求是一个选择器,它包含值、键和一个关联键和值的运算符。 |
根据节点标签的一系列节点选择器要求。
数组
节点选择器要求是一个选择器,它包含值、键和一个关联键和值的运算符。
对象
key
operator
属性 | 类型 | 描述 |
---|---|---|
|
|
选择器应用到的标签键。 |
|
|
表示键与一组值的关系。有效的运算符是 In、NotIn、Exists、DoesNotExist、Gt 和 Lt。 可能的枚举值:- |
|
|
字符串值数组。如果运算符是 In 或 NotIn,则 values 数组必须是非空的。如果运算符是 Exists 或 DoesNotExist,则 values 数组必须为空。如果运算符是 Gt 或 Lt,则 values 数组必须只有一个元素,该元素将被解释为整数。此数组在策略性合并补丁期间被替换。 |
根据节点字段的一系列节点选择器要求。
数组
节点选择器要求是一个选择器,它包含值、键和一个关联键和值的运算符。
对象
key
operator
属性 | 类型 | 描述 |
---|---|---|
|
|
选择器应用到的标签键。 |
|
|
表示键与一组值的关系。有效的运算符是 In、NotIn、Exists、DoesNotExist、Gt 和 Lt。 可能的枚举值:- |
|
|
字符串值数组。如果运算符是 In 或 NotIn,则 values 数组必须是非空的。如果运算符是 Exists 或 DoesNotExist,则 values 数组必须为空。如果运算符是 Gt 或 Lt,则 values 数组必须只有一个元素,该元素将被解释为整数。此数组在策略性合并补丁期间被替换。 |
Pod 亲和性是一组 Pod 间亲和性调度规则。
对象
属性 | 类型 | 描述 |
---|---|---|
|
|
调度器会优先将 Pod 调度到满足此字段中指定的亲和性表达式的节点上,但它可以选择违反一个或多个表达式的节点。最优选的节点是权重总和最大的节点,即对于满足所有调度要求(资源请求、requiredDuringScheduling 亲和性表达式等)的每个节点,通过迭代此字段的元素并根据节点上是否存在与相应 podAffinityTerm 匹配的 Pod 来将“weight”添加到总和中来计算总和;总和最高的节点是最优选的节点。 |
|
|
所有匹配的 WeightedPodAffinityTerm 字段的权重都会按节点相加,以找到最优选的节点。 |
|
|
如果在调度时间未满足此字段指定的亲和性要求,则 Pod 将不会被调度到该节点上。如果在 Pod 执行期间的某个时间点(例如,由于 Pod 标签更新)不再满足此字段指定的亲和性要求,则系统可能会也可能不会尝试最终将 Pod 从其节点逐出。当存在多个元素时,将对每个 podAffinityTerm 对应的节点列表进行交集运算,即必须满足所有条件。 |
|
|
定义一组 Pod(即相对于给定命名空间匹配 labelSelector 的那些 Pod),此 Pod 应该与这些 Pod 共同定位(亲和性)或不共同定位(反亲和性),其中共同定位定义为运行在标签键为 ` |
调度器会优先将 Pod 调度到满足此字段中指定的亲和性表达式的节点上,但它可以选择违反一个或多个表达式的节点。最优选的节点是权重总和最大的节点,即对于满足所有调度要求(资源请求、requiredDuringScheduling 亲和性表达式等)的每个节点,通过迭代此字段的元素并根据节点上是否存在与相应 podAffinityTerm 匹配的 Pod 来将“weight”添加到总和中来计算总和;总和最高的节点是最优选的节点。
数组
所有匹配的 WeightedPodAffinityTerm 字段的权重都会按节点相加,以找到最优选的节点。
对象
weight
podAffinityTerm
属性 | 类型 | 描述 |
---|---|---|
|
|
定义一组 Pod(即相对于给定命名空间匹配 labelSelector 的那些 Pod),此 Pod 应该与这些 Pod 共同定位(亲和性)或不共同定位(反亲和性),其中共同定位定义为运行在标签键为 ` |
|
|
与匹配相应 podAffinityTerm 相关的权重,范围为 1-100。 |
定义一组 Pod(即相对于给定命名空间匹配 labelSelector 的那些 Pod),此 Pod 应该与这些 Pod 共同定位(亲和性)或不共同定位(反亲和性),其中共同定位定义为运行在标签键为 `
对象
topologyKey
属性 | 类型 | 描述 |
---|---|---|
|
对一组资源(在本例中为 Pod)执行标签查询。如果为 null,则此 PodAffinityTerm 与任何 Pod 都不匹配。 |
|
|
|
MatchLabelKeys 是一组 Pod 标签键,用于选择哪些 Pod 将被考虑在内。这些键用于从传入的 Pod 标签中查找值,这些键值标签与 |
|
|
MismatchLabelKeys 是一组 Pod 标签键,用于选择哪些 Pod 将被考虑在内。这些键用于从传入的 Pod 标签中查找值,这些键值标签与 |
|
对术语适用的命名空间集执行标签查询。该术语应用于此字段选择的命名空间和 namespaces 字段中列出的命名空间的并集。null 选择器和 null 或空的命名空间列表表示“此 Pod 的命名空间”。空选择器 ({}) 匹配所有命名空间。 |
|
|
|
namespaces 指定术语适用的命名空间名称的静态列表。该术语应用于此字段中列出的命名空间和 namespaceSelector 选择的命名空间的并集。null 或空的命名空间列表和 null namespaceSelector 表示“此 Pod 的命名空间”。 |
|
|
此 Pod 应该与在指定命名空间中匹配 labelSelector 的 Pod 共同定位(亲和性)或不共同定位(反亲和性),其中共同定位定义为运行在标签键为 topologyKey 的值与任何选定 Pod 运行的任何节点的标签值匹配的节点上。不允许使用空的 topologyKey。 |
如果在调度时间未满足此字段指定的亲和性要求,则 Pod 将不会被调度到该节点上。如果在 Pod 执行期间的某个时间点(例如,由于 Pod 标签更新)不再满足此字段指定的亲和性要求,则系统可能会也可能不会尝试最终将 Pod 从其节点逐出。当存在多个元素时,将对每个 podAffinityTerm 对应的节点列表进行交集运算,即必须满足所有条件。
数组
定义一组 Pod(即相对于给定命名空间匹配 labelSelector 的那些 Pod),此 Pod 应该与这些 Pod 共同定位(亲和性)或不共同定位(反亲和性),其中共同定位定义为运行在标签键为 `
对象
topologyKey
属性 | 类型 | 描述 |
---|---|---|
|
对一组资源(在本例中为 Pod)执行标签查询。如果为 null,则此 PodAffinityTerm 与任何 Pod 都不匹配。 |
|
|
|
MatchLabelKeys 是一组 Pod 标签键,用于选择哪些 Pod 将被考虑在内。这些键用于从传入的 Pod 标签中查找值,这些键值标签与 |
|
|
MismatchLabelKeys 是一组 Pod 标签键,用于选择哪些 Pod 将被考虑在内。这些键用于从传入的 Pod 标签中查找值,这些键值标签与 |
|
对术语适用的命名空间集执行标签查询。该术语应用于此字段选择的命名空间和 namespaces 字段中列出的命名空间的并集。null 选择器和 null 或空的命名空间列表表示“此 Pod 的命名空间”。空选择器 ({}) 匹配所有命名空间。 |
|
|
|
namespaces 指定术语适用的命名空间名称的静态列表。该术语应用于此字段中列出的命名空间和 namespaceSelector 选择的命名空间的并集。null 或空的命名空间列表和 null namespaceSelector 表示“此 Pod 的命名空间”。 |
|
|
此 Pod 应该与在指定命名空间中匹配 labelSelector 的 Pod 共同定位(亲和性)或不共同定位(反亲和性),其中共同定位定义为运行在标签键为 topologyKey 的值与任何选定 Pod 运行的任何节点的标签值匹配的节点上。不允许使用空的 topologyKey。 |
Pod 反亲和性是一组 Pod 间反亲和性调度规则。
对象
属性 | 类型 | 描述 |
---|---|---|
|
|
调度器会优先将 Pod 调度到满足此字段中指定的反亲和性表达式的节点上,但它可以选择违反一个或多个表达式的节点。最优选的节点是权重总和最大的节点,即对于满足所有调度要求(资源请求、requiredDuringScheduling 反亲和性表达式等)的每个节点,通过迭代此字段的元素并根据节点上是否存在与相应 podAffinityTerm 匹配的 Pod 来将“weight”添加到总和中来计算总和;总和最高的节点是最优选的节点。 |
|
|
所有匹配的 WeightedPodAffinityTerm 字段的权重都会按节点相加,以找到最优选的节点。 |
|
|
如果在调度时间未满足此字段指定的反亲和性要求,则 Pod 将不会被调度到该节点上。如果在 Pod 执行期间的某个时间点(例如,由于 Pod 标签更新)不再满足此字段指定的反亲和性要求,则系统可能会也可能不会尝试最终将 Pod 从其节点逐出。当存在多个元素时,将对每个 podAffinityTerm 对应的节点列表进行交集运算,即必须满足所有条件。 |
|
|
定义一组 Pod(即相对于给定命名空间匹配 labelSelector 的那些 Pod),此 Pod 应该与这些 Pod 共同定位(亲和性)或不共同定位(反亲和性),其中共同定位定义为运行在标签键为 ` |
调度器会优先将 Pod 调度到满足此字段中指定的反亲和性表达式的节点上,但它可以选择违反一个或多个表达式的节点。最优选的节点是权重总和最大的节点,即对于满足所有调度要求(资源请求、requiredDuringScheduling 反亲和性表达式等)的每个节点,通过迭代此字段的元素并根据节点上是否存在与相应 podAffinityTerm 匹配的 Pod 来将“weight”添加到总和中来计算总和;总和最高的节点是最优选的节点。
数组
所有匹配的 WeightedPodAffinityTerm 字段的权重都会按节点相加,以找到最优选的节点。
对象
weight
podAffinityTerm
属性 | 类型 | 描述 |
---|---|---|
|
|
定义一组 Pod(即相对于给定命名空间匹配 labelSelector 的那些 Pod),此 Pod 应该与这些 Pod 共同定位(亲和性)或不共同定位(反亲和性),其中共同定位定义为运行在标签键为 ` |
|
|
与匹配相应 podAffinityTerm 相关的权重,范围为 1-100。 |
定义一组 Pod(即相对于给定命名空间匹配 labelSelector 的那些 Pod),此 Pod 应该与这些 Pod 共同定位(亲和性)或不共同定位(反亲和性),其中共同定位定义为运行在标签键为 `
对象
topologyKey
属性 | 类型 | 描述 |
---|---|---|
|
对一组资源(在本例中为 Pod)执行标签查询。如果为 null,则此 PodAffinityTerm 与任何 Pod 都不匹配。 |
|
|
|
MatchLabelKeys 是一组 Pod 标签键,用于选择哪些 Pod 将被考虑在内。这些键用于从传入的 Pod 标签中查找值,这些键值标签与 |
|
|
MismatchLabelKeys 是一组 Pod 标签键,用于选择哪些 Pod 将被考虑在内。这些键用于从传入的 Pod 标签中查找值,这些键值标签与 |
|
对术语适用的命名空间集执行标签查询。该术语应用于此字段选择的命名空间和 namespaces 字段中列出的命名空间的并集。null 选择器和 null 或空的命名空间列表表示“此 Pod 的命名空间”。空选择器 ({}) 匹配所有命名空间。 |
|
|
|
namespaces 指定术语适用的命名空间名称的静态列表。该术语应用于此字段中列出的命名空间和 namespaceSelector 选择的命名空间的并集。null 或空的命名空间列表和 null namespaceSelector 表示“此 Pod 的命名空间”。 |
|
|
此 Pod 应该与在指定命名空间中匹配 labelSelector 的 Pod 共同定位(亲和性)或不共同定位(反亲和性),其中共同定位定义为运行在标签键为 topologyKey 的值与任何选定 Pod 运行的任何节点的标签值匹配的节点上。不允许使用空的 topologyKey。 |
如果在调度时间未满足此字段指定的反亲和性要求,则 Pod 将不会被调度到该节点上。如果在 Pod 执行期间的某个时间点(例如,由于 Pod 标签更新)不再满足此字段指定的反亲和性要求,则系统可能会也可能不会尝试最终将 Pod 从其节点逐出。当存在多个元素时,将对每个 podAffinityTerm 对应的节点列表进行交集运算,即必须满足所有条件。
数组
定义一组 Pod(即相对于给定命名空间匹配 labelSelector 的那些 Pod),此 Pod 应该与这些 Pod 共同定位(亲和性)或不共同定位(反亲和性),其中共同定位定义为运行在标签键为 `
对象
topologyKey
属性 | 类型 | 描述 |
---|---|---|
|
对一组资源(在本例中为 Pod)执行标签查询。如果为 null,则此 PodAffinityTerm 与任何 Pod 都不匹配。 |
|
|
|
MatchLabelKeys 是一组 Pod 标签键,用于选择哪些 Pod 将被考虑在内。这些键用于从传入的 Pod 标签中查找值,这些键值标签与 |
|
|
MismatchLabelKeys 是一组 Pod 标签键,用于选择哪些 Pod 将被考虑在内。这些键用于从传入的 Pod 标签中查找值,这些键值标签与 |
|
对术语适用的命名空间集执行标签查询。该术语应用于此字段选择的命名空间和 namespaces 字段中列出的命名空间的并集。null 选择器和 null 或空的命名空间列表表示“此 Pod 的命名空间”。空选择器 ({}) 匹配所有命名空间。 |
|
|
|
namespaces 指定术语适用的命名空间名称的静态列表。该术语应用于此字段中列出的命名空间和 namespaceSelector 选择的命名空间的并集。null 或空的命名空间列表和 null namespaceSelector 表示“此 Pod 的命名空间”。 |
|
|
此 Pod 应该与在指定命名空间中匹配 labelSelector 的 Pod 共同定位(亲和性)或不共同定位(反亲和性),其中共同定位定义为运行在标签键为 topologyKey 的值与任何选定 Pod 运行的任何节点的标签值匹配的节点上。不允许使用空的 topologyKey。 |
您想要在 Pod 中运行的单个应用程序容器。
对象
name
属性 | 类型 | 描述 |
---|---|---|
|
|
入口点的参数。如果未提供此参数,则使用容器镜像的 CMD。变量引用 $(VAR_NAME) 使用容器的环境进行扩展。如果无法解析变量,则输入字符串中的引用将保持不变。双美元符号将简化为单个美元符号,允许转义 $(VAR_NAME) 语法:即“(VAR_NAME)”将生成字符串字面量“$(VAR_NAME)”。转义的引用将永远不会扩展,无论变量是否存在。 |
|
|
入口点数组。不会在 shell 中执行。如果未提供此项,则使用容器镜像的 ENTRYPOINT。变量引用 $(VAR_NAME) 将使用容器的环境进行扩展。如果无法解析变量,则输入字符串中的引用将保持不变。双美元符号将减少为单个美元符号 $,这允许转义 $(VAR_NAME) 语法:即“$(VAR_NAME)”将生成字符串字面量“$(VAR_NAME)”。转义的引用永远不会被扩展,无论变量是否存在。 |
|
|
要在容器中设置的环境变量列表。无法更新。 |
|
|
EnvVar 表示容器中存在的环境变量。 |
|
|
用于填充容器中环境变量的源列表。源中定义的键必须是 C_IDENTIFIER。所有无效的键都将在容器启动时作为事件报告。当一个键在多个源中存在时,最后一个源关联的值将优先。具有重复键的 Env 定义的值将优先。无法更新。 |
|
|
EnvFromSource 表示一组 ConfigMap 的来源。 |
|
|
容器镜像名称。更多信息:https://kubernetes.ac.cn/docs/concepts/containers/images 此字段是可选的,允许更高级别的配置管理在像 Deployments 和 StatefulSets 这样的工作负载控制器中默认或覆盖容器镜像。 |
|
|
镜像拉取策略。Always、Never、IfNotPresent 之一。如果指定了 :latest 标签,则默认为 Always,否则为 IfNotPresent。无法更新。更多信息:https://kubernetes.ac.cn/docs/concepts/containers/images#updating-images 可能的枚举值:- |
|
|
Lifecycle 描述了管理系统应该对容器生命周期事件采取的操作。对于 PostStart 和 PreStop 生命周期处理程序,容器的管理会阻塞直到操作完成,除非容器进程失败,在这种情况下处理程序将被中止。 |
|
|
Probe 描述了对容器执行的健康检查,以确定它是否存活或准备好接收流量。 |
|
|
指定为 DNS_LABEL 的容器名称。pod 中的每个容器都必须具有唯一的名称 (DNS_LABEL)。无法更新。 |
|
|
要从容器中公开的端口列表。此处不指定端口并不会阻止该端口被公开。容器内部侦听默认“0.0.0.0”地址的任何端口都将可从网络访问。使用战略合并补丁修改此数组可能会损坏数据。更多信息参见 https://github.com/kubernetes/kubernetes/issues/108255。无法更新。 |
|
|
ContainerPort 表示单个容器中的网络端口。 |
|
|
Probe 描述了对容器执行的健康检查,以确定它是否存活或准备好接收流量。 |
|
|
容器的资源调整策略。 |
|
|
ContainerResizePolicy 表示容器的资源调整策略。 |
|
|
ResourceRequirements 描述计算资源需求。 |
|
|
RestartPolicy 定义 pod 中各个容器的重启行为。此字段可能仅针对 init 容器设置,并且唯一允许的值是“Always”。对于非 init 容器或未指定此字段时,重启行为由 Pod 的重启策略和容器类型定义。将 init 容器的 RestartPolicy 设置为“Always”将产生以下效果:此 init 容器将在退出时持续重启,直到所有常规容器都终止。一旦所有常规容器都已完成,所有具有 restartPolicy“Always”的 init 容器都将关闭。此生命周期与普通 init 容器不同,通常被称为“sidecar”容器。尽管此 init 容器仍在 init 容器序列中启动,但在继续下一个 init 容器之前,它不会等待容器完成。相反,下一个 init 容器会在启动此 init 容器后立即启动,或者在任何 startupProbe 成功完成之后启动。 |
|
|
SecurityContext 包含将应用于容器的安全配置。某些字段同时存在于 SecurityContext 和 PodSecurityContext 中。当两者都设置时,SecurityContext 中的值优先。 |
|
|
Probe 描述了对容器执行的健康检查,以确定它是否存活或准备好接收流量。 |
|
|
此容器是否应在容器运行时分配 stdin 的缓冲区。如果未设置此项,则容器中从 stdin 读取将始终导致 EOF。默认为 false。 |
|
|
容器运行时是否应在单个附加操作打开 stdin 通道后关闭它。当 stdin 为 true 时,stdin 流将在多个附加会话中保持打开状态。如果 stdinOnce 设置为 true,则 stdin 在容器启动时打开,在第一个客户端附加到 stdin 之前为空,然后保持打开状态并接受数据,直到客户端断开连接,此时 stdin 关闭并保持关闭状态,直到容器重新启动。如果此标志为 false,则从 stdin 读取的容器进程将永远不会收到 EOF。默认为 false。 |
|
|
可选:将容器终止消息写入的文件安装到容器文件系统的路径。写入的消息旨在简短地显示最终状态,例如断言失败消息。如果大于 4096 字节,则将被节点截断。所有容器的总消息长度将限制为 12kb。默认为 /dev/termination-log。无法更新。 |
|
|
指示如何填充终止消息。File 将使用 terminationMessagePath 的内容在成功和失败时填充容器状态消息。FallbackToLogsOnError 如果终止消息文件为空且容器以错误退出,则将使用容器日志输出的最后一段。日志输出限制为 2048 字节或 80 行,取较小者。默认为 File。无法更新。 可能的枚举值:- |
|
|
此容器是否应为自己分配一个 TTY,也需要 'stdin' 为 true。默认为 false。 |
|
|
volumeDevices 是容器要使用的块设备列表。 |
|
|
volumeDevice 描述了容器内原始块设备的映射。 |
|
|
要挂载到容器文件系统的 Pod 卷。无法更新。 |
|
|
VolumeMount 描述了在容器内挂载卷。 |
|
|
容器的工作目录。如果未指定,将使用容器运行时的默认值,这可能在容器镜像中配置。无法更新。 |
EnvVar 表示容器中存在的环境变量。
对象
name
属性 | 类型 | 描述 |
---|---|---|
|
|
环境变量的名称。必须是 C_IDENTIFIER。 |
|
|
变量引用 $(VAR_NAME) 使用容器中先前定义的环境变量和任何服务环境变量进行扩展。如果无法解析变量,则输入字符串中的引用将保持不变。双美元符号将减少为单个美元符号,允许转义 $(VAR_NAME) 语法:即“(VAR_NAME)”将生成字符串字面量“$(VAR_NAME)”。无论变量是否存在,转义的引用都不会被扩展。默认为 ""。 |
|
|
EnvVarSource 代表 EnvVar 值的来源。 |
EnvVarSource 代表 EnvVar 值的来源。
对象
属性 | 类型 | 描述 |
---|---|---|
|
|
从 ConfigMap 中选择一个键。 |
|
|
ObjectFieldSelector 选择对象的 APIVersioned 字段。 |
|
|
ResourceFieldSelector 代表容器资源(cpu,内存)及其输出格式 |
|
|
SecretKeySelector 选择 Secret 的一个键。 |
从 ConfigMap 中选择一个键。
对象
key
属性 | 类型 | 描述 |
---|---|---|
|
|
要选择的键。 |
|
|
引用的名称。此字段实际上是必需的,但由于向后兼容性,允许为空。此类型的实例在此处为空值几乎肯定是错误的。更多信息:https://kubernetes.ac.cn/docs/concepts/overview/working-with-objects/names/#names |
|
|
指定是否必须定义 ConfigMap 或其键 |
ObjectFieldSelector 选择对象的 APIVersioned 字段。
对象
fieldPath
属性 | 类型 | 描述 |
---|---|---|
|
|
FieldPath 以其编写的模式版本,默认为“v1”。 |
|
|
在指定的 API 版本中选择字段的路径。 |
ResourceFieldSelector 代表容器资源(cpu,内存)及其输出格式
对象
resource
属性 | 类型 | 描述 |
---|---|---|
|
|
容器名称:卷必需,环境变量可选 |
|
指定公开资源的输出格式,默认为“1” |
|
|
|
必需:要选择的资源 |
SecretKeySelector 选择 Secret 的一个键。
对象
key
属性 | 类型 | 描述 |
---|---|---|
|
|
要从中选择的密钥的密钥。必须是有效的密钥。 |
|
|
引用的名称。此字段实际上是必需的,但由于向后兼容性,允许为空。此类型的实例在此处为空值几乎肯定是错误的。更多信息:https://kubernetes.ac.cn/docs/concepts/overview/working-with-objects/names/#names |
|
|
指定是否必须定义 Secret 或其键 |
用于填充容器中环境变量的源列表。源中定义的键必须是 C_IDENTIFIER。所有无效的键都将在容器启动时作为事件报告。当一个键在多个源中存在时,最后一个源关联的值将优先。具有重复键的 Env 定义的值将优先。无法更新。
数组
EnvFromSource 表示一组 ConfigMap 的来源。
对象
属性 | 类型 | 描述 |
---|---|---|
|
|
ConfigMapEnvSource 选择一个 ConfigMap 来填充环境变量。 目标 ConfigMap 的 Data 字段的内容将表示键值对作为环境变量。 |
|
|
一个可选的标识符,用于在 ConfigMap 中的每个键之前添加。必须是 C_IDENTIFIER。 |
|
|
SecretEnvSource 选择一个 Secret 来填充环境变量。 目标 Secret 的 Data 字段的内容将表示键值对作为环境变量。 |
ConfigMapEnvSource 选择一个 ConfigMap 来填充环境变量。
目标 ConfigMap 的 Data 字段的内容将表示键值对作为环境变量。
对象
属性 | 类型 | 描述 |
---|---|---|
|
|
引用的名称。此字段实际上是必需的,但由于向后兼容性,允许为空。此类型的实例在此处为空值几乎肯定是错误的。更多信息:https://kubernetes.ac.cn/docs/concepts/overview/working-with-objects/names/#names |
|
|
指定是否必须定义 ConfigMap |
SecretEnvSource 选择一个 Secret 来填充环境变量。
目标 Secret 的 Data 字段的内容将表示键值对作为环境变量。
对象
属性 | 类型 | 描述 |
---|---|---|
|
|
引用的名称。此字段实际上是必需的,但由于向后兼容性,允许为空。此类型的实例在此处为空值几乎肯定是错误的。更多信息:https://kubernetes.ac.cn/docs/concepts/overview/working-with-objects/names/#names |
|
|
指定是否必须定义 Secret |
Lifecycle 描述了管理系统应该对容器生命周期事件采取的操作。对于 PostStart 和 PreStop 生命周期处理程序,容器的管理会阻塞直到操作完成,除非容器进程失败,在这种情况下处理程序将被中止。
对象
属性 | 类型 | 描述 |
---|---|---|
|
|
LifecycleHandler 定义生命周期挂钩中应采取的特定操作。必须指定一个且只有一个字段,TCPSocket 除外。 |
|
|
LifecycleHandler 定义生命周期挂钩中应采取的特定操作。必须指定一个且只有一个字段,TCPSocket 除外。 |
LifecycleHandler 定义生命周期挂钩中应采取的特定操作。必须指定一个且只有一个字段,TCPSocket 除外。
对象
属性 | 类型 | 描述 |
---|---|---|
|
|
ExecAction 描述“在容器中运行”操作。 |
|
|
HTTPGetAction 描述基于 HTTP Get 请求的操作。 |
|
|
SleepAction 描述“睡眠”操作。 |
|
|
TCPSocketAction 描述基于打开套接字的操作 |
ExecAction 描述“在容器中运行”操作。
对象
属性 | 类型 | 描述 |
---|---|---|
|
|
Command 是在容器内执行的命令行,命令的工作目录是容器文件系统中的根目录('/')。该命令只是简单地执行,它不会在 shell 内运行,因此传统的 shell 指令('|' 等)将不起作用。要使用 shell,需要显式调用该 shell。退出状态为 0 被视为活动/健康,非零为不健康。 |
HTTPGetAction 描述基于 HTTP Get 请求的操作。
对象
port
属性 | 类型 | 描述 |
---|---|---|
|
|
要连接到的主机名,默认为 Pod IP。您可能希望在 httpHeaders 中设置“Host”。 |
|
|
要在请求中设置的自定义标头。HTTP 允许重复标头。 |
|
|
HTTPHeader 描述要在 HTTP 探测中使用的自定义标头 |
|
|
在 HTTP 服务器上访问的路径。 |
|
要访问容器上端口的名称或编号。数字必须在 1 到 65535 的范围内。名称必须是 IANA_SVC_NAME。 |
|
|
|
用于连接到主机的方案。默认为 HTTP。 可能的枚举值:- |
HTTPHeader 描述要在 HTTP 探测中使用的自定义标头
对象
name
value
属性 | 类型 | 描述 |
---|---|---|
|
|
标头字段名称。这将在输出时被规范化,因此大小写不同的名称将被理解为相同的标头。 |
|
|
标头字段值 |
SleepAction 描述“睡眠”操作。
对象
seconds
属性 | 类型 | 描述 |
---|---|---|
|
|
Seconds 是要休眠的秒数。 |
TCPSocketAction 描述基于打开套接字的操作
对象
port
属性 | 类型 | 描述 |
---|---|---|
|
|
可选:要连接到的主机名,默认为 Pod IP。 |
|
要访问容器上端口的编号或名称。数字必须在 1 到 65535 的范围内。名称必须是 IANA_SVC_NAME。 |
LifecycleHandler 定义生命周期挂钩中应采取的特定操作。必须指定一个且只有一个字段,TCPSocket 除外。
对象
属性 | 类型 | 描述 |
---|---|---|
|
|
ExecAction 描述“在容器中运行”操作。 |
|
|
HTTPGetAction 描述基于 HTTP Get 请求的操作。 |
|
|
SleepAction 描述“睡眠”操作。 |
|
|
TCPSocketAction 描述基于打开套接字的操作 |
ExecAction 描述“在容器中运行”操作。
对象
属性 | 类型 | 描述 |
---|---|---|
|
|
Command 是在容器内执行的命令行,命令的工作目录是容器文件系统中的根目录('/')。该命令只是简单地执行,它不会在 shell 内运行,因此传统的 shell 指令('|' 等)将不起作用。要使用 shell,需要显式调用该 shell。退出状态为 0 被视为活动/健康,非零为不健康。 |
HTTPGetAction 描述基于 HTTP Get 请求的操作。
对象
port
属性 | 类型 | 描述 |
---|---|---|
|
|
要连接到的主机名,默认为 Pod IP。您可能希望在 httpHeaders 中设置“Host”。 |
|
|
要在请求中设置的自定义标头。HTTP 允许重复标头。 |
|
|
HTTPHeader 描述要在 HTTP 探测中使用的自定义标头 |
|
|
在 HTTP 服务器上访问的路径。 |
|
要访问容器上端口的名称或编号。数字必须在 1 到 65535 的范围内。名称必须是 IANA_SVC_NAME。 |
|
|
|
用于连接到主机的方案。默认为 HTTP。 可能的枚举值:- |
HTTPHeader 描述要在 HTTP 探测中使用的自定义标头
对象
name
value
属性 | 类型 | 描述 |
---|---|---|
|
|
标头字段名称。这将在输出时被规范化,因此大小写不同的名称将被理解为相同的标头。 |
|
|
标头字段值 |
SleepAction 描述“睡眠”操作。
对象
seconds
属性 | 类型 | 描述 |
---|---|---|
|
|
Seconds 是要休眠的秒数。 |
TCPSocketAction 描述基于打开套接字的操作
对象
port
属性 | 类型 | 描述 |
---|---|---|
|
|
可选:要连接到的主机名,默认为 Pod IP。 |
|
要访问容器上端口的编号或名称。数字必须在 1 到 65535 的范围内。名称必须是 IANA_SVC_NAME。 |
Probe 描述了对容器执行的健康检查,以确定它是否存活或准备好接收流量。
对象
属性 | 类型 | 描述 |
---|---|---|
|
|
ExecAction 描述“在容器中运行”操作。 |
|
|
探测在成功后被认为失败的最小连续失败次数。默认为 3。最小值为 1。 |
|
|
GRPC 指定涉及 GRPC 端口的操作。 |
|
|
HTTPGetAction 描述基于 HTTP Get 请求的操作。 |
|
|
容器启动后在启动探测之前等待的秒数。更多信息:https://kubernetes.ac.cn/docs/concepts/workloads/pods/pod-lifecycle#container-probes |
|
|
执行探测的频率(以秒为单位)。默认为 10 秒。最小值为 1。 |
|
|
探测在失败后被认为成功的最小连续成功次数。默认为 1。对于存活性和启动必须为 1。最小值为 1。 |
|
|
TCPSocketAction 描述基于打开套接字的操作 |
|
|
探针失败后,Pod 优雅终止所需的时间(秒)。宽限期是在向 Pod 中运行的进程发送终止信号与强制使用 kill 信号停止进程之间的时间间隔(秒)。将此值设置为大于进程预期清理时间的数值。如果此值为 nil,则将使用 Pod 的 terminationGracePeriodSeconds。否则,此值将覆盖 Pod 规范中提供的值。值必须是非负整数。值为零表示立即通过 kill 信号停止(没有关闭机会)。这是一个 Beta 功能,需要启用 ProbeTerminationGracePeriod 功能门。最小值为 1。如果未设置,则使用 spec.terminationGracePeriodSeconds。 |
|
|
探针超时之前的秒数。默认为 1 秒。最小值为 1。更多信息:https://kubernetes.ac.cn/docs/concepts/workloads/pods/pod-lifecycle#container-probes |
ExecAction 描述“在容器中运行”操作。
对象
属性 | 类型 | 描述 |
---|---|---|
|
|
Command 是在容器内执行的命令行,命令的工作目录是容器文件系统中的根目录('/')。该命令只是简单地执行,它不会在 shell 内运行,因此传统的 shell 指令('|' 等)将不起作用。要使用 shell,需要显式调用该 shell。退出状态为 0 被视为活动/健康,非零为不健康。 |
GRPC 指定涉及 GRPC 端口的操作。
对象
port
属性 | 类型 | 描述 |
---|---|---|
|
|
gRPC 服务的端口号。数字必须在 1 到 65535 之间。 |
|
|
服务是在 gRPC HealthCheckRequest 中放置的服务名称(参见 https://github.com/grpc/grpc/blob/master/doc/health-checking.md)。 如果未指定,则默认行为由 gRPC 定义。 |
HTTPGetAction 描述基于 HTTP Get 请求的操作。
对象
port
属性 | 类型 | 描述 |
---|---|---|
|
|
要连接到的主机名,默认为 Pod IP。您可能希望在 httpHeaders 中设置“Host”。 |
|
|
要在请求中设置的自定义标头。HTTP 允许重复标头。 |
|
|
HTTPHeader 描述要在 HTTP 探测中使用的自定义标头 |
|
|
在 HTTP 服务器上访问的路径。 |
|
要访问容器上端口的名称或编号。数字必须在 1 到 65535 的范围内。名称必须是 IANA_SVC_NAME。 |
|
|
|
用于连接到主机的方案。默认为 HTTP。 可能的枚举值:- |
HTTPHeader 描述要在 HTTP 探测中使用的自定义标头
对象
name
value
属性 | 类型 | 描述 |
---|---|---|
|
|
标头字段名称。这将在输出时被规范化,因此大小写不同的名称将被理解为相同的标头。 |
|
|
标头字段值 |
TCPSocketAction 描述基于打开套接字的操作
对象
port
属性 | 类型 | 描述 |
---|---|---|
|
|
可选:要连接到的主机名,默认为 Pod IP。 |
|
要访问容器上端口的编号或名称。数字必须在 1 到 65535 的范围内。名称必须是 IANA_SVC_NAME。 |
要从容器中公开的端口列表。此处不指定端口并不会阻止该端口被公开。容器内部侦听默认“0.0.0.0”地址的任何端口都将可从网络访问。使用战略合并补丁修改此数组可能会损坏数据。更多信息参见 https://github.com/kubernetes/kubernetes/issues/108255。无法更新。
数组
ContainerPort 表示单个容器中的网络端口。
对象
容器端口
属性 | 类型 | 描述 |
---|---|---|
|
|
在 Pod 的 IP 地址上公开的端口号。这必须是一个有效的端口号,0 < x < 65536。 |
|
|
将外部端口绑定到的主机 IP。 |
|
|
在主机上公开的端口号。如果指定,这必须是一个有效的端口号,0 < x < 65536。如果指定了 HostNetwork,则这必须与 ContainerPort 匹配。大多数容器不需要这个。 |
|
|
如果指定,这必须是 IANA_SVC_NAME 并且在 Pod 中唯一。Pod 中的每个命名端口都必须具有唯一的名称。可以由服务引用的端口名称。 |
|
|
端口协议。必须是 UDP、TCP 或 SCTP。默认为“TCP”。 可能的枚举值:- |
Probe 描述了对容器执行的健康检查,以确定它是否存活或准备好接收流量。
对象
属性 | 类型 | 描述 |
---|---|---|
|
|
ExecAction 描述“在容器中运行”操作。 |
|
|
探测在成功后被认为失败的最小连续失败次数。默认为 3。最小值为 1。 |
|
|
GRPC 指定涉及 GRPC 端口的操作。 |
|
|
HTTPGetAction 描述基于 HTTP Get 请求的操作。 |
|
|
容器启动后在启动探测之前等待的秒数。更多信息:https://kubernetes.ac.cn/docs/concepts/workloads/pods/pod-lifecycle#container-probes |
|
|
执行探测的频率(以秒为单位)。默认为 10 秒。最小值为 1。 |
|
|
探测在失败后被认为成功的最小连续成功次数。默认为 1。对于存活性和启动必须为 1。最小值为 1。 |
|
|
TCPSocketAction 描述基于打开套接字的操作 |
|
|
探针失败后,Pod 优雅终止所需的时间(秒)。宽限期是在向 Pod 中运行的进程发送终止信号与强制使用 kill 信号停止进程之间的时间间隔(秒)。将此值设置为大于进程预期清理时间的数值。如果此值为 nil,则将使用 Pod 的 terminationGracePeriodSeconds。否则,此值将覆盖 Pod 规范中提供的值。值必须是非负整数。值为零表示立即通过 kill 信号停止(没有关闭机会)。这是一个 Beta 功能,需要启用 ProbeTerminationGracePeriod 功能门。最小值为 1。如果未设置,则使用 spec.terminationGracePeriodSeconds。 |
|
|
探针超时之前的秒数。默认为 1 秒。最小值为 1。更多信息:https://kubernetes.ac.cn/docs/concepts/workloads/pods/pod-lifecycle#container-probes |
ExecAction 描述“在容器中运行”操作。
对象
属性 | 类型 | 描述 |
---|---|---|
|
|
Command 是在容器内执行的命令行,命令的工作目录是容器文件系统中的根目录('/')。该命令只是简单地执行,它不会在 shell 内运行,因此传统的 shell 指令('|' 等)将不起作用。要使用 shell,需要显式调用该 shell。退出状态为 0 被视为活动/健康,非零为不健康。 |
GRPC 指定涉及 GRPC 端口的操作。
对象
port
属性 | 类型 | 描述 |
---|---|---|
|
|
gRPC 服务的端口号。数字必须在 1 到 65535 之间。 |
|
|
服务是在 gRPC HealthCheckRequest 中放置的服务名称(参见 https://github.com/grpc/grpc/blob/master/doc/health-checking.md)。 如果未指定,则默认行为由 gRPC 定义。 |
HTTPGetAction 描述基于 HTTP Get 请求的操作。
对象
port
属性 | 类型 | 描述 |
---|---|---|
|
|
要连接到的主机名,默认为 Pod IP。您可能希望在 httpHeaders 中设置“Host”。 |
|
|
要在请求中设置的自定义标头。HTTP 允许重复标头。 |
|
|
HTTPHeader 描述要在 HTTP 探测中使用的自定义标头 |
|
|
在 HTTP 服务器上访问的路径。 |
|
要访问容器上端口的名称或编号。数字必须在 1 到 65535 的范围内。名称必须是 IANA_SVC_NAME。 |
|
|
|
用于连接到主机的方案。默认为 HTTP。 可能的枚举值:- |
HTTPHeader 描述要在 HTTP 探测中使用的自定义标头
对象
name
value
属性 | 类型 | 描述 |
---|---|---|
|
|
标头字段名称。这将在输出时被规范化,因此大小写不同的名称将被理解为相同的标头。 |
|
|
标头字段值 |
TCPSocketAction 描述基于打开套接字的操作
对象
port
属性 | 类型 | 描述 |
---|---|---|
|
|
可选:要连接到的主机名,默认为 Pod IP。 |
|
要访问容器上端口的编号或名称。数字必须在 1 到 65535 的范围内。名称必须是 IANA_SVC_NAME。 |
ContainerResizePolicy 表示容器的资源调整策略。
对象
资源名称
restartPolicy
属性 | 类型 | 描述 |
---|---|---|
|
|
此资源调整策略适用的资源名称。支持的值:cpu、memory。 |
|
|
调整指定资源大小时要应用的重启策略。如果未指定,则默认为 NotRequired。 |
ResourceRequirements 描述计算资源需求。
对象
属性 | 类型 | 描述 |
---|---|---|
|
|
Claims 列出了此容器使用的资源名称,这些资源定义在 spec.resourceClaims 中。 这是一个 alpha 字段,需要启用 DynamicResourceAllocation 功能网关。 此字段是不可变的。它只能为容器设置。 |
|
|
ResourceClaim 引用 PodSpec.ResourceClaims 中的一个条目。 |
|
Limits 描述了允许的最大计算资源量。更多信息:https://kubernetes.ac.cn/docs/concepts/configuration/manage-resources-containers/ |
|
|
Requests 描述了所需的最小计算资源量。如果容器的 Requests 被省略,则默认为 Limits(如果明确指定),否则默认为实现定义的值。Requests 不能超过 Limits。更多信息:https://kubernetes.ac.cn/docs/concepts/configuration/manage-resources-containers/ |
Claims 列出了此容器使用的资源名称,这些资源定义在 spec.resourceClaims 中。
这是一个 alpha 字段,需要启用 DynamicResourceAllocation 功能网关。
此字段是不可变的。它只能为容器设置。
数组
ResourceClaim 引用 PodSpec.ResourceClaims 中的一个条目。
对象
name
属性 | 类型 | 描述 |
---|---|---|
|
|
名称必须与使用此字段的 Pod 的 pod.spec.resourceClaims 中的一个条目的名称匹配。它使该资源在容器内可用。 |
SecurityContext 包含将应用于容器的安全配置。某些字段同时存在于 SecurityContext 和 PodSecurityContext 中。当两者都设置时,SecurityContext 中的值优先。
对象
属性 | 类型 | 描述 |
---|---|---|
|
|
AllowPrivilegeEscalation 控制进程是否可以获得比其父进程更高的权限。此布尔值直接控制容器进程上是否设置 no_new_privs 标志。当容器:1) 作为特权容器运行 2) 具有 CAP_SYS_ADMIN 时,AllowPrivilegeEscalation 始终为 true。请注意,当 spec.os.name 为 windows 时,无法设置此字段。 |
|
|
AppArmorProfile 定义 Pod 或容器的 AppArmor 设置。 |
|
|
向运行中的容器添加和删除 POSIX 功能。 |
|
|
以特权模式运行容器。特权容器中的进程实际上等同于主机上的 root 用户。默认为 false。请注意,当 spec.os.name 为 windows 时,无法设置此字段。 |
|
|
procMount 表示要用于容器的 proc 挂载类型。默认为 DefaultProcMount,它使用容器运行时对只读路径和屏蔽路径的默认设置。这需要启用 ProcMountType 功能标志。请注意,当 spec.os.name 为 windows 时,无法设置此字段。 可能的枚举值:- |
|
|
此容器是否具有只读根文件系统。默认为 false。请注意,当 spec.os.name 为 windows 时,无法设置此字段。 |
|
|
运行容器进程入口点的 GID。如果未设置,则使用运行时默认值。也可能在 PodSecurityContext 中设置。如果在 SecurityContext 和 PodSecurityContext 中都设置了此值,则 SecurityContext 中指定的值优先。请注意,当 spec.os.name 为 windows 时,无法设置此字段。 |
|
|
指示容器必须以非 root 用户身份运行。如果为 true,则 Kubelet 将在运行时验证映像,以确保它不以 UID 0(root)身份运行,如果确实如此,则会启动容器失败。如果未设置或为 false,则不会执行此类验证。也可能在 PodSecurityContext 中设置。如果在 SecurityContext 和 PodSecurityContext 中都设置了此值,则 SecurityContext 中指定的值优先。 |
|
|
运行容器进程入口点的 UID。如果未指定,则默认为映像元数据中指定的用户。也可能在 PodSecurityContext 中设置。如果在 SecurityContext 和 PodSecurityContext 中都设置了此值,则 SecurityContext 中指定的值优先。请注意,当 spec.os.name 为 windows 时,无法设置此字段。 |
|
|
SELinuxOptions 是要应用于容器的标签。 |
|
|
SeccompProfile 定义 Pod/容器的 seccomp 配置文件设置。只能设置一个配置文件源。 |
|
|
WindowsSecurityContextOptions 包含 Windows 特定的选项和凭据。 |
AppArmorProfile 定义 Pod 或容器的 AppArmor 设置。
对象
类型
属性 | 类型 | 描述 |
---|---|---|
|
|
localhostProfile 指示应使用在节点上加载的配置文件。该配置文件必须预先配置在节点上才能正常工作。必须与配置文件的加载名称匹配。当且仅当类型为“Localhost”时才必须设置。 |
|
|
type 指示将应用哪种 AppArmor 配置文件。有效选项包括:Localhost - 节点上预加载的配置文件。RuntimeDefault - 容器运行时的默认配置文件。Unconfined - 不进行 AppArmor 增强。 可能的枚举值:- |
向运行中的容器添加和删除 POSIX 功能。
对象
属性 | 类型 | 描述 |
---|---|---|
|
|
添加的功能 |
|
|
删除的功能 |
SELinuxOptions 是要应用于容器的标签。
对象
属性 | 类型 | 描述 |
---|---|---|
|
|
Level 是应用于容器的 SELinux 级别标签。 |
|
|
Role 是应用于容器的 SELinux 角色标签。 |
|
|
Type 是应用于容器的 SELinux 类型标签。 |
|
|
User 是应用于容器的 SELinux 用户标签。 |
SeccompProfile 定义 Pod/容器的 seccomp 配置文件设置。只能设置一个配置文件源。
对象
类型
属性 | 类型 | 描述 |
---|---|---|
|
|
localhostProfile 指示应使用节点上文件中定义的配置文件。该配置文件必须预先配置在节点上才能正常工作。必须是相对于 kubelet 配置的 seccomp 配置文件位置的向下路径。如果类型为“Localhost”,则必须设置。对于任何其他类型,则绝对不能设置。 |
|
|
type 指示将应用哪种 seccomp 配置文件。有效选项包括: Localhost - 应使用节点上文件中定义的配置文件。RuntimeDefault - 应使用容器运行时的默认配置文件。Unconfined - 不应用任何配置文件。 可能的枚举值:- |
WindowsSecurityContextOptions 包含 Windows 特定的选项和凭据。
对象
属性 | 类型 | 描述 |
---|---|---|
|
|
GMSACredentialSpec 是 GMSA 准入 Webhook (https://github.com/kubernetes-sigs/windows-gmsa) 内联 GMSACredentialSpecName 字段命名的 GMSA 凭据规范内容的位置。 |
|
|
GMSACredentialSpecName 是要使用的 GMSA 凭据规范的名称。 |
|
|
HostProcess 决定是否应将容器作为“主机进程”容器运行。Pod 的所有容器都必须具有相同的有效 HostProcess 值(不允许混合使用 HostProcess 容器和非 HostProcess 容器)。此外,如果 HostProcess 为 true,则 HostNetwork 也必须设置为 true。 |
|
|
在 Windows 中运行容器进程入口点的用户名。如果未指定,则默认为映像元数据中指定的用户名。也可能在 PodSecurityContext 中设置。如果在 SecurityContext 和 PodSecurityContext 中都设置,则 SecurityContext 中指定的值优先。 |
Probe 描述了对容器执行的健康检查,以确定它是否存活或准备好接收流量。
对象
属性 | 类型 | 描述 |
---|---|---|
|
|
ExecAction 描述“在容器中运行”操作。 |
|
|
探测在成功后被认为失败的最小连续失败次数。默认为 3。最小值为 1。 |
|
|
GRPC 指定涉及 GRPC 端口的操作。 |
|
|
HTTPGetAction 描述基于 HTTP Get 请求的操作。 |
|
|
容器启动后在启动探测之前等待的秒数。更多信息:https://kubernetes.ac.cn/docs/concepts/workloads/pods/pod-lifecycle#container-probes |
|
|
执行探测的频率(以秒为单位)。默认为 10 秒。最小值为 1。 |
|
|
探测在失败后被认为成功的最小连续成功次数。默认为 1。对于存活性和启动必须为 1。最小值为 1。 |
|
|
TCPSocketAction 描述基于打开套接字的操作 |
|
|
探针失败后,Pod 优雅终止所需的时间(秒)。宽限期是在向 Pod 中运行的进程发送终止信号与强制使用 kill 信号停止进程之间的时间间隔(秒)。将此值设置为大于进程预期清理时间的数值。如果此值为 nil,则将使用 Pod 的 terminationGracePeriodSeconds。否则,此值将覆盖 Pod 规范中提供的值。值必须是非负整数。值为零表示立即通过 kill 信号停止(没有关闭机会)。这是一个 Beta 功能,需要启用 ProbeTerminationGracePeriod 功能门。最小值为 1。如果未设置,则使用 spec.terminationGracePeriodSeconds。 |
|
|
探针超时之前的秒数。默认为 1 秒。最小值为 1。更多信息:https://kubernetes.ac.cn/docs/concepts/workloads/pods/pod-lifecycle#container-probes |
ExecAction 描述“在容器中运行”操作。
对象
属性 | 类型 | 描述 |
---|---|---|
|
|
Command 是在容器内执行的命令行,命令的工作目录是容器文件系统中的根目录('/')。该命令只是简单地执行,它不会在 shell 内运行,因此传统的 shell 指令('|' 等)将不起作用。要使用 shell,需要显式调用该 shell。退出状态为 0 被视为活动/健康,非零为不健康。 |
GRPC 指定涉及 GRPC 端口的操作。
对象
port
属性 | 类型 | 描述 |
---|---|---|
|
|
gRPC 服务的端口号。数字必须在 1 到 65535 之间。 |
|
|
服务是在 gRPC HealthCheckRequest 中放置的服务名称(参见 https://github.com/grpc/grpc/blob/master/doc/health-checking.md)。 如果未指定,则默认行为由 gRPC 定义。 |
HTTPGetAction 描述基于 HTTP Get 请求的操作。
对象
port
属性 | 类型 | 描述 |
---|---|---|
|
|
要连接到的主机名,默认为 Pod IP。您可能希望在 httpHeaders 中设置“Host”。 |
|
|
要在请求中设置的自定义标头。HTTP 允许重复标头。 |
|
|
HTTPHeader 描述要在 HTTP 探测中使用的自定义标头 |
|
|
在 HTTP 服务器上访问的路径。 |
|
要访问容器上端口的名称或编号。数字必须在 1 到 65535 的范围内。名称必须是 IANA_SVC_NAME。 |
|
|
|
用于连接到主机的方案。默认为 HTTP。 可能的枚举值:- |
HTTPHeader 描述要在 HTTP 探测中使用的自定义标头
对象
name
value
属性 | 类型 | 描述 |
---|---|---|
|
|
标头字段名称。这将在输出时被规范化,因此大小写不同的名称将被理解为相同的标头。 |
|
|
标头字段值 |
TCPSocketAction 描述基于打开套接字的操作
对象
port
属性 | 类型 | 描述 |
---|---|---|
|
|
可选:要连接到的主机名,默认为 Pod IP。 |
|
要访问容器上端口的编号或名称。数字必须在 1 到 65535 的范围内。名称必须是 IANA_SVC_NAME。 |
volumeDevice 描述了容器内原始块设备的映射。
对象
name
devicePath
属性 | 类型 | 描述 |
---|---|---|
|
|
devicePath 是容器内设备将映射到的路径。 |
|
|
name 必须与 Pod 中的 persistentVolumeClaim 的名称匹配 |
VolumeMount 描述了在容器内挂载卷。
对象
name
mountPath
属性 | 类型 | 描述 |
---|---|---|
|
|
容器内挂载卷的路径。不能包含':'。 |
|
|
mountPropagation 决定如何将挂载从主机传播到容器,反之亦然。未设置时,使用 MountPropagationNone。此字段在 1.10 中为 Beta 版本。当 RecursiveReadOnly 设置为 IfPossible 或 Enabled 时,MountPropagation 必须为 None 或未指定(默认为 None)。 可能的枚举值:- |
|
|
这必须与卷的名称匹配。 |
|
|
如果为 true,则以只读方式挂载;否则为读写方式(false 或未指定)。默认为 false。 |
|
|
RecursiveReadOnly 指定是否应递归处理只读挂载。 如果 ReadOnly 为 false,则此字段没有意义,必须未指定。 如果 ReadOnly 为 true,并且此字段设置为 Disabled,则不会递归地将挂载设为只读。如果此字段设置为 IfPossible,则如果容器运行时支持,则将挂载递归地设为只读。如果此字段设置为 Enabled,则如果容器运行时支持,则将挂载递归地设为只读;否则,Pod 将不会启动,并且会生成错误以指示原因。 如果此字段设置为 IfPossible 或 Enabled,则 MountPropagation 必须设置为 None(或未指定,默认为 None)。 如果未指定此字段,则将其视为与 Disabled 等效。 |
|
|
卷中容器的卷应从中挂载的路径。默认为 ""(卷的根目录)。 |
|
|
容器卷应从中挂载的卷内的扩展路径。其行为类似于 SubPath,但环境变量引用 $(VAR_NAME) 将使用容器的环境进行展开。默认为 ""(卷的根目录)。SubPathExpr 和 SubPath 互斥。 |
PodDNSConfig 定义 Pod 的 DNS 参数,以及从 DNSPolicy 生成的参数。
对象
属性 | 类型 | 描述 |
---|---|---|
|
|
DNS 命名服务器 IP 地址列表。这将附加到从 DNSPolicy 生成的基本命名服务器中。重复的命名服务器将被删除。 |
|
|
DNS 解析器选项列表。这将与从 DNSPolicy 生成的基本选项合并。重复的条目将被删除。Options 中给出的解析选项将覆盖出现在基本 DNSPolicy 中的那些选项。 |
|
|
PodDNSConfigOption 定义了 Pod 的 DNS 解析器选项。 |
|
|
用于主机名查找的 DNS 搜索域列表。这将附加到从 DNSPolicy 生成的基本搜索路径中。重复的搜索路径将被删除。 |
DNS 解析器选项列表。这将与从 DNSPolicy 生成的基本选项合并。重复的条目将被删除。Options 中给出的解析选项将覆盖出现在基本 DNSPolicy 中的那些选项。
数组
PodDNSConfigOption 定义了 Pod 的 DNS 解析器选项。
对象
属性 | 类型 | 描述 |
---|---|---|
|
|
必需。 |
|
|
在此 Pod 中运行的临时容器列表。可以在现有 Pod 中运行临时容器以执行用户启动的操作,例如调试。创建 Pod 时不能指定此列表,并且无法通过更新 Pod 规范来修改它。要向现有 Pod 添加临时容器,请使用 Pod 的 ephemeralcontainers 子资源。
数组
EphemeralContainer 是一个临时容器,您可以将其添加到现有 Pod 中以执行用户启动的活动,例如调试。临时容器没有资源或调度保证,并且在它们退出或 Pod 被移除或重启时不会重启。如果临时容器导致 Pod 超出其资源分配,则 kubelet 可能会驱逐 Pod。
要添加临时容器,请使用现有 Pod 的 ephemeralcontainers 子资源。临时容器不能被删除或重启。
对象
name
属性 | 类型 | 描述 |
---|---|---|
|
|
入口点参数。如果未提供此参数,则使用镜像的 CMD。变量引用 $(VAR_NAME) 将使用容器的环境进行展开。如果无法解析变量,则输入字符串中的引用将保持不变。双美元符号将简化为单个美元符号,这允许转义 $(VAR_NAME) 语法:即 "(VAR_NAME)" 将生成字符串字面量 "$(VAR_NAME)"。转义的引用将永远不会展开,无论变量是否存在。 |
|
|
入口点数组。不在 shell 中执行。如果未提供此参数,则使用镜像的 ENTRYPOINT。变量引用 $(VAR_NAME) 将使用容器的环境进行展开。如果无法解析变量,则输入字符串中的引用将保持不变。双美元符号将简化为单个美元符号,这允许转义 $(VAR_NAME) 语法:即 "(VAR_NAME)" 将生成字符串字面量 "$(VAR_NAME)"。转义的引用将永远不会展开,无论变量是否存在。无法更新。更多信息:https://kubernetes.ac.cn/docs/tasks/inject-data-application/define-command-argument-container/#running-a-command-in-a-shell |
|
|
要在容器中设置的环境变量列表。无法更新。 |
|
|
EnvVar 表示容器中存在的环境变量。 |
|
|
用于填充容器中环境变量的源列表。源中定义的键必须是 C_IDENTIFIER。所有无效的键都将在容器启动时作为事件报告。当一个键在多个源中存在时,最后一个源关联的值将优先。具有重复键的 Env 定义的值将优先。无法更新。 |
|
|
EnvFromSource 表示一组 ConfigMap 的来源。 |
|
|
容器镜像名称。更多信息:https://kubernetes.ac.cn/docs/concepts/containers/images |
|
|
镜像拉取策略。Always、Never、IfNotPresent 之一。如果指定了 :latest 标签,则默认为 Always,否则为 IfNotPresent。无法更新。更多信息:https://kubernetes.ac.cn/docs/concepts/containers/images#updating-images 可能的枚举值:- |
|
|
Lifecycle 描述了管理系统应该对容器生命周期事件采取的操作。对于 PostStart 和 PreStop 生命周期处理程序,容器的管理会阻塞直到操作完成,除非容器进程失败,在这种情况下处理程序将被中止。 |
|
|
Probe 描述了对容器执行的健康检查,以确定它是否存活或准备好接收流量。 |
|
|
指定为 DNS_LABEL 的临时容器名称。此名称在所有容器、init 容器和临时容器中必须唯一。 |
|
|
临时容器不允许使用端口。 |
|
|
ContainerPort 表示单个容器中的网络端口。 |
|
|
Probe 描述了对容器执行的健康检查,以确定它是否存活或准备好接收流量。 |
|
|
容器的资源调整策略。 |
|
|
ContainerResizePolicy 表示容器的资源调整策略。 |
|
|
ResourceRequirements 描述计算资源需求。 |
|
|
容器的重启策略,用于管理 Pod 内每个容器的重启行为。这可能仅针对 init 容器设置。您不能在临时容器上设置此字段。 |
|
|
SecurityContext 包含将应用于容器的安全配置。某些字段同时存在于 SecurityContext 和 PodSecurityContext 中。当两者都设置时,SecurityContext 中的值优先。 |
|
|
Probe 描述了对容器执行的健康检查,以确定它是否存活或准备好接收流量。 |
|
|
此容器是否应在容器运行时分配 stdin 的缓冲区。如果未设置此项,则容器中从 stdin 读取将始终导致 EOF。默认为 false。 |
|
|
容器运行时是否应在单个附加操作打开 stdin 通道后关闭它。当 stdin 为 true 时,stdin 流将在多个附加会话中保持打开状态。如果 stdinOnce 设置为 true,则 stdin 在容器启动时打开,在第一个客户端附加到 stdin 之前为空,然后保持打开状态并接受数据,直到客户端断开连接,此时 stdin 关闭并保持关闭状态,直到容器重新启动。如果此标志为 false,则从 stdin 读取的容器进程将永远不会收到 EOF。默认为 false。 |
|
|
如果设置,则为 PodSpec 中此临时容器的目标容器的名称。临时容器将在此容器的命名空间(IPC、PID 等)中运行。如果未设置,则临时容器使用 Pod 规范中配置的命名空间。 容器运行时必须实现对此功能的支持。如果运行时不支持命名空间目标,则设置此字段的结果是未定义的。 |
|
|
可选:将容器终止消息写入的文件安装到容器文件系统的路径。写入的消息旨在简短地显示最终状态,例如断言失败消息。如果大于 4096 字节,则将被节点截断。所有容器的总消息长度将限制为 12kb。默认为 /dev/termination-log。无法更新。 |
|
|
指示如何填充终止消息。File 将使用 terminationMessagePath 的内容在成功和失败时填充容器状态消息。FallbackToLogsOnError 如果终止消息文件为空且容器以错误退出,则将使用容器日志输出的最后一段。日志输出限制为 2048 字节或 80 行,取较小者。默认为 File。无法更新。 可能的枚举值:- |
|
|
此容器是否应为自己分配一个 TTY,也需要 'stdin' 为 true。默认为 false。 |
|
|
volumeDevices 是容器要使用的块设备列表。 |
|
|
volumeDevice 描述了容器内原始块设备的映射。 |
|
|
要挂载到容器文件系统的 Pod 卷。临时容器不允许使用子路径挂载。无法更新。 |
|
|
VolumeMount 描述了在容器内挂载卷。 |
|
|
容器的工作目录。如果未指定,将使用容器运行时的默认值,这可能在容器镜像中配置。无法更新。 |
EnvVar 表示容器中存在的环境变量。
对象
name
属性 | 类型 | 描述 |
---|---|---|
|
|
环境变量的名称。必须是 C_IDENTIFIER。 |
|
|
变量引用 $(VAR_NAME) 使用容器中先前定义的环境变量和任何服务环境变量进行扩展。如果无法解析变量,则输入字符串中的引用将保持不变。双美元符号将减少为单个美元符号,允许转义 $(VAR_NAME) 语法:即“(VAR_NAME)”将生成字符串字面量“$(VAR_NAME)”。无论变量是否存在,转义的引用都不会被扩展。默认为 ""。 |
|
|
EnvVarSource 代表 EnvVar 值的来源。 |
EnvVarSource 代表 EnvVar 值的来源。
对象
属性 | 类型 | 描述 |
---|---|---|
|
|
从 ConfigMap 中选择一个键。 |
|
|
ObjectFieldSelector 选择对象的 APIVersioned 字段。 |
|
|
ResourceFieldSelector 代表容器资源(cpu,内存)及其输出格式 |
|
|
SecretKeySelector 选择 Secret 的一个键。 |
从 ConfigMap 中选择一个键。
对象
key
属性 | 类型 | 描述 |
---|---|---|
|
|
要选择的键。 |
|
|
引用的名称。此字段实际上是必需的,但由于向后兼容性,允许为空。此类型的实例在此处为空值几乎肯定是错误的。更多信息:https://kubernetes.ac.cn/docs/concepts/overview/working-with-objects/names/#names |
|
|
指定是否必须定义 ConfigMap 或其键 |
ObjectFieldSelector 选择对象的 APIVersioned 字段。
对象
fieldPath
属性 | 类型 | 描述 |
---|---|---|
|
|
FieldPath 以其编写的模式版本,默认为“v1”。 |
|
|
在指定的 API 版本中选择字段的路径。 |
ResourceFieldSelector 代表容器资源(cpu,内存)及其输出格式
对象
resource
属性 | 类型 | 描述 |
---|---|---|
|
|
容器名称:卷必需,环境变量可选 |
|
指定公开资源的输出格式,默认为“1” |
|
|
|
必需:要选择的资源 |
SecretKeySelector 选择 Secret 的一个键。
对象
key
属性 | 类型 | 描述 |
---|---|---|
|
|
要从中选择的密钥的密钥。必须是有效的密钥。 |
|
|
引用的名称。此字段实际上是必需的,但由于向后兼容性,允许为空。此类型的实例在此处为空值几乎肯定是错误的。更多信息:https://kubernetes.ac.cn/docs/concepts/overview/working-with-objects/names/#names |
|
|
指定是否必须定义 Secret 或其键 |
用于填充容器中环境变量的源列表。源中定义的键必须是 C_IDENTIFIER。所有无效的键都将在容器启动时作为事件报告。当一个键在多个源中存在时,最后一个源关联的值将优先。具有重复键的 Env 定义的值将优先。无法更新。
数组
EnvFromSource 表示一组 ConfigMap 的来源。
对象
属性 | 类型 | 描述 |
---|---|---|
|
|
ConfigMapEnvSource 选择一个 ConfigMap 来填充环境变量。 目标 ConfigMap 的 Data 字段的内容将表示键值对作为环境变量。 |
|
|
一个可选的标识符,用于在 ConfigMap 中的每个键之前添加。必须是 C_IDENTIFIER。 |
|
|
SecretEnvSource 选择一个 Secret 来填充环境变量。 目标 Secret 的 Data 字段的内容将表示键值对作为环境变量。 |
ConfigMapEnvSource 选择一个 ConfigMap 来填充环境变量。
目标 ConfigMap 的 Data 字段的内容将表示键值对作为环境变量。
对象
属性 | 类型 | 描述 |
---|---|---|
|
|
引用的名称。此字段实际上是必需的,但由于向后兼容性,允许为空。此类型的实例在此处为空值几乎肯定是错误的。更多信息:https://kubernetes.ac.cn/docs/concepts/overview/working-with-objects/names/#names |
|
|
指定是否必须定义 ConfigMap |
SecretEnvSource 选择一个 Secret 来填充环境变量。
目标 Secret 的 Data 字段的内容将表示键值对作为环境变量。
对象
属性 | 类型 | 描述 |
---|---|---|
|
|
引用的名称。此字段实际上是必需的,但由于向后兼容性,允许为空。此类型的实例在此处为空值几乎肯定是错误的。更多信息:https://kubernetes.ac.cn/docs/concepts/overview/working-with-objects/names/#names |
|
|
指定是否必须定义 Secret |
Lifecycle 描述了管理系统应该对容器生命周期事件采取的操作。对于 PostStart 和 PreStop 生命周期处理程序,容器的管理会阻塞直到操作完成,除非容器进程失败,在这种情况下处理程序将被中止。
对象
属性 | 类型 | 描述 |
---|---|---|
|
|
LifecycleHandler 定义生命周期挂钩中应采取的特定操作。必须指定一个且只有一个字段,TCPSocket 除外。 |
|
|
LifecycleHandler 定义生命周期挂钩中应采取的特定操作。必须指定一个且只有一个字段,TCPSocket 除外。 |
LifecycleHandler 定义生命周期挂钩中应采取的特定操作。必须指定一个且只有一个字段,TCPSocket 除外。
对象
属性 | 类型 | 描述 |
---|---|---|
|
|
ExecAction 描述“在容器中运行”操作。 |
|
|
HTTPGetAction 描述基于 HTTP Get 请求的操作。 |
|
|
SleepAction 描述“睡眠”操作。 |
|
|
TCPSocketAction 描述基于打开套接字的操作 |
ExecAction 描述“在容器中运行”操作。
对象
属性 | 类型 | 描述 |
---|---|---|
|
|
Command 是在容器内执行的命令行,命令的工作目录是容器文件系统中的根目录('/')。该命令只是简单地执行,它不会在 shell 内运行,因此传统的 shell 指令('|' 等)将不起作用。要使用 shell,需要显式调用该 shell。退出状态为 0 被视为活动/健康,非零为不健康。 |
HTTPGetAction 描述基于 HTTP Get 请求的操作。
对象
port
属性 | 类型 | 描述 |
---|---|---|
|
|
要连接到的主机名,默认为 Pod IP。您可能希望在 httpHeaders 中设置“Host”。 |
|
|
要在请求中设置的自定义标头。HTTP 允许重复标头。 |
|
|
HTTPHeader 描述要在 HTTP 探测中使用的自定义标头 |
|
|
在 HTTP 服务器上访问的路径。 |
|
要访问容器上端口的名称或编号。数字必须在 1 到 65535 的范围内。名称必须是 IANA_SVC_NAME。 |
|
|
|
用于连接到主机的方案。默认为 HTTP。 可能的枚举值:- |
要在请求中设置的自定义标头。HTTP 允许重复标头。
数组
HTTPHeader 描述要在 HTTP 探测中使用的自定义标头
对象
name
value
属性 | 类型 | 描述 |
---|---|---|
|
|
标头字段名称。这将在输出时被规范化,因此大小写不同的名称将被理解为相同的标头。 |
|
|
标头字段值 |
SleepAction 描述“睡眠”操作。
对象
seconds
属性 | 类型 | 描述 |
---|---|---|
|
|
Seconds 是要休眠的秒数。 |
TCPSocketAction 描述基于打开套接字的操作
对象
port
属性 | 类型 | 描述 |
---|---|---|
|
|
可选:要连接到的主机名,默认为 Pod IP。 |
|
要访问容器上端口的编号或名称。数字必须在 1 到 65535 的范围内。名称必须是 IANA_SVC_NAME。 |
LifecycleHandler 定义生命周期挂钩中应采取的特定操作。必须指定一个且只有一个字段,TCPSocket 除外。
对象
属性 | 类型 | 描述 |
---|---|---|
|
|
ExecAction 描述“在容器中运行”操作。 |
|
|
HTTPGetAction 描述基于 HTTP Get 请求的操作。 |
|
|
SleepAction 描述“睡眠”操作。 |
|
|
TCPSocketAction 描述基于打开套接字的操作 |
ExecAction 描述“在容器中运行”操作。
对象
属性 | 类型 | 描述 |
---|---|---|
|
|
Command 是在容器内执行的命令行,命令的工作目录是容器文件系统中的根目录('/')。该命令只是简单地执行,它不会在 shell 内运行,因此传统的 shell 指令('|' 等)将不起作用。要使用 shell,需要显式调用该 shell。退出状态为 0 被视为活动/健康,非零为不健康。 |
HTTPGetAction 描述基于 HTTP Get 请求的操作。
对象
port
属性 | 类型 | 描述 |
---|---|---|
|
|
要连接到的主机名,默认为 Pod IP。您可能希望在 httpHeaders 中设置“Host”。 |
|
|
要在请求中设置的自定义标头。HTTP 允许重复标头。 |
|
|
HTTPHeader 描述要在 HTTP 探测中使用的自定义标头 |
|
|
在 HTTP 服务器上访问的路径。 |
|
要访问容器上端口的名称或编号。数字必须在 1 到 65535 的范围内。名称必须是 IANA_SVC_NAME。 |
|
|
|
用于连接到主机的方案。默认为 HTTP。 可能的枚举值:- |
要在请求中设置的自定义标头。HTTP 允许重复标头。
数组
HTTPHeader 描述要在 HTTP 探测中使用的自定义标头
对象
name
value
属性 | 类型 | 描述 |
---|---|---|
|
|
标头字段名称。这将在输出时被规范化,因此大小写不同的名称将被理解为相同的标头。 |
|
|
标头字段值 |
SleepAction 描述“睡眠”操作。
对象
seconds
属性 | 类型 | 描述 |
---|---|---|
|
|
Seconds 是要休眠的秒数。 |
TCPSocketAction 描述基于打开套接字的操作
对象
port
属性 | 类型 | 描述 |
---|---|---|
|
|
可选:要连接到的主机名,默认为 Pod IP。 |
|
要访问容器上端口的编号或名称。数字必须在 1 到 65535 的范围内。名称必须是 IANA_SVC_NAME。 |
Probe 描述了对容器执行的健康检查,以确定它是否存活或准备好接收流量。
对象
属性 | 类型 | 描述 |
---|---|---|
|
|
ExecAction 描述“在容器中运行”操作。 |
|
|
探测在成功后被认为失败的最小连续失败次数。默认为 3。最小值为 1。 |
|
|
GRPC 指定涉及 GRPC 端口的操作。 |
|
|
HTTPGetAction 描述基于 HTTP Get 请求的操作。 |
|
|
容器启动后在启动探测之前等待的秒数。更多信息:https://kubernetes.ac.cn/docs/concepts/workloads/pods/pod-lifecycle#container-probes |
|
|
执行探测的频率(以秒为单位)。默认为 10 秒。最小值为 1。 |
|
|
探测在失败后被认为成功的最小连续成功次数。默认为 1。对于存活性和启动必须为 1。最小值为 1。 |
|
|
TCPSocketAction 描述基于打开套接字的操作 |
|
|
探针失败后,Pod 优雅终止所需的时间(秒)。宽限期是在向 Pod 中运行的进程发送终止信号与强制使用 kill 信号停止进程之间的时间间隔(秒)。将此值设置为大于进程预期清理时间的数值。如果此值为 nil,则将使用 Pod 的 terminationGracePeriodSeconds。否则,此值将覆盖 Pod 规范中提供的值。值必须是非负整数。值为零表示立即通过 kill 信号停止(没有关闭机会)。这是一个 Beta 功能,需要启用 ProbeTerminationGracePeriod 功能门。最小值为 1。如果未设置,则使用 spec.terminationGracePeriodSeconds。 |
|
|
探针超时之前的秒数。默认为 1 秒。最小值为 1。更多信息:https://kubernetes.ac.cn/docs/concepts/workloads/pods/pod-lifecycle#container-probes |
ExecAction 描述“在容器中运行”操作。
对象
属性 | 类型 | 描述 |
---|---|---|
|
|
Command 是在容器内执行的命令行,命令的工作目录是容器文件系统中的根目录('/')。该命令只是简单地执行,它不会在 shell 内运行,因此传统的 shell 指令('|' 等)将不起作用。要使用 shell,需要显式调用该 shell。退出状态为 0 被视为活动/健康,非零为不健康。 |
GRPC 指定涉及 GRPC 端口的操作。
对象
port
属性 | 类型 | 描述 |
---|---|---|
|
|
gRPC 服务的端口号。数字必须在 1 到 65535 之间。 |
|
|
服务是在 gRPC HealthCheckRequest 中放置的服务名称(参见 https://github.com/grpc/grpc/blob/master/doc/health-checking.md)。 如果未指定,则默认行为由 gRPC 定义。 |
HTTPGetAction 描述基于 HTTP Get 请求的操作。
对象
port
属性 | 类型 | 描述 |
---|---|---|
|
|
要连接到的主机名,默认为 Pod IP。您可能希望在 httpHeaders 中设置“Host”。 |
|
|
要在请求中设置的自定义标头。HTTP 允许重复标头。 |
|
|
HTTPHeader 描述要在 HTTP 探测中使用的自定义标头 |
|
|
在 HTTP 服务器上访问的路径。 |
|
要访问容器上端口的名称或编号。数字必须在 1 到 65535 的范围内。名称必须是 IANA_SVC_NAME。 |
|
|
|
用于连接到主机的方案。默认为 HTTP。 可能的枚举值:- |
HTTPHeader 描述要在 HTTP 探测中使用的自定义标头
对象
name
value
属性 | 类型 | 描述 |
---|---|---|
|
|
标头字段名称。这将在输出时被规范化,因此大小写不同的名称将被理解为相同的标头。 |
|
|
标头字段值 |
TCPSocketAction 描述基于打开套接字的操作
对象
port
属性 | 类型 | 描述 |
---|---|---|
|
|
可选:要连接到的主机名,默认为 Pod IP。 |
|
要访问容器上端口的编号或名称。数字必须在 1 到 65535 的范围内。名称必须是 IANA_SVC_NAME。 |
ContainerPort 表示单个容器中的网络端口。
对象
容器端口
属性 | 类型 | 描述 |
---|---|---|
|
|
在 Pod 的 IP 地址上公开的端口号。这必须是一个有效的端口号,0 < x < 65536。 |
|
|
将外部端口绑定到的主机 IP。 |
|
|
在主机上公开的端口号。如果指定,这必须是一个有效的端口号,0 < x < 65536。如果指定了 HostNetwork,则这必须与 ContainerPort 匹配。大多数容器不需要这个。 |
|
|
如果指定,这必须是 IANA_SVC_NAME 并且在 Pod 中唯一。Pod 中的每个命名端口都必须具有唯一的名称。可以由服务引用的端口名称。 |
|
|
端口协议。必须是 UDP、TCP 或 SCTP。默认为“TCP”。 可能的枚举值:- |
Probe 描述了对容器执行的健康检查,以确定它是否存活或准备好接收流量。
对象
属性 | 类型 | 描述 |
---|---|---|
|
|
ExecAction 描述“在容器中运行”操作。 |
|
|
探测在成功后被认为失败的最小连续失败次数。默认为 3。最小值为 1。 |
|
|
GRPC 指定涉及 GRPC 端口的操作。 |
|
|
HTTPGetAction 描述基于 HTTP Get 请求的操作。 |
|
|
容器启动后在启动探测之前等待的秒数。更多信息:https://kubernetes.ac.cn/docs/concepts/workloads/pods/pod-lifecycle#container-probes |
|
|
执行探测的频率(以秒为单位)。默认为 10 秒。最小值为 1。 |
|
|
探测在失败后被认为成功的最小连续成功次数。默认为 1。对于存活性和启动必须为 1。最小值为 1。 |
|
|
TCPSocketAction 描述基于打开套接字的操作 |
|
|
探针失败后,Pod 优雅终止所需的时间(秒)。宽限期是在向 Pod 中运行的进程发送终止信号与强制使用 kill 信号停止进程之间的时间间隔(秒)。将此值设置为大于进程预期清理时间的数值。如果此值为 nil,则将使用 Pod 的 terminationGracePeriodSeconds。否则,此值将覆盖 Pod 规范中提供的值。值必须是非负整数。值为零表示立即通过 kill 信号停止(没有关闭机会)。这是一个 Beta 功能,需要启用 ProbeTerminationGracePeriod 功能门。最小值为 1。如果未设置,则使用 spec.terminationGracePeriodSeconds。 |
|
|
探针超时之前的秒数。默认为 1 秒。最小值为 1。更多信息:https://kubernetes.ac.cn/docs/concepts/workloads/pods/pod-lifecycle#container-probes |
ExecAction 描述“在容器中运行”操作。
对象
属性 | 类型 | 描述 |
---|---|---|
|
|
Command 是在容器内执行的命令行,命令的工作目录是容器文件系统中的根目录('/')。该命令只是简单地执行,它不会在 shell 内运行,因此传统的 shell 指令('|' 等)将不起作用。要使用 shell,需要显式调用该 shell。退出状态为 0 被视为活动/健康,非零为不健康。 |
GRPC 指定涉及 GRPC 端口的操作。
对象
port
属性 | 类型 | 描述 |
---|---|---|
|
|
gRPC 服务的端口号。数字必须在 1 到 65535 之间。 |
|
|
服务是在 gRPC HealthCheckRequest 中放置的服务名称(参见 https://github.com/grpc/grpc/blob/master/doc/health-checking.md)。 如果未指定,则默认行为由 gRPC 定义。 |
HTTPGetAction 描述基于 HTTP Get 请求的操作。
对象
port
属性 | 类型 | 描述 |
---|---|---|
|
|
要连接到的主机名,默认为 Pod IP。您可能希望在 httpHeaders 中设置“Host”。 |
|
|
要在请求中设置的自定义标头。HTTP 允许重复标头。 |
|
|
HTTPHeader 描述要在 HTTP 探测中使用的自定义标头 |
|
|
在 HTTP 服务器上访问的路径。 |
|
要访问容器上端口的名称或编号。数字必须在 1 到 65535 的范围内。名称必须是 IANA_SVC_NAME。 |
|
|
|
用于连接到主机的方案。默认为 HTTP。 可能的枚举值:- |
HTTPHeader 描述要在 HTTP 探测中使用的自定义标头
对象
name
value
属性 | 类型 | 描述 |
---|---|---|
|
|
标头字段名称。这将在输出时被规范化,因此大小写不同的名称将被理解为相同的标头。 |
|
|
标头字段值 |
TCPSocketAction 描述基于打开套接字的操作
对象
port
属性 | 类型 | 描述 |
---|---|---|
|
|
可选:要连接到的主机名,默认为 Pod IP。 |
|
要访问容器上端口的编号或名称。数字必须在 1 到 65535 的范围内。名称必须是 IANA_SVC_NAME。 |
ContainerResizePolicy 表示容器的资源调整策略。
对象
资源名称
restartPolicy
属性 | 类型 | 描述 |
---|---|---|
|
|
此资源调整策略适用的资源名称。支持的值:cpu、memory。 |
|
|
调整指定资源大小时要应用的重启策略。如果未指定,则默认为 NotRequired。 |
ResourceRequirements 描述计算资源需求。
对象
属性 | 类型 | 描述 |
---|---|---|
|
|
Claims 列出了此容器使用的资源名称,这些资源定义在 spec.resourceClaims 中。 这是一个 alpha 字段,需要启用 DynamicResourceAllocation 功能网关。 此字段是不可变的。它只能为容器设置。 |
|
|
ResourceClaim 引用 PodSpec.ResourceClaims 中的一个条目。 |
|
Limits 描述了允许的最大计算资源量。更多信息:https://kubernetes.ac.cn/docs/concepts/configuration/manage-resources-containers/ |
|
|
Requests 描述了所需的最小计算资源量。如果容器的 Requests 被省略,则默认为 Limits(如果明确指定),否则默认为实现定义的值。Requests 不能超过 Limits。更多信息:https://kubernetes.ac.cn/docs/concepts/configuration/manage-resources-containers/ |
Claims 列出了此容器使用的资源名称,这些资源定义在 spec.resourceClaims 中。
这是一个 alpha 字段,需要启用 DynamicResourceAllocation 功能网关。
此字段是不可变的。它只能为容器设置。
数组
ResourceClaim 引用 PodSpec.ResourceClaims 中的一个条目。
对象
name
属性 | 类型 | 描述 |
---|---|---|
|
|
名称必须与使用此字段的 Pod 的 pod.spec.resourceClaims 中的一个条目的名称匹配。它使该资源在容器内可用。 |
SecurityContext 包含将应用于容器的安全配置。某些字段同时存在于 SecurityContext 和 PodSecurityContext 中。当两者都设置时,SecurityContext 中的值优先。
对象
属性 | 类型 | 描述 |
---|---|---|
|
|
AllowPrivilegeEscalation 控制进程是否可以获得比其父进程更高的权限。此布尔值直接控制容器进程上是否设置 no_new_privs 标志。当容器:1) 作为特权容器运行 2) 具有 CAP_SYS_ADMIN 时,AllowPrivilegeEscalation 始终为 true。请注意,当 spec.os.name 为 windows 时,无法设置此字段。 |
|
|
AppArmorProfile 定义 Pod 或容器的 AppArmor 设置。 |
|
|
向运行中的容器添加和删除 POSIX 功能。 |
|
|
以特权模式运行容器。特权容器中的进程实际上等同于主机上的 root 用户。默认为 false。请注意,当 spec.os.name 为 windows 时,无法设置此字段。 |
|
|
procMount 表示要用于容器的 proc 挂载类型。默认为 DefaultProcMount,它使用容器运行时对只读路径和屏蔽路径的默认设置。这需要启用 ProcMountType 功能标志。请注意,当 spec.os.name 为 windows 时,无法设置此字段。 可能的枚举值:- |
|
|
此容器是否具有只读根文件系统。默认为 false。请注意,当 spec.os.name 为 windows 时,无法设置此字段。 |
|
|
运行容器进程入口点的 GID。如果未设置,则使用运行时默认值。也可能在 PodSecurityContext 中设置。如果在 SecurityContext 和 PodSecurityContext 中都设置了此值,则 SecurityContext 中指定的值优先。请注意,当 spec.os.name 为 windows 时,无法设置此字段。 |
|
|
指示容器必须以非 root 用户身份运行。如果为 true,则 Kubelet 将在运行时验证映像,以确保它不以 UID 0(root)身份运行,如果确实如此,则会启动容器失败。如果未设置或为 false,则不会执行此类验证。也可能在 PodSecurityContext 中设置。如果在 SecurityContext 和 PodSecurityContext 中都设置了此值,则 SecurityContext 中指定的值优先。 |
|
|
运行容器进程入口点的 UID。如果未指定,则默认为映像元数据中指定的用户。也可能在 PodSecurityContext 中设置。如果在 SecurityContext 和 PodSecurityContext 中都设置了此值,则 SecurityContext 中指定的值优先。请注意,当 spec.os.name 为 windows 时,无法设置此字段。 |
|
|
SELinuxOptions 是要应用于容器的标签。 |
|
|
SeccompProfile 定义 Pod/容器的 seccomp 配置文件设置。只能设置一个配置文件源。 |
|
|
WindowsSecurityContextOptions 包含 Windows 特定的选项和凭据。 |
AppArmorProfile 定义 Pod 或容器的 AppArmor 设置。
对象
类型
属性 | 类型 | 描述 |
---|---|---|
|
|
localhostProfile 指示应使用在节点上加载的配置文件。该配置文件必须预先配置在节点上才能正常工作。必须与配置文件的加载名称匹配。当且仅当类型为“Localhost”时才必须设置。 |
|
|
type 指示将应用哪种 AppArmor 配置文件。有效选项包括:Localhost - 节点上预加载的配置文件。RuntimeDefault - 容器运行时的默认配置文件。Unconfined - 不进行 AppArmor 增强。 可能的枚举值:- |
向运行中的容器添加和删除 POSIX 功能。
对象
属性 | 类型 | 描述 |
---|---|---|
|
|
添加的功能 |
|
|
删除的功能 |
SELinuxOptions 是要应用于容器的标签。
对象
属性 | 类型 | 描述 |
---|---|---|
|
|
Level 是应用于容器的 SELinux 级别标签。 |
|
|
Role 是应用于容器的 SELinux 角色标签。 |
|
|
Type 是应用于容器的 SELinux 类型标签。 |
|
|
User 是应用于容器的 SELinux 用户标签。 |
SeccompProfile 定义 Pod/容器的 seccomp 配置文件设置。只能设置一个配置文件源。
对象
类型
属性 | 类型 | 描述 |
---|---|---|
|
|
localhostProfile 指示应使用节点上文件中定义的配置文件。该配置文件必须预先配置在节点上才能正常工作。必须是相对于 kubelet 配置的 seccomp 配置文件位置的向下路径。如果类型为“Localhost”,则必须设置。对于任何其他类型,则绝对不能设置。 |
|
|
type 指示将应用哪种 seccomp 配置文件。有效选项包括: Localhost - 应使用节点上文件中定义的配置文件。RuntimeDefault - 应使用容器运行时的默认配置文件。Unconfined - 不应用任何配置文件。 可能的枚举值:- |
WindowsSecurityContextOptions 包含 Windows 特定的选项和凭据。
对象
属性 | 类型 | 描述 |
---|---|---|
|
|
GMSACredentialSpec 是 GMSA 准入 Webhook (https://github.com/kubernetes-sigs/windows-gmsa) 内联 GMSACredentialSpecName 字段命名的 GMSA 凭据规范内容的位置。 |
|
|
GMSACredentialSpecName 是要使用的 GMSA 凭据规范的名称。 |
|
|
HostProcess 决定是否应将容器作为“主机进程”容器运行。Pod 的所有容器都必须具有相同的有效 HostProcess 值(不允许混合使用 HostProcess 容器和非 HostProcess 容器)。此外,如果 HostProcess 为 true,则 HostNetwork 也必须设置为 true。 |
|
|
在 Windows 中运行容器进程入口点的用户名。如果未指定,则默认为映像元数据中指定的用户名。也可能在 PodSecurityContext 中设置。如果在 SecurityContext 和 PodSecurityContext 中都设置,则 SecurityContext 中指定的值优先。 |
Probe 描述了对容器执行的健康检查,以确定它是否存活或准备好接收流量。
对象
属性 | 类型 | 描述 |
---|---|---|
|
|
ExecAction 描述“在容器中运行”操作。 |
|
|
探测在成功后被认为失败的最小连续失败次数。默认为 3。最小值为 1。 |
|
|
GRPC 指定涉及 GRPC 端口的操作。 |
|
|
HTTPGetAction 描述基于 HTTP Get 请求的操作。 |
|
|
容器启动后在启动探测之前等待的秒数。更多信息:https://kubernetes.ac.cn/docs/concepts/workloads/pods/pod-lifecycle#container-probes |
|
|
执行探测的频率(以秒为单位)。默认为 10 秒。最小值为 1。 |
|
|
探测在失败后被认为成功的最小连续成功次数。默认为 1。对于存活性和启动必须为 1。最小值为 1。 |
|
|
TCPSocketAction 描述基于打开套接字的操作 |
|
|
探针失败后,Pod 优雅终止所需的时间(秒)。宽限期是在向 Pod 中运行的进程发送终止信号与强制使用 kill 信号停止进程之间的时间间隔(秒)。将此值设置为大于进程预期清理时间的数值。如果此值为 nil,则将使用 Pod 的 terminationGracePeriodSeconds。否则,此值将覆盖 Pod 规范中提供的值。值必须是非负整数。值为零表示立即通过 kill 信号停止(没有关闭机会)。这是一个 Beta 功能,需要启用 ProbeTerminationGracePeriod 功能门。最小值为 1。如果未设置,则使用 spec.terminationGracePeriodSeconds。 |
|
|
探针超时之前的秒数。默认为 1 秒。最小值为 1。更多信息:https://kubernetes.ac.cn/docs/concepts/workloads/pods/pod-lifecycle#container-probes |
ExecAction 描述“在容器中运行”操作。
对象
属性 | 类型 | 描述 |
---|---|---|
|
|
Command 是在容器内执行的命令行,命令的工作目录是容器文件系统中的根目录('/')。该命令只是简单地执行,它不会在 shell 内运行,因此传统的 shell 指令('|' 等)将不起作用。要使用 shell,需要显式调用该 shell。退出状态为 0 被视为活动/健康,非零为不健康。 |
GRPC 指定涉及 GRPC 端口的操作。
对象
port
属性 | 类型 | 描述 |
---|---|---|
|
|
gRPC 服务的端口号。数字必须在 1 到 65535 之间。 |
|
|
服务是在 gRPC HealthCheckRequest 中放置的服务名称(参见 https://github.com/grpc/grpc/blob/master/doc/health-checking.md)。 如果未指定,则默认行为由 gRPC 定义。 |
HTTPGetAction 描述基于 HTTP Get 请求的操作。
对象
port
属性 | 类型 | 描述 |
---|---|---|
|
|
要连接到的主机名,默认为 Pod IP。您可能希望在 httpHeaders 中设置“Host”。 |
|
|
要在请求中设置的自定义标头。HTTP 允许重复标头。 |
|
|
HTTPHeader 描述要在 HTTP 探测中使用的自定义标头 |
|
|
在 HTTP 服务器上访问的路径。 |
|
要访问容器上端口的名称或编号。数字必须在 1 到 65535 的范围内。名称必须是 IANA_SVC_NAME。 |
|
|
|
用于连接到主机的方案。默认为 HTTP。 可能的枚举值:- |
HTTPHeader 描述要在 HTTP 探测中使用的自定义标头
对象
name
value
属性 | 类型 | 描述 |
---|---|---|
|
|
标头字段名称。这将在输出时被规范化,因此大小写不同的名称将被理解为相同的标头。 |
|
|
标头字段值 |
TCPSocketAction 描述基于打开套接字的操作
对象
port
属性 | 类型 | 描述 |
---|---|---|
|
|
可选:要连接到的主机名,默认为 Pod IP。 |
|
要访问容器上端口的编号或名称。数字必须在 1 到 65535 的范围内。名称必须是 IANA_SVC_NAME。 |
volumeDevice 描述了容器内原始块设备的映射。
对象
name
devicePath
属性 | 类型 | 描述 |
---|---|---|
|
|
devicePath 是容器内设备将映射到的路径。 |
|
|
name 必须与 Pod 中的 persistentVolumeClaim 的名称匹配 |
VolumeMount 描述了在容器内挂载卷。
对象
name
mountPath
属性 | 类型 | 描述 |
---|---|---|
|
|
容器内挂载卷的路径。不能包含':'。 |
|
|
mountPropagation 决定如何将挂载从主机传播到容器,反之亦然。未设置时,使用 MountPropagationNone。此字段在 1.10 中为 Beta 版本。当 RecursiveReadOnly 设置为 IfPossible 或 Enabled 时,MountPropagation 必须为 None 或未指定(默认为 None)。 可能的枚举值:- |
|
|
这必须与卷的名称匹配。 |
|
|
如果为 true,则以只读方式挂载;否则为读写方式(false 或未指定)。默认为 false。 |
|
|
RecursiveReadOnly 指定是否应递归处理只读挂载。 如果 ReadOnly 为 false,则此字段没有意义,必须未指定。 如果 ReadOnly 为 true,并且此字段设置为 Disabled,则不会递归地将挂载设为只读。如果此字段设置为 IfPossible,则如果容器运行时支持,则将挂载递归地设为只读。如果此字段设置为 Enabled,则如果容器运行时支持,则将挂载递归地设为只读;否则,Pod 将不会启动,并且会生成错误以指示原因。 如果此字段设置为 IfPossible 或 Enabled,则 MountPropagation 必须设置为 None(或未指定,默认为 None)。 如果未指定此字段,则将其视为与 Disabled 等效。 |
|
|
卷中容器的卷应从中挂载的路径。默认为 ""(卷的根目录)。 |
|
|
容器卷应从中挂载的卷内的扩展路径。其行为类似于 SubPath,但环境变量引用 $(VAR_NAME) 将使用容器的环境进行展开。默认为 ""(卷的根目录)。SubPathExpr 和 SubPath 互斥。 |
HostAlias 保存 IP 和主机名之间的映射,这些映射将作为条目注入到 Pod 的 hosts 文件中。
对象
ip
属性 | 类型 | 描述 |
---|---|---|
|
|
上述IP地址的主机名。 |
|
|
主机文件条目的IP地址。 |
ImagePullSecrets 是对同一命名空间中用于拉取此 PodSpec 使用的任何镜像的密钥的引用的可选列表。如果指定,这些密钥将传递给各个拉取器实现以供其使用。更多信息:https://kubernetes.ac.cn/docs/concepts/containers/images#specifying-imagepullsecrets-on-a-pod
数组
LocalObjectReference 包含足够的信息,可让您在同一命名空间内找到引用的对象。
对象
属性 | 类型 | 描述 |
---|---|---|
|
|
引用的名称。此字段实际上是必需的,但由于向后兼容性,允许为空。此类型的实例在此处为空值几乎肯定是错误的。更多信息:https://kubernetes.ac.cn/docs/concepts/overview/working-with-objects/names/#names |
属于 Pod 的初始化容器列表。初始化容器在启动容器之前按顺序执行。如果任何初始化容器失败,则认为 Pod 失败,并根据其重启策略进行处理。初始化容器或普通容器的名称在所有容器中必须唯一。初始化容器可能没有生命周期操作、就绪探针、存活探针或启动探针。初始化容器的 resourceRequirements 在调度期间通过查找每种资源类型的最高请求/限制,然后使用该值或普通容器总和的最大值来考虑。限制以类似的方式应用于初始化容器。当前无法添加或删除初始化容器。无法更新。更多信息:https://kubernetes.ac.cn/docs/concepts/workloads/pods/init-containers/
数组
您想要在 Pod 中运行的单个应用程序容器。
对象
name
属性 | 类型 | 描述 |
---|---|---|
|
|
入口点的参数。如果未提供此参数,则使用容器镜像的 CMD。变量引用 $(VAR_NAME) 使用容器的环境进行扩展。如果无法解析变量,则输入字符串中的引用将保持不变。双美元符号将简化为单个美元符号,允许转义 $(VAR_NAME) 语法:即“(VAR_NAME)”将生成字符串字面量“$(VAR_NAME)”。转义的引用将永远不会扩展,无论变量是否存在。 |
|
|
入口点数组。不会在 shell 中执行。如果未提供此项,则使用容器镜像的 ENTRYPOINT。变量引用 $(VAR_NAME) 将使用容器的环境进行扩展。如果无法解析变量,则输入字符串中的引用将保持不变。双美元符号将减少为单个美元符号 $,这允许转义 $(VAR_NAME) 语法:即“$(VAR_NAME)”将生成字符串字面量“$(VAR_NAME)”。转义的引用永远不会被扩展,无论变量是否存在。 |
|
|
要在容器中设置的环境变量列表。无法更新。 |
|
|
EnvVar 表示容器中存在的环境变量。 |
|
|
用于填充容器中环境变量的源列表。源中定义的键必须是 C_IDENTIFIER。所有无效的键都将在容器启动时作为事件报告。当一个键在多个源中存在时,最后一个源关联的值将优先。具有重复键的 Env 定义的值将优先。无法更新。 |
|
|
EnvFromSource 表示一组 ConfigMap 的来源。 |
|
|
容器镜像名称。更多信息:https://kubernetes.ac.cn/docs/concepts/containers/images 此字段是可选的,允许更高级别的配置管理在像 Deployments 和 StatefulSets 这样的工作负载控制器中默认或覆盖容器镜像。 |
|
|
镜像拉取策略。Always、Never、IfNotPresent 之一。如果指定了 :latest 标签,则默认为 Always,否则为 IfNotPresent。无法更新。更多信息:https://kubernetes.ac.cn/docs/concepts/containers/images#updating-images 可能的枚举值:- |
|
|
Lifecycle 描述了管理系统应该对容器生命周期事件采取的操作。对于 PostStart 和 PreStop 生命周期处理程序,容器的管理会阻塞直到操作完成,除非容器进程失败,在这种情况下处理程序将被中止。 |
|
|
Probe 描述了对容器执行的健康检查,以确定它是否存活或准备好接收流量。 |
|
|
指定为 DNS_LABEL 的容器名称。pod 中的每个容器都必须具有唯一的名称 (DNS_LABEL)。无法更新。 |
|
|
要从容器中公开的端口列表。此处不指定端口并不会阻止该端口被公开。容器内部侦听默认“0.0.0.0”地址的任何端口都将可从网络访问。使用战略合并补丁修改此数组可能会损坏数据。更多信息参见 https://github.com/kubernetes/kubernetes/issues/108255。无法更新。 |
|
|
ContainerPort 表示单个容器中的网络端口。 |
|
|
Probe 描述了对容器执行的健康检查,以确定它是否存活或准备好接收流量。 |
|
|
容器的资源调整策略。 |
|
|
ContainerResizePolicy 表示容器的资源调整策略。 |
|
|
ResourceRequirements 描述计算资源需求。 |
|
|
RestartPolicy 定义 pod 中各个容器的重启行为。此字段可能仅针对 init 容器设置,并且唯一允许的值是“Always”。对于非 init 容器或未指定此字段时,重启行为由 Pod 的重启策略和容器类型定义。将 init 容器的 RestartPolicy 设置为“Always”将产生以下效果:此 init 容器将在退出时持续重启,直到所有常规容器都终止。一旦所有常规容器都已完成,所有具有 restartPolicy“Always”的 init 容器都将关闭。此生命周期与普通 init 容器不同,通常被称为“sidecar”容器。尽管此 init 容器仍在 init 容器序列中启动,但在继续下一个 init 容器之前,它不会等待容器完成。相反,下一个 init 容器会在启动此 init 容器后立即启动,或者在任何 startupProbe 成功完成之后启动。 |
|
|
SecurityContext 包含将应用于容器的安全配置。某些字段同时存在于 SecurityContext 和 PodSecurityContext 中。当两者都设置时,SecurityContext 中的值优先。 |
|
|
Probe 描述了对容器执行的健康检查,以确定它是否存活或准备好接收流量。 |
|
|
此容器是否应在容器运行时分配 stdin 的缓冲区。如果未设置此项,则容器中从 stdin 读取将始终导致 EOF。默认为 false。 |
|
|
容器运行时是否应在单个附加操作打开 stdin 通道后关闭它。当 stdin 为 true 时,stdin 流将在多个附加会话中保持打开状态。如果 stdinOnce 设置为 true,则 stdin 在容器启动时打开,在第一个客户端附加到 stdin 之前为空,然后保持打开状态并接受数据,直到客户端断开连接,此时 stdin 关闭并保持关闭状态,直到容器重新启动。如果此标志为 false,则从 stdin 读取的容器进程将永远不会收到 EOF。默认为 false。 |
|
|
可选:将容器终止消息写入的文件安装到容器文件系统的路径。写入的消息旨在简短地显示最终状态,例如断言失败消息。如果大于 4096 字节,则将被节点截断。所有容器的总消息长度将限制为 12kb。默认为 /dev/termination-log。无法更新。 |
|
|
指示如何填充终止消息。File 将使用 terminationMessagePath 的内容在成功和失败时填充容器状态消息。FallbackToLogsOnError 如果终止消息文件为空且容器以错误退出,则将使用容器日志输出的最后一段。日志输出限制为 2048 字节或 80 行,取较小者。默认为 File。无法更新。 可能的枚举值:- |
|
|
此容器是否应为自己分配一个 TTY,也需要 'stdin' 为 true。默认为 false。 |
|
|
volumeDevices 是容器要使用的块设备列表。 |
|
|
volumeDevice 描述了容器内原始块设备的映射。 |
|
|
要挂载到容器文件系统的 Pod 卷。无法更新。 |
|
|
VolumeMount 描述了在容器内挂载卷。 |
|
|
容器的工作目录。如果未指定,将使用容器运行时的默认值,这可能在容器镜像中配置。无法更新。 |
EnvVar 表示容器中存在的环境变量。
对象
name
属性 | 类型 | 描述 |
---|---|---|
|
|
环境变量的名称。必须是 C_IDENTIFIER。 |
|
|
变量引用 $(VAR_NAME) 使用容器中先前定义的环境变量和任何服务环境变量进行扩展。如果无法解析变量,则输入字符串中的引用将保持不变。双美元符号将减少为单个美元符号,允许转义 $(VAR_NAME) 语法:即“(VAR_NAME)”将生成字符串字面量“$(VAR_NAME)”。无论变量是否存在,转义的引用都不会被扩展。默认为 ""。 |
|
|
EnvVarSource 代表 EnvVar 值的来源。 |
EnvVarSource 代表 EnvVar 值的来源。
对象
属性 | 类型 | 描述 |
---|---|---|
|
|
从 ConfigMap 中选择一个键。 |
|
|
ObjectFieldSelector 选择对象的 APIVersioned 字段。 |
|
|
ResourceFieldSelector 代表容器资源(cpu,内存)及其输出格式 |
|
|
SecretKeySelector 选择 Secret 的一个键。 |
从 ConfigMap 中选择一个键。
对象
key
属性 | 类型 | 描述 |
---|---|---|
|
|
要选择的键。 |
|
|
引用的名称。此字段实际上是必需的,但由于向后兼容性,允许为空。此类型的实例在此处为空值几乎肯定是错误的。更多信息:https://kubernetes.ac.cn/docs/concepts/overview/working-with-objects/names/#names |
|
|
指定是否必须定义 ConfigMap 或其键 |
ObjectFieldSelector 选择对象的 APIVersioned 字段。
对象
fieldPath
属性 | 类型 | 描述 |
---|---|---|
|
|
FieldPath 以其编写的模式版本,默认为“v1”。 |
|
|
在指定的 API 版本中选择字段的路径。 |
ResourceFieldSelector 代表容器资源(cpu,内存)及其输出格式
对象
resource
属性 | 类型 | 描述 |
---|---|---|
|
|
容器名称:卷必需,环境变量可选 |
|
指定公开资源的输出格式,默认为“1” |
|
|
|
必需:要选择的资源 |
SecretKeySelector 选择 Secret 的一个键。
对象
key
属性 | 类型 | 描述 |
---|---|---|
|
|
要从中选择的密钥的密钥。必须是有效的密钥。 |
|
|
引用的名称。此字段实际上是必需的,但由于向后兼容性,允许为空。此类型的实例在此处为空值几乎肯定是错误的。更多信息:https://kubernetes.ac.cn/docs/concepts/overview/working-with-objects/names/#names |
|
|
指定是否必须定义 Secret 或其键 |
用于填充容器中环境变量的源列表。源中定义的键必须是 C_IDENTIFIER。所有无效的键都将在容器启动时作为事件报告。当一个键在多个源中存在时,最后一个源关联的值将优先。具有重复键的 Env 定义的值将优先。无法更新。
数组
EnvFromSource 表示一组 ConfigMap 的来源。
对象
属性 | 类型 | 描述 |
---|---|---|
|
|
ConfigMapEnvSource 选择一个 ConfigMap 来填充环境变量。 目标 ConfigMap 的 Data 字段的内容将表示键值对作为环境变量。 |
|
|
一个可选的标识符,用于在 ConfigMap 中的每个键之前添加。必须是 C_IDENTIFIER。 |
|
|
SecretEnvSource 选择一个 Secret 来填充环境变量。 目标 Secret 的 Data 字段的内容将表示键值对作为环境变量。 |
ConfigMapEnvSource 选择一个 ConfigMap 来填充环境变量。
目标 ConfigMap 的 Data 字段的内容将表示键值对作为环境变量。
对象
属性 | 类型 | 描述 |
---|---|---|
|
|
引用的名称。此字段实际上是必需的,但由于向后兼容性,允许为空。此类型的实例在此处为空值几乎肯定是错误的。更多信息:https://kubernetes.ac.cn/docs/concepts/overview/working-with-objects/names/#names |
|
|
指定是否必须定义 ConfigMap |
SecretEnvSource 选择一个 Secret 来填充环境变量。
目标 Secret 的 Data 字段的内容将表示键值对作为环境变量。
对象
属性 | 类型 | 描述 |
---|---|---|
|
|
引用的名称。此字段实际上是必需的,但由于向后兼容性,允许为空。此类型的实例在此处为空值几乎肯定是错误的。更多信息:https://kubernetes.ac.cn/docs/concepts/overview/working-with-objects/names/#names |
|
|
指定是否必须定义 Secret |
Lifecycle 描述了管理系统应该对容器生命周期事件采取的操作。对于 PostStart 和 PreStop 生命周期处理程序,容器的管理会阻塞直到操作完成,除非容器进程失败,在这种情况下处理程序将被中止。
对象
属性 | 类型 | 描述 |
---|---|---|
|
|
LifecycleHandler 定义生命周期挂钩中应采取的特定操作。必须指定一个且只有一个字段,TCPSocket 除外。 |
|
|
LifecycleHandler 定义生命周期挂钩中应采取的特定操作。必须指定一个且只有一个字段,TCPSocket 除外。 |
LifecycleHandler 定义生命周期挂钩中应采取的特定操作。必须指定一个且只有一个字段,TCPSocket 除外。
对象
属性 | 类型 | 描述 |
---|---|---|
|
|
ExecAction 描述“在容器中运行”操作。 |
|
|
HTTPGetAction 描述基于 HTTP Get 请求的操作。 |
|
|
SleepAction 描述“睡眠”操作。 |
|
|
TCPSocketAction 描述基于打开套接字的操作 |
ExecAction 描述“在容器中运行”操作。
对象
属性 | 类型 | 描述 |
---|---|---|
|
|
Command 是在容器内执行的命令行,命令的工作目录是容器文件系统中的根目录('/')。该命令只是简单地执行,它不会在 shell 内运行,因此传统的 shell 指令('|' 等)将不起作用。要使用 shell,需要显式调用该 shell。退出状态为 0 被视为活动/健康,非零为不健康。 |
HTTPGetAction 描述基于 HTTP Get 请求的操作。
对象
port
属性 | 类型 | 描述 |
---|---|---|
|
|
要连接到的主机名,默认为 Pod IP。您可能希望在 httpHeaders 中设置“Host”。 |
|
|
要在请求中设置的自定义标头。HTTP 允许重复标头。 |
|
|
HTTPHeader 描述要在 HTTP 探测中使用的自定义标头 |
|
|
在 HTTP 服务器上访问的路径。 |
|
要访问容器上端口的名称或编号。数字必须在 1 到 65535 的范围内。名称必须是 IANA_SVC_NAME。 |
|
|
|
用于连接到主机的方案。默认为 HTTP。 可能的枚举值:- |
HTTPHeader 描述要在 HTTP 探测中使用的自定义标头
对象
name
value
属性 | 类型 | 描述 |
---|---|---|
|
|
标头字段名称。这将在输出时被规范化,因此大小写不同的名称将被理解为相同的标头。 |
|
|
标头字段值 |
SleepAction 描述“睡眠”操作。
对象
seconds
属性 | 类型 | 描述 |
---|---|---|
|
|
Seconds 是要休眠的秒数。 |
TCPSocketAction 描述基于打开套接字的操作
对象
port
属性 | 类型 | 描述 |
---|---|---|
|
|
可选:要连接到的主机名,默认为 Pod IP。 |
|
要访问容器上端口的编号或名称。数字必须在 1 到 65535 的范围内。名称必须是 IANA_SVC_NAME。 |
LifecycleHandler 定义生命周期挂钩中应采取的特定操作。必须指定一个且只有一个字段,TCPSocket 除外。
对象
属性 | 类型 | 描述 |
---|---|---|
|
|
ExecAction 描述“在容器中运行”操作。 |
|
|
HTTPGetAction 描述基于 HTTP Get 请求的操作。 |
|
|
SleepAction 描述“睡眠”操作。 |
|
|
TCPSocketAction 描述基于打开套接字的操作 |
ExecAction 描述“在容器中运行”操作。
对象
属性 | 类型 | 描述 |
---|---|---|
|
|
Command 是在容器内执行的命令行,命令的工作目录是容器文件系统中的根目录('/')。该命令只是简单地执行,它不会在 shell 内运行,因此传统的 shell 指令('|' 等)将不起作用。要使用 shell,需要显式调用该 shell。退出状态为 0 被视为活动/健康,非零为不健康。 |
HTTPGetAction 描述基于 HTTP Get 请求的操作。
对象
port
属性 | 类型 | 描述 |
---|---|---|
|
|
要连接到的主机名,默认为 Pod IP。您可能希望在 httpHeaders 中设置“Host”。 |
|
|
要在请求中设置的自定义标头。HTTP 允许重复标头。 |
|
|
HTTPHeader 描述要在 HTTP 探测中使用的自定义标头 |
|
|
在 HTTP 服务器上访问的路径。 |
|
要访问容器上端口的名称或编号。数字必须在 1 到 65535 的范围内。名称必须是 IANA_SVC_NAME。 |
|
|
|
用于连接到主机的方案。默认为 HTTP。 可能的枚举值:- |
HTTPHeader 描述要在 HTTP 探测中使用的自定义标头
对象
name
value
属性 | 类型 | 描述 |
---|---|---|
|
|
标头字段名称。这将在输出时被规范化,因此大小写不同的名称将被理解为相同的标头。 |
|
|
标头字段值 |
SleepAction 描述“睡眠”操作。
对象
seconds
属性 | 类型 | 描述 |
---|---|---|
|
|
Seconds 是要休眠的秒数。 |
TCPSocketAction 描述基于打开套接字的操作
对象
port
属性 | 类型 | 描述 |
---|---|---|
|
|
可选:要连接到的主机名,默认为 Pod IP。 |
|
要访问容器上端口的编号或名称。数字必须在 1 到 65535 的范围内。名称必须是 IANA_SVC_NAME。 |
Probe 描述了对容器执行的健康检查,以确定它是否存活或准备好接收流量。
对象
属性 | 类型 | 描述 |
---|---|---|
|
|
ExecAction 描述“在容器中运行”操作。 |
|
|
探测在成功后被认为失败的最小连续失败次数。默认为 3。最小值为 1。 |
|
|
GRPC 指定涉及 GRPC 端口的操作。 |
|
|
HTTPGetAction 描述基于 HTTP Get 请求的操作。 |
|
|
容器启动后在启动探测之前等待的秒数。更多信息:https://kubernetes.ac.cn/docs/concepts/workloads/pods/pod-lifecycle#container-probes |
|
|
执行探测的频率(以秒为单位)。默认为 10 秒。最小值为 1。 |
|
|
探测在失败后被认为成功的最小连续成功次数。默认为 1。对于存活性和启动必须为 1。最小值为 1。 |
|
|
TCPSocketAction 描述基于打开套接字的操作 |
|
|
探针失败后,Pod 优雅终止所需的时间(秒)。宽限期是在向 Pod 中运行的进程发送终止信号与强制使用 kill 信号停止进程之间的时间间隔(秒)。将此值设置为大于进程预期清理时间的数值。如果此值为 nil,则将使用 Pod 的 terminationGracePeriodSeconds。否则,此值将覆盖 Pod 规范中提供的值。值必须是非负整数。值为零表示立即通过 kill 信号停止(没有关闭机会)。这是一个 Beta 功能,需要启用 ProbeTerminationGracePeriod 功能门。最小值为 1。如果未设置,则使用 spec.terminationGracePeriodSeconds。 |
|
|
探针超时之前的秒数。默认为 1 秒。最小值为 1。更多信息:https://kubernetes.ac.cn/docs/concepts/workloads/pods/pod-lifecycle#container-probes |
ExecAction 描述“在容器中运行”操作。
对象
属性 | 类型 | 描述 |
---|---|---|
|
|
Command 是在容器内执行的命令行,命令的工作目录是容器文件系统中的根目录('/')。该命令只是简单地执行,它不会在 shell 内运行,因此传统的 shell 指令('|' 等)将不起作用。要使用 shell,需要显式调用该 shell。退出状态为 0 被视为活动/健康,非零为不健康。 |
GRPC 指定涉及 GRPC 端口的操作。
对象
port
属性 | 类型 | 描述 |
---|---|---|
|
|
gRPC 服务的端口号。数字必须在 1 到 65535 之间。 |
|
|
服务是在 gRPC HealthCheckRequest 中放置的服务名称(参见 https://github.com/grpc/grpc/blob/master/doc/health-checking.md)。 如果未指定,则默认行为由 gRPC 定义。 |
HTTPGetAction 描述基于 HTTP Get 请求的操作。
对象
port
属性 | 类型 | 描述 |
---|---|---|
|
|
要连接到的主机名,默认为 Pod IP。您可能希望在 httpHeaders 中设置“Host”。 |
|
|
要在请求中设置的自定义标头。HTTP 允许重复标头。 |
|
|
HTTPHeader 描述要在 HTTP 探测中使用的自定义标头 |
|
|
在 HTTP 服务器上访问的路径。 |
|
要访问容器上端口的名称或编号。数字必须在 1 到 65535 的范围内。名称必须是 IANA_SVC_NAME。 |
|
|
|
用于连接到主机的方案。默认为 HTTP。 可能的枚举值:- |
HTTPHeader 描述要在 HTTP 探测中使用的自定义标头
对象
name
value
属性 | 类型 | 描述 |
---|---|---|
|
|
标头字段名称。这将在输出时被规范化,因此大小写不同的名称将被理解为相同的标头。 |
|
|
标头字段值 |
TCPSocketAction 描述基于打开套接字的操作
对象
port
属性 | 类型 | 描述 |
---|---|---|
|
|
可选:要连接到的主机名,默认为 Pod IP。 |
|
要访问容器上端口的编号或名称。数字必须在 1 到 65535 的范围内。名称必须是 IANA_SVC_NAME。 |
要从容器中公开的端口列表。此处不指定端口并不会阻止该端口被公开。容器内部侦听默认“0.0.0.0”地址的任何端口都将可从网络访问。使用战略合并补丁修改此数组可能会损坏数据。更多信息参见 https://github.com/kubernetes/kubernetes/issues/108255。无法更新。
数组
ContainerPort 表示单个容器中的网络端口。
对象
容器端口
属性 | 类型 | 描述 |
---|---|---|
|
|
在 Pod 的 IP 地址上公开的端口号。这必须是一个有效的端口号,0 < x < 65536。 |
|
|
将外部端口绑定到的主机 IP。 |
|
|
在主机上公开的端口号。如果指定,这必须是一个有效的端口号,0 < x < 65536。如果指定了 HostNetwork,则这必须与 ContainerPort 匹配。大多数容器不需要这个。 |
|
|
如果指定,这必须是 IANA_SVC_NAME 并且在 Pod 中唯一。Pod 中的每个命名端口都必须具有唯一的名称。可以由服务引用的端口名称。 |
|
|
端口协议。必须是 UDP、TCP 或 SCTP。默认为“TCP”。 可能的枚举值:- |
Probe 描述了对容器执行的健康检查,以确定它是否存活或准备好接收流量。
对象
属性 | 类型 | 描述 |
---|---|---|
|
|
ExecAction 描述“在容器中运行”操作。 |
|
|
探测在成功后被认为失败的最小连续失败次数。默认为 3。最小值为 1。 |
|
|
GRPC 指定涉及 GRPC 端口的操作。 |
|
|
HTTPGetAction 描述基于 HTTP Get 请求的操作。 |
|
|
容器启动后在启动探测之前等待的秒数。更多信息:https://kubernetes.ac.cn/docs/concepts/workloads/pods/pod-lifecycle#container-probes |
|
|
执行探测的频率(以秒为单位)。默认为 10 秒。最小值为 1。 |
|
|
探测在失败后被认为成功的最小连续成功次数。默认为 1。对于存活性和启动必须为 1。最小值为 1。 |
|
|
TCPSocketAction 描述基于打开套接字的操作 |
|
|
探针失败后,Pod 优雅终止所需的时间(秒)。宽限期是在向 Pod 中运行的进程发送终止信号与强制使用 kill 信号停止进程之间的时间间隔(秒)。将此值设置为大于进程预期清理时间的数值。如果此值为 nil,则将使用 Pod 的 terminationGracePeriodSeconds。否则,此值将覆盖 Pod 规范中提供的值。值必须是非负整数。值为零表示立即通过 kill 信号停止(没有关闭机会)。这是一个 Beta 功能,需要启用 ProbeTerminationGracePeriod 功能门。最小值为 1。如果未设置,则使用 spec.terminationGracePeriodSeconds。 |
|
|
探针超时之前的秒数。默认为 1 秒。最小值为 1。更多信息:https://kubernetes.ac.cn/docs/concepts/workloads/pods/pod-lifecycle#container-probes |
ExecAction 描述“在容器中运行”操作。
对象
属性 | 类型 | 描述 |
---|---|---|
|
|
Command 是在容器内执行的命令行,命令的工作目录是容器文件系统中的根目录('/')。该命令只是简单地执行,它不会在 shell 内运行,因此传统的 shell 指令('|' 等)将不起作用。要使用 shell,需要显式调用该 shell。退出状态为 0 被视为活动/健康,非零为不健康。 |
GRPC 指定涉及 GRPC 端口的操作。
对象
port
属性 | 类型 | 描述 |
---|---|---|
|
|
gRPC 服务的端口号。数字必须在 1 到 65535 之间。 |
|
|
服务是在 gRPC HealthCheckRequest 中放置的服务名称(参见 https://github.com/grpc/grpc/blob/master/doc/health-checking.md)。 如果未指定,则默认行为由 gRPC 定义。 |
HTTPGetAction 描述基于 HTTP Get 请求的操作。
对象
port
属性 | 类型 | 描述 |
---|---|---|
|
|
要连接到的主机名,默认为 Pod IP。您可能希望在 httpHeaders 中设置“Host”。 |
|
|
要在请求中设置的自定义标头。HTTP 允许重复标头。 |
|
|
HTTPHeader 描述要在 HTTP 探测中使用的自定义标头 |
|
|
在 HTTP 服务器上访问的路径。 |
|
要访问容器上端口的名称或编号。数字必须在 1 到 65535 的范围内。名称必须是 IANA_SVC_NAME。 |
|
|
|
用于连接到主机的方案。默认为 HTTP。 可能的枚举值:- |
HTTPHeader 描述要在 HTTP 探测中使用的自定义标头
对象
name
value
属性 | 类型 | 描述 |
---|---|---|
|
|
标头字段名称。这将在输出时被规范化,因此大小写不同的名称将被理解为相同的标头。 |
|
|
标头字段值 |
TCPSocketAction 描述基于打开套接字的操作
对象
port
属性 | 类型 | 描述 |
---|---|---|
|
|
可选:要连接到的主机名,默认为 Pod IP。 |
|
要访问容器上端口的编号或名称。数字必须在 1 到 65535 的范围内。名称必须是 IANA_SVC_NAME。 |
ContainerResizePolicy 表示容器的资源调整策略。
对象
资源名称
restartPolicy
属性 | 类型 | 描述 |
---|---|---|
|
|
此资源调整策略适用的资源名称。支持的值:cpu、memory。 |
|
|
调整指定资源大小时要应用的重启策略。如果未指定,则默认为 NotRequired。 |
ResourceRequirements 描述计算资源需求。
对象
属性 | 类型 | 描述 |
---|---|---|
|
|
Claims 列出了此容器使用的资源名称,这些资源定义在 spec.resourceClaims 中。 这是一个 alpha 字段,需要启用 DynamicResourceAllocation 功能网关。 此字段是不可变的。它只能为容器设置。 |
|
|
ResourceClaim 引用 PodSpec.ResourceClaims 中的一个条目。 |
|
Limits 描述了允许的最大计算资源量。更多信息:https://kubernetes.ac.cn/docs/concepts/configuration/manage-resources-containers/ |
|
|
Requests 描述了所需的最小计算资源量。如果容器的 Requests 被省略,则默认为 Limits(如果明确指定),否则默认为实现定义的值。Requests 不能超过 Limits。更多信息:https://kubernetes.ac.cn/docs/concepts/configuration/manage-resources-containers/ |
Claims 列出了此容器使用的资源名称,这些资源定义在 spec.resourceClaims 中。
这是一个 alpha 字段,需要启用 DynamicResourceAllocation 功能网关。
此字段是不可变的。它只能为容器设置。
数组
ResourceClaim 引用 PodSpec.ResourceClaims 中的一个条目。
对象
name
属性 | 类型 | 描述 |
---|---|---|
|
|
名称必须与使用此字段的 Pod 的 pod.spec.resourceClaims 中的一个条目的名称匹配。它使该资源在容器内可用。 |
SecurityContext 包含将应用于容器的安全配置。某些字段同时存在于 SecurityContext 和 PodSecurityContext 中。当两者都设置时,SecurityContext 中的值优先。
对象
属性 | 类型 | 描述 |
---|---|---|
|
|
AllowPrivilegeEscalation 控制进程是否可以获得比其父进程更高的权限。此布尔值直接控制容器进程上是否设置 no_new_privs 标志。当容器:1) 作为特权容器运行 2) 具有 CAP_SYS_ADMIN 时,AllowPrivilegeEscalation 始终为 true。请注意,当 spec.os.name 为 windows 时,无法设置此字段。 |
|
|
AppArmorProfile 定义 Pod 或容器的 AppArmor 设置。 |
|
|
向运行中的容器添加和删除 POSIX 功能。 |
|
|
以特权模式运行容器。特权容器中的进程实际上等同于主机上的 root 用户。默认为 false。请注意,当 spec.os.name 为 windows 时,无法设置此字段。 |
|
|
procMount 表示要用于容器的 proc 挂载类型。默认为 DefaultProcMount,它使用容器运行时对只读路径和屏蔽路径的默认设置。这需要启用 ProcMountType 功能标志。请注意,当 spec.os.name 为 windows 时,无法设置此字段。 可能的枚举值:- |
|
|
此容器是否具有只读根文件系统。默认为 false。请注意,当 spec.os.name 为 windows 时,无法设置此字段。 |
|
|
运行容器进程入口点的 GID。如果未设置,则使用运行时默认值。也可能在 PodSecurityContext 中设置。如果在 SecurityContext 和 PodSecurityContext 中都设置了此值,则 SecurityContext 中指定的值优先。请注意,当 spec.os.name 为 windows 时,无法设置此字段。 |
|
|
指示容器必须以非 root 用户身份运行。如果为 true,则 Kubelet 将在运行时验证映像,以确保它不以 UID 0(root)身份运行,如果确实如此,则会启动容器失败。如果未设置或为 false,则不会执行此类验证。也可能在 PodSecurityContext 中设置。如果在 SecurityContext 和 PodSecurityContext 中都设置了此值,则 SecurityContext 中指定的值优先。 |
|
|
运行容器进程入口点的 UID。如果未指定,则默认为映像元数据中指定的用户。也可能在 PodSecurityContext 中设置。如果在 SecurityContext 和 PodSecurityContext 中都设置了此值,则 SecurityContext 中指定的值优先。请注意,当 spec.os.name 为 windows 时,无法设置此字段。 |
|
|
SELinuxOptions 是要应用于容器的标签。 |
|
|
SeccompProfile 定义 Pod/容器的 seccomp 配置文件设置。只能设置一个配置文件源。 |
|
|
WindowsSecurityContextOptions 包含 Windows 特定的选项和凭据。 |
AppArmorProfile 定义 Pod 或容器的 AppArmor 设置。
对象
类型
属性 | 类型 | 描述 |
---|---|---|
|
|
localhostProfile 指示应使用在节点上加载的配置文件。该配置文件必须预先配置在节点上才能正常工作。必须与配置文件的加载名称匹配。当且仅当类型为“Localhost”时才必须设置。 |
|
|
type 指示将应用哪种 AppArmor 配置文件。有效选项包括:Localhost - 节点上预加载的配置文件。RuntimeDefault - 容器运行时的默认配置文件。Unconfined - 不进行 AppArmor 增强。 可能的枚举值:- |
向运行中的容器添加和删除 POSIX 功能。
对象
属性 | 类型 | 描述 |
---|---|---|
|
|
添加的功能 |
|
|
删除的功能 |
SELinuxOptions 是要应用于容器的标签。
对象
属性 | 类型 | 描述 |
---|---|---|
|
|
Level 是应用于容器的 SELinux 级别标签。 |
|
|
Role 是应用于容器的 SELinux 角色标签。 |
|
|
Type 是应用于容器的 SELinux 类型标签。 |
|
|
User 是应用于容器的 SELinux 用户标签。 |
SeccompProfile 定义 Pod/容器的 seccomp 配置文件设置。只能设置一个配置文件源。
对象
类型
属性 | 类型 | 描述 |
---|---|---|
|
|
localhostProfile 指示应使用节点上文件中定义的配置文件。该配置文件必须预先配置在节点上才能正常工作。必须是相对于 kubelet 配置的 seccomp 配置文件位置的向下路径。如果类型为“Localhost”,则必须设置。对于任何其他类型,则绝对不能设置。 |
|
|
type 指示将应用哪种 seccomp 配置文件。有效选项包括: Localhost - 应使用节点上文件中定义的配置文件。RuntimeDefault - 应使用容器运行时的默认配置文件。Unconfined - 不应用任何配置文件。 可能的枚举值:- |
WindowsSecurityContextOptions 包含 Windows 特定的选项和凭据。
对象
属性 | 类型 | 描述 |
---|---|---|
|
|
GMSACredentialSpec 是 GMSA 准入 Webhook (https://github.com/kubernetes-sigs/windows-gmsa) 内联 GMSACredentialSpecName 字段命名的 GMSA 凭据规范内容的位置。 |
|
|
GMSACredentialSpecName 是要使用的 GMSA 凭据规范的名称。 |
|
|
HostProcess 决定是否应将容器作为“主机进程”容器运行。Pod 的所有容器都必须具有相同的有效 HostProcess 值(不允许混合使用 HostProcess 容器和非 HostProcess 容器)。此外,如果 HostProcess 为 true,则 HostNetwork 也必须设置为 true。 |
|
|
在 Windows 中运行容器进程入口点的用户名。如果未指定,则默认为映像元数据中指定的用户名。也可能在 PodSecurityContext 中设置。如果在 SecurityContext 和 PodSecurityContext 中都设置,则 SecurityContext 中指定的值优先。 |
Probe 描述了对容器执行的健康检查,以确定它是否存活或准备好接收流量。
对象
属性 | 类型 | 描述 |
---|---|---|
|
|
ExecAction 描述“在容器中运行”操作。 |
|
|
探测在成功后被认为失败的最小连续失败次数。默认为 3。最小值为 1。 |
|
|
GRPC 指定涉及 GRPC 端口的操作。 |
|
|
HTTPGetAction 描述基于 HTTP Get 请求的操作。 |
|
|
容器启动后在启动探测之前等待的秒数。更多信息:https://kubernetes.ac.cn/docs/concepts/workloads/pods/pod-lifecycle#container-probes |
|
|
执行探测的频率(以秒为单位)。默认为 10 秒。最小值为 1。 |
|
|
探测在失败后被认为成功的最小连续成功次数。默认为 1。对于存活性和启动必须为 1。最小值为 1。 |
|
|
TCPSocketAction 描述基于打开套接字的操作 |
|
|
探针失败后,Pod 优雅终止所需的时间(秒)。宽限期是在向 Pod 中运行的进程发送终止信号与强制使用 kill 信号停止进程之间的时间间隔(秒)。将此值设置为大于进程预期清理时间的数值。如果此值为 nil,则将使用 Pod 的 terminationGracePeriodSeconds。否则,此值将覆盖 Pod 规范中提供的值。值必须是非负整数。值为零表示立即通过 kill 信号停止(没有关闭机会)。这是一个 Beta 功能,需要启用 ProbeTerminationGracePeriod 功能门。最小值为 1。如果未设置,则使用 spec.terminationGracePeriodSeconds。 |
|
|
探针超时之前的秒数。默认为 1 秒。最小值为 1。更多信息:https://kubernetes.ac.cn/docs/concepts/workloads/pods/pod-lifecycle#container-probes |
ExecAction 描述“在容器中运行”操作。
对象
属性 | 类型 | 描述 |
---|---|---|
|
|
Command 是在容器内执行的命令行,命令的工作目录是容器文件系统中的根目录('/')。该命令只是简单地执行,它不会在 shell 内运行,因此传统的 shell 指令('|' 等)将不起作用。要使用 shell,需要显式调用该 shell。退出状态为 0 被视为活动/健康,非零为不健康。 |
GRPC 指定涉及 GRPC 端口的操作。
对象
port
属性 | 类型 | 描述 |
---|---|---|
|
|
gRPC 服务的端口号。数字必须在 1 到 65535 之间。 |
|
|
服务是在 gRPC HealthCheckRequest 中放置的服务名称(参见 https://github.com/grpc/grpc/blob/master/doc/health-checking.md)。 如果未指定,则默认行为由 gRPC 定义。 |
HTTPGetAction 描述基于 HTTP Get 请求的操作。
对象
port
属性 | 类型 | 描述 |
---|---|---|
|
|
要连接到的主机名,默认为 Pod IP。您可能希望在 httpHeaders 中设置“Host”。 |
|
|
要在请求中设置的自定义标头。HTTP 允许重复标头。 |
|
|
HTTPHeader 描述要在 HTTP 探测中使用的自定义标头 |
|
|
在 HTTP 服务器上访问的路径。 |
|
要访问容器上端口的名称或编号。数字必须在 1 到 65535 的范围内。名称必须是 IANA_SVC_NAME。 |
|
|
|
用于连接到主机的方案。默认为 HTTP。 可能的枚举值:- |
HTTPHeader 描述要在 HTTP 探测中使用的自定义标头
对象
name
value
属性 | 类型 | 描述 |
---|---|---|
|
|
标头字段名称。这将在输出时被规范化,因此大小写不同的名称将被理解为相同的标头。 |
|
|
标头字段值 |
TCPSocketAction 描述基于打开套接字的操作
对象
port
属性 | 类型 | 描述 |
---|---|---|
|
|
可选:要连接到的主机名,默认为 Pod IP。 |
|
要访问容器上端口的编号或名称。数字必须在 1 到 65535 的范围内。名称必须是 IANA_SVC_NAME。 |
volumeDevice 描述了容器内原始块设备的映射。
对象
name
devicePath
属性 | 类型 | 描述 |
---|---|---|
|
|
devicePath 是容器内设备将映射到的路径。 |
|
|
name 必须与 Pod 中的 persistentVolumeClaim 的名称匹配 |
VolumeMount 描述了在容器内挂载卷。
对象
name
mountPath
属性 | 类型 | 描述 |
---|---|---|
|
|
容器内挂载卷的路径。不能包含':'。 |
|
|
mountPropagation 决定如何将挂载从主机传播到容器,反之亦然。未设置时,使用 MountPropagationNone。此字段在 1.10 中为 Beta 版本。当 RecursiveReadOnly 设置为 IfPossible 或 Enabled 时,MountPropagation 必须为 None 或未指定(默认为 None)。 可能的枚举值:- |
|
|
这必须与卷的名称匹配。 |
|
|
如果为 true,则以只读方式挂载;否则为读写方式(false 或未指定)。默认为 false。 |
|
|
RecursiveReadOnly 指定是否应递归处理只读挂载。 如果 ReadOnly 为 false,则此字段没有意义,必须未指定。 如果 ReadOnly 为 true,并且此字段设置为 Disabled,则不会递归地将挂载设为只读。如果此字段设置为 IfPossible,则如果容器运行时支持,则将挂载递归地设为只读。如果此字段设置为 Enabled,则如果容器运行时支持,则将挂载递归地设为只读;否则,Pod 将不会启动,并且会生成错误以指示原因。 如果此字段设置为 IfPossible 或 Enabled,则 MountPropagation 必须设置为 None(或未指定,默认为 None)。 如果未指定此字段,则将其视为与 Disabled 等效。 |
|
|
卷中容器的卷应从中挂载的路径。默认为 ""(卷的根目录)。 |
|
|
容器卷应从中挂载的卷内的扩展路径。其行为类似于 SubPath,但环境变量引用 $(VAR_NAME) 将使用容器的环境进行展开。默认为 ""(卷的根目录)。SubPathExpr 和 SubPath 互斥。 |
PodOS 定义 Pod 的操作系统参数。
对象
name
属性 | 类型 | 描述 |
---|---|---|
|
|
Name 字段表示操作系统的名称。当前支持的值为 linux 和 windows。将来可能会定义其他值,例如:https://github.com/opencontainers/runtime-spec/blob/master/config.md#platform-specific-configuration 客户端应该能够处理附加值,并将无法识别的值在此字段中视为 os: null。 |
如果指定,所有就绪门将用于评估 Pod 就绪状态。当所有容器都就绪并且就绪门中指定的所有条件的状态都等于“True”时,Pod 就绪。更多信息:https://git.k8s.io/enhancements/keps/sig-network/580-pod-readiness-gates
数组
PodReadinessGate 包含对 Pod 条件的引用。
对象
conditionType
属性 | 类型 | 描述 |
---|---|---|
|
|
ConditionType 指的是 pod 条件列表中与类型匹配的条件。 |
ResourceClaims 定义在允许 Pod 启动之前必须分配和保留哪些 ResourceClaims。这些资源将通过名称提供给使用它们的容器。
这是一个 alpha 字段,需要启用 DynamicResourceAllocation 功能网关。
此字段是不可变的。
数组
PodResourceClaim 通过 ClaimSource 引用恰好一个 ResourceClaim。它向其添加一个名称,该名称唯一标识 Pod 内的 ResourceClaim。需要访问 ResourceClaim 的容器使用此名称引用它。
对象
name
属性 | 类型 | 描述 |
---|---|---|
|
|
Name 唯一标识 pod 内部的此资源声明。这必须是 DNS_LABEL。 |
|
|
ClaimSource 描述对 ResourceClaim 的引用。 这些字段中应该只设置一个。此类型的使用者必须将空对象视为具有未知值。 |
ClaimSource 描述对 ResourceClaim 的引用。
这些字段中应该只设置一个。此类型的使用者必须将空对象视为具有未知值。
对象
属性 | 类型 | 描述 |
---|---|---|
|
|
ResourceClaimName 是与该 pod 位于相同命名空间中的 ResourceClaim 对象的名称。 |
|
|
ResourceClaimTemplateName 是与该 pod 位于相同命名空间中的 ResourceClaimTemplate 对象的名称。 该模板将用于创建一个新的 ResourceClaim,该 ResourceClaim 将绑定到此 pod。当此 pod 被删除时,ResourceClaim 也将被删除。pod 名称和资源名称以及生成的组件将用于为 ResourceClaim 形成唯一的名称,该名称将记录在 pod.status.resourceClaimStatuses 中。 此字段是不可变的,创建 ResourceClaim 后,控制平面不会对相应的 ResourceClaim 进行任何更改。 |
SchedulingGates 是一个不透明的值列表,如果指定,则会阻止调度 Pod。如果 SchedulingGates 不为空,则 Pod 将保持在 SchedulingGated 状态,并且调度程序不会尝试调度 Pod。
SchedulingGates 只能在 Pod 创建时设置,之后才能删除。
数组
PodSchedulingGate 与 Pod 关联以保护其调度。
对象
name
属性 | 类型 | 描述 |
---|---|---|
|
|
调度门的名称。每个调度门都必须具有唯一的名称字段。 |
PodSecurityContext 包含 Pod 级别的安全属性和常见的容器设置。某些字段也存在于 container.securityContext 中。container.securityContext 的字段值优先于 PodSecurityContext 的字段值。
对象
属性 | 类型 | 描述 |
---|---|---|
|
|
AppArmorProfile 定义 Pod 或容器的 AppArmor 设置。 |
|
|
应用于 pod 中所有容器的特殊补充组。某些卷类型允许 Kubelet 将该卷的所有权更改为 pod 所有。 1. 所有者 GID 将是 FSGroup 2. 设置 setgid 位(在卷中创建的新文件将由 FSGroup 拥有)3. 权限位将与 rw-rw---- 进行 OR 运算。 如果未设置,Kubelet 将不会修改任何卷的所有权和权限。请注意,当 spec.os.name 为 windows 时,不能设置此字段。 |
|
|
fsGroupChangePolicy 定义在卷在 Pod 内部公开之前更改卷的所有权和权限的行为。此字段仅适用于支持基于 fsGroup 的所有权(和权限)的卷类型。它对短暂的卷类型(如:secret、configmaps 和 emptydir)无效。有效值为“OnRootMismatch”和“Always”。如果未指定,则使用“Always”。请注意,当 spec.os.name 为 windows 时,不能设置此字段。 可能的枚举值:- `“Always”` 表示无论何时在 Pod 内挂载卷,都应始终更改卷的所有权和权限。这是默认行为。- `“OnRootMismatch”` 表示只有当根目录的权限和所有权与卷上的预期权限不匹配时,才会更改卷的所有权和权限。这有助于缩短更改卷的所有权和权限所需的时间。 |
|
|
运行容器进程入口点的 GID。如果未设置,则使用运行时默认值。也可以在 SecurityContext 中设置。如果在 SecurityContext 和 PodSecurityContext 中都设置,则 SecurityContext 中指定的值将优先于该容器。 |
|
|
指示容器必须以非 root 用户身份运行。如果为 true,则 Kubelet 将在运行时验证映像以确保它不以 UID 0(root)运行,如果确实如此,则无法启动容器。如果未设置或为 false,则不会执行此类验证。也可以在 SecurityContext 中设置。如果在 SecurityContext 和 PodSecurityContext 中都设置,则 SecurityContext 中指定的值将优先。 |
|
|
运行容器进程入口点的 UID。如果未指定,则默认为映像元数据中指定的用户。也可以在 SecurityContext 中设置。如果在 SecurityContext 和 PodSecurityContext 中都设置,则 SecurityContext 中指定的值将优先于该容器。 |
|
|
SELinuxOptions 是要应用于容器的标签。 |
|
|
SeccompProfile 定义 Pod/容器的 seccomp 配置文件设置。只能设置一个配置文件源。 |
|
|
除了容器的主 GID、fsGroup(如果指定)和容器映像中为容器进程的 uid 定义的组成员资格之外,还应用于每个容器中运行的第一个进程的一组组。如果未指定,则不会向任何容器添加其他组。请注意,即使容器映像中为容器进程的 uid 定义的组成员资格未包含在此列表中,它们仍然有效。请注意,当 spec.os.name 为 windows 时,不能设置此字段。 |
|
|
Sysctls 包含用于 pod 的命名空间 sysctls 列表。具有不受支持的 sysctls(由容器运行时)的 Pod 可能无法启动。请注意,当 spec.os.name 为 windows 时,不能设置此字段。 |
|
|
Sysctl 定义要设置的内核参数。 |
|
|
WindowsSecurityContextOptions 包含 Windows 特定的选项和凭据。 |
AppArmorProfile 定义 Pod 或容器的 AppArmor 设置。
对象
类型
属性 | 类型 | 描述 |
---|---|---|
|
|
localhostProfile 指示应使用在节点上加载的配置文件。该配置文件必须预先配置在节点上才能正常工作。必须与配置文件的加载名称匹配。当且仅当类型为“Localhost”时才必须设置。 |
|
|
type 指示将应用哪种 AppArmor 配置文件。有效选项包括:Localhost - 节点上预加载的配置文件。RuntimeDefault - 容器运行时的默认配置文件。Unconfined - 不进行 AppArmor 增强。 可能的枚举值:- |
SELinuxOptions 是要应用于容器的标签。
对象
属性 | 类型 | 描述 |
---|---|---|
|
|
Level 是应用于容器的 SELinux 级别标签。 |
|
|
Role 是应用于容器的 SELinux 角色标签。 |
|
|
Type 是应用于容器的 SELinux 类型标签。 |
|
|
User 是应用于容器的 SELinux 用户标签。 |
SeccompProfile 定义 Pod/容器的 seccomp 配置文件设置。只能设置一个配置文件源。
对象
类型
属性 | 类型 | 描述 |
---|---|---|
|
|
localhostProfile 指示应使用节点上文件中定义的配置文件。该配置文件必须预先配置在节点上才能正常工作。必须是相对于 kubelet 配置的 seccomp 配置文件位置的向下路径。如果类型为“Localhost”,则必须设置。对于任何其他类型,则绝对不能设置。 |
|
|
type 指示将应用哪种 seccomp 配置文件。有效选项包括: Localhost - 应使用节点上文件中定义的配置文件。RuntimeDefault - 应使用容器运行时的默认配置文件。Unconfined - 不应用任何配置文件。 可能的枚举值:- |
Sysctls 包含用于 pod 的命名空间 sysctls 列表。具有不受支持的 sysctls(由容器运行时)的 Pod 可能无法启动。请注意,当 spec.os.name 为 windows 时,不能设置此字段。
数组
Sysctl 定义要设置的内核参数。
对象
name
value
属性 | 类型 | 描述 |
---|---|---|
|
|
要设置的属性的名称。 |
|
|
要设置的属性的值。 |
WindowsSecurityContextOptions 包含 Windows 特定的选项和凭据。
对象
属性 | 类型 | 描述 |
---|---|---|
|
|
GMSACredentialSpec 是 GMSA 准入 Webhook (https://github.com/kubernetes-sigs/windows-gmsa) 内联 GMSACredentialSpecName 字段命名的 GMSA 凭据规范内容的位置。 |
|
|
GMSACredentialSpecName 是要使用的 GMSA 凭据规范的名称。 |
|
|
HostProcess 决定是否应将容器作为“主机进程”容器运行。Pod 的所有容器都必须具有相同的有效 HostProcess 值(不允许混合使用 HostProcess 容器和非 HostProcess 容器)。此外,如果 HostProcess 为 true,则 HostNetwork 也必须设置为 true。 |
|
|
在 Windows 中运行容器进程入口点的用户名。如果未指定,则默认为映像元数据中指定的用户名。也可能在 PodSecurityContext 中设置。如果在 SecurityContext 和 PodSecurityContext 中都设置,则 SecurityContext 中指定的值优先。 |
此容忍度附加到的 Pod 容忍任何与三元组 <key,value,effect> 匹配的污点,使用匹配运算符 <operator>。
对象
属性 | 类型 | 描述 |
---|---|---|
|
|
Effect 指示要匹配的污点效应。空表示匹配所有污点效应。如果指定,则允许的值为 NoSchedule、PreferNoSchedule 和 NoExecute。 可能的枚举值:- `“NoExecute”` 驱逐任何不忍受污点的已运行 Pod。目前由 NodeController 强制执行。- `“NoSchedule”` 不允许新的 Pod 调度到节点上,除非它们忍受污点,但允许所有提交到 Kubelet 而无需通过调度程序启动的 Pod,并允许所有已运行的 Pod 继续运行。由调度程序强制执行。- `“PreferNoSchedule”` 与 TaintEffectNoSchedule 相似,但调度程序尝试不将新的 Pod 调度到节点上,而不是完全禁止将新的 Pod 调度到节点上。由调度程序强制执行。 |
|
|
Key 是容忍度适用的污点键。空表示匹配所有污点键。如果键为空,则运算符必须为 Exists;此组合表示匹配所有值和所有键。 |
|
|
Operator 表示键与值的关系。有效的运算符为 Exists 和 Equal。默认为 Equal。Exists 等效于值的通配符,因此 pod 可以容忍特定类别的所有污点。 可能的枚举值:- `“Equal”` - `“Exists”` |
|
|
TolerationSeconds 表示容忍度(必须具有 NoExecute 效应,否则此字段将被忽略)容忍污点的持续时间。默认情况下,它未设置,这意味着永远容忍污点(不驱逐)。系统将零和负值视为 0(立即驱逐)。 |
|
|
Value 是容忍度匹配的污点值。如果运算符为 Exists,则值应为空,否则只是一个常规字符串。 |
TopologySpreadConstraints 描述了一组 Pod 如何跨拓扑域分布。调度器将以遵守这些约束的方式调度 Pod。所有 topologySpreadConstraints 都是 ANDed。
数组
TopologySpreadConstraint 指定如何在给定的拓扑中分散匹配的 Pod。
对象
maxSkew
topologyKey
whenUnsatisfiable
属性 | 类型 | 描述 |
---|---|---|
|
LabelSelector 用于查找匹配的 Pod。匹配此标签选择器的 Pod 将被计算以确定其对应拓扑域中的 Pod 数量。 |
|
|
|
MatchLabelKeys 是一组 Pod 标签键,用于选择将在其上计算扩散的 Pod。这些键用于从传入的 Pod 标签中查找值,这些键值对将与 labelSelector 进行 AND 操作,以选择将在其上为传入 Pod 计算扩散的现有 Pod 组。同一键禁止同时存在于 MatchLabelKeys 和 LabelSelector 中。如果未设置 LabelSelector,则不能设置 MatchLabelKeys。传入 Pod 标签中不存在的键将被忽略。空列表表示仅针对 labelSelector 进行匹配。 这是一个测试版字段,需要启用 MatchLabelKeysInPodTopologySpread 功能门(默认启用)。 |
|
|
MaxSkew 描述了 Pod 分布不均匀的程度。当 |
|
|
MinDomains 指示合格域的最小数量。当具有匹配拓扑键的合格域的数量小于 minDomains 时,Pod Topology Spread 将“全局最小值”视为 0,然后执行 Skew 的计算。当具有匹配拓扑键的合格域的数量等于或大于 minDomains 时,此值对调度没有影响。因此,当合格域的数量小于 minDomains 时,调度器不会向这些域调度超过 maxSkew 个 Pod。如果值为 nil,则约束的行为就像 MinDomains 等于 1 一样。有效值是大于 0 的整数。当值不为 nil 时,WhenUnsatisfiable 必须为 DoNotSchedule。 例如,在 3 个区域的集群中,MaxSkew 设置为 2,MinDomains 设置为 5,并且具有相同 labelSelector 的 Pod 分布为 2/2/2:| zone1 | zone2 | zone3 | | P P | P P | P P | 域的数量小于 5(MinDomains),因此“全局最小值”被视为 0。在这种情况下,不能调度具有相同 labelSelector 的新 Pod,因为如果调度新 Pod 到三个区域中的任何一个,计算出的 skew 将为 3(3 - 0),这将违反 MaxSkew。 |
|
|
NodeAffinityPolicy 指示在计算 Pod 拓扑扩散 skew 时如何处理 Pod 的 nodeAffinity/nodeSelector。选项包括:- Honor:仅计算匹配 nodeAffinity/nodeSelector 的节点。- Ignore:忽略 nodeAffinity/nodeSelector。所有节点都包含在计算中。 如果此值为 nil,则行为等效于 Honor 策略。这是一个测试版功能,默认情况下由 NodeInclusionPolicyInPodTopologySpread 功能标志启用。 可能的枚举值:- |
|
|
NodeTaintsPolicy 指示在计算 Pod 拓扑扩散 skew 时如何处理节点污点。选项包括:- Honor:包含没有污点的节点,以及传入 Pod 具有容忍度的受污点节点。- Ignore:忽略节点污点。所有节点都包含在计算中。 如果此值为 nil,则行为等效于 Ignore 策略。这是一个测试版功能,默认情况下由 NodeInclusionPolicyInPodTopologySpread 功能标志启用。 可能的枚举值:- |
|
|
TopologyKey 是节点标签的键。具有此键和相同值的标签的节点被认为位于相同的拓扑中。我们将每个 |
|
|
WhenUnsatisfiable 指示如果 Pod 不满足扩散约束,如何处理该 Pod。- DoNotSchedule(默认)告诉调度器不要调度它。- ScheduleAnyway 告诉调度器在任何位置调度 Pod,但优先考虑有助于减少 skew 的拓扑。当且仅当该 Pod 的每个可能的节点分配都会违反某些拓扑上的“MaxSkew”时,约束才被认为对于传入的 Pod 是“不可满足的”。例如,在 3 个区域的集群中,MaxSkew 设置为 1,并且具有相同 labelSelector 的 Pod 分布为 3/1/1:| zone1 | zone2 | zone3 | | P P P | P | P | 如果 WhenUnsatisfiable 设置为 DoNotSchedule,则传入的 Pod 只能调度到 zone2(zone3)以变为 3/2/1(3/1/2),因为 zone2(zone3)上的 ActualSkew(2-1)满足 MaxSkew(1)。换句话说,集群仍然可能不平衡,但调度器不会使其更不平衡。这是一个必填字段。 可能的枚举值:- |
Pod 中的容器可以挂载的卷列表。更多信息:https://kubernetes.ac.cn/docs/concepts/storage/volumes
数组
Volume 代表 Pod 中一个命名的卷,Pod 中的任何容器都可以访问它。
对象
name
属性 | 类型 | 描述 |
---|---|---|
|
|
表示 AWS 中的持久磁盘资源。 必须在挂载到容器之前创建 AWS EBS 磁盘。磁盘还必须与 kubelet 位于同一 AWS 区域。AWS EBS 磁盘只能以读/写方式挂载一次。AWS EBS 卷支持所有权管理和 SELinux 重新标记。 |
|
|
AzureDisk 表示主机上的 Azure 数据磁盘挂载并绑定挂载到 Pod。 |
|
|
AzureFile 表示主机上的 Azure 文件服务挂载并绑定挂载到 Pod。 |
|
|
表示持续 Pod 生命周期的 Ceph 文件系统挂载。Cephfs 卷不支持所有权管理或 SELinux 重新标记。 |
|
|
表示 Openstack 中的 cinder 卷资源。必须在挂载到容器之前创建 Cinder 卷。卷还必须与 kubelet 位于同一区域。Cinder 卷支持所有权管理和 SELinux 重新标记。 |
|
|
将 ConfigMap 适配到卷。 目标 ConfigMap 的 Data 字段的内容将作为文件显示在卷中,使用 Data 字段中的键作为文件名,除非 items 元素填充了键到路径的特定映射。ConfigMap 卷支持所有权管理和 SELinux 重新标记。 |
|
|
表示要挂载的卷的源位置,由外部 CSI 驱动程序管理。 |
|
|
DownwardAPIVolumeSource 表示包含向下 API 信息的卷。向下 API 卷支持所有权管理和 SELinux 重新标记。 |
|
|
表示 Pod 的空目录。空目录卷支持所有权管理和 SELinux 重新标记。 |
|
|
表示由普通存储驱动程序处理的临时卷。 |
|
|
表示光纤通道卷。光纤通道卷只能以读写方式挂载一次。光纤通道卷支持所有权管理和 SELinux 重新标记。 |
|
|
FlexVolume 表示使用基于 exec 的插件进行预配/附加的通用卷资源。 |
|
|
表示由 Flocker 代理挂载的 Flocker 卷。datasetName 和 datasetUUID 中只有一个应该设置。Flocker 卷不支持所有权管理或 SELinux 重新标记。 |
|
|
表示 Google Compute Engine 中的持久磁盘资源。 必须在挂载到容器之前存在 GCE PD。磁盘还必须与 kubelet 位于同一个 GCE 项目和区域中。GCE PD 只能以读写方式挂载一次或以只读方式挂载多次。GCE PD 支持所有权管理和 SELinux 重新标记。 |
|
|
表示一个使用 git 仓库内容填充的卷。Git 仓库卷不支持所有权管理。Git 仓库卷支持 SELinux 重新标记。 已弃用:GitRepo 已弃用。要使用 git 仓库预配容器,请将 EmptyDir 挂载到 InitContainer 中,该容器使用 git 克隆仓库,然后将 EmptyDir 挂载到 Pod 的容器中。 |
|
|
表示持续 Pod 整个生命周期的 Glusterfs 挂载。Glusterfs 卷不支持所有权管理或 SELinux 重新标记。 |
|
|
表示映射到 Pod 的主机路径。主机路径卷不支持所有权管理或 SELinux 重新标记。 |
|
|
表示 ISCSI 磁盘。ISCSI 卷只能以读写方式挂载一次。ISCSI 卷支持所有权管理和 SELinux 重新标记。 |
|
|
卷的名称。必须是 DNS_LABEL 并且在 Pod 内唯一。更多信息:https://kubernetes.ac.cn/docs/concepts/overview/working-with-objects/names/#names |
|
|
表示持续 Pod 整个生命周期的 NFS 挂载。NFS 卷不支持所有权管理或 SELinux 重新标记。 |
|
|
PersistentVolumeClaimVolumeSource 引用同一命名空间中用户的 PVC。此卷查找绑定的 PV 并为 Pod 挂载该卷。PersistentVolumeClaimVolumeSource 本质上是对由其他人(系统)拥有的另一种卷类型的包装。 |
|
|
表示 Photon Controller 持久磁盘资源。 |
|
|
PortworxVolumeSource 表示 Portworx 卷资源。 |
|
|
表示投影卷源 |
|
|
表示持续 Pod 整个生命周期的 Quobyte 挂载。Quobyte 卷不支持所有权管理或 SELinux 重新标记。 |
|
|
表示持续 Pod 整个生命周期的 Rados 块设备挂载。RBD 卷支持所有权管理和 SELinux 重新标记。 |
|
|
ScaleIOVolumeSource 表示持久的 ScaleIO 卷 |
|
|
将 Secret 适配到卷。 目标 Secret 的 Data 字段的内容将作为文件显示在卷中,使用 Data 字段中的键作为文件名。Secret 卷支持所有权管理和 SELinux 重新标记。 |
|
|
表示 StorageOS 持久卷资源。 |
|
|
表示 vSphere 卷资源。 |
表示 AWS 中的持久磁盘资源。
必须在挂载到容器之前创建 AWS EBS 磁盘。磁盘还必须与 kubelet 位于同一 AWS 区域。AWS EBS 磁盘只能以读/写方式挂载一次。AWS EBS 卷支持所有权管理和 SELinux 重新标记。
对象
volumeID
属性 | 类型 | 描述 |
---|---|---|
|
|
fsType 是要挂载的卷的文件系统类型。提示:确保主机操作系统支持文件系统类型。示例:“ext4”、“xfs”、“ntfs”。如果未指定,则隐式推断为“ext4”。更多信息:https://kubernetes.ac.cn/docs/concepts/storage/volumes#awselasticblockstore |
|
|
partition 是要挂载的卷中的分区。如果省略,则默认按卷名挂载。示例:对于卷 /dev/sda1,您将分区指定为“1”。类似地,/dev/sda 的卷分区为“0”(或者您可以保留属性为空)。 |
|
|
readOnly 值 true 将强制执行 VolumeMounts 中的 readOnly 设置。更多信息:https://kubernetes.ac.cn/docs/concepts/storage/volumes#awselasticblockstore |
|
|
volumeID 是 AWS(Amazon EBS 卷)中持久磁盘资源的唯一 ID。更多信息:https://kubernetes.ac.cn/docs/concepts/storage/volumes#awselasticblockstore |
AzureDisk 表示主机上的 Azure 数据磁盘挂载并绑定挂载到 Pod。
对象
diskName
diskURI
属性 | 类型 | 描述 |
---|---|---|
|
|
cachingMode 是主机缓存模式:无、只读、读写。 可能的枚举值:- |
|
|
diskName 是 Blob 存储中数据磁盘的名称 |
|
|
diskURI 是 Blob 存储中数据磁盘的 URI |
|
|
fsType 是要挂载的文件系统类型。必须是主机操作系统支持的文件系统类型。例如“ext4”、“xfs”、“ntfs”。如果未指定,则隐式推断为“ext4”。 |
|
|
kind 预期值是 Shared:每个存储帐户多个 Blob 磁盘 Dedicated:每个存储帐户单个 Blob 磁盘 Managed:Azure 托管数据磁盘(仅在托管可用性集中)。默认为共享 可能的枚举值:- |
|
|
readOnly 默认为 false(读/写)。此处的 ReadOnly 将强制执行 VolumeMounts 中的 ReadOnly 设置。 |
AzureFile 表示主机上的 Azure 文件服务挂载并绑定挂载到 Pod。
对象
secretName
shareName
属性 | 类型 | 描述 |
---|---|---|
|
|
readOnly 默认为 false(读/写)。此处的 ReadOnly 将强制执行 VolumeMounts 中的 ReadOnly 设置。 |
|
|
secretName 是包含 Azure 存储帐户名称和密钥的密钥的名称 |
|
|
shareName 是 Azure 共享名称 |
表示持续 Pod 生命周期的 Ceph 文件系统挂载。Cephfs 卷不支持所有权管理或 SELinux 重新标记。
对象
monitors
属性 | 类型 | 描述 |
---|---|---|
|
|
monitors 是必需的:Monitors 是 Ceph monitors 的集合 更多信息:https://examples.k8s.io/volumes/cephfs/README.md#how-to-use-it |
|
|
path 是可选的:用作挂载的根目录,而不是完整的 Ceph 树,默认为 / |
|
|
readOnly 是可选的:默认为 false(读/写)。此处的 ReadOnly 将强制执行 VolumeMounts 中的 ReadOnly 设置。更多信息:https://examples.k8s.io/volumes/cephfs/README.md#how-to-use-it |
|
|
secretFile 是可选的:SecretFile 是用户的密钥环的路径,默认为 /etc/ceph/user.secret 更多信息:https://examples.k8s.io/volumes/cephfs/README.md#how-to-use-it |
|
|
LocalObjectReference 包含足够的信息,可让您在同一命名空间内找到引用的对象。 |
|
|
user 是可选的:User 是 rados 用户名,默认为 admin 更多信息:https://examples.k8s.io/volumes/cephfs/README.md#how-to-use-it |
LocalObjectReference 包含足够的信息,可让您在同一命名空间内找到引用的对象。
对象
属性 | 类型 | 描述 |
---|---|---|
|
|
引用的名称。此字段实际上是必需的,但由于向后兼容性,允许为空。此类型的实例在此处为空值几乎肯定是错误的。更多信息:https://kubernetes.ac.cn/docs/concepts/overview/working-with-objects/names/#names |
表示 Openstack 中的 cinder 卷资源。必须在挂载到容器之前创建 Cinder 卷。卷还必须与 kubelet 位于同一区域。Cinder 卷支持所有权管理和 SELinux 重新标记。
对象
volumeID
属性 | 类型 | 描述 |
---|---|---|
|
|
fsType 是要挂载的文件系统类型。必须是主机操作系统支持的文件系统类型。示例:“ext4”、“xfs”、“ntfs”。如果未指定,则隐式推断为“ext4”。更多信息:https://examples.k8s.io/mysql-cinder-pd/README.md |
|
|
readOnly 默认为 false(读/写)。此处的 ReadOnly 将强制执行 VolumeMounts 中的 ReadOnly 设置。更多信息:https://examples.k8s.io/mysql-cinder-pd/README.md |
|
|
LocalObjectReference 包含足够的信息,可让您在同一命名空间内找到引用的对象。 |
|
|
volumeID 用于在 cinder 中标识卷。更多信息:https://examples.k8s.io/mysql-cinder-pd/README.md |
LocalObjectReference 包含足够的信息,可让您在同一命名空间内找到引用的对象。
对象
属性 | 类型 | 描述 |
---|---|---|
|
|
引用的名称。此字段实际上是必需的,但由于向后兼容性,允许为空。此类型的实例在此处为空值几乎肯定是错误的。更多信息:https://kubernetes.ac.cn/docs/concepts/overview/working-with-objects/names/#names |
将 ConfigMap 适配到卷。
目标 ConfigMap 的 Data 字段的内容将作为文件显示在卷中,使用 Data 字段中的键作为文件名,除非 items 元素填充了键到路径的特定映射。ConfigMap 卷支持所有权管理和 SELinux 重新标记。
对象
属性 | 类型 | 描述 |
---|---|---|
|
|
defaultMode 为可选参数:用于设置默认情况下创建文件的权限的模式位。必须是 0000 到 0777 之间的八进制值,或者 0 到 511 之间的十进制值。YAML 接受八进制和十进制值,JSON 仅需要十进制模式位值。默认为 0644。路径中的目录不受此设置的影响。这可能会与影响文件模式的其他选项(如 fsGroup)冲突,从而导致设置其他模式位。 |
|
|
如果未指定 items,则引用的 ConfigMap 的 Data 字段中的每个键值对都将被投影到卷中,作为一个文件名是键、内容是值的文件。如果指定了 items,则列出的键将被投影到指定的路径中,未列出的键将不会存在。如果指定的键在 ConfigMap 中不存在,除非它被标记为可选,否则卷设置将出错。路径必须是相对路径,并且不能包含“..”路径或以“..”开头。 |
|
|
将字符串键映射到卷内的路径。 |
|
|
引用的名称。此字段实际上是必需的,但由于向后兼容性,允许为空。此类型的实例在此处为空值几乎肯定是错误的。更多信息:https://kubernetes.ac.cn/docs/concepts/overview/working-with-objects/names/#names |
|
|
optional 指定 ConfigMap 或其键是否必须定义 |
如果未指定 items,则引用的 ConfigMap 的 Data 字段中的每个键值对都将被投影到卷中,作为一个文件名是键、内容是值的文件。如果指定了 items,则列出的键将被投影到指定的路径中,未列出的键将不会存在。如果指定的键在 ConfigMap 中不存在,除非它被标记为可选,否则卷设置将出错。路径必须是相对路径,并且不能包含“..”路径或以“..”开头。
数组
将字符串键映射到卷内的路径。
对象
key
path
属性 | 类型 | 描述 |
---|---|---|
|
|
key 是要投影的键。 |
|
|
mode 为可选参数:用于设置此文件权限的模式位。必须是 0000 到 0777 之间的八进制值,或者 0 到 511 之间的十进制值。YAML 接受八进制和十进制值,JSON 仅需要十进制模式位值。如果未指定,则将使用卷的 defaultMode。这可能会与影响文件模式的其他选项(如 fsGroup)冲突,从而导致设置其他模式位。 |
|
|
path 是将键映射到的文件的相对路径。不能是绝对路径。不能包含路径元素“..” 。不能以字符串“..”开头。 |
表示要挂载的卷的源位置,由外部 CSI 驱动程序管理。
对象
driver
属性 | 类型 | 描述 |
---|---|---|
|
|
driver 是处理此卷的 CSI 驱动程序的名称。请咨询您的管理员以获取在集群中注册的正确名称。 |
|
|
fsType 用于挂载。例如,“ext4”、“xfs”、“ntfs”。如果未提供,则空值将传递给关联的 CSI 驱动程序,该驱动程序将确定要应用的默认文件系统。 |
|
|
LocalObjectReference 包含足够的信息,可让您在同一命名空间内找到引用的对象。 |
|
|
readOnly 指定卷的只读配置。默认为 false(读/写)。 |
|
|
volumeAttributes 存储传递给 CSI 驱动程序的驱动程序特定属性。请查阅驱动程序的文档以了解支持的值。 |
LocalObjectReference 包含足够的信息,可让您在同一命名空间内找到引用的对象。
对象
属性 | 类型 | 描述 |
---|---|---|
|
|
引用的名称。此字段实际上是必需的,但由于向后兼容性,允许为空。此类型的实例在此处为空值几乎肯定是错误的。更多信息:https://kubernetes.ac.cn/docs/concepts/overview/working-with-objects/names/#names |
DownwardAPIVolumeSource 表示包含向下 API 信息的卷。向下 API 卷支持所有权管理和 SELinux 重新标记。
对象
属性 | 类型 | 描述 |
---|---|---|
|
|
可选:默认情况下用于创建文件的模式位。必须是 0000 到 0777 之间的八进制值,或者 0 到 511 之间的十进制值。YAML 接受八进制和十进制值,JSON 仅需要十进制模式位值。默认为 0644。路径中的目录不受此设置的影响。这可能会与影响文件模式的其他选项(如 fsGroup)冲突,从而导致设置其他模式位。 |
|
|
Items 是向下 API 卷文件的列表 |
|
|
DownwardAPIVolumeFile 表示包含 Pod 字段的文件创建信息 |
DownwardAPIVolumeFile 表示包含 Pod 字段的文件创建信息
对象
path
属性 | 类型 | 描述 |
---|---|---|
|
|
ObjectFieldSelector 选择对象的 APIVersioned 字段。 |
|
|
可选:用于设置此文件权限的模式位,必须是 0000 到 0777 之间的八进制值,或者 0 到 511 之间的十进制值。YAML 接受八进制和十进制值,JSON 仅需要十进制模式位值。如果未指定,则将使用卷的 defaultMode。这可能会与影响文件模式的其他选项(如 fsGroup)冲突,从而导致设置其他模式位。 |
|
|
必填:Path 是要创建的文件的相对路径名。不能是绝对路径,也不能包含“..”路径。必须是 UTF-8 编码。相对路径的第一个项目不能以“..”开头。 |
|
|
ResourceFieldSelector 代表容器资源(cpu,内存)及其输出格式 |
ObjectFieldSelector 选择对象的 APIVersioned 字段。
对象
fieldPath
属性 | 类型 | 描述 |
---|---|---|
|
|
FieldPath 以其编写的模式版本,默认为“v1”。 |
|
|
在指定的 API 版本中选择字段的路径。 |
ResourceFieldSelector 代表容器资源(cpu,内存)及其输出格式
对象
resource
属性 | 类型 | 描述 |
---|---|---|
|
|
容器名称:卷必需,环境变量可选 |
|
指定公开资源的输出格式,默认为“1” |
|
|
|
必需:要选择的资源 |
表示 Pod 的空目录。空目录卷支持所有权管理和 SELinux 重新标记。
对象
属性 | 类型 | 描述 |
---|---|---|
|
|
medium 表示应支持此目录的存储介质类型。默认为 "",这意味着使用节点的默认介质。必须是空字符串(默认)或 Memory。更多信息:https://kubernetes.ac.cn/docs/concepts/storage/volumes#emptydir |
|
sizeLimit 是此 EmptyDir 卷所需的本地存储总量。大小限制也适用于内存介质。内存介质 EmptyDir 的最大使用量将是此处指定的 SizeLimit 与 Pod 中所有容器的内存限制总和之间的最小值。默认为 nil,这意味着限制未定义。更多信息:https://kubernetes.ac.cn/docs/concepts/storage/volumes#emptydir |
表示由普通存储驱动程序处理的临时卷。
对象
属性 | 类型 | 描述 |
---|---|---|
|
|
PersistentVolumeClaimTemplate 用于作为 EphemeralVolumeSource 的一部分生成 PersistentVolumeClaim 对象。 |
PersistentVolumeClaimTemplate 用于作为 EphemeralVolumeSource 的一部分生成 PersistentVolumeClaim 对象。
对象
spec
属性 | 类型 | 描述 |
---|---|---|
|
可能包含将在创建 PVC 时复制到其中的标签和注释。不允许使用其他字段,并且将在验证期间被拒绝。 |
|
|
|
PersistentVolumeClaimSpec 描述了存储设备的常见属性,并允许为特定于提供程序的属性提供 Source。 |
PersistentVolumeClaimSpec 描述了存储设备的常见属性,并允许为特定于提供程序的属性提供 Source。
对象
属性 | 类型 | 描述 |
---|---|---|
|
|
accessModes 包含卷应具有的所需访问模式。更多信息:https://kubernetes.ac.cn/docs/concepts/storage/persistent-volumes#access-modes-1 |
|
|
TypedLocalObjectReference 包含足够的信息,使您可以在同一个命名空间中找到类型的引用对象。 |
|
|
dataSourceRef 指定要从中使用数据填充卷的对象(如果需要非空卷)。这可以是来自非空 API 组(非核心对象)的任何对象或 PersistentVolumeClaim 对象。如果指定了此字段,则只有在指定对象的类型与某些已安装的卷填充程序或动态供应程序匹配时,卷绑定才会成功。此字段将替换 dataSource 字段的功能,因此,如果两个字段都非空,则它们必须具有相同的值。为了向后兼容,如果其中一个字段为空而另一个字段非空,则在 dataSourceRef 中未指定命名空间时,这两个字段 (dataSource 和 dataSourceRef) 将自动设置为相同的值。如果在 dataSourceRef 中指定了命名空间,则 dataSource 不会设置为相同的值,并且必须为空。dataSource 和 dataSourceRef 之间存在三个重要区别:* dataSource 只允许两种特定类型的对象,而 dataSourceRef 允许任何非核心对象以及 PersistentVolumeClaim 对象。* dataSource 忽略不允许的值(删除它们),而 dataSourceRef 保留所有值,并在指定不允许的值时生成错误。* dataSource 只允许本地对象,而 dataSourceRef 允许任何命名空间中的对象。(Beta)使用此字段需要启用 AnyVolumeDataSource 功能网关。(Alpha)使用 dataSourceRef 的命名空间字段需要启用 CrossNamespaceVolumeDataSource 功能网关。 |
|
|
VolumeResourceRequirements 描述卷的存储资源需求。 |
|
selector 是对要考虑用于绑定的卷的标签查询。 |
|
|
|
storageClassName 是声明所需的 StorageClass 的名称。更多信息:https://kubernetes.ac.cn/docs/concepts/storage/persistent-volumes#class-1 |
|
|
volumeAttributesClassName 可用于设置此声明使用的 VolumeAttributesClass。如果指定,CSI 驱动程序将使用在相应的 VolumeAttributesClass 中定义的属性创建或更新卷。这与 storageClassName 的目的不同,可以在声明创建后更改。空字符串值表示不会将任何 VolumeAttributesClass 应用于声明,但一旦设置,则不允许将此字段重置为空字符串。如果未指定且 PersistentVolumeClaim 未绑定,则如果存在,持久卷控制器将设置默认的 VolumeAttributesClass。如果 volumeAttributesClass 引用的资源不存在,则此 PersistentVolumeClaim 将设置为 Pending 状态(如 modifyVolumeStatus 字段所示),直到此类资源存在为止。更多信息:https://kubernetes.ac.cn/docs/concepts/storage/volume-attributes-classes/ (Alpha) 使用此字段需要启用 VolumeAttributesClass 功能网关。 |
|
|
volumeMode 定义声明所需的卷类型。如果未包含在声明规范中,则隐含 Filesystem 值。 可能的枚举值:- |
|
|
volumeName 是对支持此声明的 PersistentVolume 的绑定引用。 |
TypedLocalObjectReference 包含足够的信息,使您可以在同一个命名空间中找到类型的引用对象。
对象
kind
name
属性 | 类型 | 描述 |
---|---|---|
|
|
APIGroup 是被引用资源的组。如果未指定 APIGroup,则指定的 Kind 必须位于核心 API 组中。对于任何其他第三方类型,都需要 APIGroup。 |
|
|
Kind 是被引用资源的类型 |
|
|
Name 是被引用资源的名称 |
dataSourceRef 指定要从中使用数据填充卷的对象(如果需要非空卷)。这可以是来自非空 API 组(非核心对象)的任何对象或 PersistentVolumeClaim 对象。如果指定了此字段,则只有在指定对象的类型与某些已安装的卷填充程序或动态供应程序匹配时,卷绑定才会成功。此字段将替换 dataSource 字段的功能,因此,如果两个字段都非空,则它们必须具有相同的值。为了向后兼容,如果其中一个字段为空而另一个字段非空,则在 dataSourceRef 中未指定命名空间时,这两个字段 (dataSource 和 dataSourceRef) 将自动设置为相同的值。如果在 dataSourceRef 中指定了命名空间,则 dataSource 不会设置为相同的值,并且必须为空。dataSource 和 dataSourceRef 之间存在三个重要区别:* dataSource 只允许两种特定类型的对象,而 dataSourceRef 允许任何非核心对象以及 PersistentVolumeClaim 对象。* dataSource 忽略不允许的值(删除它们),而 dataSourceRef 保留所有值,并在指定不允许的值时生成错误。* dataSource 只允许本地对象,而 dataSourceRef 允许任何命名空间中的对象。(Beta)使用此字段需要启用 AnyVolumeDataSource 功能网关。(Alpha)使用 dataSourceRef 的命名空间字段需要启用 CrossNamespaceVolumeDataSource 功能网关。
对象
kind
name
属性 | 类型 | 描述 |
---|---|---|
|
|
APIGroup 是被引用资源的组。如果未指定 APIGroup,则指定的 Kind 必须位于核心 API 组中。对于任何其他第三方类型,都需要 APIGroup。 |
|
|
Kind 是被引用资源的类型 |
|
|
Name 是被引用资源的名称 |
|
|
Namespace 是被引用资源的命名空间。请注意,当指定命名空间时,需要在引用命名空间中使用 gateway.networking.k8s.io/ReferenceGrant 对象来允许该命名空间的所有者接受该引用。有关详细信息,请参阅 ReferenceGrant 文档。(Alpha) 此字段需要启用 CrossNamespaceVolumeDataSource 功能网关。 |
VolumeResourceRequirements 描述卷的存储资源需求。
对象
属性 | 类型 | 描述 |
---|---|---|
|
Limits 描述了允许的最大计算资源量。更多信息:https://kubernetes.ac.cn/docs/concepts/configuration/manage-resources-containers/ |
|
|
Requests 描述了所需的最小计算资源量。如果容器的 Requests 被省略,则默认为 Limits(如果明确指定),否则默认为实现定义的值。Requests 不能超过 Limits。更多信息:https://kubernetes.ac.cn/docs/concepts/configuration/manage-resources-containers/ |
表示光纤通道卷。光纤通道卷只能以读写方式挂载一次。光纤通道卷支持所有权管理和 SELinux 重新标记。
对象
属性 | 类型 | 描述 |
---|---|---|
|
|
fsType 是要挂载的文件系统类型。必须是主机操作系统支持的文件系统类型。例如,“ext4”、“xfs”、“ntfs”。如果未指定,则隐式推断为“ext4”。 |
|
|
lun 是可选的:FC 目标 lun 号码 |
|
|
readOnly 是可选的:默认为 false(读/写)。此处的 ReadOnly 将强制执行 VolumeMounts 中的 ReadOnly 设置。 |
|
|
targetWWNs 是可选的:FC 目标全球名称 (WWNs) |
|
|
wwids 可选:FC 卷全球标识符 (wwids) 必须设置 wwids 或 targetWWNs 和 lun 的组合,但不能同时设置两者。 |
FlexVolume 表示使用基于 exec 的插件进行预配/附加的通用卷资源。
对象
driver
属性 | 类型 | 描述 |
---|---|---|
|
|
driver 是此卷要使用的驱动程序的名称。 |
|
|
fsType 是要挂载的文件系统类型。必须是主机操作系统支持的文件系统类型。例如,“ext4”、“xfs”、“ntfs”。默认文件系统取决于 FlexVolume 脚本。 |
|
|
options 是可选的:此字段包含任何额外的命令选项。 |
|
|
readOnly 是可选的:默认为 false(读/写)。此处的 ReadOnly 将强制执行 VolumeMounts 中的 ReadOnly 设置。 |
|
|
LocalObjectReference 包含足够的信息,可让您在同一命名空间内找到引用的对象。 |
LocalObjectReference 包含足够的信息,可让您在同一命名空间内找到引用的对象。
对象
属性 | 类型 | 描述 |
---|---|---|
|
|
引用的名称。此字段实际上是必需的,但由于向后兼容性,允许为空。此类型的实例在此处为空值几乎肯定是错误的。更多信息:https://kubernetes.ac.cn/docs/concepts/overview/working-with-objects/names/#names |
表示由 Flocker 代理挂载的 Flocker 卷。datasetName 和 datasetUUID 中只有一个应该设置。Flocker 卷不支持所有权管理或 SELinux 重新标记。
对象
属性 | 类型 | 描述 |
---|---|---|
|
|
datasetName 是数据集的名称,存储为数据集上的元数据→名称,Flocker 的数据集名称应被视为已弃用 |
|
|
datasetUUID 是数据集的 UUID。这是 Flocker 数据集的唯一标识符 |
表示 Google Compute Engine 中的持久磁盘资源。
必须在挂载到容器之前存在 GCE PD。磁盘还必须与 kubelet 位于同一个 GCE 项目和区域中。GCE PD 只能以读写方式挂载一次或以只读方式挂载多次。GCE PD 支持所有权管理和 SELinux 重新标记。
对象
pdName
属性 | 类型 | 描述 |
---|---|---|
|
|
fsType 是您要挂载的卷的文件系统类型。提示:确保主机操作系统支持文件系统类型。示例:“ext4”、“xfs”、“ntfs”。如果未指定,则隐式推断为“ext4”。更多信息:https://kubernetes.ac.cn/docs/concepts/storage/volumes#gcepersistentdisk |
|
|
partition 是您要挂载的卷中的分区。如果省略,则默认为按卷名挂载。示例:对于卷 /dev/sda1,您将分区指定为“1”。类似地,/dev/sda 的卷分区为“0”(或者您可以保留属性为空)。更多信息:https://kubernetes.ac.cn/docs/concepts/storage/volumes#gcepersistentdisk |
|
|
pdName 是 GCE 中 PD 资源的唯一名称。用于标识 GCE 中的磁盘。更多信息:https://kubernetes.ac.cn/docs/concepts/storage/volumes#gcepersistentdisk |
|
|
readOnly 将在此处强制执行 VolumeMounts 中的 ReadOnly 设置。默认为 false。更多信息:https://kubernetes.ac.cn/docs/concepts/storage/volumes#gcepersistentdisk |
表示一个使用 git 仓库内容填充的卷。Git 仓库卷不支持所有权管理。Git 仓库卷支持 SELinux 重新标记。
已弃用:GitRepo 已弃用。要使用 git 仓库预配容器,请将 EmptyDir 挂载到 InitContainer 中,该容器使用 git 克隆仓库,然后将 EmptyDir 挂载到 Pod 的容器中。
对象
repository
属性 | 类型 | 描述 |
---|---|---|
|
|
directory 是目标目录名称。不能包含或以“..”开头。如果提供“.”,则卷目录将是 git 存储库。否则,如果指定,则卷将包含给定名称的子目录中的 git 存储库。 |
|
|
repository 是 URL |
|
|
revision 是指定修订版本的提交哈希。 |
表示持续 Pod 整个生命周期的 Glusterfs 挂载。Glusterfs 卷不支持所有权管理或 SELinux 重新标记。
对象
endpoints
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 |
表示映射到 Pod 的主机路径。主机路径卷不支持所有权管理或 SELinux 重新标记。
对象
path
属性 | 类型 | 描述 |
---|---|---|
|
|
主机上目录的路径。如果路径是符号链接,它将遵循链接到真实路径。更多信息:https://kubernetes.ac.cn/docs/concepts/storage/volumes#hostpath |
|
|
HostPath 卷的类型,默认为 ""。更多信息:https://kubernetes.ac.cn/docs/concepts/storage/volumes#hostpath 可能的枚举值:- |
表示 ISCSI 磁盘。ISCSI 卷只能以读写方式挂载一次。ISCSI 卷支持所有权管理和 SELinux 重新标记。
对象
targetPortal
iqn
lun
属性 | 类型 | 描述 |
---|---|---|
|
|
chapAuthDiscovery 定义是否支持 iSCSI Discovery CHAP 身份验证 |
|
|
chapAuthSession 定义是否支持 iSCSI Session CHAP 身份验证 |
|
|
fsType 是要挂载的卷的文件系统类型。提示:确保主机操作系统支持该文件系统类型。示例:“ext4”、“xfs”、“ntfs”。如果未指定,则隐式推断为“ext4”。更多信息:https://kubernetes.ac.cn/docs/concepts/storage/volumes#iscsi |
|
|
initiatorName 是自定义的 iSCSI 发起程序名称。如果同时指定了 initiatorName 和 iscsiInterface,则将为连接创建一个新的 iSCSI 接口 <目标门户>:<卷名称>。 |
|
|
iqn 是目标 iSCSI 限定名称。 |
|
|
iscsiInterface 是使用 iSCSI 传输的接口名称。默认为“default”(tcp)。 |
|
|
lun 表示 iSCSI 目标 LUN 编号。 |
|
|
portals 是 iSCSI 目标门户列表。门户是 IP 地址或 ip_addr:port(如果端口不是默认端口,通常是 TCP 端口 860 和 3260)。 |
|
|
readOnly 将强制在 VolumeMounts 中设置 ReadOnly。默认为 false。 |
|
|
LocalObjectReference 包含足够的信息,可让您在同一命名空间内找到引用的对象。 |
|
|
targetPortal 是 iSCSI 目标门户。门户是 IP 地址或 ip_addr:port(如果端口不是默认端口,通常是 TCP 端口 860 和 3260)。 |
LocalObjectReference 包含足够的信息,可让您在同一命名空间内找到引用的对象。
对象
属性 | 类型 | 描述 |
---|---|---|
|
|
引用的名称。此字段实际上是必需的,但由于向后兼容性,允许为空。此类型的实例在此处为空值几乎肯定是错误的。更多信息:https://kubernetes.ac.cn/docs/concepts/overview/working-with-objects/names/#names |
表示持续 Pod 整个生命周期的 NFS 挂载。NFS 卷不支持所有权管理或 SELinux 重新标记。
对象
server
path
属性 | 类型 | 描述 |
---|---|---|
|
|
NFS 服务器导出的路径。更多信息:https://kubernetes.ac.cn/docs/concepts/storage/volumes#nfs |
|
|
readOnly 将强制以只读权限挂载 NFS 导出。默认为 false。更多信息:https://kubernetes.ac.cn/docs/concepts/storage/volumes#nfs |
|
|
server 是 NFS 服务器的主机名或 IP 地址。更多信息:https://kubernetes.ac.cn/docs/concepts/storage/volumes#nfs |
PersistentVolumeClaimVolumeSource 引用同一命名空间中用户的 PVC。此卷查找绑定的 PV 并为 Pod 挂载该卷。PersistentVolumeClaimVolumeSource 本质上是对由其他人(系统)拥有的另一种卷类型的包装。
对象
claimName
属性 | 类型 | 描述 |
---|---|---|
|
|
claimName 是与使用此卷的 Pod 位于同一命名空间中的 PersistentVolumeClaim 的名称。更多信息:https://kubernetes.ac.cn/docs/concepts/storage/persistent-volumes#persistentvolumeclaims |
|
|
readOnly 将强制在 VolumeMounts 中设置 ReadOnly。默认为 false。 |
表示 Photon Controller 持久磁盘资源。
对象
pdID
属性 | 类型 | 描述 |
---|---|---|
|
|
fsType 是要挂载的文件系统类型。必须是主机操作系统支持的文件系统类型。例如,“ext4”、“xfs”、“ntfs”。如果未指定,则隐式推断为“ext4”。 |
|
|
pdID 是标识 Photon Controller 持久磁盘的 ID |
PortworxVolumeSource 表示 Portworx 卷资源。
对象
volumeID
属性 | 类型 | 描述 |
---|---|---|
|
|
fSType 表示要挂载的文件系统类型,必须是主机操作系统支持的文件系统类型。例如,“ext4”、“xfs”。如果未指定,则隐式推断为“ext4”。 |
|
|
readOnly 默认为 false(读/写)。此处的 ReadOnly 将强制执行 VolumeMounts 中的 ReadOnly 设置。 |
|
|
volumeID 唯一标识 Portworx 卷 |
表示投影卷源
对象
属性 | 类型 | 描述 |
---|---|---|
|
|
defaultMode 是用于默认设置创建文件的权限的模式位。必须是 0000 到 0777 之间的八进制值,或 0 到 511 之间的十进制值。YAML 接受八进制和十进制值,JSON 需要十进制模式位值。路径中的目录不受此设置的影响。这可能与影响文件模式的其他选项(如 fsGroup)冲突,结果可能是设置了其他模式位。 |
|
|
sources 是卷投影的列表 |
|
|
可以与其他受支持的卷类型一起投影的投影 |
可以与其他受支持的卷类型一起投影的投影
对象
属性 | 类型 | 描述 |
---|---|---|
|
|
ClusterTrustBundleProjection 描述如何选择一组 ClusterTrustBundle 对象并将它们的内容投影到 Pod 文件系统中。 |
|
|
将 ConfigMap 适配到投影卷中。 目标 ConfigMap 的 Data 字段的内容将作为文件显示在投影卷中,使用 Data 字段中的键作为文件名,除非 items 元素填充了键到路径的特定映射。请注意,这与没有默认模式的 configmap 卷源相同。 |
|
|
表示将向下 API 信息投影到投影卷中。请注意,这与没有默认模式的 downwardAPI 卷源相同。 |
|
|
将密钥适配到投影卷中。 目标 Secret 的 Data 字段的内容将作为文件显示在投影卷中,使用 Data 字段中的键作为文件名。请注意,这与没有默认模式的 secret 卷源相同。 |
|
|
ServiceAccountTokenProjection 表示投影的服务帐户令牌卷。此投影可用于将服务帐户令牌插入到 Pod 的运行时文件系统中,以便针对 API(Kubernetes API 服务器或其他)使用。 |
ClusterTrustBundleProjection 描述如何选择一组 ClusterTrustBundle 对象并将它们的内容投影到 Pod 文件系统中。
对象
path
属性 | 类型 | 描述 |
---|---|---|
|
选择与该标签选择器匹配的所有 ClusterTrustBundles。只有在设置 signerName 时才有效。与 name 相互排斥。如果未设置,则解释为“不匹配任何内容”。如果设置为空,则解释为“匹配所有内容”。 |
|
|
|
按对象名称选择单个 ClusterTrustBundle。与 signerName 和 labelSelector 相互排斥。 |
|
|
如果为 true,则如果引用的 ClusterTrustBundle(s) 不可用,则不要阻止 Pod 启动。如果使用 name,则允许未命名 ClusterTrustBundle 不存在。如果使用 signerName,则允许 signerName 和 labelSelector 的组合匹配零个 ClusterTrustBundles。 |
|
|
从卷根到写入 bundle 的相对路径。 |
|
|
选择与该签名者名称匹配的所有 ClusterTrustBundles。与 name 相互排斥。所有选定 ClusterTrustBundles 的内容将被统一和去重。 |
将 ConfigMap 适配到投影卷中。
目标 ConfigMap 的 Data 字段的内容将作为文件显示在投影卷中,使用 Data 字段中的键作为文件名,除非 items 元素填充了键到路径的特定映射。请注意,这与没有默认模式的 configmap 卷源相同。
对象
属性 | 类型 | 描述 |
---|---|---|
|
|
如果未指定 items,则引用的 ConfigMap 的 Data 字段中的每个键值对都将被投影到卷中,作为一个文件名是键、内容是值的文件。如果指定了 items,则列出的键将被投影到指定的路径中,未列出的键将不会存在。如果指定的键在 ConfigMap 中不存在,除非它被标记为可选,否则卷设置将出错。路径必须是相对路径,并且不能包含“..”路径或以“..”开头。 |
|
|
将字符串键映射到卷内的路径。 |
|
|
引用的名称。此字段实际上是必需的,但由于向后兼容性,允许为空。此类型的实例在此处为空值几乎肯定是错误的。更多信息:https://kubernetes.ac.cn/docs/concepts/overview/working-with-objects/names/#names |
|
|
optional 指定 ConfigMap 或其键是否必须定义 |
如果未指定 items,则引用的 ConfigMap 的 Data 字段中的每个键值对都将被投影到卷中,作为一个文件名是键、内容是值的文件。如果指定了 items,则列出的键将被投影到指定的路径中,未列出的键将不会存在。如果指定的键在 ConfigMap 中不存在,除非它被标记为可选,否则卷设置将出错。路径必须是相对路径,并且不能包含“..”路径或以“..”开头。
数组
将字符串键映射到卷内的路径。
对象
key
path
属性 | 类型 | 描述 |
---|---|---|
|
|
key 是要投影的键。 |
|
|
mode 为可选参数:用于设置此文件权限的模式位。必须是 0000 到 0777 之间的八进制值,或者 0 到 511 之间的十进制值。YAML 接受八进制和十进制值,JSON 仅需要十进制模式位值。如果未指定,则将使用卷的 defaultMode。这可能会与影响文件模式的其他选项(如 fsGroup)冲突,从而导致设置其他模式位。 |
|
|
path 是将键映射到的文件的相对路径。不能是绝对路径。不能包含路径元素“..” 。不能以字符串“..”开头。 |
表示将向下 API 信息投影到投影卷中。请注意,这与没有默认模式的 downwardAPI 卷源相同。
对象
属性 | 类型 | 描述 |
---|---|---|
|
|
Items 是 DownwardAPIVolume 文件的列表 |
|
|
DownwardAPIVolumeFile 表示包含 Pod 字段的文件创建信息 |
DownwardAPIVolumeFile 表示包含 Pod 字段的文件创建信息
对象
path
属性 | 类型 | 描述 |
---|---|---|
|
|
ObjectFieldSelector 选择对象的 APIVersioned 字段。 |
|
|
可选:用于设置此文件权限的模式位,必须是 0000 到 0777 之间的八进制值,或者 0 到 511 之间的十进制值。YAML 接受八进制和十进制值,JSON 仅需要十进制模式位值。如果未指定,则将使用卷的 defaultMode。这可能会与影响文件模式的其他选项(如 fsGroup)冲突,从而导致设置其他模式位。 |
|
|
必填:Path 是要创建的文件的相对路径名。不能是绝对路径,也不能包含“..”路径。必须是 UTF-8 编码。相对路径的第一个项目不能以“..”开头。 |
|
|
ResourceFieldSelector 代表容器资源(cpu,内存)及其输出格式 |
ObjectFieldSelector 选择对象的 APIVersioned 字段。
对象
fieldPath
属性 | 类型 | 描述 |
---|---|---|
|
|
FieldPath 以其编写的模式版本,默认为“v1”。 |
|
|
在指定的 API 版本中选择字段的路径。 |
ResourceFieldSelector 代表容器资源(cpu,内存)及其输出格式
对象
resource
属性 | 类型 | 描述 |
---|---|---|
|
|
容器名称:卷必需,环境变量可选 |
|
指定公开资源的输出格式,默认为“1” |
|
|
|
必需:要选择的资源 |
将密钥适配到投影卷中。
目标 Secret 的 Data 字段的内容将作为文件显示在投影卷中,使用 Data 字段中的键作为文件名。请注意,这与没有默认模式的 secret 卷源相同。
对象
属性 | 类型 | 描述 |
---|---|---|
|
|
items 如果未指定,则引用的 Secret 的 Data 字段中的每个键值对都将作为文件投影到卷中,其名称为键,内容为值。如果指定,则列出的键将投影到指定的路径中,未列出的键将不存在。如果指定了 Secret 中不存在的键,则卷设置将出错,除非它被标记为可选。路径必须是相对路径,并且不能包含“..”路径或以“..”开头。 |
|
|
将字符串键映射到卷内的路径。 |
|
|
引用的名称。此字段实际上是必需的,但由于向后兼容性,允许为空。此类型的实例在此处为空值几乎肯定是错误的。更多信息:https://kubernetes.ac.cn/docs/concepts/overview/working-with-objects/names/#names |
|
|
optional 字段指定 Secret 或其键是否必须定义 |
items 如果未指定,则引用的 Secret 的 Data 字段中的每个键值对都将作为文件投影到卷中,其名称为键,内容为值。如果指定,则列出的键将投影到指定的路径中,未列出的键将不存在。如果指定了 Secret 中不存在的键,则卷设置将出错,除非它被标记为可选。路径必须是相对路径,并且不能包含“..”路径或以“..”开头。
数组
将字符串键映射到卷内的路径。
对象
key
path
属性 | 类型 | 描述 |
---|---|---|
|
|
key 是要投影的键。 |
|
|
mode 为可选参数:用于设置此文件权限的模式位。必须是 0000 到 0777 之间的八进制值,或者 0 到 511 之间的十进制值。YAML 接受八进制和十进制值,JSON 仅需要十进制模式位值。如果未指定,则将使用卷的 defaultMode。这可能会与影响文件模式的其他选项(如 fsGroup)冲突,从而导致设置其他模式位。 |
|
|
path 是将键映射到的文件的相对路径。不能是绝对路径。不能包含路径元素“..” 。不能以字符串“..”开头。 |
ServiceAccountTokenProjection 表示投影的服务帐户令牌卷。此投影可用于将服务帐户令牌插入到 Pod 的运行时文件系统中,以便针对 API(Kubernetes API 服务器或其他)使用。
对象
path
属性 | 类型 | 描述 |
---|---|---|
|
|
audience 指的是令牌的目标受众。令牌的接收者必须使用令牌 audience 中指定的标识符标识自身,否则应拒绝该令牌。audience 默认值为 apiserver 的标识符。 |
|
|
expirationSeconds 是服务账户令牌请求的有效期时长。当令牌接近过期时,kubelet 卷插件会主动轮换服务账户令牌。如果令牌的剩余有效时间少于其总有效时间的 80%,或者令牌已超过 24 小时,kubelet 将开始尝试轮换令牌。默认为 1 小时,必须至少为 10 分钟。 |
|
|
path 是相对于挂载点的文件路径,用于将令牌投影到该路径。 |
表示持续 Pod 整个生命周期的 Quobyte 挂载。Quobyte 卷不支持所有权管理或 SELinux 重新标记。
对象
registry
volume
属性 | 类型 | 描述 |
---|---|---|
|
|
用于映射卷访问权限的组。默认为无组。 |
|
|
readOnly 将强制以只读权限挂载 Quobyte 卷。默认为 false。 |
|
|
registry 表示一个或多个 Quobyte 注册服务,以字符串形式指定为 host:port 对(多个条目用逗号分隔),作为卷的中央注册中心。 |
|
|
后端中拥有给定 Quobyte 卷的租户。与动态配置的 Quobyte 卷一起使用,值由插件设置。 |
|
|
用于映射卷访问权限的用户。默认为服务账户用户。 |
|
|
volume 是一个字符串,引用已创建的 Quobyte 卷的名称。 |
表示持续 Pod 整个生命周期的 Rados 块设备挂载。RBD 卷支持所有权管理和 SELinux 重新标记。
对象
monitors
image
属性 | 类型 | 描述 |
---|---|---|
|
|
fsType 是要挂载的卷的文件系统类型。提示:确保主机操作系统支持该文件系统类型。例如:“ext4”、“xfs”、“ntfs”。如果未指定,则隐式推断为“ext4”。更多信息:https://kubernetes.ac.cn/docs/concepts/storage/volumes#rbd |
|
|
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 |
|
|
monitors 是 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 将强制在 VolumeMounts 中设置 ReadOnly。默认为 false。更多信息:https://examples.k8s.io/volumes/rbd/README.md#how-to-use-it |
|
|
LocalObjectReference 包含足够的信息,可让您在同一命名空间内找到引用的对象。 |
|
|
user 是 rados 用户名。默认为 admin。更多信息:https://examples.k8s.io/volumes/rbd/README.md#how-to-use-it |
LocalObjectReference 包含足够的信息,可让您在同一命名空间内找到引用的对象。
对象
属性 | 类型 | 描述 |
---|---|---|
|
|
引用的名称。此字段实际上是必需的,但由于向后兼容性,允许为空。此类型的实例在此处为空值几乎肯定是错误的。更多信息:https://kubernetes.ac.cn/docs/concepts/overview/working-with-objects/names/#names |
ScaleIOVolumeSource 表示持久的 ScaleIO 卷
对象
gateway
system
secretRef
属性 | 类型 | 描述 |
---|---|---|
|
|
fsType 是要挂载的文件系统类型。必须是主机操作系统支持的文件系统类型。例如:“ext4”、“xfs”、“ntfs”。默认为“xfs”。 |
|
|
gateway 是 ScaleIO API Gateway 的主机地址。 |
|
|
protectionDomain 是为已配置存储指定的 ScaleIO 保护域的名称。 |
|
|
readOnly 默认为 false(读/写)。此处的 ReadOnly 将强制执行 VolumeMounts 中的 ReadOnly 设置。 |
|
|
LocalObjectReference 包含足够的信息,可让您在同一命名空间内找到引用的对象。 |
|
|
sslEnabled 标志启用/禁用与 Gateway 的 SSL 通信,默认为 false。 |
|
|
storageMode 指示卷的存储应该是 ThickProvisioned 还是 ThinProvisioned。默认为 ThinProvisioned。 |
|
|
storagePool 是与保护域关联的 ScaleIO 存储池。 |
|
|
system 是在 ScaleIO 中配置的存储系统的名称。 |
|
|
volumeName 是已在与该卷源关联的 ScaleIO 系统中创建的卷的名称。 |
LocalObjectReference 包含足够的信息,可让您在同一命名空间内找到引用的对象。
对象
属性 | 类型 | 描述 |
---|---|---|
|
|
引用的名称。此字段实际上是必需的,但由于向后兼容性,允许为空。此类型的实例在此处为空值几乎肯定是错误的。更多信息:https://kubernetes.ac.cn/docs/concepts/overview/working-with-objects/names/#names |
将 Secret 适配到卷。
目标 Secret 的 Data 字段的内容将作为文件显示在卷中,使用 Data 字段中的键作为文件名。Secret 卷支持所有权管理和 SELinux 重新标记。
对象
属性 | 类型 | 描述 |
---|---|---|
|
|
defaultMode 可选:默认情况下用于设置已创建文件权限的模式位。必须是 0000 到 0777 之间的八进制值,或 0 到 511 之间的十进制值。YAML 接受八进制和十进制值,JSON 需要十进制模式位值。默认为 0644。路径中的目录不受此设置的影响。这可能与影响文件模式的其他选项(如 fsGroup)冲突,结果可能是设置了其他模式位。 |
|
|
items 如果未指定,则引用 Secret 的 Data 字段中的每个键值对都将作为文件投影到卷中,其名称为键,内容为值。如果指定,则列出的键将投影到指定的路径中,未列出的键将不存在。如果指定了 Secret 中不存在的键,则除非该键被标记为可选,否则卷设置将出错。路径必须是相对路径,并且不能包含“..”路径或以“..”开头。 |
|
|
将字符串键映射到卷内的路径。 |
|
|
optional 字段指定 Secret 或其键是否必须定义。 |
|
|
secretName 是要使用的 pod 命名空间中 secret 的名称。更多信息:https://kubernetes.ac.cn/docs/concepts/storage/volumes#secret |
items 如果未指定,则引用 Secret 的 Data 字段中的每个键值对都将作为文件投影到卷中,其名称为键,内容为值。如果指定,则列出的键将投影到指定的路径中,未列出的键将不存在。如果指定了 Secret 中不存在的键,则除非该键被标记为可选,否则卷设置将出错。路径必须是相对路径,并且不能包含“..”路径或以“..”开头。
数组
将字符串键映射到卷内的路径。
对象
key
path
属性 | 类型 | 描述 |
---|---|---|
|
|
key 是要投影的键。 |
|
|
mode 为可选参数:用于设置此文件权限的模式位。必须是 0000 到 0777 之间的八进制值,或者 0 到 511 之间的十进制值。YAML 接受八进制和十进制值,JSON 仅需要十进制模式位值。如果未指定,则将使用卷的 defaultMode。这可能会与影响文件模式的其他选项(如 fsGroup)冲突,从而导致设置其他模式位。 |
|
|
path 是将键映射到的文件的相对路径。不能是绝对路径。不能包含路径元素“..” 。不能以字符串“..”开头。 |
表示 StorageOS 持久卷资源。
对象
属性 | 类型 | 描述 |
---|---|---|
|
|
fsType 是要挂载的文件系统类型。必须是主机操作系统支持的文件系统类型。例如,“ext4”、“xfs”、“ntfs”。如果未指定,则隐式推断为“ext4”。 |
|
|
readOnly 默认为 false(读/写)。此处的 ReadOnly 将强制执行 VolumeMounts 中的 ReadOnly 设置。 |
|
|
LocalObjectReference 包含足够的信息,可让您在同一命名空间内找到引用的对象。 |
|
|
volumeName 是 StorageOS 卷的可读名称。卷名在一个命名空间内是唯一的。 |
|
|
volumeNamespace 指定 StorageOS 中卷的范围。如果未指定命名空间,则将使用 Pod 的命名空间。这允许 Kubernetes 命名范围在 StorageOS 中镜像,以实现更紧密的集成。设置 VolumeName 为任何名称以覆盖默认行为。如果您未在 StorageOS 中使用命名空间,则设置为“default”。StorageOS 中不存在的命名空间将被创建。 |
LocalObjectReference 包含足够的信息,可让您在同一命名空间内找到引用的对象。
对象
属性 | 类型 | 描述 |
---|---|---|
|
|
引用的名称。此字段实际上是必需的,但由于向后兼容性,允许为空。此类型的实例在此处为空值几乎肯定是错误的。更多信息:https://kubernetes.ac.cn/docs/concepts/overview/working-with-objects/names/#names |
表示 vSphere 卷资源。
对象
volumePath
属性 | 类型 | 描述 |
---|---|---|
|
|
fsType 是要挂载的文件系统类型。必须是主机操作系统支持的文件系统类型。例如:“ext4”、“xfs”、“ntfs”。如果未指定,则隐式推断为“ext4”。 |
|
|
storagePolicyID 是与 StoragePolicyName 关联的基于存储策略的管理 (SPBM) 配置文件 ID。 |
|
|
storagePolicyName 是基于存储策略的管理 (SPBM) 配置文件名称。 |
|
|
volumePath 是标识 vSphere 卷 vmdk 的路径。 |
PodStatus 表示有关 Pod 状态的信息。状态可能落后于系统的实际状态,特别是如果托管 Pod 的节点无法联系控制平面。
对象
属性 | 类型 | 描述 |
---|---|---|
|
|
Pod 的当前服务状态。更多信息:https://kubernetes.ac.cn/docs/concepts/workloads/pods/pod-lifecycle#pod-conditions |
|
|
PodCondition 包含此 Pod 当前状态的详细信息。 |
|
|
此列表中每个条目对应清单中的一个容器。更多信息:https://kubernetes.ac.cn/docs/concepts/workloads/pods/pod-lifecycle#pod-and-container-status |
|
|
ContainerStatus 包含此容器当前状态的详细信息。 |
|
|
在此 Pod 中运行的任何临时容器的状态。 |
|
|
ContainerStatus 包含此容器当前状态的详细信息。 |
|
|
hostIP 保存分配给 Pod 的主机的 IP 地址。如果 Pod 尚未启动,则为空。Pod 可能被分配到 kubelet 存在问题的节点,这意味着即使 Pod 已分配到节点,HostIP 也不会更新。 |
|
|
hostIPs 保存分配给主机的 IP 地址。如果指定此字段,则第一个条目必须与 hostIP 字段匹配。如果 Pod 尚未启动,则此列表为空。Pod 可能被分配到 kubelet 存在问题的节点,这意味着即使 Pod 已分配到节点,HostIPs 也不会更新。 |
|
|
HostIP 代表分配给主机的单个 IP 地址。 |
|
|
此列表中每个条目对应清单中的一个 init 容器。最近成功的 init 容器将具有 ready = true,最近启动的容器将设置 startTime。更多信息:https://kubernetes.ac.cn/docs/concepts/workloads/pods/pod-lifecycle#pod-and-container-status |
|
|
ContainerStatus 包含此容器当前状态的详细信息。 |
|
|
一条易于理解的消息,指示有关 Pod 处于此状态的原因的详细信息。 |
|
|
只有当此 Pod 抢占节点上的其他 Pod 但无法立即调度时,才会设置 nominatedNodeName,因为抢占受害者会获得其优雅终止期限。此字段不能保证 Pod 将在此节点上调度。如果其他节点更快地可用,调度程序可能会决定将 Pod 放置在其他位置。调度程序也可能决定将此节点上的资源提供给抢占后创建的更高优先级的 Pod。因此,当 Pod 被调度时,此字段可能与 PodSpec.nodeName 不同。 |
|
|
Pod 的阶段是对 Pod 在其生命周期中的位置的简单、高级摘要。conditions 数组、reason 和 message 字段以及各个容器状态数组包含有关 Pod 状态的更多详细信息。共有五种可能的阶段值 Pending:Pod 已被 Kubernetes 系统接受,但一个或多个容器镜像尚未创建。这包括调度之前的时间以及通过网络下载镜像所花费的时间,这可能需要一段时间。Running:Pod 已绑定到节点,并且所有容器都已创建。至少一个容器仍在运行,或者正在启动或重新启动过程中。Succeeded:Pod 中的所有容器都已成功终止,并且不会重新启动。Failed:Pod 中的所有容器都已终止,并且至少一个容器已失败终止。容器已退出并返回非零状态或被系统终止。Unknown:由于某种原因,无法获取 Pod 的状态,通常是由于与 Pod 主机通信出错。 更多信息:https://kubernetes.ac.cn/docs/concepts/workloads/pods/pod-lifecycle#pod-phase 可能的枚举值:- |
|
|
分配给 Pod 的 podIP 地址。至少在集群内可路由。如果尚未分配,则为空。 |
|
|
podIPs 保存分配给 Pod 的 IP 地址。如果指定此字段,则第 0 个条目必须与 podIP 字段匹配。每个 Pod 最多可以为 IPv4 和 IPv6 分配一个值。如果尚未分配任何 IP,则此列表为空。 |
|
|
PodIP 代表分配给 Pod 的单个 IP 地址。 |
|
|
基于资源需求分配给 Pod 的服务质量 (QOS) 分类。有关可用的 QOS 类别,请参阅 PodQOSClass 类型。更多信息:https://kubernetes.ac.cn/docs/concepts/workloads/pods/pod-qos/#quality-of-service-classes 可能的枚举值:- |
|
|
一条简短的驼峰式命名法消息,指示有关 Pod 处于此状态的原因的详细信息。例如,“Evicted”。 |
|
|
Pod 容器所需资源调整的状态。如果没有任何资源调整挂起,则为空。对容器资源的任何更改都会自动将其设置为“Proposed”。 |
|
|
资源声明的状态。 |
|
|
PodResourceClaimStatus 存储在 PodStatus 中,用于每个 PodResourceClaim,它引用 ResourceClaimTemplate。它存储相应 ResourceClaim 的生成的名称。 |
|
Kubelet 确认对象的时间(RFC 3339 日期和时间)。这早于 Kubelet 为 Pod 拉取容器镜像的时间。 |
PodCondition 包含此 Pod 当前状态的详细信息。
对象
类型
status
属性 | 类型 | 描述 |
---|---|---|
|
我们上次探测条件的时间。 |
|
|
条件从一种状态转换到另一种状态的最后时间。 |
|
|
|
指示上次转换详细信息的易于理解的消息。 |
|
|
条件上次转换的唯一、单字、驼峰式命名法原因。 |
|
|
状态表示条件的状态。可以是 True、False 或 Unknown。更多信息:https://kubernetes.ac.cn/docs/concepts/workloads/pods/pod-lifecycle#pod-conditions |
|
|
类型表示条件的类型。更多信息:https://kubernetes.ac.cn/docs/concepts/workloads/pods/pod-lifecycle#pod-conditions |
此列表中每个条目对应清单中的一个容器。更多信息:https://kubernetes.ac.cn/docs/concepts/workloads/pods/pod-lifecycle#pod-and-container-status
数组
ContainerStatus 包含此容器当前状态的详细信息。
对象
name
就绪
重启次数
image
镜像ID
属性 | 类型 | 描述 |
---|---|---|
|
AllocatedResources 表示节点为该容器分配的计算资源。在成功接收 pod 之后以及成功接收所需 pod 大小调整后,Kubelet 会将此值设置为 Container.Resources.Requests。 |
|
|
|
ContainerID 是容器的 ID,格式为“<type>://<container_id>” 。其中 type 是容器运行时标识符,来自 CRI API 的 Version 调用(例如,“containerd”)。 |
|
|
镜像是容器正在运行的容器镜像的名称。容器镜像可能与 PodSpec 中使用的镜像不匹配,因为它可能已被运行时解析。更多信息:https://kubernetes.ac.cn/docs/concepts/containers/images。 |
|
|
ImageID 是容器镜像的镜像 ID。镜像 ID 可能与 PodSpec 中使用的镜像的镜像 ID 不匹配,因为它可能已被运行时解析。 |
|
|
ContainerState 包含容器的可能状态。只能指定其成员之一。如果没有指定任何成员,则默认值为 ContainerStateWaiting。 |
|
|
名称是一个 DNS_LABEL,表示容器的唯一名称。pod 中的每个容器在所有容器类型中都必须具有唯一的名称。不能更新。 |
|
|
Ready 指定容器当前是否通过其就绪检查。随着就绪探针的持续执行,该值将发生变化。如果未指定就绪探针,则一旦容器完全启动(请参见 Started 字段),此字段默认为 true。 此值通常用于确定容器是否已准备好接收流量。 |
|
|
ResourceRequirements 描述计算资源需求。 |
|
|
RestartCount 保存容器已重启的次数。Kubelet 努力始终递增该值,但在某些情况下,由于节点重启而可能丢失状态,然后该值可能重置为 0。该值永远不会为负。 |
|
|
Started 指示容器是否已完成其 postStart 生命周期挂钩并通过了其启动探针。初始化为 false,在启动探针被认为成功后变为 true。当容器重启或 kubelet 暂时丢失状态时,重置为 false。在这两种情况下,启动探针都将再次运行。当没有定义 startupProbe 并且容器正在运行并已通过 postStart 生命周期挂钩时,始终为 true。null 值必须与 false 同样对待。 |
|
|
ContainerState 包含容器的可能状态。只能指定其成员之一。如果没有指定任何成员,则默认值为 ContainerStateWaiting。 |
|
|
卷挂载的状态。 |
|
|
VolumeMountStatus 显示卷挂载的状态。 |
ContainerState 包含容器的可能状态。只能指定其成员之一。如果没有指定任何成员,则默认值为 ContainerStateWaiting。
对象
属性 | 类型 | 描述 |
---|---|---|
|
|
ContainerStateRunning 是容器的运行状态。 |
|
|
ContainerStateTerminated 是容器的已终止状态。 |
|
|
ContainerStateWaiting 是容器的等待状态。 |
ContainerStateRunning 是容器的运行状态。
对象
属性 | 类型 | 描述 |
---|---|---|
|
容器上次(重新)启动的时间 |
ContainerStateTerminated 是容器的已终止状态。
对象
退出代码
属性 | 类型 | 描述 |
---|---|---|
|
|
容器的 ID,格式为“<type>://<container_id>’ |
|
|
容器上次终止的退出状态 |
|
容器上次终止的时间 |
|
|
|
关于容器上次终止的消息 |
|
|
容器上次终止的(简短)原因 |
|
|
容器上次终止的信号 |
|
容器上次执行启动的时间 |
ContainerStateWaiting 是容器的等待状态。
对象
属性 | 类型 | 描述 |
---|---|---|
|
|
关于容器尚未运行的原因的消息。 |
|
|
容器尚未运行的(简短)原因。 |
ResourceRequirements 描述计算资源需求。
对象
属性 | 类型 | 描述 |
---|---|---|
|
|
Claims 列出了此容器使用的资源名称,这些资源定义在 spec.resourceClaims 中。 这是一个 alpha 字段,需要启用 DynamicResourceAllocation 功能网关。 此字段是不可变的。它只能为容器设置。 |
|
|
ResourceClaim 引用 PodSpec.ResourceClaims 中的一个条目。 |
|
Limits 描述了允许的最大计算资源量。更多信息:https://kubernetes.ac.cn/docs/concepts/configuration/manage-resources-containers/ |
|
|
Requests 描述了所需的最小计算资源量。如果容器的 Requests 被省略,则默认为 Limits(如果明确指定),否则默认为实现定义的值。Requests 不能超过 Limits。更多信息:https://kubernetes.ac.cn/docs/concepts/configuration/manage-resources-containers/ |
Claims 列出了此容器使用的资源名称,这些资源定义在 spec.resourceClaims 中。
这是一个 alpha 字段,需要启用 DynamicResourceAllocation 功能网关。
此字段是不可变的。它只能为容器设置。
数组
ResourceClaim 引用 PodSpec.ResourceClaims 中的一个条目。
对象
name
属性 | 类型 | 描述 |
---|---|---|
|
|
名称必须与使用此字段的 Pod 的 pod.spec.resourceClaims 中的一个条目的名称匹配。它使该资源在容器内可用。 |
ContainerState 包含容器的可能状态。只能指定其成员之一。如果没有指定任何成员,则默认值为 ContainerStateWaiting。
对象
属性 | 类型 | 描述 |
---|---|---|
|
|
ContainerStateRunning 是容器的运行状态。 |
|
|
ContainerStateTerminated 是容器的已终止状态。 |
|
|
ContainerStateWaiting 是容器的等待状态。 |
ContainerStateRunning 是容器的运行状态。
对象
属性 | 类型 | 描述 |
---|---|---|
|
容器上次(重新)启动的时间 |
ContainerStateTerminated 是容器的已终止状态。
对象
退出代码
属性 | 类型 | 描述 |
---|---|---|
|
|
容器的 ID,格式为“<type>://<container_id>’ |
|
|
容器上次终止的退出状态 |
|
容器上次终止的时间 |
|
|
|
关于容器上次终止的消息 |
|
|
容器上次终止的(简短)原因 |
|
|
容器上次终止的信号 |
|
容器上次执行启动的时间 |
ContainerStateWaiting 是容器的等待状态。
对象
属性 | 类型 | 描述 |
---|---|---|
|
|
关于容器尚未运行的原因的消息。 |
|
|
容器尚未运行的(简短)原因。 |
VolumeMountStatus 显示卷挂载的状态。
对象
name
mountPath
属性 | 类型 | 描述 |
---|---|---|
|
|
MountPath 对应于原始 VolumeMount。 |
|
|
Name 对应于原始 VolumeMount 的名称。 |
|
|
ReadOnly 对应于原始 VolumeMount。 |
|
|
RecursiveReadOnly 必须设置为 Disabled、Enabled 或未指定(对于非只读挂载)。原始 VolumeMount 中的 IfPossible 值必须根据挂载结果转换为 Disabled 或 Enabled。 |
ContainerStatus 包含此容器当前状态的详细信息。
对象
name
就绪
重启次数
image
镜像ID
属性 | 类型 | 描述 |
---|---|---|
|
AllocatedResources 表示节点为该容器分配的计算资源。在成功接收 pod 之后以及成功接收所需 pod 大小调整后,Kubelet 会将此值设置为 Container.Resources.Requests。 |
|
|
|
ContainerID 是容器的 ID,格式为“<type>://<container_id>” 。其中 type 是容器运行时标识符,来自 CRI API 的 Version 调用(例如,“containerd”)。 |
|
|
镜像是容器正在运行的容器镜像的名称。容器镜像可能与 PodSpec 中使用的镜像不匹配,因为它可能已被运行时解析。更多信息:https://kubernetes.ac.cn/docs/concepts/containers/images。 |
|
|
ImageID 是容器镜像的镜像 ID。镜像 ID 可能与 PodSpec 中使用的镜像的镜像 ID 不匹配,因为它可能已被运行时解析。 |
|
|
ContainerState 包含容器的可能状态。只能指定其成员之一。如果没有指定任何成员,则默认值为 ContainerStateWaiting。 |
|
|
名称是一个 DNS_LABEL,表示容器的唯一名称。pod 中的每个容器在所有容器类型中都必须具有唯一的名称。不能更新。 |
|
|
Ready 指定容器当前是否通过其就绪检查。随着就绪探针的持续执行,该值将发生变化。如果未指定就绪探针,则一旦容器完全启动(请参见 Started 字段),此字段默认为 true。 此值通常用于确定容器是否已准备好接收流量。 |
|
|
ResourceRequirements 描述计算资源需求。 |
|
|
RestartCount 保存容器已重启的次数。Kubelet 努力始终递增该值,但在某些情况下,由于节点重启而可能丢失状态,然后该值可能重置为 0。该值永远不会为负。 |
|
|
Started 指示容器是否已完成其 postStart 生命周期挂钩并通过了其启动探针。初始化为 false,在启动探针被认为成功后变为 true。当容器重启或 kubelet 暂时丢失状态时,重置为 false。在这两种情况下,启动探针都将再次运行。当没有定义 startupProbe 并且容器正在运行并已通过 postStart 生命周期挂钩时,始终为 true。null 值必须与 false 同样对待。 |
|
|
ContainerState 包含容器的可能状态。只能指定其成员之一。如果没有指定任何成员,则默认值为 ContainerStateWaiting。 |
|
|
卷挂载的状态。 |
|
|
VolumeMountStatus 显示卷挂载的状态。 |
ContainerState 包含容器的可能状态。只能指定其成员之一。如果没有指定任何成员,则默认值为 ContainerStateWaiting。
对象
属性 | 类型 | 描述 |
---|---|---|
|
|
ContainerStateRunning 是容器的运行状态。 |
|
|
ContainerStateTerminated 是容器的已终止状态。 |
|
|
ContainerStateWaiting 是容器的等待状态。 |
ContainerStateRunning 是容器的运行状态。
对象
属性 | 类型 | 描述 |
---|---|---|
|
容器上次(重新)启动的时间 |
ContainerStateTerminated 是容器的已终止状态。
对象
退出代码
属性 | 类型 | 描述 |
---|---|---|
|
|
容器的 ID,格式为“<type>://<container_id>’ |
|
|
容器上次终止的退出状态 |
|
容器上次终止的时间 |
|
|
|
关于容器上次终止的消息 |
|
|
容器上次终止的(简短)原因 |
|
|
容器上次终止的信号 |
|
容器上次执行启动的时间 |
ContainerStateWaiting 是容器的等待状态。
对象
属性 | 类型 | 描述 |
---|---|---|
|
|
关于容器尚未运行的原因的消息。 |
|
|
容器尚未运行的(简短)原因。 |
ResourceRequirements 描述计算资源需求。
对象
属性 | 类型 | 描述 |
---|---|---|
|
|
Claims 列出了此容器使用的资源名称,这些资源定义在 spec.resourceClaims 中。 这是一个 alpha 字段,需要启用 DynamicResourceAllocation 功能网关。 此字段是不可变的。它只能为容器设置。 |
|
|
ResourceClaim 引用 PodSpec.ResourceClaims 中的一个条目。 |
|
Limits 描述了允许的最大计算资源量。更多信息:https://kubernetes.ac.cn/docs/concepts/configuration/manage-resources-containers/ |
|
|
Requests 描述了所需的最小计算资源量。如果容器的 Requests 被省略,则默认为 Limits(如果明确指定),否则默认为实现定义的值。Requests 不能超过 Limits。更多信息:https://kubernetes.ac.cn/docs/concepts/configuration/manage-resources-containers/ |
Claims 列出了此容器使用的资源名称,这些资源定义在 spec.resourceClaims 中。
这是一个 alpha 字段,需要启用 DynamicResourceAllocation 功能网关。
此字段是不可变的。它只能为容器设置。
数组
ResourceClaim 引用 PodSpec.ResourceClaims 中的一个条目。
对象
name
属性 | 类型 | 描述 |
---|---|---|
|
|
名称必须与使用此字段的 Pod 的 pod.spec.resourceClaims 中的一个条目的名称匹配。它使该资源在容器内可用。 |
ContainerState 包含容器的可能状态。只能指定其成员之一。如果没有指定任何成员,则默认值为 ContainerStateWaiting。
对象
属性 | 类型 | 描述 |
---|---|---|
|
|
ContainerStateRunning 是容器的运行状态。 |
|
|
ContainerStateTerminated 是容器的已终止状态。 |
|
|
ContainerStateWaiting 是容器的等待状态。 |
ContainerStateRunning 是容器的运行状态。
对象
属性 | 类型 | 描述 |
---|---|---|
|
容器上次(重新)启动的时间 |
ContainerStateTerminated 是容器的已终止状态。
对象
退出代码
属性 | 类型 | 描述 |
---|---|---|
|
|
容器的 ID,格式为“<type>://<container_id>’ |
|
|
容器上次终止的退出状态 |
|
容器上次终止的时间 |
|
|
|
关于容器上次终止的消息 |
|
|
容器上次终止的(简短)原因 |
|
|
容器上次终止的信号 |
|
容器上次执行启动的时间 |
ContainerStateWaiting 是容器的等待状态。
对象
属性 | 类型 | 描述 |
---|---|---|
|
|
关于容器尚未运行的原因的消息。 |
|
|
容器尚未运行的(简短)原因。 |
VolumeMountStatus 显示卷挂载的状态。
对象
name
mountPath
属性 | 类型 | 描述 |
---|---|---|
|
|
MountPath 对应于原始 VolumeMount。 |
|
|
Name 对应于原始 VolumeMount 的名称。 |
|
|
ReadOnly 对应于原始 VolumeMount。 |
|
|
RecursiveReadOnly 必须设置为 Disabled、Enabled 或未指定(对于非只读挂载)。原始 VolumeMount 中的 IfPossible 值必须根据挂载结果转换为 Disabled 或 Enabled。 |
hostIPs 保存分配给主机的 IP 地址。如果指定此字段,则第一个条目必须与 hostIP 字段匹配。如果 Pod 尚未启动,则此列表为空。Pod 可能被分配到 kubelet 存在问题的节点,这意味着即使 Pod 已分配到节点,HostIPs 也不会更新。
数组
此列表中每个条目对应清单中的一个 init 容器。最近成功的 init 容器将具有 ready = true,最近启动的容器将设置 startTime。更多信息:https://kubernetes.ac.cn/docs/concepts/workloads/pods/pod-lifecycle#pod-and-container-status
数组
ContainerStatus 包含此容器当前状态的详细信息。
对象
name
就绪
重启次数
image
镜像ID
属性 | 类型 | 描述 |
---|---|---|
|
AllocatedResources 表示节点为该容器分配的计算资源。在成功接收 pod 之后以及成功接收所需 pod 大小调整后,Kubelet 会将此值设置为 Container.Resources.Requests。 |
|
|
|
ContainerID 是容器的 ID,格式为“<type>://<container_id>” 。其中 type 是容器运行时标识符,来自 CRI API 的 Version 调用(例如,“containerd”)。 |
|
|
镜像是容器正在运行的容器镜像的名称。容器镜像可能与 PodSpec 中使用的镜像不匹配,因为它可能已被运行时解析。更多信息:https://kubernetes.ac.cn/docs/concepts/containers/images。 |
|
|
ImageID 是容器镜像的镜像 ID。镜像 ID 可能与 PodSpec 中使用的镜像的镜像 ID 不匹配,因为它可能已被运行时解析。 |
|
|
ContainerState 包含容器的可能状态。只能指定其成员之一。如果没有指定任何成员,则默认值为 ContainerStateWaiting。 |
|
|
名称是一个 DNS_LABEL,表示容器的唯一名称。pod 中的每个容器在所有容器类型中都必须具有唯一的名称。不能更新。 |
|
|
Ready 指定容器当前是否通过其就绪检查。随着就绪探针的持续执行,该值将发生变化。如果未指定就绪探针,则一旦容器完全启动(请参见 Started 字段),此字段默认为 true。 此值通常用于确定容器是否已准备好接收流量。 |
|
|
ResourceRequirements 描述计算资源需求。 |
|
|
RestartCount 保存容器已重启的次数。Kubelet 努力始终递增该值,但在某些情况下,由于节点重启而可能丢失状态,然后该值可能重置为 0。该值永远不会为负。 |
|
|
Started 指示容器是否已完成其 postStart 生命周期挂钩并通过了其启动探针。初始化为 false,在启动探针被认为成功后变为 true。当容器重启或 kubelet 暂时丢失状态时,重置为 false。在这两种情况下,启动探针都将再次运行。当没有定义 startupProbe 并且容器正在运行并已通过 postStart 生命周期挂钩时,始终为 true。null 值必须与 false 同样对待。 |
|
|
ContainerState 包含容器的可能状态。只能指定其成员之一。如果没有指定任何成员,则默认值为 ContainerStateWaiting。 |
|
|
卷挂载的状态。 |
|
|
VolumeMountStatus 显示卷挂载的状态。 |
ContainerState 包含容器的可能状态。只能指定其成员之一。如果没有指定任何成员,则默认值为 ContainerStateWaiting。
对象
属性 | 类型 | 描述 |
---|---|---|
|
|
ContainerStateRunning 是容器的运行状态。 |
|
|
ContainerStateTerminated 是容器的已终止状态。 |
|
|
ContainerStateWaiting 是容器的等待状态。 |
ContainerStateRunning 是容器的运行状态。
对象
属性 | 类型 | 描述 |
---|---|---|
|
容器上次(重新)启动的时间 |
ContainerStateTerminated 是容器的已终止状态。
对象
退出代码
属性 | 类型 | 描述 |
---|---|---|
|
|
容器的 ID,格式为“<type>://<container_id>’ |
|
|
容器上次终止的退出状态 |
|
容器上次终止的时间 |
|
|
|
关于容器上次终止的消息 |
|
|
容器上次终止的(简短)原因 |
|
|
容器上次终止的信号 |
|
容器上次执行启动的时间 |
ContainerStateWaiting 是容器的等待状态。
对象
属性 | 类型 | 描述 |
---|---|---|
|
|
关于容器尚未运行的原因的消息。 |
|
|
容器尚未运行的(简短)原因。 |
ResourceRequirements 描述计算资源需求。
对象
属性 | 类型 | 描述 |
---|---|---|
|
|
Claims 列出了此容器使用的资源名称,这些资源定义在 spec.resourceClaims 中。 这是一个 alpha 字段,需要启用 DynamicResourceAllocation 功能网关。 此字段是不可变的。它只能为容器设置。 |
|
|
ResourceClaim 引用 PodSpec.ResourceClaims 中的一个条目。 |
|
Limits 描述了允许的最大计算资源量。更多信息:https://kubernetes.ac.cn/docs/concepts/configuration/manage-resources-containers/ |
|
|
Requests 描述了所需的最小计算资源量。如果容器的 Requests 被省略,则默认为 Limits(如果明确指定),否则默认为实现定义的值。Requests 不能超过 Limits。更多信息:https://kubernetes.ac.cn/docs/concepts/configuration/manage-resources-containers/ |
Claims 列出了此容器使用的资源名称,这些资源定义在 spec.resourceClaims 中。
这是一个 alpha 字段,需要启用 DynamicResourceAllocation 功能网关。
此字段是不可变的。它只能为容器设置。
数组
ResourceClaim 引用 PodSpec.ResourceClaims 中的一个条目。
对象
name
属性 | 类型 | 描述 |
---|---|---|
|
|
名称必须与使用此字段的 Pod 的 pod.spec.resourceClaims 中的一个条目的名称匹配。它使该资源在容器内可用。 |
ContainerState 包含容器的可能状态。只能指定其成员之一。如果没有指定任何成员,则默认值为 ContainerStateWaiting。
对象
属性 | 类型 | 描述 |
---|---|---|
|
|
ContainerStateRunning 是容器的运行状态。 |
|
|
ContainerStateTerminated 是容器的已终止状态。 |
|
|
ContainerStateWaiting 是容器的等待状态。 |
ContainerStateRunning 是容器的运行状态。
对象
属性 | 类型 | 描述 |
---|---|---|
|
容器上次(重新)启动的时间 |
ContainerStateTerminated 是容器的已终止状态。
对象
退出代码
属性 | 类型 | 描述 |
---|---|---|
|
|
容器的 ID,格式为“<type>://<container_id>’ |
|
|
容器上次终止的退出状态 |
|
容器上次终止的时间 |
|
|
|
关于容器上次终止的消息 |
|
|
容器上次终止的(简短)原因 |
|
|
容器上次终止的信号 |
|
容器上次执行启动的时间 |
ContainerStateWaiting 是容器的等待状态。
对象
属性 | 类型 | 描述 |
---|---|---|
|
|
关于容器尚未运行的原因的消息。 |
|
|
容器尚未运行的(简短)原因。 |
VolumeMountStatus 显示卷挂载的状态。
对象
name
mountPath
属性 | 类型 | 描述 |
---|---|---|
|
|
MountPath 对应于原始 VolumeMount。 |
|
|
Name 对应于原始 VolumeMount 的名称。 |
|
|
ReadOnly 对应于原始 VolumeMount。 |
|
|
RecursiveReadOnly 必须设置为 Disabled、Enabled 或未指定(对于非只读挂载)。原始 VolumeMount 中的 IfPossible 值必须根据挂载结果转换为 Disabled 或 Enabled。 |
podIPs 保存分配给 Pod 的 IP 地址。如果指定此字段,则第 0 个条目必须与 podIP 字段匹配。每个 Pod 最多可以为 IPv4 和 IPv6 分配一个值。如果尚未分配任何 IP,则此列表为空。
数组
PodResourceClaimStatus 存储在 PodStatus 中,用于每个 PodResourceClaim,它引用 ResourceClaimTemplate。它存储相应 ResourceClaim 的生成的名称。
对象
name
属性 | 类型 | 描述 |
---|---|---|
|
|
名称唯一标识 Pod 内的此资源声明。这必须与 pod.spec.resourceClaims 中条目的名称匹配,这意味着该字符串必须是 DNS_LABEL。 |
|
|
ResourceClaimName 是为 Pod 在其命名空间中生成的 ResourceClaim 的名称。如果未设置此值,则无需生成 ResourceClaim。在这种情况下,可以忽略 pod.spec.resourceClaims 条目。 |
提供以下 API 端点:
/api/v1/pods
GET
:列出或监听 Pod 类型对象
/api/v1/watch/pods
GET
:监听 Pod 列表的单个更改。已弃用:请改用列表操作中的“watch”参数。
/api/v1/namespaces/{namespace}/pods
DELETE
:删除 Pod 集合
GET
:列出或监听 Pod 类型对象
POST
:创建 Pod
/api/v1/watch/namespaces/{namespace}/pods
GET
:监听 Pod 列表的单个更改。已弃用:请改用列表操作中的“watch”参数。
/api/v1/namespaces/{namespace}/pods/{name}
DELETE
:删除 Pod
GET
:读取指定的 Pod
PATCH
:部分更新指定的 Pod
PUT
:替换指定的 Pod
/api/v1/namespaces/{namespace}/pods/{name}/log
GET
:读取指定的 Pod 日志
/api/v1/watch/namespaces/{namespace}/pods/{name}
GET
:监听 Pod 类型对象的更改。已弃用:请改用列表操作中的“watch”参数,并使用“fieldSelector”参数将其过滤为单个项目。
/api/v1/namespaces/{namespace}/pods/{name}/status
GET
:读取指定的 Pod 状态
PATCH
:部分更新指定的 Pod 状态
PUT
:替换指定的 Pod 状态
/api/v1/namespaces/{namespace}/pods/{name}/ephemeralcontainers
GET
:读取指定的 Pod 的 ephemeralcontainers
PATCH
:部分更新指定的 Pod 的 ephemeralcontainers
PUT
:替换指定的 Pod 的 ephemeralcontainers
GET
监听 Pod 列表的单个更改。已弃用:请改用列表操作中的“watch”参数。
HTTP 代码 | 响应体 |
---|---|
200 - OK |
|
401 - 未授权 |
空 |
DELETE
删除 Pod 集合
参数 | 类型 | 描述 |
---|---|---|
|
|
如果存在,则表示不应持久化修改。无效或无法识别的 dryRun 指令将导致错误响应,并且不会进一步处理请求。有效值为:- All:将处理所有 dry run 阶段 |
HTTP 代码 | 响应体 |
---|---|
200 - OK |
|
401 - 未授权 |
空 |
GET
列出或监听 Pod 类型对象
HTTP 代码 | 响应体 |
---|---|
200 - OK |
|
401 - 未授权 |
空 |
POST
创建 Pod
参数 | 类型 | 描述 |
---|---|---|
|
|
如果存在,则表示不应持久化修改。无效或无法识别的 dryRun 指令将导致错误响应,并且不会进一步处理请求。有效值为:- All:将处理所有 dry run 阶段 |
|
|
fieldValidation 指示服务器如何处理请求 (POST/PUT/PATCH) 中包含未知或重复字段的对象。有效值为:- Ignore:这将忽略从对象中静默删除的任何未知字段,并将忽略解码器遇到的最后一个重复字段以外的所有重复字段。这是 v1.23 之前的默认行为。- Warn:这将通过标准警告响应标头为每个从对象中删除的未知字段和遇到的每个重复字段发送警告。如果没有任何其他错误,请求仍然会成功,并且只会持久化任何重复字段中的最后一个。这是 v1.23+ 的默认值 - Strict:如果任何未知字段将从对象中删除,或者存在任何重复字段,则这将使请求失败并返回 BadRequest 错误。服务器返回的错误将包含遇到的所有未知和重复字段。 |
参数 | 类型 | 描述 |
---|---|---|
|
|
HTTP 代码 | 响应体 |
---|---|
200 - OK |
|
201 - 已创建 |
|
202 - 已接受 |
|
401 - 未授权 |
空 |
GET
监听 Pod 列表的单个更改。已弃用:请改用列表操作中的“watch”参数。
HTTP 代码 | 响应体 |
---|---|
200 - OK |
|
401 - 未授权 |
空 |
参数 | 类型 | 描述 |
---|---|---|
|
|
Pod 的名称 |
DELETE
删除 Pod
参数 | 类型 | 描述 |
---|---|---|
|
|
如果存在,则表示不应持久化修改。无效或无法识别的 dryRun 指令将导致错误响应,并且不会进一步处理请求。有效值为:- All:将处理所有 dry run 阶段 |
HTTP 代码 | 响应体 |
---|---|
200 - OK |
|
202 - 已接受 |
|
401 - 未授权 |
空 |
GET
读取指定的 Pod
HTTP 代码 | 响应体 |
---|---|
200 - OK |
|
401 - 未授权 |
空 |
PATCH
部分更新指定的 Pod
参数 | 类型 | 描述 |
---|---|---|
|
|
如果存在,则表示不应持久化修改。无效或无法识别的 dryRun 指令将导致错误响应,并且不会进一步处理请求。有效值为:- All:将处理所有 dry run 阶段 |
|
|
fieldValidation 指示服务器如何处理请求 (POST/PUT/PATCH) 中包含未知或重复字段的对象。有效值为:- Ignore:这将忽略从对象中静默删除的任何未知字段,并将忽略解码器遇到的最后一个重复字段以外的所有重复字段。这是 v1.23 之前的默认行为。- Warn:这将通过标准警告响应标头为每个从对象中删除的未知字段和遇到的每个重复字段发送警告。如果没有任何其他错误,请求仍然会成功,并且只会持久化任何重复字段中的最后一个。这是 v1.23+ 的默认值 - Strict:如果任何未知字段将从对象中删除,或者存在任何重复字段,则这将使请求失败并返回 BadRequest 错误。服务器返回的错误将包含遇到的所有未知和重复字段。 |
HTTP 代码 | 响应体 |
---|---|
200 - OK |
|
201 - 已创建 |
|
401 - 未授权 |
空 |
PUT
替换指定的 Pod
参数 | 类型 | 描述 |
---|---|---|
|
|
如果存在,则表示不应持久化修改。无效或无法识别的 dryRun 指令将导致错误响应,并且不会进一步处理请求。有效值为:- All:将处理所有 dry run 阶段 |
|
|
fieldValidation 指示服务器如何处理请求 (POST/PUT/PATCH) 中包含未知或重复字段的对象。有效值为:- Ignore:这将忽略从对象中静默删除的任何未知字段,并将忽略解码器遇到的最后一个重复字段以外的所有重复字段。这是 v1.23 之前的默认行为。- Warn:这将通过标准警告响应标头为每个从对象中删除的未知字段和遇到的每个重复字段发送警告。如果没有任何其他错误,请求仍然会成功,并且只会持久化任何重复字段中的最后一个。这是 v1.23+ 的默认值 - Strict:如果任何未知字段将从对象中删除,或者存在任何重复字段,则这将使请求失败并返回 BadRequest 错误。服务器返回的错误将包含遇到的所有未知和重复字段。 |
参数 | 类型 | 描述 |
---|---|---|
|
|
HTTP 代码 | 响应体 |
---|---|
200 - OK |
|
201 - 已创建 |
|
401 - 未授权 |
空 |
参数 | 类型 | 描述 |
---|---|---|
|
|
Pod 的名称 |
GET
读取指定的 Pod 日志
HTTP 代码 | 响应体 |
---|---|
200 - OK |
|
401 - 未授权 |
空 |
参数 | 类型 | 描述 |
---|---|---|
|
|
Pod 的名称 |
GET
监听 Pod 类型对象的更改。已弃用:请改用列表操作中的“watch”参数,并使用“fieldSelector”参数将其过滤为单个项目。
HTTP 代码 | 响应体 |
---|---|
200 - OK |
|
401 - 未授权 |
空 |
参数 | 类型 | 描述 |
---|---|---|
|
|
Pod 的名称 |
GET
读取指定的 Pod 状态
HTTP 代码 | 响应体 |
---|---|
200 - OK |
|
401 - 未授权 |
空 |
PATCH
部分更新指定的 Pod 状态
参数 | 类型 | 描述 |
---|---|---|
|
|
如果存在,则表示不应持久化修改。无效或无法识别的 dryRun 指令将导致错误响应,并且不会进一步处理请求。有效值为:- All:将处理所有 dry run 阶段 |
|
|
fieldValidation 指示服务器如何处理请求 (POST/PUT/PATCH) 中包含未知或重复字段的对象。有效值为:- Ignore:这将忽略从对象中静默删除的任何未知字段,并将忽略解码器遇到的最后一个重复字段以外的所有重复字段。这是 v1.23 之前的默认行为。- Warn:这将通过标准警告响应标头为每个从对象中删除的未知字段和遇到的每个重复字段发送警告。如果没有任何其他错误,请求仍然会成功,并且只会持久化任何重复字段中的最后一个。这是 v1.23+ 的默认值 - Strict:如果任何未知字段将从对象中删除,或者存在任何重复字段,则这将使请求失败并返回 BadRequest 错误。服务器返回的错误将包含遇到的所有未知和重复字段。 |
HTTP 代码 | 响应体 |
---|---|
200 - OK |
|
201 - 已创建 |
|
401 - 未授权 |
空 |
PUT
替换指定的 Pod 状态
参数 | 类型 | 描述 |
---|---|---|
|
|
如果存在,则表示不应持久化修改。无效或无法识别的 dryRun 指令将导致错误响应,并且不会进一步处理请求。有效值为:- All:将处理所有 dry run 阶段 |
|
|
fieldValidation 指示服务器如何处理请求 (POST/PUT/PATCH) 中包含未知或重复字段的对象。有效值为:- Ignore:这将忽略从对象中静默删除的任何未知字段,并将忽略解码器遇到的最后一个重复字段以外的所有重复字段。这是 v1.23 之前的默认行为。- Warn:这将通过标准警告响应标头为每个从对象中删除的未知字段和遇到的每个重复字段发送警告。如果没有任何其他错误,请求仍然会成功,并且只会持久化任何重复字段中的最后一个。这是 v1.23+ 的默认值 - Strict:如果任何未知字段将从对象中删除,或者存在任何重复字段,则这将使请求失败并返回 BadRequest 错误。服务器返回的错误将包含遇到的所有未知和重复字段。 |
参数 | 类型 | 描述 |
---|---|---|
|
|
HTTP 代码 | 响应体 |
---|---|
200 - OK |
|
201 - 已创建 |
|
401 - 未授权 |
空 |
参数 | 类型 | 描述 |
---|---|---|
|
|
Pod 的名称 |
GET
读取指定的 Pod 的 ephemeralcontainers
HTTP 代码 | 响应体 |
---|---|
200 - OK |
|
401 - 未授权 |
空 |
PATCH
部分更新指定的 Pod 的 ephemeralcontainers
参数 | 类型 | 描述 |
---|---|---|
|
|
如果存在,则表示不应持久化修改。无效或无法识别的 dryRun 指令将导致错误响应,并且不会进一步处理请求。有效值为:- All:将处理所有 dry run 阶段 |
|
|
fieldValidation 指示服务器如何处理请求 (POST/PUT/PATCH) 中包含未知或重复字段的对象。有效值为:- Ignore:这将忽略从对象中静默删除的任何未知字段,并将忽略解码器遇到的最后一个重复字段以外的所有重复字段。这是 v1.23 之前的默认行为。- Warn:这将通过标准警告响应标头为每个从对象中删除的未知字段和遇到的每个重复字段发送警告。如果没有任何其他错误,请求仍然会成功,并且只会持久化任何重复字段中的最后一个。这是 v1.23+ 的默认值 - Strict:如果任何未知字段将从对象中删除,或者存在任何重复字段,则这将使请求失败并返回 BadRequest 错误。服务器返回的错误将包含遇到的所有未知和重复字段。 |
HTTP 代码 | 响应体 |
---|---|
200 - OK |
|
201 - 已创建 |
|
401 - 未授权 |
空 |
PUT
替换指定的 Pod 的 ephemeralcontainers
参数 | 类型 | 描述 |
---|---|---|
|
|
如果存在,则表示不应持久化修改。无效或无法识别的 dryRun 指令将导致错误响应,并且不会进一步处理请求。有效值为:- All:将处理所有 dry run 阶段 |
|
|
fieldValidation 指示服务器如何处理请求 (POST/PUT/PATCH) 中包含未知或重复字段的对象。有效值为:- Ignore:这将忽略从对象中静默删除的任何未知字段,并将忽略解码器遇到的最后一个重复字段以外的所有重复字段。这是 v1.23 之前的默认行为。- Warn:这将通过标准警告响应标头为每个从对象中删除的未知字段和遇到的每个重复字段发送警告。如果没有任何其他错误,请求仍然会成功,并且只会持久化任何重复字段中的最后一个。这是 v1.23+ 的默认值 - Strict:如果任何未知字段将从对象中删除,或者存在任何重复字段,则这将使请求失败并返回 BadRequest 错误。服务器返回的错误将包含遇到的所有未知和重复字段。 |
参数 | 类型 | 描述 |
---|---|---|
|
|
HTTP 代码 | 响应体 |
---|---|
200 - OK |
|
201 - 已创建 |
|
401 - 未授权 |
空 |