Вариант инсталляции в консоли
Инсталляция с утилитой stc (ПОДДЕРЖИВАЕТСЯ ПОСЛЕДНИЙ РЕЛИЗ)
- Скачайте модуль первичной установки - shturval installer (stc).
- с машины на ОС Linux скачайте stc для linux и выполните команду, чтобы сделать файл исполняемым:
chmod +x ./stc-2.11.0
- с машины на ОС Windows скачайте stc для windows
- Сгенерируйте ключевую пару с помощью команды:
ssh-keygen -t ed25519 -f shturval
Обратите внимание! Shturval installer (stc) не поддерживает Passphrase-protected private key.
- Скопируйте ее на каждый хост будущего кластера с помощью команды:
ssh-copy-id -i shturval.pub ssh-user@IP-адрес-хоста
где вместо IP-адрес-хоста пропишите IP хоста будущего кластера. Если хостов будет более одного, выполните команду для каждого хоста.
- Подготовьте адреса ntp-серверов, с которыми должна происходить синхронизация времени хостов (использованные в шаге 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 с именем кластера управления. Чтобы перейти в интерфейс кластера управления в веб-интерфейсе платформы перейдите в раздел “Кластер” на вкладку “Кластер управления”. Управление ресурсами кластера управления, в т.ч. количеством узлов в группе происходит из интерфейса кластера управления.
Скриншот

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