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

Проверка требований

Требуется vSphere версии 6.7 u3 или выше

Шаг 0. Подготовка к инсталляции платформы Боцман ​

Перед началом инсталляции платформы "Боцман" убедитесь, что выполнены все шаги по подготовке АРМ

Шаг 1. Подготовка конфигурационного файла (config) ​

На АРМ создайте конфиг файл bootsman.config.yaml в той же директории, где расположен инсталлятор-bootsmanctl

yaml
kubernetesVersion: {++${ K8S_VERSION }++}
registry:
    username: {++${ HARBOR_CREDS_USER }++}
    password: {++${ HARBOR_CREDS_PASSWD }++}
    path: {++${ HARBOR_CREDS_URL }++}
    insecure: {++${ HARBOR_CREDS_INSECURE }++}
sshAuthorizedKeys:
    - ssh-ed25519 AAAAC3NzaC1lZKKtLOCNv2g bootsman@stsoft.ru
wait:
    clusterCtlTimeout: 30m0s
    operationTimeout: 40m0s
    operationRetryInterval: 15s
    objCreateTimeout: 4m0s
    objCreateInterval: 5s
    addonHelmTimeout: 5m
infrastructure:
    clusterNetwork:
        podCidrBlocks: ["172.24.0.0/13"]
        servicesCidrBlocks: ["172.16.0.0/16"]
    vsphere:
        auth:
            address: {++${ VSPHERE_SERV_ADDRESS }++}
            user: {++${ VSPHERE_SERV_USER }++}
            password: {++${ VSPHERE_SERV_PASSWORD }++}
            insecure: {++${ VSPHERE_SERV_INSECURE }++}
        datacenter: {++${ VSPHERE_CONFIG_DATACENTER }++}
        datastore: {++${ VSPHERE_CONFIG_DATASTORE }++}
        cluster: {++${ VSPHERE_CONFIG_CLUSTER }++}
        folder: {++${ VSPHERE_CONFIG_FOLDER }++}
        networkName: {++${ VSPHERE_CONFIG_NETWORKNAME }++}
controlPlane:
    endpoint:
        host: {++${ K8SCPIP }++}
        port: 6443
    replicas: {++${ CONTROLPLANE_COUNT }++}
    label: master
    kubeletExtraArgs:
        kubeReserved: ""
        systemReserved: ""
        evictionHard: ""
        evictionMinimumReclaim: ""
        evictionMaxPodGracePeriod: ""
        maxPods: ""
        seccompDefault: ""
    vsphereMachine:
        cpu: {++${ VSPHERE_CONFIG_VM_CONTROLPLANE_CPU }++}
        memoryMB: {++${ VSPHERE_CONFIG_VM_CONTROLPLANE_MEMORY_MB }++}
        diskGB: {++${ VSPHERE_CONFIG_VM_CONTROLPLANE_DISK_GB }++}
        vmTemplate: {++${ VSPHERE_CONFIG_VMTEMPLATE }++}
workerPool:
    replicas: {++${ WORKER_COUNT }++}
    label: worker
    kubeletExtraArgs:
        kubeReserved: ""
        systemReserved: ""
        evictionHard: ""
        evictionMinimumReclaim: ""
        evictionMaxPodGracePeriod: ""
        maxPods: ""
        seccompDefault: ""
    vsphereMachine:
        cpu: {++${ VSPHERE_CONFIG_VM_WORKER_CPU }++}
        memoryMB: {++${ VSPHERE_CONFIG_VM_WORKER_MEMORY_MB }++}
        diskGB: {++${ VSPHERE_CONFIG_VM_WORKER_DISK_GB }++}
        vmTemplate: {++${ VSPHERE_CONFIG_VMTEMPLATE }++}
web:
    bootstrapPassword: {++${ ADDONS_RANCHER_WEBHOSTNAME }++}
    hostname: {++${ ADDONS_RANCHER_WEBHOSTNAME }++}
currentMachineIp: {++${ CURRENT_MACHINE_IP_2 }++}

Заметка

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

Описание параметров

