ClusterConfiguration
Version: deckhouse.io/v1
Общие параметры кластера.
Определяют, например, сетевые параметры, параметры CRI, версию control plane и т. д. Некоторые параметры можно изменять после развертывания кластера, во время его работы.
Чтобы изменить содержимое ресурса ClusterConfiguration
в работающем кластере, выполните следующую команду:
d8 platform edit cluster-configuration
Пример:
apiVersion: deckhouse.io/v1
kind: ClusterConfiguration
podSubnetNodeCIDRPrefix: '24'
podSubnetCIDR: 10.244.0.0/16
serviceSubnetCIDR: 192.168.0.0/16
kubernetesVersion: '1.29'
clusterDomain: k8s.internal
clusterType: Cloud
cloud:
prefix: k8s-dev
provider: Yandex
proxy:
httpProxy: https://user:password@proxy.company.my:8443
httpsProxy: https://user:password@proxy.company.my:8443
noProxy:
- company.my
- apiVersion
Обязательный параметр
Используемая версия API Deckhouse.
Допустимые значения:
deckhouse.io/v1
,deckhouse.io/v1alpha1
- cloud.prefix
Префикс объектов, создаваемых в облаке.
Используется, например, для того, чтобы отличать объекты, создаваемые для разных кластеров, для настройки маршрутизации и т. д.
Шаблон:
^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
- cloud.provider
Обязательный параметр
Облачный провайдер.
Допустимые значения:
OpenStack
,AWS
,GCP
,Yandex
,vSphere
,Azure
,VCD
,Zvirt
,Dynamix
,Huaweicloud
,DVP
- clusterDomain
Обязательный параметр
Домен кластера (используется для маршрутизации внутри кластера).
Обратите внимание: домен не должен совпадать с доменом, используемым в шаблоне DNS-имен в параметре publicDomainTemplate. Например, нельзя одновременно устанавливать
clusterDomain: cluster.local
иpublicDomainTemplate: %s.cluster.local
.При необходимости смены параметра в уже развернутом кластере рекомендуется воспользоваться инструкцией
По умолчанию:
cluster.local
- clusterType
Обязательный параметр
Тип инфраструктуры кластера:
Static
— кластер на bare metal (физические серверы) или виртуальных машинах. В случае виртуальных машин подразумевается, что у Deckhouse нет доступа к API для управления виртуальными машинами (они управляются администратором с помощью обычных средств облачной инфраструктуры);Cloud
— кластер, развернутый в облачной инфраструктуре. Этот тип подразумевает, что у Deckhouse есть доступ к API облачной инфраструктуры для управления виртуальными машинами.
Допустимые значения:
Cloud
,Static
- defaultCRI
Тип container runtime, используемый на узлах кластера (в NodeGroup’ах) по умолчанию.
Если используется значение
NotManaged
, то Deckhouse не будет управлять (устанавливать и настраивать) container runtime. В этом случае образы, используемые в NodeGroup’ах, должны содержать уже установленный container runtime.Если установлено значение
ContainerdV2
, будет использоватьсяCgroupsV2
(обеспечивает улучшенную безопасность и управление ресурсами). Для использованияContainerdV2
в качестве container runtime узлы кластера должны соответствовать следующим требованиям:- поддержка
CgroupsV2
; - ядро Linux версии
5.8
и новее; - systemd версии
244
и новее; - поддержка модуля ядра
erofs
.
По умолчанию:
Containerd
Допустимые значения:
Containerd
,ContainerdV2
,NotManaged
- поддержка
- encryptionAlgorithm
В Kubernetes версии 1.30 и ниже поддерживается только
RSA-2048
алгоритм.Начиная с версии 1.31, kubeadm использует указанный алгоритм асимметричного шифрования при генерации ключей и сертификатов для следующих компонентов control-plane:
apiserver
apiserver-kubelet-client
apiserver-etcd-client
front-proxy-client
etcd-server
etcd-peer
etcd-healthcheck-client
При изменении этого параметра, cертификаты для выше указанных компонентов будут перевыпущены с выбранным алгоритмом и длиной ключа.
Внимание. При перевыпуске сертификатов не происходит ротация корневого сертификата (CA). Корневой сертификат создаётся с выбранным алгоритмом только при первичном бутстрапе кластера.
По умолчанию:
RSA-2048
Допустимые значения:
RSA-2048
,RSA-3072
,RSA-4096
,ECDSA-P256
- kind
Обязательный параметр
Допустимые значения:
ClusterConfiguration
- kubernetesVersion
Обязательный параметр
Версия Kubernetes (компонентов control plane кластера).
Изменение параметра в работающем кластере приведет к автоматическому обновлению версии control plane кластера.
Если указано
Automatic
, то используется версия control plane, которая считается стабильной на данный момент. Если стабильная версия control plane меньше максимальной, которая когда либо была установлена в кластере, больше чем на 1 минорную версию - тогда версия кластера не изменится. Изменение этой версии может произойти при смене минорной версии релиза Deckhouse (см. список изменений к релизу).Допустимые значения:
1.29
,1.30
,1.31
,1.32
,1.33
,Automatic
- podSubnetCIDR
Обязательный параметр
Адресное пространство Pod’ов кластера.
Внимание! Смена параметра в уже развернутом кластере невозможна в обычном режиме. Чтобы обойти это ограничение, используйте специальный флаг.
- podSubnetNodeCIDRPrefix
Префикс сети Pod’ов на узле.
Внимание! Смена параметра в уже развернутом кластере невозможна в обычном режиме. Чтобы обойти это ограничение, используйте специальный флаг.
По умолчанию:
24
- proxy
Доступно в редакциях: BE, SE, SE+, EE, CSE Lite (1.67), CSE Pro (1.67)
Глобальная настройка proxy-сервера (в основном для работы в закрытых окружениях).
Описанные в этой секции параметры будут транслированы в переменные окружения
HTTP_PROXY
,HTTPS_PROXY
иNO_PROXY
для всех узлов кластера и компонентов Deckhouse. Это приведёт к тому, что HTTP(S) запросы (например, при выполнении curl, git и т. д.) ко всем не указанным в параметреnoProxy
ресурсам будут выполняться через прокси. ПодсетиpodSubnetCIDR
,serviceSubnetCIDR
и доменclusterDomain
добавляются вnoProxy
автоматически.Внимание! Чтобы избежать использования прокси в запросах между подами кластера и сервисами расположенными в сети узлов кластера, заполните параметр
noProxy
списком подсетей, которые используются на узлах.- proxy.httpProxy
Доступно в редакциях: BE, SE, SE+, EE, CSE Lite (1.67), CSE Pro (1.67)
URL proxy-сервера для HTTP-запросов.
При необходимости укажите имя пользователя, пароль и порт proxy-сервера.
Шаблон:
^https?://([!*'();&=+$,/?%#\[\]0-9a-zA-Z\.\-\_]+(\:[!*'();:@&=+$,/?%#\[\]0-9a-zA-Z\.\-\_]+)?@)?[0-9a-zA-Z\.\-]+(\:[0-9]{1,5})?$
Примеры:
httpProxy: http://proxy.company.my
httpProxy: https://user:password@proxy.company.my:8443
httpProxy: https://DOMAIN%5Cuser:password@proxy.company.my:8443
httpProxy: https://user%40domain.local:password@proxy.company.my:8443
- proxy.httpsProxy
Доступно в редакциях: BE, SE, SE+, EE, CSE Lite (1.67), CSE Pro (1.67)
URL proxy-сервера для HTTPS-запросов.
При необходимости укажите имя пользователя, пароль и порт proxy-сервера.
Шаблон:
^https?://([!*'();&=+$,/?%#\[\]0-9a-zA-Z\.\-\_]+(\:[!*'();:@&=+$,/?%#\[\]0-9a-zA-Z\.\-\_]+)?@)?[0-9a-zA-Z\.\-]+(\:[0-9]{1,5})?$
Примеры:
httpsProxy: http://proxy.company.my
httpsProxy: https://user:password@proxy.company.my:8443
httpsProxy: https://DOMAIN%5Cuser:password@proxy.company.my:8443
httpsProxy: https://user%40domain.local:password@proxy.company.my:8443
- proxy.noProxy
Доступно в редакциях: BE, SE, SE+, EE, CSE Lite (1.67), CSE Pro (1.67)
Список IP и доменных имен, для которых проксирование не применяется.
Для настройки wildcard-доменов используйте написание вида “.example.com”.
Внимание. Если в кластере предполагается взаимодействие подов с сервисами, размещенными в сети узлов кластера, то укажите список подсетей, которые используются на узлах.
- Элемент массива
Шаблон:
^[a-z0-9\-\./]+$
- serviceSubnetCIDR
Обязательный параметр
Адресное пространство для service’ов кластера.
Внимание! Смена параметра в уже развернутом кластере невозможна в обычном режиме. Чтобы обойти это ограничение, используйте специальный флаг.
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
InitConfiguration
Version: deckhouse.io/v1
Конфигурация Deckhouse, с которой он запустится после установки.
Пример:
apiVersion: deckhouse.io/v1
kind: InitConfiguration
deckhouse:
imagesRepo: nexus.company.my/deckhouse/ee
registryDockerCfg: eyJhdXRocyI6IHsgIm5leHVzLmNvbXBhbnkubXkiOiB7InVzZXJuYW1lIjoibmV4dXMtdXNlciIsInBhc3N3b3JkIjoibmV4dXMtcEBzc3cwcmQiLCJhdXRoIjoiYm1WNGRYTXRkWE5sY2pwdVpYaDFjeTF3UUhOemR6QnlaQW89In19fQo=
registryScheme: HTTPS
registryCA: |
-----BEGIN CERTIFICATE-----
...
-----END CERTIFICATE-----
- apiVersion
Обязательный параметр
Используемая версия API Deckhouse.
Допустимые значения:
deckhouse.io/v1
,deckhouse.io/v1alpha1
- deckhouse
Обязательный параметр
Параметры, необходимые для установки Deckhouse.
- deckhouse.devBranchПараметр устарел
Параметр используется для нужд разработки. Будет заменен на аргумент CLI-команды.
- deckhouse.imagesRepo
Адрес container registry с образами Deckhouse.
Укажите, если используется редакция Enterprise Edition Deckhouse или сторонний container registry (например, прокси-сервер в закрытом окружении).
Адрес учитывает используемую редакцию Deckhouse. Публичный адрес container registry для Deckhouse Enterprise Edition —
registry.deckhouse.io/deckhouse/ee
.По умолчанию:
registry.deckhouse.io/deckhouse/ce
Шаблон:
^[0-9a-zA-Z\.\-]+(\:[0-9]{1,5})?(\/[0-9a-zA-Z\.\-\_\/]+)?$
- deckhouse.registryCA
Корневой сертификат, которым можно проверить сертификат container registry при работе по HTTPS (если registry использует самоподписанные SSL-сертификаты).
- deckhouse.registryDockerCfg
Строка авторизации из файла конфигурации Docker-клиента (в Linux обычно это
$HOME/.docker/config.json
) для доступа к стороннему container registry, закодированная в Base64.Например, для доступа к container registry
registry.company.my
под пользователемuser
с паролемP@ssw0rd
это будетeyJhdXRocyI6eyJyZWdpc3RyeS5jb21wYW55Lm15Ijp7ImF1dGgiOiJkWE5sY2pwUVFITnpkekJ5WkFvPSJ9fX0K
(строка{"auths":{"registry.company.my":{"auth":"dXNlcjpQQHNzdzByZAo="}}}
в Base64).По умолчанию:
eyJhdXRocyI6IHsgInJlZ2lzdHJ5LmRlY2tob3VzZS5pbyI6IHt9fX0=
- deckhouse.registryScheme
Протокол доступа к container registry (HTTP или HTTPS).
По умолчанию:
HTTPS
Допустимые значения:
HTTP
,HTTPS
- kind
Обязательный параметр
Допустимые значения:
InitConfiguration
Module
Scope: Cluster
Version: v1alpha1
Описывает состояние модуля в кластере. Объект Module
будет создан автоматически после настройки источника модулей (ModuleSource) и успешной синхронизации.
- properties
- properties.accessibility
Module accessibility settings.
- properties.accessibility.editions
Module operation settings in Deckhouse editions.
- properties.availableSources
Доступные источники для скачивания модуля.
- properties.critical
Является ли модуль критичным.
- properties.disableOptions
Параметры защиты от отключения модуля.
- properties.disableOptions.confirmation
- properties.disableOptions.message
- properties.exclusiveGroup
Принадлежность модуля к группе, где может быть активен только один модуль.
- properties.namespace
Пространство имен в котором работает модуль.
- properties.releaseChannel
Релизный канал модуля.
- properties.requirements
Зависимости модуля — набор условий, которые должны выполняться чтобы Deckhouse Kubernetes Platform (DKP) мог запустить модуль.
- properties.requirements.bootstrapped
Требование к статусу установки кластера (только для встроенных модулей DKP).
- properties.requirements.deckhouse
Требование к версии Deckhouse.
- properties.requirements.kubernetes
Требование к версии Kubernetes.
- properties.requirements.modules
Список других включенных модулей, которые необходимы для работы модуля.
- properties.source
Источник, из которого скачан модуль (иначе пусто).
- properties.stage
Текущая стадия жизненного цикла модуля.
- properties.subsystems
Подсистемы в которые входит модуль.
- properties.updatePolicy
Имя политики обновления модуля.
- properties.version
Версия модуля.
- 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.maintenance
Задаёт режим управления работой модуля.
-
NoResourceReconciliation
— автономный режим для разработки или отладки модуля.В этом режиме:
- Изменения в конфигурации или хуках модуля не синхронизируются, в результате чего ресурсы не обновляются автоматически.
- Отключается мониторинг ресурсов модуля, в результате чего удалённые ресурсы не восстанавливаются.
- Ко всем ресурсам модуля применяется лейбл
maintenance: NoResourceReconciliation
. - Срабатывает алерт
ModuleIsInMaintenanceMode
.
При перезапуске Deckhouse модуль единовременно применяет последнее состояние, после чего продолжает работу в автономном режиме.
Допустимые значения:
NoResourceReconciliation
Пример:
maintenance: NoResourceReconciliation
-
- spec.settings
Настройки модуля.
- spec.source
Источник, из которого будет скачан модуль.
- spec.updatePolicy
Политика обновления модуля.
Пример:
updatePolicy: test-alpha
- spec.version
Версия схемы настроек модуля.
Пример:
version: '1'
ModuleDocumentation
Scope: Cluster
Version: v1alpha1
Определяет конфигурацию рендеринга документации модуля Deckhouse.
Ресурсы ModuleDocumentation создает Deckhouse.
- spec
Обязательный параметр
- spec.checksum
Контрольная сумма версии модуля.
- spec.path
Путь к версии модуля.
- spec.version
Обязательный параметр
Версия модуля.
Пример:
version: v1.0.0
ModulePullOverride
Scope: Cluster
Определяет конфигурацию ресурса для скачивания конкретных версий модулей Deckhouse.
Важно. Ресурс предназначен только для использования в средах разработки и отладки. Его применение в production-кластерах не рекомендуется. Поддержка ресурса может быть исключена в следующих версиях Deckhouse Kubernetes Platform.
- spec
Обязательный параметр
- spec.imageTag
Обязательный параметр
Тег образа контейнера модуля, который будет скачан и установлен.
- spec.rollback
Определение необходимости восстановления модуля из релиза, если объект ModulePullOverride удалён.
По умолчанию:
false
- spec.scanInterval
Интервал сканирования для проверки изменения образа контейнера. Если образ изменился, модуль будет обновлен.
По умолчанию:
15s
Устаревший ресурс. Поддержка ресурса может быть исключена в следующих версиях.
Определяет конфигурацию ресурса для скачивания конкретных версий модулей Deckhouse.
- spec
Обязательный параметр
- spec.imageTag
Обязательный параметр
Тег образа контейнера модуля, который будет скачан и установлен.
- spec.rollback
Indicates whether the module release should be rollback after deleting ModulePullOverride.
По умолчанию:
false
- spec.scanInterval
Интервал сканирования для проверки изменения образа контейнера. Если образ изменился, модуль будет обновлен.
По умолчанию:
15s
- spec.source
Обязательный параметр
Ссылка на объект ModuleSource модуля.
ModuleRelease
Scope: Cluster
Version: v1alpha1
Определяет конфигурацию релизов модулей Deckhouse.
Ресурсы ModuleRelease создаёт Deckhouse.
- spec
Обязательный параметр
- spec.applyAfter
Время, до которого отложено обновление.
- spec.changelog
Список изменений модуля в данном релизе.
- spec.moduleName
Обязательный параметр
Название модуля.
- spec.requirements
Зависимости релиза — набор условий, которые должны выполняться чтобы Deckhouse Kubernetes Platform мог запустить эту версию модуля.
- spec.requirements.deckhouse
Требование к версии Deckhouse.
- spec.requirements.kubernetes
Требование к версии Kubernetes.
- spec.requirements.modules
Список других модулей, которые необходимы для этой версии модуля (должны быть включены).
- spec.update
Необязательные параметры обновления.
- spec.update.versions
Список правил перехода
from
→to
, позволяющих пропускать пошаговые обновления. Если текущая установленная версия модуля (статусDeployed
) не нижеfrom
, и в кластере есть релиз, версия которого соответствуетto
, контроллер пропустит промежуточные релизы и обновит модуль до версии изto
. Значениеto
может задавать минорную ветку (X.Y
— будет выбрана последняя доступнаяX.Y.Z
). Правило указывается в самом релизе назначения (constrained release) — в том, версия которого соответствуетto
.- spec.update.versions.from
Обязательный параметр
Минимальная версия, с которой допускается переход (формат
X.Y
). - spec.update.versions.to
Обязательный параметр
Конечная версия диапазона — минорная ветка (
X.Y
).
- spec.version
Обязательный параметр
Версия модуля в данном релизе.
Пример:
version: v1.0.0
- spec.weight
Вес (приоритет) модуля.
ModuleSettingsDefinition
Scope: Cluster
Version: v1alpha1
Отображает настройки модулей Deckhouse. Определяет список версий настроек модуля.
- spec
Обязательный параметр
Спецификация настроек модуля.
- spec.versions
Список версий настроек модуля. Каждая версия включает имя и схему.
- spec.versions.conversions
Список правил конверсий для данной версии.
Одно правило конверсии с выражениями и описаниями.
- spec.versions.conversions.descriptions
Локализованные описания конверсии.
- spec.versions.conversions.descriptions.en
Английское описание конверсии.
- spec.versions.conversions.descriptions.ru
Русское описание конверсии.
- spec.versions.conversions.expr
Массив jq выражений для преобразования настроек.
- spec.versions.name
Обязательный параметр
Версия настроек модуля.
- spec.versions.schema
Схема настроек для данной версии модуля.
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. В случае использования анонимного доступа к container registry не заполняйте это поле.
- spec.registry.repo
Обязательный параметр
Адрес репозитория образов контейнеров.
Пример:
repo: registry.example.io/deckhouse/modules
- spec.registry.scheme
Протокол для доступа к репозиторию контейнеров.
По умолчанию:
HTTPS
Допустимые значения:
HTTP
,HTTPS
- spec.releaseChannelПараметр устарел
Желаемый канал обновлений по умолчанию для модулей данного container registry.
ModuleUpdatePolicy
Scope: Cluster
Определяет режим и настройки обновления модуля.
Пример:
apiVersion: deckhouse.io/v1alpha2
kind: ModuleUpdatePolicy
metadata:
name: example-update-policy
spec:
releaseChannel: Alpha
update:
mode: Auto
windows:
- days:
- Mon
- Wed
from: '13:30'
to: '14:00'
- spec
Обязательный параметр
- spec.releaseChannel
Желаемый канал обновления модуля.
Порядок возрастания стабильности канала обновлений (от наименее стабильного к наиболее стабильному):
Alpha
,Beta
,EarlyAccess
,Stable
,RockSolid
.По умолчанию:
Stable
Допустимые значения:
Alpha
,Beta
,EarlyAccess
,Stable
,RockSolid
- spec.update
Обязательный параметр
Режим и настройки обновления модуля.
- spec.update.mode
Режим обновления версий модуля.
-
AutoPatch
— автоматический режим обновления для патч-версий.Для обновления минорной версии (например, с
v1.15.*
наv1.16.*
) необходимо подтверждение.Обновление патч-версии (например, с
v1.16.1
наv1.16.2
) применяется с учетом окон обновлений, если они заданы. -
Auto
(автоматический) — все обновления применяются автоматически.Обновления минорной версии (например, с
v1.15.*
наv1.16.*
) и патч-версии (например, сv1.16.1
наv1.16.2
) применяются с учетом заданных окон обновлений, либо, если окна обновлений не заданы, по мере появления обновлений на соответствующем канале обновлений. -
Manual
(ручной) — для обновления и минорной, и патч-версии необходимо подтверждение.
Для подтверждения обновления установите аннотацию
modules.deckhouse.io/approved="true"
в соответствующем ресурсе ModuleRelease.По умолчанию:
Auto
Допустимые значения:
Auto
,Manual
,AutoPatch
-
- 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'
Устаревший ресурс. Поддержка ресурса может быть исключена в следующих версиях.
Определяет режим и настройки обновления модуля.
Пример:
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
Режим обновления версий модуля.
-
AutoPatch
— автоматический режим обновления для патч-версий.Для обновления минорной версии (например, с
v1.15.*
наv1.16.*
) необходимо подтверждение.Обновление патч-версии (например, с
v1.16.1
наv1.16.2
) применяется с учетом окон обновлений, если они заданы. -
Auto
(автоматический) — все обновления применяются автоматически.Обновления минорной версии (например, с
v1.15.*
наv1.16.*
) и патч-версии (например, сv1.16.1
наv1.16.2
) применяются с учетом заданных окон обновлений, либо, если окна обновлений не заданы, по мере появления обновлений на соответствующем канале обновлений. -
Manual
(ручной) — для обновления и минорной, и патч-версии необходимо подтверждение.
Для подтверждения обновления установите аннотацию
modules.deckhouse.io/approved="true"
в соответствующем ресурсе ModuleRelease.Ignore
— обновления отключены.
По умолчанию:
AutoPatch
Допустимые значения:
Auto
,Manual
,Ignore
,AutoPatch
-
- 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'
StaticClusterConfiguration
Version: deckhouse.io/v1
Параметры статического (bare metal) кластера.
Чтобы изменить содержимое ресурса StaticClusterConfiguration
в работающем кластере, выполните следующую команду:
d8 p edit static-cluster-configuration
Пример:
apiVersion: deckhouse.io/v1
kind: StaticClusterConfiguration
internalNetworkCIDRs:
- 10.244.0.0/16
- 10.50.0.0/16
- apiVersion
Обязательный параметр
Используемая версия API Deckhouse.
Допустимые значения:
deckhouse.io/v1
,deckhouse.io/v1alpha1
- internalNetworkCIDRs
Список внутренних сетей узлов кластера.
Внутренние сети используются для связи компонентов Kubernetes (
kube-apiserver
,kubelet
и т. д.) между собой.Параметр обязателен к заполнению, если:
- Узлы кластера имеют более одного сетевого интерфейса
- Развертывание кластера происходит внутри Deckhouse Virtualization Platform
При смене значения, в список подсетей должны подпадать существующие адреса узлов кластера.
Пример:
internalNetworkCIDRs: - 192.168.42.0/24 - 172.16.16.0/24
- Элемент массива
Шаблон:
^(([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])\.){3}([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])(\/(3[0-2]|[1-2][0-9]|[0-9]))$
- kind
Обязательный параметр
Допустимые значения:
StaticClusterConfiguration
SSHConfig
Version: dhctl.deckhouse.io/v1
Конфигурация SSH для dhctl.
Пример:
apiVersion: dhctl.deckhouse.io/v1
kind: SSHConfig
sshUser: user
sshPort: 22
sshExtraArgs: "-vvv"
sshAgentPrivateKeys:
- key: "<ssh-private-key>"
- apiVersion
Версия Deckhouse API.
Допустимые значения:
dhctl.deckhouse.io/v1
- kind
Допустимые значения:
SSHConfig
- legacyMode
Switch to legacy SSH mode
- sshAgentPrivateKeys
- sshAgentPrivateKeys.key
Обязательный параметр
Приватный SSH-ключ.
- sshAgentPrivateKeys.passphrase
Пароль SSH-ключа.
- sshBastionHost
Хост SSH-бастиона.
- sshBastionPassword
A password for the bastion user.
- sshBastionPort
Порт SSH-бастиона.
- sshBastionUser
Имя пользователя бастиона.
- sshExtraArgs
Дополнительные параметры соединения SSH.
- sshPort
Порт SSH.
- sshUser
Имя пользователя SSH.
- sudoPassword
Пароль sudo пользователя.
SSHHost
Version: dhctl.deckhouse.io/v1
Конфигурация SSH-хоста.
Пример:
apiVersion: dhctl.deckhouse.io/v1
kind: SSHHost
host: 172.16.0.0
- apiVersion
Обязательный параметр
Версия Deckhouse API.
Допустимые значения:
dhctl.deckhouse.io/v1
- host
Обязательный параметр
SSH-хост.
- kind
Обязательный параметр
Допустимые значения:
SSHHost