Для работы Платформы НЕЙРОСС необходимо наличие в сети СУБД PostgreSQL версии не ниже 10. СУБД может быть развёрнута как на сервере Платформы, так и на выделенном сервере. В данном руководстве приведены инструкции по установке и настройке СУБД PostgreSQL под ОС Ubuntu 20.04 LTS 64 bit и ОС Astra Linux Special Edition. Порядок настройки СУБД PostgreSQL для работы под управлением перечисленных операционных систем идентичен за исключением используемой версии СУБД.
Установка
Для установки СУБД PostgreSQL из сети Интернет выполните в терминале:
sudo apt update sudo apt install -y postgresql
Настройка учётной записи
Процедура установки и первичной настройки Платформы НЕЙРОСС допускает как подключение к уже существующим базам данных, так и автоматическое создание таких баз данных (рекомендуемый подход). В последнем случае необходимо разрешить доступ к СУБД для учётной записи с правами на создание ролей и баз данных. В СУБД PostgreSQL всегда присутствует корневая учётная запись postgres
, наделённая полными административными правами. В ОС Ubuntu Server 20.04 LTS и Astra Linux Special Edition для данной учётной записи по умолчанию не задан пароль, подключение к СУБД возможно только из терминала соответствующей операционной системы. Ниже приведена инструкция по заданию пароля для административной учётной записи postgres
.
Если СУБД установлена на сервере Платформы, вы можете пропустить данный шаг. На этапе первого запуска Платформы оставьте поле ввода пароля пользователя СУБД пустым.
Выполните команду
psql
от имени пользователяpostgres
с помощьюsudo
:sudo -u postgres psql
Средствами командной строки
psql
выполните:> \password
Введите пароль, нажмите Enter.
- В следующей строке повторите ввод пароля. Пароль задан.
Выйдите из командной строки
psql
:> \q
Настройка удалённого доступа
ВАЖНО
Шаги, описанные в данном разделе, необходимо выполнить ТОЛЬКО тогда, когда СУБД PostgreSQL и Платформа НЕЙРОСС развёрнуты на различных серверах. В случае, если СУБД и Платформа установлены на одном сервере — пропустите инструкцию в данном разделе.
В данном разделе описана процедура разрешения удалённого сетевого подключения к СУБД PostgreSQL версии 10.12. Местоположение конфигурационных файлов PostgreSQL других версий может отличаться.
В терминале откройте конфигурационный файл postgresql.conf для редактирования:
$ sudo nano /etc/postgresql/10/main/postgresql.conf
Найдите в конфигурационном файле параметр listen_addresses и укажите IP-адреса, с которых разрешены входящие подключения. Список должен включать все IP-адреса Платформы НЕЙРОСС. Также возможно разрешить входящие соединения с любого сетевого адреса, указав в значении параметра
'*'
.postgresql.conf#------------------------------------------------------------------------------ # CONNECTIONS AND AUTHENTICATION #------------------------------------------------------------------------------ # - Connection Settings - listen_addresses = '*' # what IP address(es) to listen on; # comma-separated list of addresses; # defaults to 'localhost'; use '*' for all
- Сохраните изменения: нажмите Ctrl+X, введите Y (для подтверждения изменений) и нажмите Enter.
В терминале откройте конфигурационный файл pg_hba.conf для редактирования:
pg_hba.confsudo nano /etc/postgresql/10/main/pg_hba.conf
Отредактируйте существующие разрешения или добавьте новое. Для того чтобы разрешить авторизацию с любого IP-адреса под любым пользователем из подсети 10.0.0.1/13, добавьте строку вида
host all all 10.0.0.1/13 md5
,где 10.0.0.1/13
задаёт префикс IP-адреса, с которых разрешена авторизация (13
— это величина маски подсети, соответствует маске 255.248.0.0). Пример изменённого файла приведён ниже:pg_hba.conf# Database administrative login by Unix domain socket local all postgres peer # TYPE DATABASE USER ADDRESS METHOD # "local" is for Unix domain socket connections only local all all peer # IPv4 local connections: host all all 127.0.0.1/32 md5 host all all 10.0.0.1/13 md5 # IPv6 local connections: host all all ::1/128 md5 # Allow replication connections from localhost, by a user with the # replication privilege. #local replication postgres peer #host replication postgres 127.0.0.1/32 md5 #host replication postgres ::1/128 md5
- Сохраните изменения: нажмите Ctrl+X, введите Y (для подтверждения изменений) и нажмите Enter.
Перезапустите сервис PostgreSQL из терминала:
sudo systemctl restart postgresql.service