Вариант инсталляции в консоли

Инсталляция с утилитой stc (ПОДДЕРЖИВАЕТСЯ ПОСЛЕДНИЙ РЕЛИЗ)

  1. Скачайте модуль первичной установки - shturval installer (stc).
  • с машины на ОС Linux скачайте stc для linux и выполните команду, чтобы сделать файл исполняемым:
chmod +x ./stc-2.11.0
  1. Сгенерируйте ключевую пару с помощью команды:
ssh-keygen -t ed25519 -f shturval

Обратите внимание! Shturval installer (stc) не поддерживает Passphrase-protected private key.

  1. Скопируйте ее на каждый хост будущего кластера с помощью команды:
ssh-copy-id -i shturval.pub ssh-user@IP-адрес-хоста

где вместо IP-адрес-хоста пропишите IP хоста будущего кластера. Если хостов будет более одного, выполните команду для каждого хоста.

  1. Подготовьте адреса ntp-серверов, с которыми должна происходить синхронизация времени хостов (использованные в шаге 2).
  2. Для инсталляции на рабочей машине с ОС Linux или Windows (в зависимости от того, какой stc вы скачали) запустите команду, в которую необходимо подставить свои значения параметров
Все доступные параметры инсталлятора stc-2.11.0
Параметр Обязательный Описание
--debug нет Выводить в лог всю информацию об ошибках (по умолчанию false)
--dry-run нет Проверка конфигурации. Установка службы shturvald на узлы будущего кластера. (по умолчанию false)
--quiet нет Выключить stdout. Только код выхода
--ssh-private-key [string] да Путь к файлу приватного ключа SSH
--ssh-user [string] да Имя пользователя для подключения по SSH
--workdir [string] нет Рабочая директория кластера (для файлов конфигурации, логов и пр.)
--skip-check нет Пропустить проверку хостов перед инсталляцией. Значение по умолчанию – false
--master-nodes [string] да Адреса Control Plane узлов
--worker-nodes [string] да Адреса Worker-узлов
--api-endpoint [string] да Адрес API управления кластером
--cluster-name [string] да Имя кластера
--disabled-system-services [string] нет Список отключенных системных сервисов
--enabled-system-services [string] нет Список включенных системных сервисов
--ingress [string] да, если не указан --ingress-vip Wildcard DNS-запись для ingress (например, <cluster_name>.<base_domain>). Примеры записей на странице Требования к сетевым именам. Чтобы задать DNS-запись для ingress, должен быть указан параметр--use-external-ingress-lb со значением true. При формировании ingress-записей используется только значение, заданное в параметре --ingress
--ingress-vip [string] да, если не указан --ingress VIP адрес для ingress контроллера
--interactive нет Признак интерактивного режима. Значение по умолчанию – false
--license [string] да Лицензионный ключ для загрузки пакетов
--monitoring-endpoint [string] нет Адрес кластера мониторинга для отправки системных метрик
--ntp-servers [string] нет Список серверов синхронизации времени (через запятую)
--registry [string] нет Адрес реестра образов и репозиториев пакетов. Значение по умолчанию – r.shturval.tech
--secure нет Признак установки дополнительных параметров безопасности. Значение по умолчанию – false
--timezone [string] нет Часовой пояс. Значение по умолчанию – Europe/Moscow
--use-external-ingress-lb да, если задан --ingress Использовать внешний балансировщик для Ingress контроллера. Значение по умолчанию – false
--use-external-kubeapi-lb нет Использовать внешний балансировщик кластерного IP. Значение по умолчанию – false
--ca-cert да, если не указаны --acme-root-cert или --ingress-cert Путь до цепочки сертификатов (ваш промежуточный сертификат -> сертификат корпоративного центра сертификации) в формате “pem” файла, который может быть использован в дальнейшем для подписания других сертификатов
--ca-key да, если задан --ca-cert Путь до закрытого ключа промежуточного сертификата CA
--acme-root-cert да, если не указаны --ca-cert или --ingress-cert Путь до файла корневого сертификата CA для ACME
--acme-url да, если задан --acme-root-cert Адрес ACME сервера с портом и путем к ресурсу, например: https://acme.corp.lan:8443/directory
--ingress-cert [string] да, если не указаны --ca-cert или --acme-root-cert Путь до корпоративного сертификата(“pem” файла), который был выпущен CA(в этом случае в файле будет цепочка сертификатов) или самоподписан для доменного имени Ingress
--ingress-key [string] да, если задан --ingress-cert Путь до закрытого ключа корпоративного сертификата Ingress
--pod-subnet [string] нет Подсеть для подов. Значение по умолчанию – 172.16.0.0/16. При изменении дефолтного значения, проверьте диапазон подсети на пересечение с подсетью сервисов. Подробнее про выделение подсетей здесь
--service-subnet [string] нет Подсеть для сервисов. Значение по умолчанию – 10.96.0.0/12. При изменении дефолтного значения, проверьте диапазон подсети на пересечение с подсетью подов. Подробнее про выделение подсетей здесь
--minimal нет Признак установки минимального набора сервисов. Требуется при инсталляции кластера управления на 1 Control Plane узле. При установке в минимальной конфигурации недоступны параметры --disabled-system-services и --enabled-system-services. Значение по умолчанию – false

