第 7 章 DaemonSet [apps/v1]
- 描述
- DaemonSet 代表守护进程集的配置。
- 类型
-
对象
7.1. 规格
属性 | 类型 | 描述 |
---|---|---|
|
| APIVersion 定义对象的这个表示法的版本化的 schema。服务器应该将识别的模式转换为最新的内部值,并可拒绝未识别的值。更多信息: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources |
|
| kind 是一个字符串值,代表此对象所代表的 REST 资源。服务器可以从客户端向其提交请求的端点推断。无法更新。采用驼峰拼写法 (CamelCase)。更多信息: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds |
| 标准对象元数据。更多信息: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#metadata | |
|
| DaemonSetSpec 是守护进程集的规格。 |
|
| DaemonSetStatus 代表守护进程集的当前状态。 |
7.1.1. .spec
- 描述
- DaemonSetSpec 是守护进程集的规格。
- 类型
-
object
- 必填
-
selector
-
模板
-
属性 | 类型 | 描述 |
---|---|---|
|
| 新创建的 DaemonSet pod 应该在没有其任何容器崩溃的情况下就绪的最少秒数,以便它被视为可用。默认为 0 (pod 一旦就绪就会被视为可用)。 |
|
| 要保留的旧历史记录的数量,以允许回滚。这是一个指针,用于区分显式零和未指定的。默认值为 10。 |
| 对由守护进程集管理的 pod 的一个标签查询。必须匹配才能控制。它必须与 pod 模板的标签匹配。更多信息: https://kubernetes.io/docs/concepts/overview/working-with-objects/labels/#label-selectors | |
| 描述要创建的 pod 的对象。DaemonSet 将在与模板的节点选择器匹配的每个节点上创建一个副本(如果没有指定节点选择器),则每个节点上都会创建一个副本。唯一允许的 template.spec.restartPolicy 值是 "Always"。更多信息: https://kubernetes.io/docs/concepts/workloads/controllers/replicationcontroller#pod-template | |
|
| DaemonSetUpdateStrategy 是一个结构,用于控制 DaemonSet 的更新策略。 |
7.1.2. .spec.updateStrategy
- 描述
- DaemonSetUpdateStrategy 是一个结构,用于控制 DaemonSet 的更新策略。
- 类型
-
object
属性 | 类型 | 描述 |
---|---|---|
|
| spec 控制守护进程集滚动更新所需的行为。 |
|
| 守护进程集更新的类型。可以是 "RollingUpdate" 或 "OnDelete"。默认为 RollingUpdate。
可能枚举值: - |
7.1.3. .spec.updateStrategy.rollingUpdate
- 描述
- spec 控制守护进程集滚动更新所需的行为。
- 类型
-
object
属性 | 类型 | 描述 |
---|---|---|
| 在更新过程中,具有现有可用 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 应考虑在中断期间可能会导致驱除。 | |
| 更新期间不可用的最大 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
-
属性 | 类型 | 描述 |
---|---|---|
|
| DaemonSet 的哈希冲突计数。当需要为最新的 ControllerRevision 创建名称时,DaemonSet 控制器使用此字段作为冲突机制。 |
|
| 代表 DaemonSet 当前状态的最新可用影响。 |
|
| DaemonSetCondition 描述了在特定时间点上 DaemonSet 的状态。 |
|
| 至少运行 1 个守护进程 pod 的节点数量,应该运行守护进程 pod。更多信息: https://kubernetes.io/docs/concepts/workloads/controllers/daemonset/ |
|
| 应该运行守护进程 pod 的节点总数(包括正确运行守护进程 pod 的节点)。更多信息: https://kubernetes.io/docs/concepts/workloads/controllers/daemonset/ |
|
| 运行守护进程 pod 的节点数量,并有一个或多个守护进程 pod 运行并可用(至少为 spec.minReadySeconds) |
|
| 运行守护进程 pod 但不应运行守护进程 pod 的节点数量。更多信息: https://kubernetes.io/docs/concepts/workloads/controllers/daemonset/ |
|
| numberReady 是应该运行守护进程 pod 的节点数量,并且有一个或多个运行带有 Ready Condition 的守护进程 pod。 |
|
| 应该运行守护进程 pod 的节点数量,且没有守护进程 pod 运行并可用(至少为 spec.minReadySeconds) |
|
| 守护进程设置控制器观察到的最新生成。 |
|
| 运行更新的守护进程 pod 的节点总数 |
7.1.5. .status.conditions
- 描述
- 代表 DaemonSet 当前状态的最新可用影响。
- 类型
-
array
7.1.6. .status.conditions[]
- 描述
- DaemonSetCondition 描述了在特定时间点上 DaemonSet 的状态。
- 类型
-
object
- 必填
-
type
-
status
-
属性 | 类型 | 描述 |
---|---|---|
| 条件从一个状态转换到另一个状态最后一次的时间。 | |
|
| 人类可读的消息,指示有关转换的详细信息。 |
|
| 条件最后一次转换的原因。 |
|
| 条件的状态,True, False, Unknown 之一。 |
|
| DaemonSet 条件的类型。 |