Spec-Zone.ru › Kubernetes 1.27

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 создаст ровно одну копию этого под на каждом узле, соответствующем селектору узла шаблона (или на каждом узле, если селектор узла не указан). Единственное допустимое значение template.spec.restartPolicy - "Always". Дополнительная информация: https://kubernetes.io/docs/concepts/workloads/controllers/replicationcontroller#pod-template

  • minReadySeconds (int32)

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

  • updateStrategy (DaemonSetUpdateStrategy)

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

    DaemonSetUpdateStrategy - структура для управления стратегией обновления DaemonSet.

    • updateStrategy.type (строка)

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

    • updateStrategy.rollingUpdate (RollingUpdateDaemonSet)

      Параметры конфигурации развёртывания. Наличие только если type = "RollingUpdate".

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

      • updateStrategy.rollingUpdate.maxSurge (IntOrString)

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

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

      • updateStrategy.rollingUpdate.maxUnavailable (IntOrString)

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

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

  • revisionHistoryLimit (int32)

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

DaemonSetStatus

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

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

    numberReady - количество узлов, на которых должен выполняться демона и на которых один или несколько под демона выполняются с условием Ready.

  • numberAvailable (int32)

    Число узлов, на которых должен запускаться под демона и на которых один или несколько под демона запущены и доступны (готовы как минимум spec.minReadySeconds).

  • numberUnavailable (int32)

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

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

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

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

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

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

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

  • updatedNumberScheduled (int32)

    Общее количество узлов, на которых запущены обновлённые под демона.

  • collisionCount (int32)

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

  • conditions ([]DaemonSetCondition)

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

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

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

    • conditions.status (строка), обязательное поле

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

    • conditions.type (строка), обязательное поле

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

    • conditions.lastTransitionTime (Time)

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

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

    • conditions.message (строка)

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

    • conditions.reason (строка)

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

  • 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-27.docs.kubernetes.io/docs/reference/kubernetes-api/workload-resources/daemon-set-v1/

Spec-Zone.ru

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