Перейти к содержанию

vSphere

Внимание

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

Подготовка АРМ администратора

Заметка

Для работы с гипервизором подготовка АРМ администратора не является обязательной частью.

Для обеспечения работоспособности будет достаточно любого АРМ, который удовлетворяет требованиям:

  • Установлен docker
  • Произведена авторизация в вашем регистри
  • Доступ до целевого гипервизора
  • В случае наличия в вашем гипервизоре более одного Cluster в целевом Datacenter, требуется создать отдельного пользователя по инструкции

Впоследствии вы сможете управлять вашим кластером с помощью bootsmanctl с любого АРМ, сохранив файлы:

  • config
  • bootsmanctl
  • .bootsmanctl

Подготовка Образов ОС

Для работы с боцманом вам понадобятся образы ОС. Возможные варианты:

Использование готовых образов

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

Используйте наш публичный s3 для получения образов

https://storage-console.bootsman.host/browser/bootsman-public
Где

  • ${KUBE_VERSION} версия Kubernetes, например, v1.28.4
  • ${OS} имя операционной системы
  • ${OS_VERSION} версия операционной системы

Самостоятельная подготовка образов

В случае, если ваша политика ИБ не допускает применение готовых артефактов в виде предподготовленной ОС, существует вариант собрать всё необходимое самостоятельно. Об этом подробно написано в статье Создание golden image.

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

export HARBOR_CREDS_URL=
export HARBOR_CREDS_INSECURE=false
export HARBOR_CREDS_USER=
export HARBOR_CREDS_PASSWD=
export AIRGAP=true
export ADDONS_RANCHER_WEBHOSTNAME=
export CURRENT_MACHINE_IP=
export LICENSE=
export SSH_PUBLIC_KEYS_COMMA_SEPARATED=
export ADDONS_RANCHER_BOOTSTRAPPASSWORD=
export CONTROLPLANE_COUNT=
export WORKER_COUNT=
export K8SCPIP=
export VSPHERE_SERV_ADDRESS=
export VSPHERE_SERV_INSECURE=true
export VSPHERE_SERV_USER=
export VSPHERE_SERV_PASSWORD=
export VSPHERE_CONFIG_DATACENTER=
export VSPHERE_CONFIG_FOLDER=
export VSPHERE_CONFIG_VMTEMPLATE=
export VSPHERE_CONFIG_DATASTORE=
export VSPHERE_CONFIG_NETWORKNAME=
export VSPHERE_CONFIG_VM_CONTROLPLANE_CPU=4
export VSPHERE_CONFIG_VM_CONTROLPLANE_MEMORY_MB=8192
export VSPHERE_CONFIG_VM_CONTROLPLANE_DISK_GB=45
export VSPHERE_CONFIG_VM_WORKER_CPU=4
export VSPHERE_CONFIG_VM_WORKER_MEMORY_MB=12288
export VSPHERE_CONFIG_VM_WORKER_DISK_GB=60

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

Имя параметра Описание Комментарий
HARBOR_CREDS_URL URL вашего регистри
HARBOR_CREDS_INSECURE Это служебный параметр, всегда будет false
HARBOR_CREDS_USER Имя пользователя в регистри Имя пользователя не поддерживает спецсимволы, пожалуйста, используйте только латинские буквы и цифры
HARBOR_CREDS_PASSWD Пароль от регистри Пароль не поддерживает спецсимволы, пожалуйста, используйте только латинские буквы и цифры
AIRGAP Режим установки
ADDONS_RANCHER_WEBHOSTNAME URL, по которому будет доступен web портал платформы
CURRENT_MACHINE_IP IP адрес АРМ администратора
LICENSE Строка из файла license, который вы получили вместе с дистрибутивом
SSH_PUBLIC_KEYS_COMMA_SEPARATED Ключи, распространённые на узлы. Перечисляются через запятую
ADDONS_RANCHER_BOOTSTRAPPASSWORD Первоначальный пароль от web портала
CONTROLPLANE_COUNT Количество мастеров Может принимать значения 3 или 5
WORKER_COUNT Количество воркеров Должно быть >=3
K8SCPIP IP ControlPlane Для Yandex Cloud не используется, можно указать любой
VSPHERE_SERV_ADDRESS
VSPHERE_SERV_INSECURE Разрешить доступ при отсутствии валидного сертификата на vSphere
VSPHERE_SERV_USER Пользователь для подключения к vCenter
VSPHERE_SERV_PASSWORD Пароль для подключения к vCenter
VSPHERE_CONFIG_DATACENTER Имя датацентра
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)

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

