Тема
Установка подчиненного кластера
Внимание
Требуется vSphere версии 6.7 u3 или выше
Требования к запуску нового подчинённого кластера
Заметка
Для работы кластера Bootsman c внешним ETCD потребуется дополнительная подготовка. Подробнее
Перед началом установки подчинённого кластера следует удовлетворить следующие требования:
- Успешная установка управляющего кластера Bootsman
- DNS-имя управляющего кластера должно быть в DNS-сервере и разрешается для будущего подчинённого кластера
- Доступ подчинённого кластера к управляющему
- Сумма символов будущего имени кластера и имени Namespace не должно превышать 30 символов
- Оганизован доступ до API гипервизора с control plane машин кластера
- В случае наличия в вашем гипервизоре более одного Cluster в целевом Datacenter, требуется создать отдельного пользователя по инструкции
Наименования кластеров
Установка
Установку можно провести двумя способами:
- Использовать установщик Bootsman
- Применить yaml-манифесты
Разворачивание с помощью установщика
Заметка
Во время заполнения формы вы можете в любой момент переключится в режим yaml
Для создания подчинённого кластера авторизуйтесь в управляющий кластер и нажмите кнопку 


Вас перенаправит на страничку установщика для заполнения данных о будущем кластере.
Сначала укажите имя нового подчинённого кластера (1)
- SUBCLUSTER_NAME


Kubernetes Options


| Имя параметра | Описание |
|---|---|
| SUBCLUSTER_KUBERNETES_VERSION | Версия Kubernetes. Поддерживаемые версии |
| SUBCLUSTER_NAMESPACE | Namespace управляющего кластера, который будет содержать объекты подчинённого кластера |
| SUBCLUSTER_POD_CIDR | Блок адресов для Pods. Должен не пересекаться с другими блоками внутри одного Kubernetes кластера и реальными сетями вашей инфраструктуры. Допустимый размер блока /[1-20] Пример: podsCidrBlocks: ["172.20.0.0/16"] |
| SUBCLUSTER_SERVICE_CIDR | Блок адресов для Service. Должен не пересекаться с другими блоками внутри одного Kubernetes кластера и реальными сетями вашей инфраструктуры. Допустимый размер блока /[1-20] Пример: servicesCidrBlocks: ["172.21.0.0/16"] |
Provider Configuration
Заметка
В случае использования уже существующего секрета на управляющем кластере, следует использовать настройку "Credential settings" "Use existing" Формы помогут найти секрет и указать имена полей, которые соответствуют пользователю и паролю
Заметка
Advanced mode поможет вам задать специфические имена ключей в секрете. По умолчанию, username - пользователь, password - пароль
| Имя параметра | Описание |
|---|---|
| VSPHERE_ADDRESS | IP адрес или доменное имя вашего vCenter |
| VSPHERE_SECRET_NAMESPACE | Namespace, в котором размещен secret авторизации vSphere |
| VSPHERE_SECRET_NAME | Имя secret авторизации vSphere |
| VSPHERE_USERNAME | Пользователь для подключения к vCenter |
| VSPHERE_PASSWORD | Пароль для подключения к vCenter |


| Имя параметра | Описание |
|---|---|
| SSH_KEY_# | Список ssh-ключей, которые будут добавлены на узлы |
Private Registry
В случае, если вы хотите использовать наш репозиторий образов, то переключите параметр "Use private registry" в выключенное состояние и продолжайте заполнять в соответствии с следующим разделом.


Если хотите произвести установку из локального репозитория, то заполните поля из формы ниже


Заметка
В случае использования уже существующего секрета на управляющем кластере, следует использовать настройку "Credential settings" "Use existing" Формы помогут найти секрет и указать имена полей, которые соответствуют пользователю и паролю
Заметка
Advanced mode поможет вам задать специфические имена ключей в секрете. По умолчанию, username - пользователь, password - пароль
| Имя параметра | Описание |
|---|---|
| PRIVATE_REGISTRY_URL | URL вашего репозитория образов. Если установка будет производится online блок registry можно удалить |
| PRIVATE_REGISTRY_SECRET_NAMESPACE | Namespace, в котором размещен secret для авторизации в приватный репозиторий образов |
| PRIVATE_REGISTRY_SECRET_NAME | Имя secret для авторизации в приватный репозиторий образов |
| PRIVATE_REGISTRY_USERNAME | Имя пользователя в репозитории образов. Если установка будет производится online блок registry можно удалить |
| PRIVATE_REGISTRY_PASSWORD | Пароль для пользователя в репозитории образов. Если установка будет производится online блок registry можно удалить |
| PRIVATE_REGISTRY_SECRET_HOST_KEY | При использовании существующего secret. Имя ключа, содержащее параметр HOST |
| PRIVATE_REGISTRY_SECRET_USERNAME_KEY | При использовании существующего secret. Имя ключа, содержащее параметр USERNAME |
| PRIVATE_REGISTRY_SECRET_PASSWORD_KEY | При использовании существующего secret. Имя ключа, содержащее параметр PASSWORD |
Control Plane


