Spec-Zone.ru › Kubernetes 1.26

DaemonSet

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

apiVersion: apps/v1

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

DaemonSet

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

  • apiVersion: apps/v1

  • kind: DaemonSet

  • 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 — спецификация демона.

  • selector (LabelSelector), обязательно

    Запрос меток для под, управляемых демоном. Должен совпадать, чтобы быть подконтрольным. Он должен совпадать с метками шаблона под. Дополнительная информация: https://kubernetes.io/docs/concepts/overview/working-with-objects/labels/#label-selectors

  • template (PodTemplateSpec), обязательно

    Объект, описывающий под, который будет создан. DaemonSet создаст ровно одну копию этого под на каждом узле, соответствующем селектору узла шаблона (или на каждом узле, если селектор узла не указан). Дополнительная информация: https://kubernetes.io/docs/concepts/workloads/controllers/replicationcontroller#pod-template

  • minReadySeconds (int32)

    Минимальное количество секунд, в течение которого недавно созданный DaemonSet pod должен быть готов без сбоя любого из его контейнеров, чтобы считаться доступным. По умолчанию 0 (pod будет считаться доступным, как только он станет готовым).

  • updateStrategy (DaemonSetUpdateStrategy)

    Стратегия обновления для замены существующих DaemonSet pods новыми pods.

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

    • updateStrategy.type (string)

      Тип обновления демона. Может быть "RollingUpdate" или "OnDelete". По умолчанию RollingUpdate.

    • updateStrategy.rollingUpdate (RollingUpdateDaemonSet)

      Параметры конфигурации для постепенного обновления. Присутствуют только если type = "RollingUpdate".

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

      • updateStrategy.rollingUpdate.maxSurge (IntOrString)

        Максимальное количество узлов с существующим доступным DaemonSet pod, которые могут иметь обновленный DaemonSet pod во время обновления. Значение может быть абсолютным числом (например, 5) или процентом от желаемого количества pods (например, 10%). Это не может быть 0, если MaxUnavailable равно 0. Абсолютное число рассчитывается из процента, округляя вверх до минимума 1. Значение по умолчанию 0. Пример: когда это установлено на 30%, не более 30% от общего количества узлов, на которых должен выполняться Daemon pod (т.е. status.desiredNumberScheduled) могут иметь новый pod, созданный до того, как старый pod будет помечен как удаленный. Обновление начинается с запуска новых pods на 30% узлов. После того, как обновленный pod станет доступным (готов в течение хотя бы minReadySeconds), старый DaemonSet pod на этом узле помечается как удаленный. Если старый pod станет недоступным по любой причине (Ready переходит в false, подлежит выводу или выполняется выгрузка), обновленный pod немедленно создается на этом узле, не учитывая ограничения Surge. Разрешение Surge подразумевает возможность удвоения ресурсов, потребляемых Daemonset на любом узле, если проверка готовности завершается неудачей, поэтому ресурсоемкие демоны должны учитывать, что они могут вызвать выгрузку во время сбоя.

        IntOrString — тип, который может содержать int32 или строку. При использовании в JSON или YAML маршалинге и анмаршалинге он производит или потребляет внутренний тип. Это позволяет, например, иметь поле JSON, которое может принимать имя или число.

      • updateStrategy.rollingUpdate.maxUnavailable (IntOrString)

        Максимальное количество DaemonSet pods, которые могут быть недоступны во время обновления. Значение может быть абсолютным числом (например, 5) или процентом от общего числа DaemonSet pods в начале обновления (например, 10%). Абсолютное число рассчитывается из процента путем округления вверх. Это не может быть 0, если MaxSurge равен 0. Значение по умолчанию 1. Пример: когда это установлено на 30%, не более 30% от общего количества узлов, на которых должен выполняться Daemon pod (т.е. status.desiredNumberScheduled) могут иметь свои pods остановлены для обновления в любой момент времени. Обновление начинается с остановки не более 30% этих DaemonSet pods, а затем запускает новые DaemonSet pods на их место. После того, как новые pods будут доступны, оно переходит к другим DaemonSet pods, гарантируя, что по крайней мере 70% исходного количества DaemonSet pods будут доступны во все время обновления.

        IntOrString — тип, который может содержать int32 или строку. При использовании в JSON или YAML маршалинге и анмаршалинге он производит или потребляет внутренний тип. Это позволяет, например, иметь поле JSON, которое может принимать имя или число.

  • revisionHistoryLimit (int32)

    Количество старой истории, которое нужно сохранить для отката. Это указатель для различения явного нуля и отсутствия значения. По умолчанию 10.

DaemonSetStatus

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

  • numberReady (int32), обязательно

    numberReady — количество узлов, на которых должен выполняться Daemon pod и на которых один или несколько Daemon pod работают с Ready Condition.

  • numberAvailable (int32)

    Количество узлов, на которых должен выполняться Daemon pod и на которых один или несколько Daemon pod работают и доступны (готовы в течение по крайней мере spec.minReadySeconds)

  • numberUnavailable (int32)

    Количество узлов, на которых должен выполняться Daemon pod и на которых ни один из Daemon pod не работает и не доступен (готов в течение по крайней мере spec.minReadySeconds)

  • numberMisscheduled (int32), обязательно

    Количество узлов, на которых работает Daemon pod, но не должно работать. Дополнительная информация: https://kubernetes.io/docs/concepts/workloads/controllers/daemonset/

  • desiredNumberScheduled (int32), обязательно

    Общее количество узлов, на которых должен выполняться Daemon pod (включая узлы, на которых Daemon pod выполняется правильно). Дополнительная информация: https://kubernetes.io/docs/concepts/workloads/controllers/daemonset/

  • currentNumberScheduled (int32), обязательно

    Количество узлов, на которых выполняется хотя бы 1 Daemon pod и которые должны выполнять Daemon pod. Дополнительная информация: https://kubernetes.io/docs/concepts/workloads/controllers/daemonset/

  • updatedNumberScheduled (int32)

    Общее количество узлов, на которых выполняется обновленный Daemon pod

  • collisionCount (int32)

    Количество коллизий хешей для DaemonSet. Контроллер DaemonSet использует это поле в качестве механизма предотвращения коллизий при необходимости создания имени для самого нового ControllerRevision.

  • conditions ([]DaemonSetCondition)

    Стратегия патча: слияние по ключу type

    Представляет последние доступные наблюдения текущего состояния DaemonSet.

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

    • conditions.status (string), обязательно

      Статус условия, один из True, False, Unknown.

    • conditions.type (string), обязательно

      Тип условия DaemonSet.

    • conditions.lastTransitionTime (Time)

      Последнее время перехода состояния условия из одного статуса в другой.

      Time — оболочка вокруг time.Time, которая поддерживает правильный маршаллинг в YAML и JSON. Оболочки предоставлены для многих методов-фабрик, которые предлагает пакет time.

    • conditions.message (string)

      Человекопонятное сообщение, указывающее детали перехода.

    • conditions.reason (string)

      Причина последнего перехода состояния условия.

  • observedGeneration (int64)

    Последняя обработанная генерация, наблюдаемая контроллером демона.

DaemonSetList

DaemonSetList — коллекция демонов.

  • apiVersion: apps/v1

  • kind: DaemonSetList

  • metadata (ListMeta)

    Стандартные метаданные списка. Дополнительная информация: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#metadata

  • items ([]DaemonSet), обязательно

    Список демонов.

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

Spec-Zone.ru

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