DaemonSet
Документация по концепции DaemonSet
-
DaemonSet определяет поды, предоставляющие средства, локальные для узлов. Они могут быть необходимы для работы кластера, например инструмент для поддержки сети, либо входить в состав дополнения.
apiVersion: apps/v1
import "k8s.io/api/apps/v1"
DaemonSet
DaemonSet представляет конфигурацию набора демонов.
| Поле | Описание |
|---|---|
apiVersionstring |
APIVersion определяет версионированную схему этого представления объекта. Серверы должны преобразовывать распознанные схемы в последнее внутреннее значение и могут отклонять нераспознанные значения. Дополнительная информация: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources |
kindstring |
Kind — строковое значение, представляющее ресурс REST, который описывает этот объект. Серверы могут определить его по конечной точке, на которую клиент отправляет запросы. Изменение не допускается. Используется CamelCase. Дополнительная информация: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds |
metadataObjectMeta |
Стандартные метаданные объекта. Дополнительная информация: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#metadata |
specDaemonSetSpec |
Требуемое поведение этого набора демонов. Дополнительная информация: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#spec-and-status |
statusDaemonSetStatus |
Текущее состояние этого набора демонов. Эти данные могут быть несколько устаревшими. Заполняется системой. Только для чтения. Дополнительная информация: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#spec-and-status |
DaemonSetSpec
DaemonSetSpec — спецификация набора демонов.
| Поле | Описание |
|---|---|
minReadySecondsinteger |
Минимальное количество секунд, в течение которых только что созданный под DaemonSet должен оставаться в состоянии готовности без сбоев любого из контейнеров, чтобы считаться доступным. По умолчанию 0 (под считается доступным сразу после перехода в состояние готовности). |
revisionHistoryLimitinteger |
Количество предыдущих записей истории, сохраняемых для возможности отката. Это указатель, позволяющий отличить явно заданный ноль от незаданного значения. По умолчанию 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 |
updateStrategyDaemonSetUpdateStrategy |
Стратегия обновления для замены существующих подов DaemonSet новыми подами. |
DaemonSetStatus
DaemonSetStatus представляет текущее состояние набора демонов.
| Поле | Описание |
|---|---|
collisionCountinteger |
Количество коллизий хешей для DaemonSet. Контроллер DaemonSet использует это поле для предотвращения коллизий, когда ему необходимо создать имя для последней ControllerRevision. |
conditionsDaemonSetCondition array стратегия исправления: объединение по ключу type
|
Представляет последние доступные наблюдения за текущим состоянием DaemonSet. |
currentNumberScheduled *integer |
Количество узлов, на которых запущен как минимум один под-демон и на которых он должен быть запущен. Дополнительная информация: https://kubernetes.io/docs/concepts/workloads/controllers/daemonset/ |
desiredNumberScheduled *integer |
Общее количество узлов, на которых должен быть запущен под-демон (включая узлы, на которых он запущен корректно). Дополнительная информация: https://kubernetes.io/docs/concepts/workloads/controllers/daemonset/ |
numberAvailableinteger |
Количество узлов, на которых должен быть запущен под-демон и на которых запущен и доступен один или несколько таких подов (готовых не менее spec.minReadySeconds) |
numberMisscheduled *integer |
Количество узлов, на которых запущен под-демон, хотя запускать его там не следует. Дополнительная информация: https://kubernetes.io/docs/concepts/workloads/controllers/daemonset/ |
numberReady *integer |
numberReady — количество узлов, на которых должен быть запущен под-демон и на которых запущен один или несколько таких подов со статусом Ready. |
numberUnavailableinteger |
Количество узлов, на которых должен быть запущен под-демон, но на которых ни один такой под не запущен и не доступен (не находится в состоянии готовности не менее spec.minReadySeconds) |
observedGenerationinteger |
Последнее поколение, обнаруженное контроллером набора демонов. |
updatedNumberScheduledinteger |
Общее количество узлов, на которых запущен обновлённый под-демон |
DaemonSetList
DaemonSetList — это коллекция наборов демонов.
| Поле | Описание |
|---|---|
apiVersionstring |
APIVersion определяет версионированную схему этого представления объекта. Серверы должны преобразовывать распознанные схемы в последнее внутреннее значение и могут отклонять нераспознанные значения. Дополнительная информация: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources |
items *DaemonSet array |
Список наборов демонов. |
kindstring |
Kind — строковое значение, представляющее ресурс REST, который описывает этот объект. Серверы могут определить его по конечной точке, на которую клиент отправляет запросы. Изменение не допускается. Используется CamelCase. Дополнительная информация: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds |
metadataListMeta |
Стандартные метаданные списка. Дополнительная информация: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#metadata |
DaemonSetCondition
DaemonSetCondition описывает состояние DaemonSet в определённый момент времени.
| Поле | Описание |
|---|---|
lastTransitionTimeTime |
Время последнего перехода условия из одного состояния в другое. |
messagestring |
Понятное человеку сообщение с подробностями о переходе. |
reasonstring |
Причина последнего перехода условия. |
status *string |
Статус условия: True, False или Unknown. |
type *string |
Тип условия DaemonSet. |
DaemonSetUpdateStrategy
DaemonSetUpdateStrategy — это структура, используемая для управления стратегией обновления DaemonSet.
| Поле | Описание |
|---|---|
rollingUpdateRollingUpdateDaemonSet |
Параметры конфигурации последовательного обновления. Присутствует только при 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 на протяжении всего процесса обновления. |
typestring |
Тип обновления набора демонов. Может быть "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/