Примеры команд для инсталляции с stc

  • Для инсталляции в закрытом контуре добавьте в нужную команду параметр --registry=corp.domain.local:443, где вместо corp.domain.local введите адрес вашего реджистри.
  • Для инсталляции с цепочкой сертификатов (ваш промежуточный сертификат -> сертификат корпоративного центра сертификации) в конец нужной команды добавьте ключи --ca-cert=ВВЕДИТЕ-ПУТЬ-ДО-ПРОМЕЖУТОЧНОГО-СЕРТИФИКАТА("pem" файла) и --ca-key=ВВЕДИТЕ-ПУТЬ-ДО-ЗАКРЫТОГО-КЛЮЧА-ПРОМЕЖУТОЧНОГО-СЕРТИФИКАТА
  • Для инсталляции с корпоративными сертификатами в конец нужной команды добавьте ключи --ingress-cert=ВВЕДИТЕ-ПУТЬ-ДО-КОРПОРАТИВНОГО-СЕРТИФИКАТА("pem" файла) и --ingress-key=ВВЕДИТЕ-ПУТЬ-ДО-ЗАКРЫТОГО-КЛЮЧА-ПРОМЕЖУТОЧНОГО-СЕРТИФИКАТА
  • Для инсталляции с ACME сертификатами в конец нужной команды добавьте ключи --acme-root-cert=ВВЕДИТЕ-ПУТЬ-ДО-КОРНЕВОГО-СA-ДЛЯ-ACME и --acme-url=ВВЕДИТЕ-АДРЕС-ACME-СЕРВЕРА-С-ПОРТОМ-И-ПУТЁМ-К-РЕСУРСУ

Примеры команд для инсталляции на 1 Control Plane узле (minimal)

Команда для запуска инсталляции на 1 Control Plane узле с VIP для API-сервера и Ingress, самоподписными сертификатами в открытом контуре
./stc-2.11.0 install management \
 --license="ВВЕДИТЕ-ВАШУ-ЛИЦЕНЗИЮ" \
 --cluster-name=ВВЕДИТЕ-НАЗВАНИЕ-КЛАСТЕРА \
 --ssh-user=ИМЯ-СОЗДАННОГО-ПОЛЬЗОВАТЕЛЯ \
 --ssh-private-key=ВВЕДИТЕ-ПУТЬ-ДО-ПРИВАТНОГО-КЛЮЧА  \
 --api-endpoint=ВВЕДИТЕ-IP-ДЛЯ-API-СЕРВЕРА \
 --master-nodes=ВВЕДИТЕ-IP-ХОСТА \
 --timezone=Europe/Moscow \
 --ingress-vip=ВВЕДИТЕ-IP-АДРЕС-ДЛЯ-INGRESS \
 --skip-check \
 --ntp-servers=ВВЕДИТЕ-АДРЕСА-NTP-СЕРВЕРОВ-ЧЕРЕЗ-ЗАПЯТУЮ-БЕЗ-ПРОБЕЛА \
 --minimal=true
