Если control plane кластера размещен на виртуальных машинах или bare-metal-серверах, cloud-провайдер использует настройки модуля cloud-provider-dynamix
в конфигурации Deckhouse. Если control plane кластера размещен в облаке, cloud-провайдер использует структуру DynamixClusterConfiguration для настройки.
DynamixClusterConfiguration
Version: deckhouse.io/v1
Описывает конфигурацию облачного кластера в Базис.DynamiX.
Используется облачным провайдером, если управляющий слой (control plane) кластера размещен в облаке.
Выполните следующую команду, чтобы изменить конфигурацию в работающем кластере:
1kubectl -n d8-system exec -ti svc/deckhouse-leader -c deckhouse -- deckhouse-controller edit provider-cluster-configuration
После изменения параметров узлов необходимо выполнить команду dhctl converge, чтобы изменения вступили в силу.
Пример:
1apiVersion: deckhouse.io/v1
2kind: DynamixClusterConfiguration
3layout: StandardWithInternalNetwork
4sshPublicKey: ssh-rsa AAAA
5location: dynamix
6account: acc_user
7nodeNetworkCIDR: 10.241.32.0/24
8nameservers:
9- 10.0.0.10
10provider:
11 controllerUrl: "<controller url>"
12 oAuth2Url: "<oAuth2 url>"
13 appId: "<app id>"
14 appSecret: "<app secret>"
15 insecure: true
16masterNodeGroup:
17 replicas: 1
18 instanceClass:
19 numCPUs: 6
20 memory: 16384
21 rootDiskSizeGb: 50
22 imageName: "<image name>"
23 storageEndpoint: "<storage endpoint>"
24 pool: "<pool>"
25 externalNetwork: "<external network>"
26nodeGroups:
27- name: worker
28 replicas: 1
29 instanceClass:
30 numCPUs: 6
31 memory: 16384
32 rootDiskSizeGb: 50
33 imageName: "<image name>"
34 externalNetwork: "<external network>"
- строка
Обязательный параметр
Название схемы размещения. Подробнее о возможных схемах размещения провайдера.
- объект
Обязательный параметр
Спецификация для описания NodeGroup master-узлов.
Внимание! После изменения параметров секции
masterNodeGroup
необходимо выполнить командуdhctl converge
, чтобы изменения вступили в силу. - массив объектов
Массив дополнительных NodeGroup для создания статических узлов (например, для выделенных frontend-узлов или шлюзов).
Настройки Node-объектов в Kubernetes, которые будут добавлены после регистрации узлов.
- объект
Аналогично стандартному полю
metadata.annotations
.Пример:
1annotations: 2 ai.fleet.com/discombobulate: 'true'
- объект
Список лейблов, которые будут прикреплены ко всем ресурсам кластера (если они это поддерживают).
Аналогично стандартному полю
metadata.labels
. Если поменять лейблы в рабочем кластере, после применения изменений необходимо пересоздать все машины.Пример:
1labels: 2 environment: production 3 app: warp-drive-ai
- массив объектов
Аналогично полю
.spec.taints
из объекта Node.Внимание! Доступны только поля
effect
,key
,values
.Пример:
1taints: 2- effect: NoExecute 3 key: ship-class 4 value: frigate