第 7 章 DaemonSet [apps/v1]


描述
DaemonSet 代表守护进程集的配置。
类型
对象

7.1. 规格

属性类型描述

apiVersion

字符串

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

kind

字符串

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

metadata

ObjectMeta

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

spec

object

DaemonSetSpec 是守护进程集的规格。

status

object

DaemonSetStatus 代表守护进程集的当前状态。

7.1.1. .spec

描述
DaemonSetSpec 是守护进程集的规格。
类型
object
必填
  • selector
  • 模板
属性类型描述

minReadySeconds

整数

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

revisionHistoryLimit

整数

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

selector

LabelSelector

对由守护进程集管理的 pod 的一个标签查询。必须匹配才能控制。它必须与 pod 模板的标签匹配。更多信息: https://kubernetes.io/docs/concepts/overview/working-with-objects/labels/#label-selectors

模板

PodTemplateSpec

描述要创建的 pod 的对象。DaemonSet 将在与模板的节点选择器匹配的每个节点上创建一个副本(如果没有指定节点选择器),则每个节点上都会创建一个副本。更多信息: https://kubernetes.io/docs/concepts/workloads/controllers/replicationcontroller#pod-template

updateStrategy

object

DaemonSetUpdateStrategy 是一个结构,用于控制 DaemonSet 的更新策略。

7.1.2. .spec.updateStrategy

描述
DaemonSetUpdateStrategy 是一个结构,用于控制 DaemonSet 的更新策略。
类型
object
属性类型描述

rollingUpdate

object

spec 控制守护进程集滚动更新所需的行为。

type

string

守护进程集更新的类型。可以是 "RollingUpdate" 或 "OnDelete"。默认为 RollingUpdate。

可能枚举值: - "OnDelete" 仅在被终止时替换旧守护进程 - "RollingUpdate" 使用滚动更新替换旧守护进程,即在另一个节点上替换它们。

7.1.3. .spec.updateStrategy.rollingUpdate

描述
spec 控制守护进程集滚动更新所需的行为。
类型
object
属性类型描述

maxSurge

IntOrString

在更新过程中,具有现有可用 DaemonSet pod 的最大节点数,可在更新过程中有更新的 DaemonSet pod。值可以是绝对数字(例如 5)或所需 pod 的百分比(例如 10%)。如果 MaxUnavailable 为 0,则不能是 0。绝对数量从百分比计算到最小 1。默认值为 0。示例:当将其设置为 30% 时,应该运行守护进程 pod 的节点总数(如 status.desiredNumberScheduled)可在旧 pod 标记为已删除前创建其新 pod。更新首先在 30% 的节点中启动新 pod。更新的 pod 可用(至少为 minReadySeconds)后,该节点上旧的 DaemonSet pod 标记为已删除。如果旧 pod 因任何原因而不可用(Ready 过渡到 false、被驱除或排空),则会在该节点上立即创建更新的 pod,而不考虑数量限制。Allow surge 意味着,如果就绪度检查失败,任何给定节点上的 daemonset 消耗的资源可能会加倍,因此资源密集型 daemonset 应考虑在中断期间可能会导致驱除。

maxUnavailable

IntOrString

更新期间不可用的最大 DaemonSet pod 数量。值可以是绝对数字(例如 5),也可以是在更新开始时 DaemonSet pod 总数的百分比(例如 10%)。绝对数量从百分比计算。如果 MaxSurge 为 0,则不能是 0。示例:当将其设置为 30% 时,应该运行守护进程 pod 的节点总数(如 status.desiredNumberScheduled)最多 30% 的 pod 可以在任何给定时间停止进行更新。更新从这些 DaemonSet pod 最多停止,然后在其位置上启动新的 DaemonSet pod。新 pod 可用后,它会继续进行其他 DaemonSet pod,从而确保更新期间至少提供原始 DaemonSet pod 的数量。

7.1.4. .status

描述
DaemonSetStatus 代表守护进程集的当前状态。
类型
object
必填
  • currentNumberScheduled
  • numberMisscheduled
  • desiredNumberScheduled
  • numberReady
属性类型描述

collisionCount

整数

DaemonSet 的哈希冲突计数。当需要为最新的 ControllerRevision 创建名称时,DaemonSet 控制器使用此字段作为冲突机制。

conditions

数组

代表 DaemonSet 当前状态的最新可用影响。

conditions[]

object

DaemonSetCondition 描述了在特定时间点上 DaemonSet 的状态。

currentNumberScheduled

整数

至少运行 1 个守护进程 pod 的节点数量,应该运行守护进程 pod。更多信息: https://kubernetes.io/docs/concepts/workloads/controllers/daemonset/

desiredNumberScheduled

整数

应该运行守护进程 pod 的节点总数(包括正确运行守护进程 pod 的节点)。更多信息: https://kubernetes.io/docs/concepts/workloads/controllers/daemonset/

numberAvailable

整数

运行守护进程 pod 的节点数量,并有一个或多个守护进程 pod 运行并可用(至少为 spec.minReadySeconds)

numberMisscheduled

整数

运行守护进程 pod 但不应运行守护进程 pod 的节点数量。更多信息: https://kubernetes.io/docs/concepts/workloads/controllers/daemonset/

numberReady

整数

numberReady 是应该运行守护进程 pod 的节点数量,并且有一个或多个运行带有 Ready Condition 的守护进程 pod。

numberUnavailable

整数

应该运行守护进程 pod 的节点数量,且没有守护进程 pod 运行并可用(至少为 spec.minReadySeconds)

observedGeneration

整数

守护进程设置控制器观察到的最新生成。

updatedNumberScheduled

整数

运行更新的守护进程 pod 的节点总数

7.1.5. .status.conditions

描述
代表 DaemonSet 当前状态的最新可用影响。
类型
array

7.1.6. .status.conditions[]

描述
DaemonSetCondition 描述了在特定时间点上 DaemonSet 的状态。
类型
object
必填
  • type
  • status
属性类型描述

lastTransitionTime

时间

条件从一个状态转换到另一个状态最后一次的时间。

message

字符串

人类可读的消息,指示有关转换的详细信息。

reason

字符串

条件最后一次转换的原因。

status

字符串

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

type

string

DaemonSet 条件的类型。

Red Hat logoGithubRedditYoutubeTwitter

学习

尝试、购买和销售

社区

关于红帽文档

通过我们的产品和服务,以及可以信赖的内容,帮助红帽用户创新并实现他们的目标。

让开源更具包容性

红帽致力于替换我们的代码、文档和 Web 属性中存在问题的语言。欲了解更多详情,请参阅红帽博客.

關於紅帽

我们提供强化的解决方案,使企业能够更轻松地跨平台和环境(从核心数据中心到网络边缘)工作。

© 2024 Red Hat, Inc.