Команда для запуска инсталляции на 1 Control Plane узле с внешним балансировщиком для API-сервера и VIP для Ingress, самоподписными сертификатами в открытом контуре
./stc-2.11.0 install management \
 --license="ВВЕДИТЕ-ВАШУ-ЛИЦЕНЗИЮ" \
 --cluster-name=ВВЕДИТЕ-НАЗВАНИЕ-КЛАСТЕРА \
 --ssh-user=ИМЯ-СОЗДАННОГО-ПОЛЬЗОВАТЕЛЯ \
 --ssh-private-key=ВВЕДИТЕ-ПУТЬ-ДО-ПРИВАТНОГО-КЛЮЧА  \
 --use-external-kubeapi-lb=true  \
 --api-endpoint=ВВЕДИТЕ-ВАШ-FQDN \
 --timezone=Europe/Moscow \
 --master-nodes=ВВЕДИТЕ-IP-ХОСТА \
 --ingress-vip=ВВЕДИТЕ-IP-АДРЕС-ДЛЯ-INGRESS \
 --skip-check \
 --ntp-servers=ВВЕДИТЕ-АДРЕСА-NTP-СЕРВЕРОВ-ЧЕРЕЗ-ЗАПЯТУЮ-БЕЗ-ПРОБЕЛА \
 --minimal=true
Команда для запуска инсталляции на 1 Control Plane узле с VIP для API-сервера и внешним балансировщиком для Ingress, самоподписными сертификатами в открытом контуре
./stc-2.11.0 install management \
 --license="ВВЕДИТЕ-ВАШУ-ЛИЦЕНЗИЮ" \
 --cluster-name=ВВЕДИТЕ-НАЗВАНИЕ-КЛАСТЕРА \
 --ssh-user=ИМЯ-СОЗДАННОГО-ПОЛЬЗОВАТЕЛЯ \
 --ssh-private-key=ВВЕДИТЕ-ПУТЬ-ДО-ПРИВАТНОГО-КЛЮЧА \
 --api-endpoint=ВВЕДИТЕ-IP-ДЛЯ-API-СЕРВЕРА \
 --timezone=Europe/Moscow \
 --use-external-ingress-lb=true \
 --master-nodes=ВВЕДИТЕ-IP-ХОСТА \
 --ingress=ВВЕДИТЕ-FQDN-ДЛЯ-INGRESS \
 --skip-check \
 --ntp-servers=ВВЕДИТЕ-АДРЕСА-NTP-СЕРВЕРОВ-ЧЕРЕЗ-ЗАПЯТУЮ-БЕЗ-ПРОБЕЛА \
 --minimal=true
Команда для запуска инсталляции на 1 Control Plane узле с внешним балансировщиком для API-сервера и Ingress, самоподписными сертификатами в открытом контуре
./stc-2.11.0 install management \
 --license="ВВЕДИТЕ-ВАШУ-ЛИЦЕНЗИЮ" \
 --cluster-name=ВВЕДИТЕ-НАЗВАНИЕ-КЛАСТЕРА \
 --ssh-user=shturval \
 --ssh-private-key=ВВЕДИТЕ-ПУТЬ-ДО-ПРИВАТНОГО-КЛЮЧА \
 --use-external-kubeapi-lb=true \
 --api-endpoint=ВВЕДИТЕ-FQDN-API-СЕРВЕРА \
 --timezone=Europe/Moscow \
 --use-external-ingress-lb=true \
 --master-nodes=ВВЕДИТЕ-IP-ХОСТА \
 --ingress=ВВЕДИТЕ-FQDN-ДЛЯ-INGRESS \
 --skip-check \
 --ntp-servers=ВВЕДИТЕ-АДРЕСА-NTP-СЕРВЕРОВ-ЧЕРЕЗ-ЗАПЯТУЮ-БЕЗ-ПРОБЕЛА \
 --minimal=true

