Установка на slave-сервер с помощью инсталлятора
Обзор
|
Если при установке master-сервера были перечислены дополнительные серверы, проходить мастер здесь необязательно: master напечатал готовую неинтерактивную команду для каждого из них — с ролью узла, адресом mic, базой и NFS-сервером мастера. |
Установка системы производится с локальной машины через ssh-подключение к серверу, если доступный адрес сервера совпадает с адресом, на котором система должна быть развернута.
cd /tmp/era_installer bash install_ssh.sh --ui=text
В иных случаях, когда локальный адрес сервера недоступен снаружи, следует сначала распаковать и скопировать инсталлятор на сервер, затем подключиться по ssh и запустить скрипт.
rsync -avrh --progress -e "ssh -p PORT" /tmp/era_installer USER@HOST:/tmp ssh USER@HOST -p PORT cd /tmp/era_installer bash era/scripts/install.sh --ui=text
Ключ --ui=text задаёт текстовый режим: вопросы задаются построчно, ответ подтверждается клавишей Enter.
То же самое можно запустить через диспетчер: bash era/era.sh install --ui=text.
ВАЖНО! Конфигурация с этим сервером должна быть создана и активирована на мастере до установки узла: узел ищет свою роль в применённой конфигурации.
Если конфигурации нет, установка дойдёт до конца, но платформа сообщит ServInit. Connect to All MICIC fail, а инсталлятор завершится с кодом 5.
Алгоритм процесса установки
1) Запустить скрипт установки: на локальной машине bash install_ssh.sh --ui=text, на сервере bash era/scripts/install.sh --ui=text.
При запуске с локальной машины сначала спрашиваются данные подключения, затем инсталлятор копирует файлы на сервер и продолжает опрос уже там.
Адрес сервера: 192.168.0.116 Пользователь ssh: admin Порт ssh [22]: Файл ключа ssh:
2) Дождаться копирования файлов на сервер.
Скопировать era/image/era_1_11_0-2026_8_31_1_docker.tar.gz (1.2G)? (д/н) [y]:
3) Экран Сервер и роль. Роль — не мастер, поэтому вместо домена спрашиваются адреса mic.
== Сервер и роль == IP-адрес платформы: 192.168.0.116 Постфикс имени инстанса: _01 Путь к данным [/opt]: Имя сервера в конфигурации [box-116]: srv02 Это мастер-сервер? (д/н): n Mic-адреса: mic1@192.168.0.115 PSK cookie [era2020key]:
Постфикс следует задать тот же, что и на master-сервере той же конфигурации.
Имя сервера должно совпадать с именем этого сервера в конфигурации, созданной на мастере.
Mic-адреса — адреса инфраструктурных микросервисов уже развёрнутого кластера, через запятую без пробелов.
Имя роли берётся из конфигурации платформы: если в ней роль называется mic1, адрес пишется как mic1@192.168.0.115, а не mic@….
Можно перечислить несколько адресов — подключение будет пробоваться последовательно.
PSK cookie должен совпадать с заданным при установке master-сервера.
4) Экран Пакеты и сеть. Указать, есть ли на сервере доступ к интернету и нужен ли прокси.
== Пакеты и сеть == Разрешить установщику скачивать пакеты из интернета? (д/н) [y]: Использовать http/https-прокси? (д/н) [n]:
Если доступ к интернету отсутствует, ответьте n и при непустом списке недостающих пакетов выполните установку пакетов на сервере.
5) Экран PostgreSQL — режим.
== PostgreSQL -- режим == Устанавливать PostgreSQL? (д/н) [y]: n
При многосерверной установке экземпляры СУБД устанавливаются лишь на выборочных серверах в соответствии с планом развертки: первый из них — master-сервер, второй — любой другой.
На остальных серверах отвечайте n — тогда будут запрошены параметры подключения к уже работающему серверу PostgreSQL.
Если этот сервер выбран под вторую СУБД, ответьте y и укажите роль Реплика (recovery):
Где разместить PostgreSQL? 1) В хосте 2) В docker-контейнере Выберите номер: 1 Роль этого инстанса PostgreSQL 1) Мастер 2) Реплика (recovery) Выберите номер: 2
Пароли пользователей postgres, platformpgadmin и era_replica должны совпадать с заданными на master-сервере — иначе потоковая репликация не поднимется.
6) Экран PostgreSQL — доступ. Для сервера без своей СУБД указываются адрес и порт готового сервера.
== PostgreSQL -- доступ == IP-адрес сервера PostgreSQL: 192.168.0.115 Порт PostgreSQL [5441]: Пользователь БД для платформы [platformpgadmin]: Пароль пользователя БД platformpgadmin [••••••]:
Значения должны совпадать с заданными при установке master-сервера.
7) Экран Тома платформы. Указать каталоги в хосте под тома контейнера.
== Тома платформы == Том для /var/lib/era [/opt/era_01/lib]: Том для /var/log/era [/opt/era_01/log]: Том для /var/lib/era_files/local [/opt/era_01/local]: Том для /var/lib/era_files/rectemp [/opt/era_01/rectemp]: Том для /var/lib/era_files/logstore [/opt/era_01/logstore]: Том для /var/lib/era_files/syncroot [/opt/era_01/syncroot]: Том для /var/lib/era_files/a [/opt/era_01/a]: Том для /var/lib/era_files/b [/opt/era_01/b]: Том для /var/lib/era_files/c [/opt/era_01/c]:
Следует изменить значения по умолчанию, если планом развертки предусмотрено размещение в специфическом смонтированном разделе.
Назначение каталогов описано в инструкции по установке master-сервера.
8) Экран NFS. Указать клиентские каталоги и адрес сервера NFS.
== NFS == Локальный каталог для /var/lib/recpath [/opt/era_01/era_recpath]: Локальный каталог для /var/lib/siteshare [/opt/era_01/era_siteshare]: Локальный каталог для /var/lib/globalshare [/opt/era_01/era_globalshare]: Поднять на этом хосте NFS-сервер? (д/н) [n]: n Адрес сервера NFS: 192.168.0.115
Адрес сервера NFS следует задать тот же, что и при установке master-сервера.
Если сервер NFS поднят на другом хосте с иным постфиксом, укажите пути к его каталогам явно — ключами --recpathnfssrvdir, --sitesharenfssrvdir, --globalsharenfssrvdir: умолчание считается из постфикса этого сервера и при разных постфиксах не подходит.
Роль NFS-сервера на узле включать не следует.
9) Экран Параметры ядра.
== Параметры ядра == Переиспользовать соединения в TIME_WAIT? (д/н) [n]:
10) Экран Проверьте параметры установки. Проверить сводку и план, выбрать «Продолжить».
Что делаем? 1) Продолжить -- начать изменение сервера [*] 2) Изменить... ... Выберите номер:
До этого момента сервер не изменялся.
11) Дождаться выполнения и отчёта контейнера.
== Применение == -> [1/6] Каталоги-тома ... Ждём до 60 с отчёта контейнера об инициализации. Контейнер инициализирован: Install server success!
Если платформа ответит ServInit. Connect to All MICIC fail, значит мастер не видит этот сервер в применённой конфигурации: проверьте, что конфигурация создана, активна и содержит сервер с таким именем и адресом.
12) Посмотреть форму «что изменилось на сервере»: она печатается сразу после применения.
== Что изменилось на сервере == [ ok ] Каталоги-тома 12 в /opt [ ok ] Общие каталоги смонтировано: 3 [ ok ] Параметры ядра fs.inotify.max_user_watches = 10000000 [ ok ] Контейнер платформы era_01, запущен [ ok ] Инициализация платформы Install server success!
[FAIL] означает, что изменение не удалось: инсталлятор завершится с кодом 5, даже если все команды отработали.
Чаще всего это несмонтированный каталог NFS — он не прерывает установку, и без формы его отказ был бы виден только в логе.
Подробнее: manuals:era_installer/install-local.adoc#era-installer-install-local-changes.
13) Сохранить команды, напечатанные в конце: переустановки и удаления этого сервера.
Рядом с логом остаются файл ответов .params и готовая команда .cmd с правами 0600.
Установка завершена!
Можно переходить к установке системы на следующий сервер!
Если система установлена на все серверы, можно переходить к созданию и настройке доменов.