Spec-Zone.ru › Kubernetes

DaemonSet

DaemonSet представляет конфигурацию набора демонов.
Документация по концепции DaemonSet
  • DaemonSet

    DaemonSet определяет поды, предоставляющие средства, локальные для узлов. Они могут быть необходимы для работы кластера, например инструмент для поддержки сети, либо входить в состав дополнения.

    1. Создание спецификации DaemonSet
    2. Как планируется запуск подов-демонов
    3. Взаимодействие с подами-демонами
    4. Обновление DaemonSet
    5. Альтернативы DaemonSet
    6. Что дальше

apiVersion: apps/v1

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

DaemonSet

DaemonSet представляет конфигурацию набора демонов.

Поле Описание
apiVersion
string
APIVersion определяет версионированную схему этого представления объекта. Серверы должны преобразовывать распознанные схемы в последнее внутреннее значение и могут отклонять нераспознанные значения. Дополнительная информация: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources
kind
string
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
DaemonSetSpec
Требуемое поведение этого набора демонов. Дополнительная информация: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#spec-and-status
status
DaemonSetStatus
Текущее состояние этого набора демонов. Эти данные могут быть несколько устаревшими. Заполняется системой. Только для чтения. Дополнительная информация: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#spec-and-status

DaemonSetSpec

DaemonSetSpec — спецификация набора демонов.

Поле Описание
minReadySeconds
integer
Минимальное количество секунд, в течение которых только что созданный под DaemonSet должен оставаться в состоянии готовности без сбоев любого из контейнеров, чтобы считаться доступным. По умолчанию 0 (под считается доступным сразу после перехода в состояние готовности).
revisionHistoryLimit
integer
Количество предыдущих записей истории, сохраняемых для возможности отката. Это указатель, позволяющий отличить явно заданный ноль от незаданного значения. По умолчанию 10.
selector *
LabelSelector
Запрос по меткам для подов, которыми управляет набор демонов. Для управления под должен соответствовать этому запросу. Он должен соответствовать меткам шаблона пода. Дополнительная информация: https://kubernetes.io/docs/concepts/overview/working-with-objects/labels/#label-selectors
template *
PodTemplateSpec
Объект, описывающий создаваемый под. DaemonSet создаст ровно одну копию этого пода на каждом узле, соответствующем селектору узлов шаблона (или на каждом узле, если селектор узлов не указан). Единственное допустимое значение template.spec.restartPolicy — "Always". Дополнительная информация: https://kubernetes.io/docs/concepts/workloads/controllers/replicationcontroller#pod-template
updateStrategy
DaemonSetUpdateStrategy
Стратегия обновления для замены существующих подов DaemonSet новыми подами.

DaemonSetStatus

DaemonSetStatus представляет текущее состояние набора демонов.

Поле Описание
collisionCount
integer
Количество коллизий хешей для DaemonSet. Контроллер DaemonSet использует это поле для предотвращения коллизий, когда ему необходимо создать имя для последней ControllerRevision.
conditions
DaemonSetCondition array
стратегия исправления: объединение по ключу type
Представляет последние доступные наблюдения за текущим состоянием DaemonSet.
currentNumberScheduled *
integer
Количество узлов, на которых запущен как минимум один под-демон и на которых он должен быть запущен. Дополнительная информация: https://kubernetes.io/docs/concepts/workloads/controllers/daemonset/
desiredNumberScheduled *
integer
Общее количество узлов, на которых должен быть запущен под-демон (включая узлы, на которых он запущен корректно). Дополнительная информация: https://kubernetes.io/docs/concepts/workloads/controllers/daemonset/
numberAvailable
integer
Количество узлов, на которых должен быть запущен под-демон и на которых запущен и доступен один или несколько таких подов (готовых не менее spec.minReadySeconds)
numberMisscheduled *
integer
Количество узлов, на которых запущен под-демон, хотя запускать его там не следует. Дополнительная информация: https://kubernetes.io/docs/concepts/workloads/controllers/daemonset/
numberReady *
integer
numberReady — количество узлов, на которых должен быть запущен под-демон и на которых запущен один или несколько таких подов со статусом Ready.
numberUnavailable
integer
Количество узлов, на которых должен быть запущен под-демон, но на которых ни один такой под не запущен и не доступен (не находится в состоянии готовности не менее spec.minReadySeconds)
observedGeneration
integer
Последнее поколение, обнаруженное контроллером набора демонов.
updatedNumberScheduled
integer
Общее количество узлов, на которых запущен обновлённый под-демон