export HARBOR_CREDS_URL=redos-quay.stsoft.lan/bootsman-v210
export HARBOR_CREDS_INSECURE=False
export HARBOR_CREDS_USER=demo
export HARBOR_CREDS_PASSWD=demo
export AIRGAP=true
export ADDONS_RANCHER_WEBHOSTNAME=rancher.redos-v21-ag.dev.stsoft.lan
export CURRENT_MACHINE_IP=10.0.149.111
export LICENSE=eyJhbGciOiJFZERTQSIsopkljlyuO098790uokjkLKJHKJGJHYu87hlIkpXVCIsInZlcnNpb24iOjV9eyJjbGllbnRJZCI6MjQsImNsaWVudE5hbWUiOiJTb3Zjb21iYW5rIiwiY29udHJhY3RJZCI6IjAwMDAiLCJleHAiOiIyMDIzLTEyLTEyVDAwOjAwOjAwWiIsImhhcmJvclVzZXIiOiJoYXJib3JVc2VyIiwiaWF0asdasdasdasfaew3easfdasdasdadgtawerq23413414adzbZXvLHLKJHFJFHFHKOyituyryu fhKJJJIfhfjgklkasdyiyoOIYIigkjbjJFHURUHfjb,kOjAwOjAwWiIsInR5cGUiOiJwcmVtaXVtIiwic3ViIjoiQm9vdHNtYW4gdjIifQ.Gwokj0KL9RTjJ8XB5IVxsEqQG_wBByVsQNyjz_GRMsyXCof4xzu2notjfyIW2zpQlLA8dlhbWiWA2lhJ7RQ4Bg
export SSH_PUBLIC_KEYS_COMMA_SEPARATED="ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQDYjCYcs/qXpXRZukCZBdGDuc+jDat0gMV6di6U/ejkpqDv6qwl/8JmhOaYFEMo4+7BodHk7Fwmo1+3HsH1ElsPEpMAk6CEe+im7IOzjSvoPbTkvs7XXLCzF9EyxKftrpCCULn/YglEAzQcMqC7xIViZEl0gBU49o73wKaf1M0x0K0bgyZpG6DJDXw24cjbI4U4yaZIvBulwqeTdrCjMvMBqZ6gRmijTh/rhRdW/dWX/cdDHI9BWgz5GXuV/y47G/w6k3uzcF0XlG5o0Rp3KnOHoAevjt+KsiVSQampVM4HB9p7kYBJUk1RkqEkouMAWUV79O/7JYp915rUK1B7cHhJ example"
export ADDONS_RANCHER_BOOTSTRAPPASSWORD="somePassword123$"
export CONTROLPLANE_COUNT=3
export WORKER_COUNT=3
export K8SCPIP=127.0.0.1
export VSPHERE_SERV_USER=admin
export VSPHERE_SERV_PASSWORD=admin
export VSPHERE_SERV_ADDRESS=10.0.0.1
export VSPHERE_CONFIG_FOLDER=FOLDER_EXAMPLE
export VSPHERE_CONFIG_VMTEMPLATE=redos-7.3-kube-1.28.4
export VSPHERE_CONFIG_VM_CONTROLPLANE_CPU=4
export VSPHERE_CONFIG_VM_CONTROLPLANE_MEMORY_MB=8192
export VSPHERE_CONFIG_VM_CONTROLPLANE_DISK_GB=45
export VSPHERE_CONFIG_VM_WORKER_CPU=4
export VSPHERE_CONFIG_VM_WORKER_MEMORY_MB=12288
export VSPHERE_CONFIG_VM_WORKER_DISK_GB=60
export HARBOR_CREDS_URL=harbor.bootsman.host/bootsman-nimbus/common-artifacts
export HARBOR_CREDS_INSECURE=False
export HARBOR_CREDS_USER=demo
export HARBOR_CREDS_PASSWD=demo
export AIRGAP=true
export ADDONS_RANCHER_WEBHOSTNAME=rancher.redos-v21-ag.dev.stsoft.lan
export CURRENT_MACHINE_IP=10.0.149.111
export LICENSE=eyJhbGciOiJFZERTQSIsopkljlyuO098790uokjkLKJHKJGJHYu87hlIkpXVCIsInZlcnNpb24iOjV9eyJjbGllbnRJZCI6MjQsImNsaWVudE5hbWUiOiJTb3Zjb21iYW5rIiwiY29udHJhY3RJZCI6I jAwMDAiLCJleHAiOiIyMDIzLTEyLTEyVDAwOjAwOjAwWiIsImhhcmJvclVzZXIiOiJoYXJib3JVc2VyIiwiaWF0asdasdasdasfaew3easfdasdasdadgtawerq23413414adzbZXvLHLKJHFJFHFHKOyituyryu fhKJJJIfhfjgklkasdyiyoOIYIigkjbjJFHURUHfjb,kOjAwOjAwWiIsInR5cGUiOiJwcmVtaXVtIiwic3ViIjoiQm9vdHNtYW4gdjIifQ.  Gwokj0KL9RTjJ8XB5IVxsEqQG_wBByVsQNyjz_GRMsyXCof4xzu2notjfyIW2zpQlLA8dlhbWiWA2lhJ7RQ4Bg
export SSH_PUBLIC_KEYS_COMMA_SEPARATED="ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQDYjCYcs/qXpXRZukCZBdGDuc+jDat0gMV6di6U/ejkpqDv6qwl/8JmhOaYFEMo4+7BodHk7Fwmo1+3HsH1ElsPEpMAk6CEe+im7IOzjSvoPbTkvs7XXLCzF9EyxKftrpCCULn/YglEAzQcMqC7xIViZEl0gBU49o73wKaf1M0x0K0bgyZpG6DJDXw24cjbI4U4yaZIvBulwqeTdrCjMvMBqZ6gRmijTh/rhRdW/dWX/cdDHI9BWgz5GXuV/y47G/w6k3uzcF0XlG5o0Rp3KnOHoAevjt+KsiVSQampVM4HB9p7kYBJUk1RkqEkouMAWUV79O/7JYp915rUK1B7cHhJ example"
export ADDONS_RANCHER_BOOTSTRAPPASSWORD="somePassword123$"
export CONTROLPLANE_COUNT=3
export WORKER_COUNT=3
export K8SCPIP=10.0.149.10
export VSPHERE_SERV_USER=admin
export VSPHERE_SERV_PASSWORD=admin
export VSPHERE_SERV_ADDRESS=10.0.0.1
export VSPHERE_CONFIG_FOLDER=FOLDER_EXAMPLE
export VSPHERE_CONFIG_VMTEMPLATE=redos-7.3-kube-1.28.4
export VSPHERE_CONFIG_VM_CONTROLPLANE_CPU=4
export VSPHERE_CONFIG_VM_CONTROLPLANE_MEMORY_MB=8192
export VSPHERE_CONFIG_VM_CONTROLPLANE_DISK_GB=45
export VSPHERE_CONFIG_VM_WORKER_CPU=4
export VSPHERE_CONFIG_VM_WORKER_MEMORY_MB=12288
export VSPHERE_CONFIG_VM_WORKER_DISK_GB=60

Установка

Перед запуском установки экспортируйте конфигурацию

source config
Далее запустите установку

./bootsmanctl management create test-cluster -i vsphere -k ${Kubernetes_Version}
Вывод инсталляции должен окончиться так:

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

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

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

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

  1. ADDONS_RANCHER_WEBHOSTNAME
  2. ADDONS_RANCHER_BOOTSTRAPPASSWORD