Руководство администратора
Установка программы
Для установки и работы ПО «Скала^р Геном» требуется операционная система ALT Linux Server 8 СП p10 (c10f1), Astra Linux Special Edition версий 1.7.3 (Орёл), 1.7.5 и 1.8.1, RedOS 7.3, RedOS 7.3 сертифицированный.
Минимальные требования к устройству (виртуальной машине):
-
CPU: от 4 ядер;
-
RAM: от 16 Гб;
-
ROM: от 100 Гб SSD;
-
NET: от 1 Гбит/с Ethernet.
Используемые сетевые порты
Порты, необходимы для нормальной работы:
| Порт | Протокол | Направление | Назначение |
|---|---|---|---|
22 |
SSH |
I/O |
SSH-подключение к модулю управления Геном |
5432 |
TCP |
I/O |
PostgreSQL БД модуля управления Геном |
48800 |
TCP |
I/O |
REST API модуля управления Геном |
50888 |
TCP |
I/O |
Web-интерфейс модуля управления Геном |
15000-16000 |
HTTP |
I/O |
IPMI proxies для управления серверами |
Дополнительные порты:
| Порт | Протокол | Направление | Назначение |
|---|---|---|---|
443 |
HTTPS |
I/O |
Web-интерфейс с подключённым SSL-сертификатом |
Ход развёртывания
-
Открыть терминал.
-
Проверить тип и версию установленной ОС:
cat /etc/os-release -
Проверить наличие свободного места для установки модуля управления ПО «Скала^р Геном»:
df -h -
Перейти в домашний каталог пользователя
root:cd /root/ -
Загрузить файл дистрибутива модуля управления ПО «Скала^р Геном» из репозитория.
-
Вывести список файлов в директории и проконтролировать наличие файла
genome-installer.runи прав доступа к нему:ls -al -
Разрешить выполнение файла
genome-installer.run:chmod +x genome-installer.run -
Запустить выполнение файла
genome-installer.run:./genome-installer.runНачнётся процесс распаковки и установки модулей:
-
По завершении выполнения скрипта появится окно выбора опций, в котором выбрать нужную (здесь и далее, в случае необходимости, выбор подтверждается нажатием клавиши ПРОБЕЛ с последующим появлением символа «*» в соответствующем столбце):
-
USE_DNSMASQ — настройки сервисов dnsmasq, таких как DNS, DHCP и tftp (не обязательно для Геном);
-
CREATE_PXE — создание образов для загрузки по PXE (не обязательно для Геном);
-
USE_SSO — настройка интеграции с сервисом аутентификации Keycloak (можно отключить, если авторизация не требуется);
-
CHANGE_PG_SETTINGS — настройка параметров PostgreSQL (если опция отключена, будут использованы параметры по умолчанию.
-
-
Если выбрана опция USE_DNSMASQ, то отобразится окно выбора интерфейса в сети MGMT:
-
Если выбрана опция CREATE_PXE, то отобразится окно выбора интерфейса в сети PXE:
-
Выполнить ввод параметров развёртывания:
-
GNM_PXE_ADDRESS — IP-адрес ПО "Скала^р Геном", предназначенный для первоначальной загрузки хостов будущего кластера через PXE-сеть в случае, если условиями развёртывания предусмотрено наличие отдельной PXE-сети. В случае отсутствия PXE-сети в среде развёртывания, должен совпадать с основным адресом ПО "Скала^р Геном";
-
GNM_MGMT_ADDRESS — IP-адрес модуля управления ПО «Скала^р Геном»;
-
PGHOST — IP-адрес PostgreSQL;
-
PGUSER — имя пользователя PostgreSQL;
-
PGDATABASE — имя базы данных PostgreSQL;
-
PGPORT — порт PostgreSQL;
-
PGPASSWORD — пароль PostgreSQL;
-
PATH_PG — путь к файлам PostgreSQL;
-
PATH_PGSQL_CONF — путь к файлу настроек БД PostgreSQL;
-
PATH_PGHBA_CONF — путь к файлу настроек доступа к БД PostgreSQL;
-
PG_TRUSTED_NETWORK — доверенная сеть PostgreSQL (значение поля должно быть записано в формате CIDR, с указанием маски, например
127.0.0.1/32); -
DNSMASQ_PXE_INTERFACE — сетевой интерфейс, на котором будут запущены сервисы DHCP, tftp;
-
DNSMASQ_MGMT_INTERFACE — сетевой интерфейс, на котором будет запущен сервис DNS;
-
DNSMASQ_FIRST_IP — начальный IP-адрес диапазона DHCP DNSMasq;
-
DNSMASQ_LAST_IP — конечный IP-адрес диапазона DHCP DNSMasq;
-
HTML_NGINX_ROOT — путь к корневому каталогу html, в котором находятся бинарные артефакты;
-
PXE_TFTP_ROOT — путь к корневому каталогу tftp, из которого раздаются бинарные артефакты при загрузке;
-
SSO_PROVIDER — поставщик услуг SSO;
-
SSO_IP — IP-адрес SSO;
-
SSO_PORT — порт SSO;
-
SSO_CLIENT_SECRET — секретный ключ SSO.
-
-
После ввода всех необходимых данных нажать кнопку ОК.
Должен начаться процесс настройки.
-
Дождаться завершения процесса настройки.
-
Перейти в браузер и ввести IP-адрес, установленный в поле GNM_ADDRESS п. 1.4.12 (порт 50888).
Должен открыться интерфейс модуля управления ПО «Скала^р Геном».
Если в процессе выполнения пп. 1.4.9 и 1.4.12 было установлено использование SSO, то отобразится окно авторизации:
Для доступа к интерфейсу модуля управления ПО "Скала^р Геном" ввести логин, пароль и нажать кнопку Войти.
Модуль управления "Скала^р Геном" считается успешно установленным, если после отображения интерфейса нет уведомлений об ошибках.
Конфигурация
Конфигурирование модуля управления ПО «Скала^р Геном» производится посредством редактирования файла genome.json.
Назначение полей файла конфигурации genome.json следующее:
| Поле | Значение |
|---|---|
mp_chroot |
Путь для монтирования устройства, куда будет устанавливаться ОС на этапе LiveCD |
genome_ip |
Текущий IP-адрес Геном в сети Управления |
chroot_env |
Строка chroot с установкой необходимых переменных |
genome_nginx_path |
Путь до каталога html, в котором находятся бинарные артефакты |
mbd_data_request_limit |
Лимит запросов (для МБД.П) |
genome_env |
Раздел настройки установки Геном |
GNM_PXE_ADDRESS |
Текущий IP в сети PXE |
GNM_MGMT_ADDRESS |
Текущий IP в сети Управления |
CHANGE_PG_SETTINGS |
Изменение параметров PostgreSQL по умолчанию (true/false) |
PGHOST |
IP-адрес подключения к PostgreSQL Геном |
PGUSER |
Имя пользователя PostgreSQL |
PGDATABASE |
Имя БД PostgreSQL |
PGPORT |
Порт PostgreSQL |
PGPASSWORD |
Пароль пользователя PostgreSQL |
PATH_PG |
Путь к каталогу данных PostgreSQL |
PATH_PGSQL_CONF |
Путь к файлу |
PATH_PGHBA_CONF |
Путь к файлу |
PG_TRUSTED_NETWORK |
Доверенная подсеть PostgreSQL, из которой не требуется ввод пароля |
DNSMASQ_PXE_INTERFACE |
Интерфейс, на котором запущены DHCP и tftp сервисы, предоставляемые DNSMasq |
DNSMASQ_MGMT_INTERFACE |
Интерфейс, на котором запущен DNS сервис, предоставляемый DNSMasq |
USE_DNSMASQ |
Включение и настройка DNSMasq при установке Геном (true/false) |
DNSMASQ_FIRST_IP |
Начальный IP-адрес DHCP пула адресов |
DNSMASQ_LAST_IP |
Конечный IP-адрес DHCP пула адресов |
CREATE_PXE |
Создание образа и настройка PXE (true/false) |
HTML_NGINX_ROOT |
Путь до каталога html, в котором находятся бинарные артефакты |
PXE_TFTP_ROOT |
Путь до каталога tftp |
USE_SSO |
Настройка подключения к SSO сервису (true/false) |
SSO_PROVIDER |
Поставщик услуг SSO |
SSO_IP |
IP-адрес SSO |
SSO_PORT |
Порт SSO |
SSO_CLIENT_SECRET |
Секретный ключ SSO |
Логирование
Команда
journalctl -u genome_ng
показывает логи модуля управления ПО «Скала^р Геном» на уровне DEBUG.
В каталоге /opt/skala-r/genome/logs находятся логи с ротацией приложения, в том числе там находится каталог sessions (/opt/skala-r/genome/logs/sessions), в котором находятся логи развёртываний по id сессии.
Смена пароля служебной БД
-
Подключиться по SSH к машине, на которой установлен Геном. Для этого необходимо запустить консоль/терминал и выполнить команду подключения по SSH:
ssh root@xxx.xxx.xxx.xxxгде
xxx.xxx.xxx.xxx— IP-адрес узла, на котором установлен Геном: -
Подключиться к базе данных пользователем postgres командой:
psql -U postgres -
Сменить пароль на необходимый, выполнив следующий запрос:
ALTER USER postgres with password '1234567890';где
1234567890— устанавливаемый пароль: -
Активировать виртуальное окружение:
source /opt/skala-r/genome/python-modules/bin/activate -
После запуска виртуального окружения открыть для редактирования файл
.vault_store:ansible-vault edit /opt/skala-r/genome/.vault_storeПосле ввода команды появится уведомление о необходимости ввода пароля доступа к файлу
.vault_store. -
Ввести пароль и нажать Enter.
Пароль доступа к файлу устанавливается на этапе сборки инсталлятора Генома.
-
После успешного ввода пароля доступа к файлу
.vault_storeотобразится окно редактирования доступов. -
Отредактировать пароль к служебной БД, изменив значение после двоеточия в строке
pgpassword. -
Сохранить изменения в файле и выйти из режима редактирования.
-
Выйти из виртуального окружения:
deactivate -
Перезапустить сервис
genome_ng.service:systemctl restart genome_ng.service
Настройка конфигураций систем управления доступом
Настройка конфигурации Avanpost
В конфигурационный файл /opt/skala-r/genome/configuration/genome.json необходимо внести следующие изменения.
В ключе auth необходимо указать:
-
enabled — установить значение
true. -
auth_server — URL Avanpost, например:
http://fam.skala-r.tech -
client_id — ID приложения.
-
client_secret — значение является ключом из хранилища секретов. Не изменять.
-
cert — использование сертификата.
Пример секции авторизации в файле /opt/skala-r/genome/configuration/genome.json:
"auth": {
"enabled": true,
"client_id": "dc16aebe-6f76-4c0d-9013-a1e7b73a078c",
"client_secret": "ti5VQwkKZY63yix",
"auth_server": "http://fam.skala-r.tech",
"realm": "",
"cert": false
}
Для применения настроек необходимо перезапустить сервис genome_ng.service:
systemctl restart genome_ng.service
Отключение функции регистрации и восстановления пароля
В версии Avanpost v1.10.10.379 отключение Регистрации на странице аутентификации пользователя осуществляется через конфигурационный файл Avanpost, пример пути конфигурационного файла: /opt/idp/config.toml:
[selfregistration]
redirectUrl = 'https://<your_redirect_URL_after_registration>'
disabled = false
Функция Восстановления пароля в данной версии отключается через редактирование шаблона страницы аутентификации.
Настройка конфигурации Keycloak
В конфигурационный файл /opt/skala-r/genome/configuration/genome.json необходимо внести следующие изменения.
В ключе auth необходимо указать:
-
enabled — установить значение
true. -
auth_server — URL Keycloak, например:
http://192.168.191.19:8080 -
client_id — ID приложения.
-
client_secret — значение является ключом из хранилища секретов. Не изменять.
-
realm — realm.
-
cert — использование сертификата.
Пример секции авторизации в файле /opt/skala-r/genome/configuration/genome.json:
"auth": {
"enabled": true,
"client_id": "genome-client",
"client_secret": "hdXveZ8ydq0QrVHdQuLFfz2MhIpN3SvN",
"auth_server": "http://192.168.191.19:8080",
"realm": "genome",
"cert": false
}