DeckhouseRelease
Scope: Cluster
Version: v1alpha1
Определяет конфигурацию релизов Deckhouse.
- approved
Разрешает или запрещает ручное обновление.
Игнорируется, если в конфигурации модуля установлен режим обновления
Auto
(update.mode: Auto
).По умолчанию:
false
- spec
Обязательный параметр
- spec.applyAfter
Время, до которого отложено обновление, если релиз является частью canary-release.
- spec.changelog
Изменения включенных модулей в данном релизе.
- spec.changelogLink
Ссылка на страницу со всеми изменениями данного релиза.
- spec.disruptions
Потенциально опасные изменения в релизе.
- spec.requirements
Требования для установки релиза.
- spec.version
Обязательный параметр
Версия Deckhouse.
Пример:
version: v1.24.20
Module
Scope: Cluster
Version: v1alpha1
Отображает базовую информацию о модуле Deckhouse.
Ресурс предназначен только для получения информации о модуле, его нельзя изменить (ресурс только для чтения).
- properties
- properties.description
Описание модуля.
- properties.source
Имя ModuleSource, если модуль скачан из него (иначе пусто).
- properties.stage
Текущая стадия жизненного цикла модуля.
Допустимые значения:
Sandbox
,Incubating
,Graduated
,Deprecated
- 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.changelog
Список изменений модуля в данном релизе.
- 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-сертификаты).
Создание ресурса ModuleSource с указанием корневого сертификата, приведет к перезапуску containerd на всех узлах кластера.
- 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: Auto
windows:
- days:
- Mon
- Wed
from: '13:30'
to: '14:00'
- 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: source: deckhouse module: deckhouse-admin
- 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.*
) необходимо подтверждение. Для подтверждения обновления установите аннотациюmodules.deckhouse.io/approved="true"
в соответствующем ресурсе ModuleRelease. -
Ignore
— обновления отключены.
По умолчанию:
"Auto"
Допустимые значения:
Auto
,Manual
,Ignore
-
- 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'