Настройка ADCM для использования внешней базы данных

ADCM поддерживает операции с внешними базами данных. В частности, поддерживаются базы данных PostgreSQL.

ВАЖНО
Для использования в продуктовой среде рекомендуется отдельно стоящая база данных PostgreSQL.

Для использования целевой базы данных PostgreSQL должны быть выполнены следующие условия:

  • Пользователь, база данных и пароль пользователя должны быть созданы (DATABASE_USERNAME, DATABASE_NAME, DATABASE_USER_PASSWORD в примере ниже).

  • Пользователь должен обладать правами owner для целевой базы данных PostgreSQL.

CREATE USER <DATABASE_USERNAME> with encrypted password '<DATABASE_USER_PASSWORD>';
CREATE DATABASE <DATABASE_NAME> OWNER <DATABASE_USERNAME>;

Пример запуска ADCM с базой данных PostgreSQL:

$ sudo docker run -d --restart=always -p 8000:8000 -v /opt/adcm:/adcm/data -e DB_HOST="10.92.40.190" -e DB_PORT="5432" -e DB_USER="admin" -e DB_NAME="postgres" -e DB_PASS="admin" --name adcm hub.arenadata.io/adcm/adcm:<version> -e DB_OPTIONS="<DATABASE_OPTIONS>"

где <version> — это версия Docker-образа в одном из следующих форматов:

  • <major>.<minor>.<patch> — если необходим конкретный патч ADCM. Пример: 2.0.0.

  • <major>.<minor> — если необходим последний патч в рамках выбранной версии ADCM. Пример: 2.0.

Вы можете использовать DB_OPTIONS для установления SSL-подключения к базе. Подробная информация о параметрах, доступных для переменной DB_OPTIONS, приведена в статье Установка.

Подготовьте файлы SSL-сертификата и секретного ключа и поместите их в <data_volume>/conf/ssl/. Затем укажите параметры DB_OPTIONS в формате JSON:

DB_OPTIONS='{"sslmode": "verify-full", "sslcert": "/adcm/data/conf/ssl/client.crt", "sslkey": "/adcm/data/conf/ssl/client.key", "sslrootcert": "/adcm/data/conf/ssl/server.crt"}'
ВАЖНО
  • latest использовался для ранних версий ADCM и начиная с версии 2.0.0 больше не поддерживается.

  • До выпуска ADCM 2.0.0 для версионирования использовался следующий формат: YYYY.MM.DD.HH.

Используйте -v /opt/adcm:/adcm/data:Z для SELinux.

Нашли ошибку? Выделите текст и нажмите Ctrl+Enter чтобы сообщить о ней