Руководство по установке#

Модуль «Реестровые записи» – это веб-приложение, обеспечивающее формирование и ведение юридически значимых реестров, формирование реестровой записи в качестве результата оказания услуги, согласование и подписание реестровой записи, предоставление сведений из реестров в виде выписок.

Особенности развертывания#

В модуле «Реестровые записи» реализована поддержка технологии Kubernetes (K8s или K3s) для автоматизации развертывания, масштабирования и управления контейнеризированными приложениями. Платформа Kubernetes выступает в роли оркестратора, который координирует работу множества изолированных контейнеров (например, Docker) на нескольких серверах, обеспечивая их бесперебойную работу, балансировку нагрузки и самовосстановление.

Это позволяет обеспечивать следующие преимущества:

  • упрощение и ускорение обновления новый версий ПО;

  • автоматическое горизонтальное масштабирования ПО в зависимости от нагрузки;

  • повышение доступности (отказоустойчивости) ПО;

  • непрерывность бизнес-процессов (минимизация времени простоя при обновлении ПО).

Модуль поддерживает две технологии развертывания в зависимости от доступных аппаратных ресурсов:

  • Kubernetes (целевой):

    • Контейнеризация: все компоненты упакованы в Docker-контейнеры.

    • Оркестрация: управление через Kubernetes.

    • Автоматизация: Helm-чарты из Harbor, который является реестром образов Docker-контейнеров ПО и Helm-чартов ПО для Kubernetes.

  • Docker (резервный):

    • Контейнеризация: все компоненты упакованы в Docker-контейнеры.

    • Оркестрация: управление через Docker Compose.

    • Автоматизация: развертывание через Ansible.

Распределение мощностей#

При максимальном режиме распределения мощностей обеспечивается полная сохранность данных и бесперебойная работа с реестрами.

../../../_images/registry_entries_4.png

Схема развертывания:

../../../_images/registry_entries_5.png

Технические требования к серверной инфраструктуре#

Виртуальный сервер приложения:

  • Операционная система: Astra Linux Special Edition не ниже 1.7.6;

  • CPU: 12 логических процессоров (не менее 2.3 ГГц);

  • RAM: 16 GB;

  • Дисковое пространство: не менее 512 GB HDD.

Виртуальный сервер мастер ноды k8:

  • Операционная система: Astra Linux Special Edition не ниже 1.7.6;

  • CPU: 4 логических процессора (не менее 2.3 ГГц);

  • RAM: 8 GB;

  • Дисковое пространство: не менее 150 GB HDD.

Виртуальный сервер базы данных:

  • Операционная система: Astra Linux Special Edition не ниже 1.7.6;

  • CPU: 8 логических процессоров (не менее 2.3 ГГц);

  • RAM: 16 GB;

  • Дисковое пространство: не менее 1 TB SSD.

Виртуальный сервер файлового хранилища:

  • Операционная система: Astra Linux Special Edition не ниже 1.7.6;

  • CPU: 10 логических процессоров (не менее 2.3 ГГц);

  • RAM: 16 GB;

  • Дисковое пространство: 10 TB SAS HDD (в составе RAID1).

Для обеспечения надежности хранения данных рекомендуется сформировать 2 СХД RAID1 с дисками SAS HDD 20 Тб и подключить к каждому сервер файлового хранилища, и дополнительно подключить СХД RAID5 SAS HDD/SATA HDD 15 Тб для зеркалирования данных с RAID1.

Дополнительно необходимо учесть для операционной системы и гипервизора ОЗУ от 16 Гб и от 8 логических процессоров.

