Запуск Pilot-Server в кластерном режиме
Данная функциональность доступна только для пользователей Pilot-ICE Enterprise и Pilot-BIM. Для получения лицензий обратитесь к поставщику ПО АСКОН. |
Предварительно рекомендуем ознакомиться с описанием Архитектуры кластерного режима работы Pilot-Server. |
Для начала работы необходимо создать пользователя в PostgreSQL, от имени которого будет осуществляться миграция и подключение к базе данных. Пользователь должен обладать правами на создание базы данных (CREATEDB), входа на сервер (LOGIN) без ограничения количества подключений (CONNECTION LIMIT -1).
Для работы пользователя с базой данных будут необходимы права SELECT, INSERT, UPDATE, DELETE, CONNECT.
Для возможности работы скриптов обновления дополнительно потребуются права CREATE, REFERENCES.
Миграция базы данных
Миграция осуществляется из файлов *.dbp подготовленной базы данных. Если такой базы нет, то можно воспользоваться одной из демонстрационных баз. Для миграции необходимо использовать консольное приложение PostgresMigration, которое поставляется в составе дистрибутива сервера. Это приложение:
- создаст базу данных в PostgreSQL и скопирует туда данные из *.dbp файлов базы данных;
- проверит соответствие версии *.dbp-файла базы данных версии сервера. При несоответствии выведет ошибку;
- создаст конфигурационную базу данных в PostgreSQL для хранения настроек кластера Pilot-Server.
Запуск консольного приложения PostgresMigration:
PostgresMigration [settingsFileName] [pgConnectionString] [redisConnectionString] [configDbName] [adminLogin] [adminPassword]
Перед запуском PostgresMigration необходимо выполнить остановку Pilot-Server, к которому подключены мигрируемые базы *.dbp. |
Параметры запуска PostgresMigration:
Параметр | Описание | |
---|---|---|
settingsFileName | Путь к файлу settings.xml с подключенной к Pilot-Server базой данных *.dbp. | |
pgConnectionString | Строка подключения к PostgreSQL с параметрами: | |
Host | Адрес сервера PostgreSQL. Можно указывать несколько адресов через запятую. | |
Username | Имя созданного пользователя PostgreSQL. Например, pilotuser. | |
Password | Пароль. | |
Include Error Detail | Получение детализированных описаний ошибок PostgreSQL. Рекомендуемое значение: true. | |
Pooling | Включение пуллинга. Рекомендуемое значение: true. | |
Connection Lifetime | Время жизни подключений к PostgreSQL. Рекомендуемое значение: 0. | |
Keepalive | Поддержание соединения к PostgreSQL. Рекомендуемое значение: 3. | |
DataBase | Имя служебной (default) базы PostgreSQL. Значение по умолчанию - postgres. | |
redisConnectionString | Строка подключения к Redis. | |
configDbName | Имя конфигурационной базы для хранения настроек кластера Pilot-Server. Например, configurationdb. | |
adminLogin | Логин администратора Pilot-Server. | |
adminPassword | Пароль администратора Pilot-Server. |
В результате миграции будет создана конфигурационная база данных с именем, указанным в параметре configDbName, к которой будет осуществлять подключение Pilot-Server, и мигрированные базы данных с именами, указанными в settings.xml.
Консольное приложение PostgresMigration выполнит миграцию всех баз данных *.dbp, сохраненных Pilot-Server в settings.xml. Если какие-то базы не требуется мигрировать на PostgreSQL, то их необходимо отсоединить от Pilot-Server до запуска PostgresMigration. |
Пример запуска миграции на ОС Linux:
$ cd [путь_к_серверу]
# chmod +x PostgresMigration
# ./PostgresMigration ./settings.xml "Host=onepostgres:5432, twopostgres:5432, threepostgres:5432; Username=pilotuser; Password=password; Include Error Detail=true; Pooling=true; Connection Lifetime=0; Keepalive=3; DataBase=postgres" "myredis:6379, password=password" configurationdb root root
Если после миграции файловые архивы были перенесены в другое расположение, то в конфигурационной базе нужно также указать новый путь. |
Запуск Pilot-Server
После того как база данных была мигрирована на PostgreSQL , можно запускать Pilot-Server с параметрами:
Команда и параметры | Описание | |
---|---|---|
--pgConnectionString | Строка подключения к конфигурационной базе PostgreSQL с параметрами: | |
Host | Адрес сервера PostgreSQL. Можно указывать несколько адресов. | |
Username | Имя созданного пользователя PostgreSQL. Например, pilotuser. | |
Password | Пароль. | |
Include Error Detail | Получение детализированных описаний ошибок PostgreSQL. Рекомендуемое значение: true. | |
Pooling | Включение пуллинга. Рекомендуемое значение: true. | |
Connection Lifetime | Время жизни подключений к PostgreSQL. Рекомендуемое значение: 0. | |
Keepalive | Поддержание соединения к PostgreSQL. Рекомендуемое значение: 3. | |
DataBase | Имя конфигурационной базы для хранения настроек кластера Pilot-Server Например, configurationdb. | |
--indexPath | Путь для хранения индексов Pilot-Server. | |
--httpPort | HTTP порт. | |
--httpsPort | HTTPS порт. |
Пример команды запуска Pilot-Server для работы с PostgreSQL на ОС Linux:
$ cd [путь_к_серверу]
# chmod +x Ascon.Pilot.Daemon
# ./Ascon.Pilot.Daemon --pgConnectionString="Host=mypostgres:5432; Username=pilotuser; Password=password; Include Error Detail=true; Pooling=true; Connection Lifetime=0; Keepalive=3; DataBase=configurationdb" --httpPort="5545" --httpsPort="5548" --indexPath=.\Indexes
Обновление Pilot-Server
Перед обновлением необходимо сделать резервную копию базы банных PostgreSQL.