Предварительная подготовка баз данных

До выполнения команды helm install (раздел Установка Системы) необходимо на сервере PostgreSQL выполнить следующие действия:

  1. Создать базу данных {prefix}_ldm_user_folders_db для сервиса ldm-user-folders-service.

  2. Создать базу данных {prefix}_digital_archive_db для сервиса ldm-digital-archive-service.

  3. Создать базу данных {prefix}_long_term_archive_db для сервиса ldm-long-term-archive-service.

  4. Создать базу данных {prefix}_debezium_transfer_db для сервиса ldm-debezium-data-transfer-service.

Примеры команд без паролей/адресов:

sql

CREATE DATABASE {prefix}_ldm_user_folders_db;

CREATE DATABASE {prefix}_digital_archive_db;

CREATE DATABASE {prefix}_long_term_archive_db;

CREATE DATABASE {prefix}_debezium_transfer_db

Примечание: Перед созданием новых БД необходимо выполнить бэкап существующих (если таковые имеются), чтобы избежать потери данных.

Настройка параметров PostgreSQL для Debezium

Для работы коннекторов Debezium необходимо настроить параметры PostgreSQL, отвечающие за репликацию. Для этого необходимо добавить или изменить в файле «postgresql.conf» следующие параметры:

ini
wal_level = logical
max_wal_senders = 20
max_replication_slots = 20

Описание параметров:

  • «wal_level» со значением «logical» – включает логическое декодирование WAL, необходимое для Debezium.

  • «max_wal_senders» – задает максимальное количество одновременных соединений для репликации (WAL sender processes). Значение данного параметра должно быть не меньше значения параметра «max_replication_slots». Рекомендуется устанавливать с запасом (например, 20), особенно если в PostgreSQL уже используются другие реплики.

  • «max_replication_slots» – задает максимальное количество слотов репликации. Каждый коннектор Debezium использует один слот. Так как в Системе создается четыре source-коннектора, значение должно быть не менее 4. Рекомендуется устанавливать с запасом (например, 20), чтобы можно было добавлять новые коннекторы без перезагрузки PostgreSQL.

Важно! Изменение параметров «max_wal_senders» и «max_replication_slots» требует перезагрузки PostgreSQL.