DaemonSetList

DaemonSetList — это коллекция наборов демонов.

Поле Описание
apiVersion
string
APIVersion определяет версионированную схему этого представления объекта. Серверы должны преобразовывать распознанные схемы в последнее внутреннее значение и могут отклонять нераспознанные значения. Дополнительная информация: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources
items *
DaemonSet array
Список наборов демонов.
kind
string
Kind — строковое значение, представляющее ресурс REST, который описывает этот объект. Серверы могут определить его по конечной точке, на которую клиент отправляет запросы. Изменение не допускается. Используется CamelCase. Дополнительная информация: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds
metadata
ListMeta
Стандартные метаданные списка. Дополнительная информация: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#metadata

DaemonSetCondition

DaemonSetCondition описывает состояние DaemonSet в определённый момент времени.

Поле Описание
lastTransitionTime
Time
Время последнего перехода условия из одного состояния в другое.
message
string
Понятное человеку сообщение с подробностями о переходе.
reason
string
Причина последнего перехода условия.
status *
string
Статус условия: True, False или Unknown.
type *
string
Тип условия DaemonSet.

DaemonSetUpdateStrategy

DaemonSetUpdateStrategy — это структура, используемая для управления стратегией обновления DaemonSet.

Поле Описание
rollingUpdate
RollingUpdateDaemonSet
Параметры конфигурации последовательного обновления. Присутствует только при type = "RollingUpdate".
rollingUpdate.maxSurge
Максимальное количество узлов с существующим доступным подом DaemonSet, на которых во время обновления может быть запущен обновлённый под DaemonSet. Значение может быть абсолютным числом (например, 5) или процентом от желаемого количества подов (например, 10%). Это значение не может быть равным 0, если MaxUnavailable равно 0. Абсолютное число вычисляется из процента с округлением вверх, минимум до 1. Значение по умолчанию — 0. Пример: если задано 30%, то не более чем на 30% от общего количества узлов, на которых должен быть запущен под-демон (то есть status.desiredNumberScheduled), можно создать новый под до того, как старый под будет помечен для удаления. Обновление начинается с запуска новых подов на 30% узлов. Когда обновлённый под становится доступным (находится в состоянии Ready не менее minReadySeconds), старый под DaemonSet на этом узле помечается для удаления. Если старый под по какой-либо причине становится недоступен (переходит из Ready в состояние false, выселяется или узел выводится из эксплуатации), на этом узле немедленно создаётся обновлённый под без учёта ограничений на превышение количества подов. Допущение превышения количества подов означает, что ресурсы, потребляемые DaemonSet на любом узле, могут удвоиться при сбое проверки готовности, поэтому DaemonSet, интенсивно использующие ресурсы, должны учитывать, что они могут вызывать выселения при нарушении работы.
rollingUpdate.maxUnavailable
Максимальное количество подов DaemonSet, которые могут быть недоступны во время обновления. Значение может быть абсолютным числом (например, 5) или процентом от общего количества подов DaemonSet на момент начала обновления (например, 10%). Абсолютное число вычисляется из процента с округлением вверх. Это значение не может быть равным 0, если MaxSurge равно 0. Значение по умолчанию — 1. Пример: если задано 30%, то в любой момент времени во время обновления обновляться могут поды не более чем на 30% от общего количества узлов, на которых должен быть запущен под-демон (то есть status.desiredNumberScheduled). Обновление начинается с остановки не более чем 30% таких подов DaemonSet, после чего на их место запускаются новые поды DaemonSet. Как только новые поды становятся доступными, обновление продолжается для других подов DaemonSet, что гарантирует доступность не менее 70% исходного количества подов DaemonSet на протяжении всего процесса обновления.
type
string
Тип обновления набора демонов. Может быть "RollingUpdate" или "OnDelete". По умолчанию — RollingUpdate.

Возможные значения перечисления:
- `"OnDelete"` Заменять старые демоны только после их завершения
- `"RollingUpdate"` Заменять старые демоны новыми с помощью последовательного обновления, то есть поочерёдно на каждом узле.

© 2026 The Kubernetes Authors | Documentation Distributed under CC BY 4.0
Copyright © 2026 The Linux Foundation ®. All rights reserved.
https://kubernetes.io/docs/reference/kubernetes-api/apps/daemon-set-v1/

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API