RuntimeClass

RuntimeClass 定义了集群中支持的容器运行时类。

apiVersion: node.k8s.io/v1

import "k8s.io/api/node/v1"

RuntimeClass

RuntimeClass 定义了集群中支持的容器运行时类。 RuntimeClass 用于确定哪个容器运行时用于运行 Pod 中的所有容器。 RuntimeClass 由用户或集群配置者手动定义,并在 PodSpec 中引用。 Kubelet 负责在运行 Pod 之前解析 RuntimeClassName 引用。 有关更多详细信息,请参阅 https://kubernetes.top/zh-cn/docs/concepts/containers/runtime-class/


  • apiVersion: node.k8s.io/v1

  • kind: RuntimeClass

  • metadata (ObjectMeta)

    更多信息:https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#metadata

  • handler (string), 必需

    handler 指定 CRI 实现将用于处理此类的 Pod 的底层运行时和配置。 可能的值特定于节点和 CRI 配置。 假设所有处理程序在每个节点上都可用,并且相同名称的处理程序在每个节点上都是等效的。 例如,名为 "runc" 的处理程序可能指定 runc OCI 运行时(使用本机 Linux 容器)将用于运行 Pod 中的容器。 Handler 必须小写,符合 DNS 标签 (RFC 1123) 要求,并且是不可变的。

  • overhead (Overhead)

    overhead 表示与运行给定 RuntimeClass 的 Pod 相关的资源开销。有关更多详细信息,请参阅 https://kubernetes.top/zh-cn/docs/concepts/scheduling-eviction/pod-overhead/

    Overhead 结构表示与运行 Pod 相关的资源开销。

    • overhead.podFixed (map[string]Quantity)

      podFixed 表示与运行 Pod 相关的固定资源开销。

  • scheduling (Scheduling)

    scheduling 保留调度约束,以确保使用此 RuntimeClass 运行的 Pod 被调度到支持它的节点。 如果 scheduling 为 nil,则假定所有节点都支持此 RuntimeClass。

    Scheduling 指定支持 RuntimeClass 的节点的调度约束。

    • scheduling.nodeSelector (map[string]string)

      nodeSelector 列出支持此 RuntimeClass 的节点上必须存在的标签。 使用此 RuntimeClass 的 Pod 只能调度到此选择器匹配的节点。 RuntimeClass nodeSelector 与 Pod 现有的 nodeSelector 合并。 任何冲突都会导致 Pod 在准入时被拒绝。

    • scheduling.tolerations ([]Toleration)

      原子操作:将在合并期间被替换

      容忍度 (tolerations) 会在准入期间附加(排除重复项)到使用此 RuntimeClass 运行的 Pod,从而有效地合并 Pod 和 RuntimeClass 容忍的节点集。

      附加到此容忍度 (Toleration) 的 Pod 容忍任何使用匹配运算符 <operator> 匹配三元组 <key,value,effect> 的污点。

      • scheduling.tolerations.key (string)

        Key 是容忍度 (toleration) 应用到的污点键。 空表示匹配所有污点键。 如果 key 为空,则 operator 必须为 Exists;此组合表示匹配所有值和所有键。

      • scheduling.tolerations.operator (string)

        Operator 表示键与值的关系。 有效的运算符为 Exists 和 Equal。 默认为 Equal。 Exists 等效于值的通配符,因此 Pod 可以容忍特定类别的所有污点。

      • scheduling.tolerations.value (string)

        Value 是容忍度 (toleration) 匹配的污点值。 如果运算符为 Exists,则该值应为空,否则只是一个常规字符串。

      • scheduling.tolerations.effect (string)

        Effect 表示要匹配的污点效果。 空表示匹配所有污点效果。 指定时,允许的值为 NoSchedule、PreferNoSchedule 和 NoExecute。

      • scheduling.tolerations.tolerationSeconds (int64)

        TolerationSeconds 表示容忍度 (toleration)(必须为 NoExecute 效果,否则此字段将被忽略)容忍污点的时间段。 默认情况下,它未设置,这意味着永远容忍污点(不驱逐)。 系统会将零和负值视为 0(立即驱逐)。

RuntimeClassList

RuntimeClassList 是 RuntimeClass 对象的列表。


操作


get 读取指定的 RuntimeClass

HTTP 请求

GET /apis/node.k8s.io/v1/runtimeclasses/{name}

参数

  • name (in path): string, 必需

    RuntimeClass 的名称

  • pretty (in query): string

    pretty

响应

200 (RuntimeClass): 成功

401: 未授权

list 列出或监视 RuntimeClass 类型的对象

HTTP 请求

GET /apis/node.k8s.io/v1/runtimeclasses

参数

响应

200 (RuntimeClassList): 成功

401: 未授权

create 创建 RuntimeClass

HTTP 请求

POST /apis/node.k8s.io/v1/runtimeclasses

参数

响应

200 (RuntimeClass): 成功

201 (RuntimeClass): 已创建

202 (RuntimeClass): 已接受

401: 未授权

update 替换指定的 RuntimeClass

HTTP 请求

PUT /apis/node.k8s.io/v1/runtimeclasses/{name}

参数

响应

200 (RuntimeClass): 成功

201 (RuntimeClass): 已创建

401: 未授权

patch 部分更新指定的 RuntimeClass

HTTP 请求

PATCH /apis/node.k8s.io/v1/runtimeclasses/{name}

参数

  • name (in path): string, 必需

    RuntimeClass 的名称

  • body: Patch, 必需

  • dryRun (in query): string

    dryRun

  • fieldManager (in query): string

    fieldManager

  • fieldValidation (in query): string

    fieldValidation

  • force (in query): boolean

    force

  • pretty (in query): string

    pretty

响应

200 (RuntimeClass): 成功

201 (RuntimeClass): 已创建

401: 未授权

delete 删除 RuntimeClass

HTTP 请求

DELETE /apis/node.k8s.io/v1/runtimeclasses/{name}

参数

响应

200 (Status): 成功

202 (Status): 已接受

401: 未授权

deletecollection 删除 RuntimeClass 的集合

HTTP 请求

DELETE /apis/node.k8s.io/v1/runtimeclasses

参数

响应

200 (Status): 成功

401: 未授权

此页面是自动生成的。

如果您计划报告此页面的问题,请在您的问题描述中提及该页面是自动生成的。 此修复可能需要发生在 Kubernetes 项目的其他位置。

上次修改时间:2024年8月28日下午6:01(太平洋标准时间):更新 v1.31 的生成 API 参考 (8ba98c79c1)