Смена сервера PostgreSQL
По умолчанию Визион использует для хранения служебной БД сервер PostgreSQL, развёрнутый на том же узле, что и Визион.Сервер.
Также возможно использование следующих решений:
-
Внешний сервер PostgreSQL.
-
Отказоустойчивый кластер PostgreSQL, развёрнутый средствами платформы.
|
На период миграции работа Визион.Сервер будет приостановлена. |
Перед началом работы
Чтобы сократить время миграции, подготовьте внешний сервер PostgreSQL заранее:
-
Убедитесь, что сервер имеет виртуальный IP-адрес или доменное имя, всегда указывающие на мастер.
-
Убедитесь, что мастер доступен из сети Визион по указанному виртуальному IP-адресу или доменному имени.
-
Создайте в СУБД роль
vision:CREATE ROLE vision WITH LOGIN PASSWORD '<password>' CREATEDB SUPERUSER; -
Создайте в СУБД базу данных
vision_db:CREATE DATABASE vision_db OWNER vision ENCODING 'UTF8' LC_COLLATE 'ru_RU.UTF-8' LC_CTYPE 'ru_RU.UTF-8' TEMPLATE template0;
Миграция
На сервере Визион выполните следующие действия:
-
Остановите сервисы, использующие служебную БД:
systemctl stop vision_core systemctl stop vision_alertcollector systemctl stop vision_backup systemctl stop vision_taskdaemon -
Создайте резервную копию служебной БД:
pg_dump -h 127.0.0.1 -p 5432 -U <user> vision_db -F tar > vision_db.tarЗдесь:
-
<user>— имя пользователя-владельца служебной БД; -
vision_db— название служебной БД; -
vision_db.tar— имя файла с архивом резервной копии.
-
-
Остановите локальный сервер PostgreSQL и отключите его запуск при загрузке ОС:
systemctl stop postgresql.service systemctl disable postgresql.service -
Восстановите данные из резервной копии во внешнюю СУБД:
pg_restore -h <server> -p 5432 -U vision -d vision_db -c vision_db.tarЗдесь:
<server>— виртуальный IP-адрес или доменное имя, указывающие на мастер внешнего сервера PostgreSQL. -
В хранилище секретов в значении ключа
vault.database.dsnукажите учётные данные для подключения к внешнему серверу.Пример заполненияvault.database.dsn: 'postgresql://vision:<password>@<host>:5432/vision_db' -
Обновите конфигурацию компонентов Визион:
/opt/skala-r/vision/tools/update_server_configs.sh -
Запустите сервисы Визион:
systemctl start vision_core systemctl start vision_alertcollector systemctl start vision_backup systemctl start vision_taskdaemon