Установка Selena All-in-One
All-in-One — это установка всех основных компонентов на одну ВМ. Такой вариант подходит для демонстрационного стенда, тестовой среды, пилота или небольшого контура, где не требуется распределять роли по разным серверам.
Распакуйте установочный пакет
Скопируйте архив selena-podman-<версия_сборки>.tar.gz на ВМ, где будет установлен стенд All-in-One. Далее распакуйте архив и перейдите в каталог дистрибутива.
cd <путь_к_каталогу_с_архивом>
tar -xzf selena-podman-<версия_сборки>.tar.gz
cd selena-podman
Пример: если архив лежит в /home, команды будут выглядеть так:
cd /home
tar -xzf selena-podman-3.0.tar.gz
cd selena-podman
Проверьте файл examples/images.yaml
Файл examples/images.yaml отвечает за источник контейнерных образов. Для онлайн-установки в нем должен быть указан режим online и адрес registry hub.selena.sh.
registry:
mode: online
baseUrl: hub.selena.sh
pullPolicy: missing
| Параметр | Что указать и зачем это нужно |
|---|---|
| mode: online | Установщик будет получать контейнерные образы из внешнего registry. |
| baseUrl: hub.selena.sh | Адрес registry, из которого загружаются образы Selena. |
| pullPolicy: missing | Образ скачивается только в том случае, если его еще нет локально на VM. Это экономит время при повторном запуске установки. |
Проверьте доступность registry:
ping -c 3 hub.selena.sh
или, если ping заблокирован правилами сети:
curl -I <https://hub.selena.sh>
Не продолжайте онлайн-установку. Либо откройте сетевой доступ к hub.selena.sh, либо перейдите к офлайн-сценарию и используйте заранее подготовленный бандл.
Проверьте файл examples/all-in-one.deploy.yaml
Этот файл описывает, как именно будет развернут All-in-One. Ниже приведены ключевые параметры, которые нужно проверить перед запуском установки.
license:
file: /run/selena-input/license.jwt
controlPlane:
publicHost: VM_IP_OR_DNS
engine:
name: selena-all-in-one
clusterMode: SHARED_NOTHING
allInOne: true
allInOneHost:
| Параметр | Что указать и зачем это нужно |
|---|---|
| License file | Путь к файлу лицензии внутри VM. Это не исходный файл *.bin, а путь, по которому установщик ожидает увидеть лицензию. В инструкции файл лицензии копируется именно сюда. |
| controlPlane.publicHost | IP-адрес или DNS-имя VM, по которому пользователи будут открывать веб-интерфейс Selena CM. Не указывайте localhost. |
| engine.name | Имя Engine-кластера. Можно оставить selena-all-in-one, если в среде нет требований к имени. |
| engine.clusterMode | Режим кластера. Для типовой установки используйте SHARED_NOTHING (FE + BE). Для установки в FE+CN укажите SHARED_DATA. |
| engine.allInOne | Для All-in-One должно быть true. Это означает, что установка происходит на одну ВМ. |
| allInOneHost | Обычно поле оставляют пустым. Если указываете значение, используйте реальный IP или DNS ВМ. Не указывайте 127.0.0.1. |
Значение 127.0.0.1 подходит только для обращения с самой VM на саму себя. Для UI и межсервисного взаимодействия используйте реальный IP или DNS, иначе с других машин интерфейс и сервисы будут недоступны.
Подготовьте лицензию
Возьмите полученный файл лицензии *.bin и скопируйте его в защищенный каталог /run/selena-input под именем license.jwt. Имя и путь должны совпадать с параметром license.file в all-in-one.deploy.yaml. Для этого выполните команды:
sudo install -d -m 0700 /run/selena-input
sudo cp <путь_к_файлу_лицензии>/<имя_файла>.bin /run/selena-input/license.jwt
sudo chmod 0600 /run/selena-input/license.jwt
sudo ls -l /run/selena-input/license.jwt
В строке с результатом проверки должны быть права -rw------- и владелец root. Например:
-rw------- 1 root root 12345 Jun 04 10:00 /run/selena-input/license.jwt
Запустите установку
Запускайте установщик из каталога selena-podman. Первым аргументом передается deploy-файл, вторым — файл с настройками образов.
cd <путь_к_каталогу>/selena-podman
sudo ./scripts/install.sh examples/all-in-one.deploy.yaml examples/images.yaml
Во время установки не закрывайте SSH-сессию. Если команда завершилась ошибкой, сохраните вывод терминала и не запускайте случайные команды очистки: по логу обычно видно, на каком шаге произошел сбой.
Проверьте состояние сервисов
После завершения установки выполните статусный скрипт. Он покажет состояние контейнеров и основных компонентов.
sudo ./scripts/status.sh
Ожидаемый результат: сервисы, относящиеся к Selena CM, Engine, БД, Keycloak, MinIO, мониторингу и другим встроенным компонентам, находятся в состоянии Running/healthy.
Подождите 2-5 минут и повторите status.sh. Некоторые контейнеры стартуют дольше остальных.