Особенности использования ОС «Альт СП Сервер» для модуля «Реестровые записи»:

  • Использование для сервера СУБД без изменений в качестве альтернативы платному PostgresPRO – поддерживается и аттестуется.

  • Использование для сервера(ов) приложений реестровых записей возможно только со специальной лицензией – «Альт СП Сервер» релиз 10 с правом использования виртуализации (контейнеризации):

    • эта лицензия дает возможность из сертифицированного репозитория Альт СП установить Kubernetes, на который ставятся приложения реестровых записей;

    • Альт СП не содержит в своем сертифицированном репозитории Docker, поэтому сервер с этой ОС не пройдет аттестацию с приложениями, которым необходим Docker. Это означает, что существующие сервера для Geometa, использующие Docker, нельзя переводить на Альт СП, если требуется аттестация ГИС, проведение которой неизбежно на определенном этапе жизненного цикла системы.

  • Функционально Система может работать на любой российской Linux-based ОС. Ключевым фактором выбора являются особенности аттестации ГИС при использовании ОС «Альт СП» от «Базальт СПО».

Требования к совместимости с СУБД#

Поддерживаемые платформы СУБД: PostgreSQL 15, Postgres PRO Certified 15.

В целях обеспечения аттестации информационной системы, в состав которой входит модуль, для серверов СУБД поддерживаются следующие программные конфигурации:

  • Postgres PRO Certified 15 под управлением ОС Astra Linux 1,7+, 1.8+, РедОС 7+, 8+, Альт СП Сервер;

  • Postgres 15 из сертифицированного репозитория ОС «Альт СП Сервер» под управлением ОС «Альт СП Сервер».

Установка#

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

  1. Убедитесь в наличии модуля Module.RegistryEntries. Модуль уже присутствует, если вы получили пакет с дистрибутивами для проекта.

  2. В файле vars.yml переопределите для переменных Ansible значения своего проекта.

Название переменной

Значение по умолчанию

Описание переменной

vars.yml:

gvREGISTRY_ENTRIES_INSTALL_DIR

/opt/RegistryEntries

Директория, в которую будет установлен модуль

gvREGISTRY_ENTRIES_PUBLIC_ORIGIN

https://registry-entries-{{ gvNGINX_FQDN }}

URL-адрес, по которому доступен веб-интерфейс реестровых записей

gvREGISTRY_ENTRIES_MINIO_USER_LOGIN

minio123

Логин пользователя файлового хранилища (Minio)

gvREGISTRY_ENTRIES_MINIO_USER_PASS

minio123

Пароль пользователя файлового хранилища (Minio)

gvREGISTRY_ENTRIES_PROJECT_ALIAS

shkotovsky_mr

Системное имя проекта, на который устанавливается модуль

gvREGISTRY_ENTRIES_NAME

Реестровые записи

Название приложения, которое будет отображаться в шапке страницы

vars_default.yml:

tv_REGISTRY_ENTRIES_RUNDIR

/home/{{ ansible_user }}/RegistryEntries

gvREGISTRY_ENTRIES_CONNECTION_STRING

{{ gvCONNECTION_STRING }}

Строка подключения к БД для модуля. По умолчанию используются параметры из секции установки postgres

gvREGISTRY_ENTRIES_GEOMETA_CONNECTION_STRING

{{ gvCONNECTION_STRING }}

gvREGISTRY_ENTRIES_MINIO_EXTERNAL_PORT

9090

Порт, по которому доступен WebUI (Minio)

gvREGISTRY_ENTRIES_MINIO_CONSOLE_EXTERNAL_PORT

9001

Порт, по которому доступен API (Minio)

gvREGISTRY_ENTRIES_NGINX_ENABLE

true

Необходимость в создании конфигурационного файла для Nginx’а. Возможные значения: true или false

gvREGISTRY_ENTRIES_BACK_EXTERNAL_PORT

5191

Внешний порт, по которому доступен контейнер с backend частью приложения

gvREGISTRY_ENTRIES_FRONT_EXTERNAL_PORT

5190

Внешний порт, по которому доступен контейнер с frontend частью приложения

gvREGISTRY_ENTRIES_MINIO_DATA

./data/minio

Директория для хранения данных Minio

gvREGISTRY_ENTRIES_DOCS_EXTERNAL_PORT

5192

  1. Выполните установку с помощью тега install_registryentries.