Примеры команд для инсталляции с Control Plane и Worker узлами

Команда для запуска инсталляции на 1 или 3 Control Plane узлах и 3 Worker-узлах с VIP для API-сервера и Ingress, самоподписными сертификатами в открытом контуре
./stc-2.11.0 install management \
 --license="ВВЕДИТЕ-ВАШУ-ЛИЦЕНЗИЮ" \
 --cluster-name=ВВЕДИТЕ-НАЗВАНИЕ-КЛАСТЕРА \
 --ssh-user=ИМЯ-СОЗДАННОГО-ПОЛЬЗОВАТЕЛЯ \
 --ssh-private-key=ВВЕДИТЕ-ПУТЬ-ДО-ПРИВАТНОГО-КЛЮЧА \
 --api-endpoint=ВВЕДИТЕ-IP-ДЛЯ-API-СЕРВЕРА \
 --master-nodes=ВВЕДИТЕ-IP-ХОСТОВ-ЧЕРЕЗ-ЗАПЯТУЮ-БЕЗ-ПРОБЕЛОВ \
 --worker-nodes=ВВЕДИТЕ-IP-ХОСТОВ-ЧЕРЕЗ-ЗАПЯТУЮ-БЕЗ-ПРОБЕЛОВ \
 --timezone=Europe/Moscow \
 --ingress-vip=ВВЕДИТЕ-IP-АДРЕС-ДЛЯ-INGRESS \
 --skip-check \
 --ntp-servers=ВВЕДИТЕ-АДРЕСА-NTP-СЕРВЕРОВ-ЧЕРЕЗ-ЗАПЯТУЮ-БЕЗ-ПРОБЕЛА \
Команда для запуска инсталляции на 1 или 3 Control Plane узлах и 3 Worker-узлах с внешним балансировщиком для API-сервера и VIP для Ingress, самоподписными сертификатами в открытом контуре
./stc-2.11.0 install management \
 --license="ВВЕДИТЕ-ВАШУ-ЛИЦЕНЗИЮ" \
 --cluster-name=ВВЕДИТЕ-НАЗВАНИЕ-КЛАСТЕРА \
 --ssh-user=ИМЯ-СОЗДАННОГО-ПОЛЬЗОВАТЕЛЯ \
 --ssh-private-key=ВВЕДИТЕ-ПУТЬ-ДО-ПРИВАТНОГО-КЛЮЧА \
 --use-external-kubeapi-lb=true \
 --api-endpoint=ВВЕДИТЕ-FQDN-API-СЕРВЕРА \
 --timezone=Europe/Moscow \
 --master-nodes=ВВЕДИТЕ-IP-ХОСТОВ-ЧЕРЕЗ-ЗАПЯТУЮ-БЕЗ-ПРОБЕЛОВ \
 --worker-nodes=ВВЕДИТЕ-IP-ХОСТОВ-ЧЕРЕЗ-ЗАПЯТУЮ-БЕЗ-ПРОБЕЛОВ \
 --ingress-vip=ВВЕДИТЕ-IP-АДРЕС-ДЛЯ-INGRESS \
 --skip-check \
 --ntp-servers=ВВЕДИТЕ-АДРЕСА-NTP-СЕРВЕРОВ-ЧЕРЕЗ-ЗАПЯТУЮ-БЕЗ-ПРОБЕЛА \
