Распределенная установка программного комплексаОсновные принципы распределенной установкиВ Termidesk предусмотрена распределенная установка компонентов в качестве ролей на отдельные серверы или ВМ. |
Установка компонентов Termidesk выполняется в среде функционирования ОС Astra Linux Special Edition 1.7. Распределенно могут устанавливаться следующие компоненты: - универсальный диспетчер (служба
termidesk-vdi); - шлюз подключений (служба
termidesk-wsproxy); - менеджер рабочих мест (службы
termidesk-taskman, termidesk-celery-beat, termidesk-celery-worker).
Перечень условий для распределенной установки: - компонент RabbitMQ-server устанавливается на одном узле с СУБД (в общем случае этот компонент может устанавливаться на отдельный узел, но в рамках настоящей процедуры данный вариант не рассматривается);
- на всех узлах, предназначенных для установки компонентов, настроены статические IP-адреса;
- на всех узлах настроена синхронизация времени от единого источника.
Упрощенная общая схема при распределенной установке Termidesk приведена на рисунке. Перечень обозначенных на схеме компонентов приведен в таблице. 
| Роль | FQDN | Подпись на схеме |
|---|
| Универсальный диспетчер Termidesk 1 | disp1.termidesk.local | Диспетчер 1 | | Универсальный диспетчер Termidesk 2 | disp2.termidesk.local | Диспетчер 2 | | Шлюз Termidesk 1 | gw1.termidesk.local | Шлюз 1 | | Шлюз Termidesk 2 | gw2.termidesk.local | Шлюз 2 | | Менеджер рабочих мест (master) | tsk1.termidesk.local | Менеджер рабочих мест 1 | | Менеджер рабочих мест (slave) | tsk2.termidesk.local | Менеджер рабочих мест 2 | | Балансировщик нагрузки (nginx) | nginx.termidesk.local | Балансировщик | | База данных | db.termidesk.local | Сервер PostgreSQL |
|
Распределенная установка проводится в следующей последовательности: 1) устанавливается узел с компонентами СУБД и RabbitMQ-server (обе службы на одном узле); 2) устанавливается первый узел с универсальным диспетчером Termidesk. При установке диспетчера Termidesk необходимо выбрать роль «Broker» в диалоговом окне псевдографического интерфейса инсталлятора; Настройки первого узла с универсальным диспетчером Termidesk будут использоваться как эталонные для остальных узлов с компонентами Ternidesk (универсального диспетчера, шлюзов, менеджеров ВРМ). Параметры конфигурации Termidesk находятся в файле /etc/opt/termidesk-vdi/termidesk.conf. Нужно скопировать каталог /etc/opt/termidesk-vdi вместе с его содержимым на все узлы, за исключением узлов с СУБД и балансировщиком. |
3) устанавливаются остальные узлы - универсальные диспетчеры Termidesk с копированием файлов, указанных в п.2, с эталонного узла; 4) устанавливаются узлы - шлюзы подключений Termidesk с копированием файлов, указанных в п.2, с эталонного узла. При установке шлюза Termidesk необходимо выбрать роль «Gateway» в диалоговом окне псевдографического интерфейса инсталлятора; 5) устанавливаются узлы - менеджеры ВРМ с копированием файлов, указанных в п.2, с эталонного узла. При установке менеджера ВРМ Termidesk необходимо выбрать роль «Task Manager» в диалоговом окне псевдографического интерфейса инсталлятора (одновременно служба менеджера ВРМ termidesk-taskman должна быть запущена только на одном из узлов!). Заключительным этапом устанавливаются и настраиваются балансировщики нагрузки на базе ОС Astra Linux Special Edition 1.7 и nginx. Для завершения настройки нужно: :~$ sudo systemctl restart rabbitmq-server |
Установка первого узла с универсальным диспетчером TermideskПроцесс установки первого узла с универсальным диспетчером Termidesk аналогичен комплексной установке Termidesk, за исключением выбора только роли «Broker». |
После установки передать каталог /etc/opt/termidesk-vdi на остальные узлы универсальных диспетчеров, шлюзов подключений и менеджеров ВРМ: :~$ sudo scp -r /etc/opt/termidesk-vdi localuser@ipaddr_or_fqdn_host:/home/user/ |
где: -r - ключ для рекурсивной (со вложенными каталогами) передачи;
localuser - имя пользователя целевого узла;
ipaddr_or_fqdn_host - IP-адрес или FQDN целевого узла;
/home/user - путь, куда будет скопирован каталог.
Перед началом установки остальных узлов - универсальных диспетчеров Termidesk необходимо переместить скопированный ранее каталог termidesk-vdi в каталог /etc/opt/: :~$ sudo mv /home/user/termidesk-vdi /etc/opt/ |
Установить остальные узлы с универсальным диспетчером Termidesk по аналогии с первым, но в диалоге подключения к СУБД и заполнения информации о подключении к RabbitMQ-server, выбрать экранную кнопку [Отмена]. Установка узлов - шлюзов подключенийУстановка узлов - шлюзов подключений аналогична комплексной установке Termidesk, за исключением выбора только роли «Gateway». |
После завершения установки изменить настройки запуска службы termidesk-wsproxy: - отредактировать файл
/etc/opt/termidesk-vdi/termidesk.conf , приведя фрагмент файла к виду:
...
# Порт, который будет прослушивать служба termidesk-wsproxy
WSPROXY_PORT=5099
# Адрес, который должна слушать служба termidesk-wsproxy
# при распределённой установке:
WSPROXY_BIND_ADDRESS="0.0.0.0"
... |
- сохранить файл, а затем перезапустить службу:
:~$ sudo systemctl restart termidesk-wsproxy |
Установка узлов - менеджеров ВРМУстановка менеджеров ВРМ производится на два узла, работающих в режиме network failover. |
Установка аналогична комплексной установке Termidesk, за исключением выбора только роли «Task manager». После установки нужно остановить (systemctl stop) и исключить (systemctl disable) службу termidesk-taskman из автоматического запуска: :~$ sudo systemctl stop termidesk-taskman && sudo systemctl disable termidesk-taskman |
Исключение службы из автоматического запуска необходимо, поскольку управление ее состоянием производится скриптами режима высокой доступности. Установка балансировщиковБалансировщики нагрузки необходимы для балансировки клиентских подключений к универсальным диспетчерам и шлюзам, равномерного распределения нагрузки на них. Средой функционирования для балансировщиков нагрузки является ОС Astra Linux Special Edition 1.7. |
Балансировщик nginx устанавливается командой: :~$ sudo apt install -y nginx |
где: -y - ключ для пропуска подтверждения установки.
|