Инсталляция с утилитой shtil

Установка платформы происходит в 2 этапа:

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

Создание временного кластера

Предусловия

  1. На машине, с которой будет запущена установка:
  • должен быть установлен Docker, Podman;
  • должен быть доступ до Registry;
  • для запуска инсталляции должен быть доступ root-пользователя до каталога /tmp/, где создаются файлы временного кластера.
Минимальные системные требования к ресурсам
ПараметрCPU (vCPU)Memory (GiB)Disk (GiB)
Машина, с которой будет запущен shtil3320

Минимальные системные требования к ресурсам определяют количество минимально свободных ресурсов для запуска инсталляции. По умолчанию после запуска инсталляции (./shtil-2.12.1 create cluster) выполняется проверка наличия свободных ресурсов.

  1. Сгенерируйте ключевую пару с помощью команды:
ssh-keygen -t ed25519 -f shturval

Ключевая пара потребуется в графическом интерфейсе на шаге “Конфигурация провайдера”.

Скопируйте ее на каждый хост будущего кластера с помощью команды:

ssh-copy-id -i shturval.pub ssh-user@IP-адрес-хоста

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

Инсталляция временного кластера

  1. Скачайте бинарный файл по ссылке https://public.shturval.tech/shtil-2.12.1. Обратите внимание! Вы сможете инсталлировать кластер управления только соответствующей версии загруженного shtil.
  2. Сделайте его исполняемым с помощью команды
chmod +x ./shtil-2.12.1
  1. Запустите инсталляцию с помощью команды ./shtil-2.12.1 create cluster, в которую необходимо подставить свои значения параметров.
Параметры команды
ПараметрОбязательностьОписание
-h, --helpНетВызов справки для команды установки кластера
--insecureНетПропускает проверку безопасности при подключении к registry (по умолчанию false)
--bootstrap-kubeconfig [string]НетПуть, по которому будет сохранён kubeconfig временного кластера управления, по умолчанию $HOME/.kube/shturval-installer
--license [string]ДаЛицензия к платформе Штурвал. Если лицензия содержит специальные символы ($,<, >, *, &, ?, /,\ ), она должна быть указана в одинарных кавычках
-n, --name [string]НетИмя временного кластера управления, по умолчанию shturval-installer
--registry [string]НетАдрес Registry, по умолчанию r.shturval.tech
--password [string]НетПароль admin для доступа в графический интерфейс кластера управления
--retry [int]НетКоличество повторных попыток при ошибке установки (по умолчанию 10)
--wait durationНетВремя ожидания создания узла, на котором будет работать временный кластер
--debugНетУстанавливает режим отладки (по умолчанию false). Если не установлен режим отладки, при неуспешной инсталляции будет удален docker контейнер shtil
-v, --verbosityНетОтображение подробного информационного журнала. Более высокое значение обеспечивает больший результат (максимальное значение 10)

Инсталляция временного кластера занимает некоторое время. Когда инфраструктура временного кластера будет готова, вы получите логин и пароль администратора платформы. Сохраните их, они потребуются для дальнейшей аутентификации в платформу. По умолчанию логин и пароль сохраняются в файл user.conf по пути $HOME/.shturval/installer. При необходимости вы сможете изменить временный пароль администратора для первого входа в интерфейс с помощью инструкции на странице.

Скриншот

installer1

Обратите внимание!

При запуске shtil на виртуальной машине, после получения адреса временного кластера потребуется пробросить порты для back, front и authn.

Пример команды проброса портов
ssh shturval@IP-АДРЕС-ВИРТУАЛЬНОЙ-МАШИНЫ -L 30080:127.0.0.1:30080 -L 30081:127.0.0.1:30081 -L 30082:127.0.0.1:30082

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

Пример команды для открытого контура
./shtil-2.12.1 create cluster --license="ВВЕДИТЕ-ВАШУ-ЛИЦЕНЗИЮ"
Пример команды для открытого контура c заданным паролем admin
./shtil-2.12.1 create cluster --license="ВВЕДИТЕ-ВАШУ-ЛИЦЕНЗИЮ" --password="ВВЕДИТЕ-ПАРОЛЬ-ДЛЯ-ADMIN"
  • Для инсталляции в закрытом контуре добавьте параметр --registry.
Пример команды для закрытого контура
./shtil-2.12.1 create cluster --registry="ВВЕДИТЕ-АДРЕС-ВАШЕГО-REGISTRY" --license="ВВЕДИТЕ-ВАШУ-ЛИЦЕНЗИЮ"

Обратите внимание! Если registry с самоподписным сертификатом, пропишите registry в конфигурационном файле с реестрами образов контейнеров и пропустите проверку безопасности при подключении к registry (--insecure=true). По умолчанию для Docker конфигурационный файл расположен по пути - /etc/docker/daemon.json (Podman - /etc/containers/registries.conf).

Пример daemon.json (Docker)
{
    "insecure-registries" : ["АДРЕС-ВАШЕГО-REGISTRY"]
}
Пример registries.conf (Podman)
# Copied from https://raw.githubusercontent.com/projectatomic/registries/master/registries.fedora

# This is a system-wide configuration file used to
# keep track of registries for various container backends.
# It adheres to TOML format and does not support recursive
# lists of registries.

# The default location for this configuration file is /etc/containers/registries.conf.

# The only valid categories are: 'registries.search', 'registries.insecure',
# and 'registries.block'.

[registries.search]
registries = ['docker.io', 'registry.fedoraproject.org', 'registry.access.redhat.com']

# If you need to access insecure registries, add the registry's fully-qualified name.
# An insecure registry is one that does not have a valid SSL certificate or only does HTTP.
[registries.insecure]
registries = ['АДРЕС-ВАШЕГО-REGISTRY']


# If you need to block pull access from a registry, uncomment the section below
# and add the registries fully-qualified name.
#
# Docker only
[registries.block]
registries = []
Пример команды для закрытого контура без проверки безопасности TLS соединения
./shtil-2.12.1 create cluster --registry="ВВЕДИТЕ-АДРЕС-ВАШЕГО-REGISTRY" --license="ВВЕДИТЕ-ВАШУ-ЛИЦЕНЗИЮ" --insecure=true

Создание постоянного кластера управления

Ознакомьтесь с перечнем браузеров, в которых доступен графический интерфейс платформы, и перейдите по адресу временного кластера в веб-интерфейсе (http://localhost:30080). Вам будет доступна только возможность создания кластера управления. Создание постоянного кластера управления доступно с провайдерами:

Скриншоты

mgmtcreate3

mgmtcreate4

Конфигурация провайдеров будет доступна непосредственно в процессе инсталляции.

Процесс создания постоянного кластера в графическом интерфейсе подробнее описан на страницах создания кластеров с провайдерами:

Кнопка “Отменить инсталляцию” возвращает на экран инициализации создания постоянного кластера управления, сбрасывая все заполненные данные. При обновлении страниц конфигурирования кластера управления, заполненные данные не сбрасываются.

После инсталляции

Когда успешно развернут кластер управления, автоматически временный кластер не будет удален. При необходимости запуска новой инсталляции кластера управления потребуется предварительно удалить временный. Как удалить временный кластер описано на странице. При необходимости удалить платформу используйте инструкцию на странице Деинсталляция платформы.