Описание ресурсов, используемых при установке Deckhouse.
Не изменяйте параметры serviceSubnetCIDR
, podSubnetNodeCIDRPrefix
, podSubnetCIDR
в работающем кластере. Если изменение параметров необходимо — разверните новый кластер.
ClusterConfiguration
Version: deckhouse.io/v1
Общие параметры кластера.
Определяют, например, сетевые параметры, параметры CRI, версию control plane и т. д. Некоторые параметры можно изменять после развертывания кластера, во время его работы.
Чтобы изменить содержимое ресурса ClusterConfiguration
в работающем кластере, выполните следующую команду:
1kubectl -n d8-system exec -ti svc/deckhouse-leader -c deckhouse -- deckhouse-controller edit cluster-configuration
Пример:
1apiVersion: deckhouse.io/v1
2kind: ClusterConfiguration
3podSubnetNodeCIDRPrefix: '24'
4podSubnetCIDR: 10.244.0.0/16
5serviceSubnetCIDR: 192.168.0.0/16
6kubernetesVersion: '1.28'
7clusterDomain: k8s.internal
8clusterType: Cloud
9cloud:
10 prefix: k8s-dev
11 provider: Yandex
12proxy:
13 httpProxy: https://user:password@proxy.company.my:8443
14 httpsProxy: https://user:password@proxy.company.my:8443
15 noProxy:
16 - company.my
- строка
Обязательный параметр
Домен кластера (используется для маршрутизации внутри кластера).
Обратите внимание: домен не должен совпадать с доменом, используемым в шаблоне DNS-имен в параметре publicDomainTemplate. Например, нельзя одновременно устанавливать
clusterDomain: cluster.local
иpublicDomainTemplate: %s.cluster.local
.При необходимости смены параметра в уже развернутом кластере рекомендуется воспользоваться инструкцией
По умолчанию:
"cluster.local"
- строка
Обязательный параметр
Тип инфраструктуры кластера:
Static
— кластер на bare metal (физические серверы) или виртуальных машинах. В случае виртуальных машин подразумевается, что у Deckhouse нет доступа к API для управления виртуальными машинами (они управляются администратором с помощью обычных средств облачной инфраструктуры);Cloud
— кластер, развернутый в облачной инфраструктуре. Этот тип подразумевает, что у Deckhouse есть доступ к API облачной инфраструктуры для управления виртуальными машинами.
Допустимые значения:
Cloud
,Static
- строка
Тип container runtime, используемый на узлах кластера (в NodeGroup’ах) по умолчанию.
Если используется значение
NotManaged
, то Deckhouse не будет управлять (устанавливать и настраивать) container runtime. В этом случае образы, используемые в NodeGroup’ах, должны содержать уже установленный container runtime.По умолчанию:
"Containerd"
Допустимые значения:
Containerd
,NotManaged
- строка
Обязательный параметр
Версия control plane кластера Kubernetes.
Изменение параметра в работающем кластере приведет к автоматическому обновлению версии control plane кластера.
Если указано
Automatic
, то используется версия control plane, которая считается стабильной на данный момент. Если стабильная версия control plane меньше максимальной, которая когда либо была установлена в кластере, больше чем на 1 минорную версию - тогда версия кластера не изменится. Изменение этой версии может произойти при смене минорной версии релиза Deckhouse (см. список изменений к релизу).Допустимые значения:
1.28
,1.29
,1.30
,1.31
,1.32
,Automatic
- объект
Доступно в редакциях: 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
списком подсетей, которые используются на узлах.- строка
Доступно в редакциях: 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})?$
Примеры:
1httpProxy: http://proxy.company.my
1httpProxy: https://user:password@proxy.company.my:8443
1httpProxy: https://DOMAIN%5Cuser:password@proxy.company.my:8443
1httpProxy: https://user%40domain.local:password@proxy.company.my:8443
- строка
Доступно в редакциях: 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})?$
Примеры:
1httpsProxy: http://proxy.company.my
1httpsProxy: https://user:password@proxy.company.my:8443
1httpsProxy: https://DOMAIN%5Cuser:password@proxy.company.my:8443
1httpsProxy: https://user%40domain.local:password@proxy.company.my:8443
- массив строк
Доступно в редакциях: BE, SE, SE+, EE, CSE Lite (1.67), CSE Pro (1.67)
Список IP и доменных имен, для которых проксирование не применяется.
Для настройки wildcard-доменов используйте написание вида “.example.com”.
InitConfiguration
Version: deckhouse.io/v1
Конфигурация Deckhouse, с которой он запустится после установки.
Пример:
1apiVersion: deckhouse.io/v1
2kind: InitConfiguration
3deckhouse:
4 imagesRepo: nexus.company.my/deckhouse/ee
5 registryDockerCfg: eyJhdXRocyI6IHsgIm5leHVzLmNvbXBhbnkubXkiOiB7InVzZXJuYW1lIjoibmV4dXMtdXNlciIsInBhc3N3b3JkIjoibmV4dXMtcEBzc3cwcmQiLCJhdXRoIjoiYm1WNGRYTXRkWE5sY2pwdVpYaDFjeTF3UUhOemR6QnlaQW89In19fQo=
6 registryScheme: HTTPS
7 registryCA: |
8 -----BEGIN CERTIFICATE-----
9 ...
10 -----END CERTIFICATE-----
- строка
Адрес 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\.\-\_\/]+)?$
- строка
Строка авторизации из файла конфигурации 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="
StaticClusterConfiguration
Version: deckhouse.io/v1
Параметры статического (bare metal) кластера.
Чтобы изменить содержимое ресурса StaticClusterConfiguration
в работающем кластере, выполните следующую команду:
1kubectl -n d8-system exec -ti svc/deckhouse-leader -c deckhouse -- deckhouse-controller edit static-cluster-configuration
Пример:
1apiVersion: deckhouse.io/v1
2kind: StaticClusterConfiguration
3internalNetworkCIDRs:
4- 10.244.0.0/16
5- 10.50.0.0/16
- массив строк
Список внутренних сетей узлов кластера.
Внутренние сети используются для связи компонентов Kubernetes (
kube-apiserver
,kubelet
и т. д.) между собой.Параметр обязателен к заполнению, если:
- Узлы кластера имеют более одного сетевого интерфейса
- Развертывание кластера происходит внутри Deckhouse Virtualization Platform
При смене значения, в список подсетей должны подпадать существующие адреса узлов кластера.
Пример:
1internalNetworkCIDRs: 2- 192.168.42.0/24 3- 172.16.16.0/24
SSHConfig
Version: dhctl.deckhouse.io/v1
Конфигурация SSH для dhctl.
Пример:
1apiVersion: dhctl.deckhouse.io/v1
2kind: SSHConfig
3sshUser: user
4sshPort: 22
5sshExtraArgs: "-vvv"
6sshAgentPrivateKeys:
7- key: "<ssh-private-key>"