Имя параметраОписаниеКомментарий
K8S_VERSIONВерсия Kubernetes для управляющего кластераПоддерживаемые версии v1.27.6, v1.28.4, v1.29.3
HARBOR_CREDS_URLURL вашего репозитория образов
HARBOR_CREDS_INSECUREЭто служебный параметр, всегда будет false
HARBOR_CREDS_USERИмя пользователя в репозитории образов
HARBOR_CREDS_PASSWDПароль для пользователя в репозитории образов
ADDONS_RANCHER_WEBHOSTNAMEURL, по которому будет доступен web портал платформы
CURRENT_MACHINE_IPIP адрес АРМ администратора
ADDONS_RANCHER_BOOTSTRAPPASSWORDПервоначальный пароль от web портала
CONTROLPLANE_COUNTКоличество мастеровМожет принимать значения 3 или 5
WORKER_COUNTКоличество воркеровДолжно быть >=3
K8SCPIPIP ControlPlane
VSPHERE_SERV_ADDRESSIP адрес или доменное имя вашего vCenter
VSPHERE_SERV_INSECUREРазрешить доступ при отсутствии валидного сертификата на vSphere
VSPHERE_SERV_USERПользователь для подключения к vCenter
VSPHERE_SERV_PASSWORDПароль для подключения к vCenter
VSPHERE_CONFIG_DATACENTERИмя датацентра
VSPHERE_CONFIG_CLUSTERИмя кластера
VSPHERE_CONFIG_FOLDERИмя директории, в которых будут размещены новые виртуальные машины
VSPHERE_CONFIG_VMTEMPLATEИмя шаблона виртуальной машины, из которого будут созданы новые виртуальные машины
VSPHERE_CONFIG_DATASTOREИмя хранилища, в котором будут размещены новые виртуальные машины
VSPHERE_CONFIG_NETWORKNAMEИмя сети, в которую будут подключены новые виртуальные машины
VSPHERE_CONFIG_VM_CONTROLPLANE_CPUЧисло vCPU для мастер-нод (минимум 4)
VSPHERE_CONFIG_VM_CONTROLPLANE_MEMORY_MBОбъём оперативной памяти мастер-нод, MB (минимум 8192)
VSPHERE_CONFIG_VM_CONTROLPLANE_DISK_GBОбъём дискового хранилища мастер-нод, GB (минимум 45)
VSPHERE_CONFIG_VM_WORKER_CPUЧисло vCPU для воркер-нод (минимум 4)
VSPHERE_CONFIG_VM_WORKER_MEMORY_MBОбъём оперативной памяти воркер-нод, MB (минимум 12288)
VSPHERE_CONFIG_VM_WORKER_DISK_GBОбъём дискового хранилища воркер-нод, GB (минимум 60)
CURRENT_MACHINE_IP_2Дополнительный адрес АРМ администратора. ОпциональноДля доступа в Kind кластеру с сторонней машины

Пример заполненного файла конфигурации:

Шаг 2. Добавление лицензии ​

Лицензию можно добавить в окружение

bash
export LICENSE=ZzSGquD8GWb2zthw7XJR

Или добавить в файл

bash
mkdir -p .bootsmanctl
cat << EOF >> .bootsmanctl/license.lic
ZzSGquD8GWb2zthw7XJR
EOF

Шаг 3. Запуск установки ​

Заметка

Установка платформы "Боцман" запускается с заранее подготовленным АРМ. Все последующие команды выполняются на АРМ.

Выполните команду запуска процесса установки:

bash
./bootsmanctl management create {++${cluster-name}++} -i vsphere -c bootsman.config.yaml

Где:

 - ${cluster-name} - имя кластера;

Вывод инсталляции должен окончиться так:

bash
2023-09-10T17:49:46Z | INFO  | finished

Доступ в интерфейс ​

После окончания установки определите IP адрес любого воркера и внесите его в конфиг DNS-сервера. Перейдите в web-панель платформы по адресу, который указывали в конфигурационном файле. (1) Хотя бы один вход в web-панель управления платформой обязателен для корректной работы управляющего кластера. После входа в панель управления происходит донастройка необходимых компонентов для работы платформы. Откроется визард настройки с запросом пароля, который указывали в конфиге. (2)

Вы авторизовались под пользователем admin. Рекомендуем сменить пароль с помощью стандартного меню управления пользователями.

  1. ADDONS_RANCHER_WEBHOSTNAME
  2. ADDONS_RANCHER_BOOTSTRAPPASSWORD

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

В случае если возникли ошибки при установке кластера, перейдите на страницу vSphere и остановите ваши ВМ, а так же в случае необходимости удалите их.

Внимание!

При удалении ВМ, нужные вам данные будут потеряны.

Выполните подключение к АРМ, например:

bash
ssh {++${user}@${address_arm}++}

Где:

  • ${user} - ваш пользователь;

  • ${address_arm} - адрес вашего АРМ.

Выполните команду удаления кластера:

bash
./bootsmanctl management delete {++${cluster_name}++}

Где ${cluster_name} - имя кластера.

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