Настройка внешних БД для ADB Control
В production-средах рекомендуется использовать внешние базы данных PostgreSQL и ClickHouse для хранения данных ADB Control (см. Query DB и Metrics DB в статье Обзор Arenadata DB Control) по следующим причинам:
-
У вас будет возможность настроить внешние БД на хостах с ресурсами, необходимыми для обеспечения высокой производительности, а также предусмотреть отказоустойчивость (High Availability, HA).
-
Процесс восстановления ADB Control после сбоев будет проходить значительно проще и состоять по большей части из шагов по настройке сервисов.
Ниже приведены шаги, необходимые для настройки внешних БД начиная с версии ADB Control 4.7.5.
PostgreSQL
-
Выполните следующие запросы на стороне PostgreSQL. Запросы следует запускать под дефолтным пользователем
postgres
с правамиsuperuser
:CREATE ROLE <user_name> LOGIN PASSWORD '<user_password>' SUPERUSER; (1) CREATE DATABASE <database_name> WITH owner <user_name>; (2) CREATE SCHEMA adcc; CREATE EXTENSION pgcrypto WITH schema adcc; (3) CREATE EXTENSION btree_gin WITH schema adcc; CREATE EXTENSION pg_trgm WITH schema adcc; GRANT SELECT ON pg_extension TO <user_name>;
1 Создание пользователя <user_name>
с необходимыми правами для подключения к внешней БД.2 Создание базы данных <database_name>
и схемыadcc
в ней для миграции данных ADB Control.3 Создание расширений (extensions) в схеме adcc
и предоставление созданному пользователю<user_name>
прав для их использования.ПРИМЕЧАНИЕИспользование опцииSUPERUSER
при создании пользователя является временным решением и будет устранено в будущем. -
Опционально можно запустить следующий запрос для отключения синхронной записи в WAL-файлы с целью увеличения производительности:
ALTER DATABASE <database_name> SET synchronous_commit = OFF;
где
<database_name>
— имя созданной выше БД. -
Обеспечьте возможность доступа хоста с ADB Control к внешней базе данных PostgreSQL. Для этого на стороне сервера PostgreSQL требуется добавить запись следующего вида в файл pg_hba.conf:
host <database_name> <user_name> <adbc_address> trust
где:
-
<database_name>
— имя созданной выше БД. -
<user_name>
— имя созданного выше пользователя. -
<adbc_address>
— IP-адрес ADB Control с подсетью.
-
-
На странице конфигурирования сервиса ADB Control переведите в активное положение переключатель External database parameters и заполните параметры в открывшемся списке. Назначение параметров описано в разделе Конфигурационные параметры → ADB Control → External database parameters.
Параметры для подключения к внешней БД PostgreSQL -
После заполнения параметров нажмите Save для сохранения конфигурации ADB Control.
-
Выполните установку сервиса ADB Control с помощью сервисного действия Install либо примените действие Reconfigure & Restart к ранее установленному сервису ADB Control.
ClickHouse
-
Выполните следующие запросы для создания пользователя с необходимыми правами на стороне ClickHouse:
CREATE USER <user_name> NOT IDENTIFIED; GRANT SELECT, INSERT, ALTER, CREATE, DROP, TRUNCATE ON *.* TO <user_name>
-
На странице конфигурирования сервиса ADB Control переведите в активное положение переключатель External ADQM parameters и заполните параметры в открывшемся списке. Назначение параметров описано в разделе Конфигурационные параметры → ADB Control → External ADQM parameters.
Параметры для подключения к внешней БД ClickHouse -
После заполнения параметров нажмите Save для сохранения конфигурации ADB Control.
-
Выполните установку сервиса ADB Control с помощью сервисного действия Install либо примените действие Reconfigure & Restart к ранее установленному сервису ADB Control.