Перейти к содержимому

Установка подчиненного кластера ​

Требования к запуску нового подчинённого кластера ​

Заметка

Для работы кластера Bootsman c внешним ETCD потребуется дополнительная подготовка. Подробнее

Перед началом установки подчинённого кластера следует удовлетворить следующие требования:

  • Успешная установка управляющего кластера Bootsman
  • DNS-имя управляющего кластера должно быть в DNS-сервере и разрешается для будущего подчинённого кластера
  • Доступ подчинённого кластера к управляющему
  • Сумма символов будущего имени кластера и имени Namespace не должно превышать 30 символов

Наименования кластеров

Установка ​

Установку можно провести двумя способами:

  • Использовать установщик Bootsman
  • Применить yaml-манифесты

Разворачивание с помощью установщика ​

Заметка

Во время заполнения формы вы можете в любой момент переключится в режим yaml

Для создания подчинённого кластера авторизуйтесь в управляющий кластер и нажмите кнопку Кнопка Создания Подчинённого Кластера

Main Page Create ButtonMain Page Create Button

Вас перенаправит на страничку установщика для заполнения данных о будущем кластере.

Сначала укажите имя нового подчинённого кластера (1)

  1. SUBCLUSTER_NAME

Cluster NameCluster Name

Kubernetes Options ​

Kubernetes OptionsKubernetes Options

Имя параметраОписание
SUBCLUSTER_KUBERNETES_VERSIONВерсия Kubernetes. Поддерживаемые версии
SUBCLUSTER_NAMESPACENamespace управляющего кластера, который будет содержать объекты подчинённого кластера
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 ​

Provider ConfigurationProvider Configuration

Имя параметраОписание
BREST_AUTH_URLIP-адрес или DNS-имя Brest.
Пример: http://10.0.0.10:2633/RPC2

Заметка

В случае использования уже существующего секрета на управляющем кластере, следует использовать настройку "Credential settings" "Use existing" Формы помогут найти секрет и указать имена полей, которые соответствуют пользователю и паролю

Имя параметраОписание
BREST_AUTH_SECRET_NAMESPACEИмя namespace, в котором размещен secret для авторизации
BREST_AUTH_SECRET_NAMEИмя secret с авторизацией в Brest
BREST_AUTH_USERNAMEПользователь Brest
BREST_AUTH_PASSWORDПароль пользователя Brest
BREST_AUTH_SECRET_USERNAME_KEYКлюч в secret для хранения имени пользователя Brest
BREST_AUTH_SECRET_PASSWORD_KEYКлюч в secret для хранения пароля пользователя Brest

Provider ConfigurationProvider Configuration

Имя параметраОписание
$Список ssh-ключей, которые будут добавлены на узлы

Private Registry ​

В случае, если вы хотите использовать наш репозиторий образов, то переключите параметр "Use private registry" в выключенное состояние и продолжайте заполнять в соотвествии с следующим разделом.

Private Registry OffPrivate Registry Off

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

Private RegistryPrivate Registry

Заметка

В случае использования уже существующего секрета на управляющем кластере, следует использовать настройку "Credential settings" "Use existing" Формы помогут найти секрет и указать имена полей, которые соответствуют пользователю и паролю

Заметка

Advanced mode поможет вам задать специфические имена ключей в секрете. По умолчанию, username - пользователь, password - пароль

Имя параметраОписание
PRIVATE_REGISTRY_URLURL вашего репозитория образов.
Если установка будет производится online блок registry можно удалить
PRIVATE_REGISTRY_SECRET_NAMESPACENamespace, в котором размещен 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 ​

Control PlaneControl Plane

Заметка

Для работы кластера Bootsman c внешним ETCD потребуется дополнительная подготовка. Подробнее

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

KCP TemplateKCP Template

Имя параметраОписание
BREST_CONTROLPLANE_IMAGE_NAMEИмя шаблона виртуальной машины, из которого будут созданы новые узлы с ролью master
BREST_CONTROLPLANE_CPUЧисло CPU.
Требования к инфраструктуре
BREST_CONTROLPLANE_MEMORY_GBОбъём оперативной памяти. Измеряется в GB.
Требования к инфраструктуре
BREST_CONTROLPLANE_DISK_GBОбъём дискового пространства. Измеряется в GB.
Требования к инфраструктуре
Имя параметраОписаниеКомментарий
BREST_NETWORK_NAMEИмя сети, в которую будут подключены новые виртуальные машины
BREST_NETWORK_IDID существующей сети. Аналог BREST_NETWORK_NAME
BREST_NETWORK_ADDRESSНачало DHCP-пула Бреста
BREST_NETWORK_SIZEЧисло IP-адресов в DHCP-пуле
BREST_NETWORK_PHYDEVФизическое устройство на узле Брест
BREST_NETWORK_VLAN_IDvlan ID внутри гипервизора Брест
BREST_NETWORK_GATEWAYАдрес шлюза
BREST_NETWORK_DNSОпционально. Адрес dns-сервера

WorkerPool ​

Шаблон виртуальных машин ​

Заметка

Вы не ограничены в одном типе ВМ, предназначенных для нагрузки. Для создания дополнительного пула виртуальных машин используйте кнопку

Add Worker PoolAdd Worker Pool

Workerpool TemplateWorkerpool Template

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

Установка с помощью yaml-манифестов ​

Если вам удобнее способ применения yaml-манифестов, то ниже есть примеры. Заполните их в соответствии с описанием из главы, представленной ранее.

Заметка

Манифест secret_private_registry.yaml требуется только для установки из вашего приватного репозитория, в случае установки из репозитория Bootsman - пропустите.

bash
kubectl apply -f secret_private_registry.yaml
kubectl apply -f secret_brest_auth.yaml
kubectl apply -f Cluster.yaml
kubectl apply -f Workerpool.yaml

Следующий шаг ​

Команда Боцман