Команда для запуска инсталляции на 1 или 3 Control Plane узлах и 3 Worker-узлах с VIP для API-сервера и внешним балансировщиком для Ingress, самоподписными сертификатами в открытом контуре
./stc-2.11.0 install management \
 --license="ВВЕДИТЕ-ВАШУ-ЛИЦЕНЗИЮ" \
 --cluster-name=ВВЕДИТЕ-НАЗВАНИЕ-КЛАСТЕРА \
 --ssh-user=ИМЯ-СОЗДАННОГО-ПОЛЬЗОВАТЕЛЯ \
 --ssh-private-key=ВВЕДИТЕ-ПУТЬ-ДО-ПРИВАТНОГО-КЛЮЧА \
 --api-endpoint=ВВЕДИТЕ-IP-ДЛЯ-API-СЕРВЕРА \
 --timezone=Europe/Moscow \
 --use-external-ingress-lb=true \
 --master-nodes=ВВЕДИТЕ-IP-ХОСТОВ-ЧЕРЕЗ-ЗАПЯТУЮ-БЕЗ-ПРОБЕЛОВ \
 --worker-nodes=ВВЕДИТЕ-IP-ХОСТОВ-ЧЕРЕЗ-ЗАПЯТУЮ-БЕЗ-ПРОБЕЛОВ \
 --ingress=ВВЕДИТЕ-FQDN-ДЛЯ-INGRESS \
 --skip-check \
 -ntp-servers=ВВЕДИТЕ-АДРЕСА-NTP-СЕРВЕРОВ-ЧЕРЕЗ-ЗАПЯТУЮ-БЕЗ-ПРОБЕЛА \
Команда для запуска инсталляции на 3 Control Plane узлах и 3 Worker-узлах с внешним балансировщиком для API-сервера и Ingress, самоподписными сертификатами в открытом контуре
./stc-2.11.0 install management \
 --license="ВВЕДИТЕ-ВАШУ-ЛИЦЕНЗИЮ" \
 --cluster-name=ВВЕДИТЕ-НАЗВАНИЕ-КЛАСТЕРА \
 --ssh-user=ИМЯ-СОЗДАННОГО-ПОЛЬЗОВАТЕЛЯ \
 --ssh-private-key=ВВЕДИТЕ-ПУТЬ-ДО-ПРИВАТНОГО-КЛЮЧА \
 --use-external-kubeapi-lb=true \
 --api-endpoint=ВВЕДИТЕ-FQDN-API-СЕРВЕРА \
 --timezone=Europe/Moscow \
 --use-external-ingress-lb=true \
 --master-nodes=ВВЕДИТЕ-IP-ХОСТОВ-ЧЕРЕЗ-ЗАПЯТУЮ-БЕЗ-ПРОБЕЛОВ \
 --worker-nodes=ВВЕДИТЕ-IP-ХОСТОВ-ЧЕРЕЗ-ЗАПЯТУЮ-БЕЗ-ПРОБЕЛОВ \
 --ingress=ВВЕДИТЕ-FQDN-ДЛЯ-INGRESS \
 --skip-check \
 --ntp-servers=ВВЕДИТЕ-АДРЕСА-NTP-СЕРВЕРОВ-ЧЕРЕЗ-ЗАПЯТУЮ-БЕЗ-ПРОБЕЛА \

После завершения инсталляции с stc

После инсталляции вы получите:

  • логин и пароль администратора платформы;
  • kubeconfig администратора платформы;
  • ссылку для перехода в графический интерфейс платформы “Штурвал”.

Сохраните логин, пароль и kubeconfig. Они статические и пригодятся вам для дальнейшей эксплуатации.

Используйте полученные логин, пароль и ссылку для аутентификации в платформе в графическом интерфейсе.

Управление хостами, доступными для присоединения в кластер управления происходит с помощью экземпляра провайдера shturval v2 с именем кластера управления. Чтобы перейти в интерфейс кластера управления в веб-интерфейсе платформы перейдите в раздел “Кластер” на вкладку “Кластер управления”. Управление ресурсами кластера управления, в т.ч. количеством узлов в группе происходит из интерфейса кластера управления.

Скриншот

mgmtcluster

Обратите внимание! Экземпляр провайдера, с которым инсталлирован кластер управления, не должен использоваться при создании клиентских кластеров. Подробнее о создании провайдеров в платформе здесь.

Управление платформенными ресурсами происходит в разделе “Платформа”. Информация о лимитах лицензии, Swagger находятся в разделе “О системе”.

×