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).

Пример:

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

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

    • spec.enabledбулевый

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

      Пример:

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

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

    • spec.versionчисло

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

      Пример:

      1version: '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строка

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

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

      Пример:

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

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

ModuleSource

Scope: Cluster
Version: v1alpha1

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

Пример:

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

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

    • spec.registryобъект

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

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

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

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

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

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

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

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

        Пример:

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

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

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

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

    • spec.releaseChannelстрока

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

ModuleUpdatePolicy

Scope: Cluster
Version: v1alpha1

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

Пример:

1apiVersion: deckhouse.io/v1alpha1
2kind: ModuleUpdatePolicy
3metadata:
4  name: example-update-policy
5spec:
6  moduleReleaseSelector:
7    labelSelector:
8      matchLabels:
9        source: example
10        module: module-1
11  releaseChannel: alpha
12  update:
13    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объект

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

          Пример:

          1matchLabels:
          2  foo: bar
          3  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массив строк

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

          Примеры:

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

            День недели.

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

            Пример:

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

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

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

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

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

          Пример:

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

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

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

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

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

          Пример:

          1to: '18:30'