Module

Scope: Cluster
Version: v1alpha1

Отображает базовую информацию о модуле Deckhouse.

Ресурс предназначен только для получения информации о модуле, его нельзя изменить (ресурс только для чтения).

  • propertiesобъект
    • properties.descriptionстрока

      Описание модуля.

    • properties.sourceстрока

      Имя ModuleSource, если модуль скачан из него (иначе пусто).

    • properties.stateстрока

      Состояние модуля (включен или выключен).

      Допустимые значения: Enabled, Disabled

    • properties.weightцелочисленный

      Вес (приоритет) модуля.

ModuleConfig

Scope: Cluster
Version: v1alpha1

Определяет конфигурацию модуля Deckhouse. Название ресурса ModuleConfig должно соответствовать названию модуля (например, control-plane-manager для модуля control-plane-manager).

Пример:

apiVersion: deckhouse.io/v1alpha1
kind: ModuleConfig
metadata:
  name: module-1
spec:
  enabled: true
  settings: {}
  version: 1
  • specобъект

    Обязательный параметр

    • spec.enabledбулевый

      Включить или выключить модуль.

      Пример:

      enabled: 'false'
      
    • spec.settingsобъект

      Настройки модуля.

    • spec.versionчисло

      Версия схемы настроек модуля.

      Пример:

      version: '1'
      

ModulePullOverride

Scope: Cluster
Version: v1alpha1

Определяет конфигурацию ресурса для скачивания конкретных версий модулей Deckhouse.

  • specобъект

    Обязательный параметр

    • spec.imageTagстрока

      Обязательный параметр

      Тег образа контейнера модуля, который будет скачан и установлен.

    • spec.scanIntervalстрока

      Интервал сканирования для проверки изменения образа контейнера. Если образ изменился, модуль будет обновлен.

      По умолчанию: "15s"

    • spec.sourceстрока

      Обязательный параметр

      Ссылка на объект ModuleSource модуля.

ModuleRelease

Scope: Cluster
Version: v1alpha1

Определяет конфигурацию релизов модулей Deckhouse.

Ресурсы ModuleRelease создает Deckhouse.

  • specобъект

    Обязательный параметр

    • spec.applyAfterстрока

      Время, до которого отложено обновление.

    • spec.moduleNameстрока

      Обязательный параметр

      Название модуля.

    • spec.requirementsобъект

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

    • spec.versionстрока

      Обязательный параметр

      Версия модуля в данном релизе.

      Пример:

      version: v1.0.0
      
    • spec.weightцелочисленный

      Вес (приоритет) модуля.

ModuleSource

Scope: Cluster
Version: v1alpha1

Определяет конфигурацию источника модулей Deckhouse.

Пример:

apiVersion: deckhouse.io/v1alpha1
kind: ModuleSource
metadata:
  name: example
spec:
  registry:
    repo: registry.example.io/modules-source
    dockerCfg: "<base64 encoded credentials>"
  • specобъект

    Обязательный параметр

    • spec.registryобъект

      Обязательный параметр

      • spec.registry.caстрока

        Корневой сертификат (В формате PEM), которым можно проверить сертификат registry при работе по HTTPS (если registry использует самоподписанные SSL-сертификаты).

      • spec.registry.dockerCfgстрока

        Строка с токеном доступа к container registry в Base64.

      • spec.registry.repoстрока

        Обязательный параметр

        Адрес репозитория образов контейнеров.

        Пример:

        repo: registry.example.io/deckhouse/modules
        
      • spec.registry.schemeстрока

        Протокол для доступа к репозиторию контейнеров.

        По умолчанию: "HTTPS"

        Допустимые значения: HTTP, HTTPS

    • spec.releaseChannelПараметр устарелстрока

      Желаемый канал обновлений по умолчанию для модулей данного container registry.

ModuleUpdatePolicy

Scope: Cluster
Version: v1alpha1

Определяет режим и настройки обновления модуля.

Пример:

apiVersion: deckhouse.io/v1alpha1
kind: ModuleUpdatePolicy
metadata:
  name: example-update-policy
spec:
  moduleReleaseSelector:
    labelSelector:
      matchLabels:
        source: example
        module: module-1
  releaseChannel: alpha
  update:
    mode: Manual
  • specобъект

    Обязательный параметр

    • spec.moduleReleaseSelectorобъект

      Обязательный параметр

      Определяет модули к которым применяются настройки обновления.

      • spec.moduleReleaseSelector.labelSelectorобъект

        Обязательный параметр

        Определяет фильтр на основе меток, указанных у целевых модулей

        Если указаны одновременно matchExpressions и matchLabels, учитываются оба фильтра (AND).

        • spec.moduleReleaseSelector.labelSelector.matchExpressionsмассив объектов

          Список фильтров на основе выражений.

          • spec.moduleReleaseSelector.labelSelector.matchExpressions.keyстрока

            Обязательный параметр

            Имя метки.

          • spec.moduleReleaseSelector.labelSelector.matchExpressions.operatorстрока

            Обязательный параметр

            Оператор сравнения.

            Допустимые значения: In, NotIn, Exists, DoesNotExist

          • spec.moduleReleaseSelector.labelSelector.matchExpressions.valuesмассив строк

            Значение метки.

        • spec.moduleReleaseSelector.labelSelector.matchLabelsобъект

          Фильтр на основе совпадения меток.

          Пример:

          matchLabels:
            foo: bar
            baz: who
          
    • spec.releaseChannelстрока

      Желаемый канал обновления модуля. Порядок возрастания стабильности канала обновлений (от наименее стабильного к наиболее стабильному): Alpha, Beta, EarlyAccess, Stable, RockSolid.

      По умолчанию: "Stable"

      Допустимые значения: Alpha, Beta, EarlyAccess, Stable, RockSolid

    • spec.updateобъект

      Обязательный параметр

      Режим и настройки обновления модуля.

      • spec.update.modeстрока

        Режим обновления минорных версий модуля.

        • Auto (автоматический) — все обновления применяются автоматически.

          Обновления минорной версии модуля (обновление релиза, например, с v1.26.* на v1.27.*) применяются с учетом заданных окон обновлений либо, если окна обновлений не заданы, по мере появления обновлений на соответствующем канале обновлений.

        • Manual (ручной) — для обновления минорной версии модуля в ручном режиме (обновление релиза, например, с v1.26.* на v1.27.*) необходимо подтверждение.

          Для подтверждения обновления в соответствующем ресурсе modulereleases.deckhouse.io необходимо установить поле approved в true.

        По умолчанию: "Auto"

        Допустимые значения: Auto, Manual

      • spec.update.windowsмассив объектов

        Расписание окон обновления модуля.

        • spec.update.windows.daysмассив строк

          Дни недели, в которые применяется окно обновлений.

          Примеры:

          days: Mon
          
          days: Wed
          
          • Элемент массивастрока

            День недели.

            Допустимые значения: Mon, Tue, Wed, Thu, Fri, Sat, Sun

            Пример:

            Mon
            
        • spec.update.windows.fromстрока

          Обязательный параметр

          Время начала окна обновления (в часовом поясе UTC).

          Должно быть меньше времени окончания окна обновления.

          Шаблон: ^(?:\d|[01]\d|2[0-3]):[0-5]\d$

          Пример:

          from: '13:00'
          
        • spec.update.windows.toстрока

          Обязательный параметр

          Время окончания окна обновления (в часовом поясе UTC).

          Должно быть больше времени начала окна обновления.

          Шаблон: ^(?:\d|[01]\d|2[0-3]):[0-5]\d$

          Пример:

          to: '18:30'