Заметка
Для работы кластера Bootsman c внешним ETCD потребуется дополнительная подготовка. Подробнее
| Имя параметра | Описание |
|---|---|
| KCP_REPLICAS | Количество узлов с ролью master. Может принимать значения 3 или 5 |
| K8SCPIP | IP-адрес балансировщика kube-apiserver для обеспечения отказоустойчивости. Адрес должен быть свободен и не состоять в dhcp-пулах Подробнее |
| KUBE_API_PORT | Порт kube-api. По-умолчанию 6443 |
| MHC_MAX_UNHEALTY | Пороговое значение для MachineHealthCheck, при превышении которого не будет выполняться исправления. Для узлов с ролью master, значение по-умолчанию 100%. Для узлов с ролью worker, значение по-умолчанию 40% Подробнее |
| MHC_TIMEOUT | Время, которое дается узлу на самостоятельное восстановление, прежде чем вмешается MachineHealthCheck. По-умолчанию 10m Подробнее |
Шаблон виртуальных машин


| Имя параметра | Описание |
|---|---|
| VSPHERE_NETWORK | Имя сети, в которую будут подключены новые виртуальные машины |
| VSPHERE_FOLDER | Имя директории, в которых будут размещены новые виртуальные машины |
| VSPHERE_DATACENTER | Имя датацентра |
| VSPHERE_DATASTORE | Имя хранилища, в котором будут размещены новые виртуальные машины |
| VSPHERE_CLUSTER | Имя кластера |
| VSPHERE_CONTROLPLANE_TEMPLATE | Имя шаблона виртуальной машины, из которого будут созданы новые узлы с ролью master |
| VSPHERE_CONTROLPLANE_CPU | Число CPU. Требования к инфраструктуре |
| VSPHERE_CONTROLPLANE_MEMORY_MB | Объём оперативной памяти. Измеряется в MB. Требования к инфраструктуре |
| VSPHERE_CONTROLPLANE_DISK_GB | Объём дискового пространства. Измеряется в GB. Требования к инфраструктуре |
WorkerPool
Шаблон виртуальных машин
Заметка
Вы не ограничены в одном типе ВМ, предназначенных для нагрузки. Для создания дополнительного пула виртуальных машин используйте кнопку




| Имя параметра | Описание |
|---|---|
| SUBCLUSTER_WORKERPOOL_NAME | Имя пула виртуальных машин |
| WORKER_REPLICAS | Число узлов в workerpool. Сумма узлов во всех workerpool должна быть >=3 |
| Roles | Для большинства инсталляций используйте роль bootsman-worker. Подробнее о ролях |
| MHC_MAX_UNHEALTY | Пороговое значение для MachineHealthCheck, при превышении которого не будет выполняться исправления. Для узлов с ролью master, значение по-умолчанию 100%. Для узлов с ролью worker, значение по-умолчанию 40% Подробнее |
| MHC_TIMEOUT | Время, которое дается узлу на самостоятельное восстановление, прежде чем вмешается MachineHealthCheck. По-умолчанию 10m Подробнее |
Заметка
Для добавления узлов с GPU добавьте роль bootsman-gpu


| Имя параметра | Описание |
|---|---|
| VSPHERE_NETWORK | Имя сети, в которую будут подключены новые виртуальные машины |
| VSPHERE_FOLDER | Имя директории, в которых будут размещены новые виртуальные машины |
| VSPHERE_DATACENTER | Имя датацентра |
| VSPHERE_DATASTORE | Имя хранилища, в котором будут размещены новые виртуальные машины |
| VSPHERE_CLUSTER | Имя кластера |
| VSPHERE_WORKER_TEMPLATE | Имя шаблона виртуальной машины, из которого будут созданы новые узлы с ролью worker |
| VSPHERE_WORKER_CPU | Число CPU. Требования к инфраструктуре |
| VSPHERE_WORKER_MEMORY_MB | Объём оперативной памяти. Измеряется в MB. Требования к инфраструктуре |
| VSPHERE_WORKER_DISK_GB | Объём дискового пространства. Измеряется в GB. Требования к инфраструктуре |
Установка с помощью yaml-манифестов
Если вам удобнее способ применения yaml-манифестов, то ниже есть примеры. Заполните их в соответствии с описанием из главы, представленной ранее.
Заметка
Манифест secret_private_registry.yaml требуется только для установки из вашего приватного репозитория, в случае установки из репозитория Bootsman - пропустите.
bash
kubectl apply -f secret_private_registry.yaml
kubectl apply -f Cluster.yaml
kubectl apply -f Workerpool.yaml


