Параметры СУБД#

СУБД PostgreSQL необходима для хранения данных компонентов платформы. Возможно использование уже существующего кластера PostgreSQL, например, развернутого в одном из облачных сервисов управляемых баз данных. Если отдельного кластера PostgreSQL нет, экземпляр СУБД можно средствами платформы развернуть на одном из узлов.

Примечание

СУБД PostgreSQL используется платформой для хранения данных, но не является ее частью. Настройка отказоустойчивой конфигурации PostgreSQL в этом руководстве не рассматривается. Для получения соответствующих инструкций обращайтесь к документации PostgreSQL.

Развертывание средствами платформы#

Чтобы средствами платформы развернуть экземпляр СУБД на отдельном узле, выполните следующие действия:

  1. Создайте в инвентаре секцию [database] и добавьте в нее сведения об узле, например:

    [database]
    rdbs.example.com   ansible_host=192.0.2.101
    

    Важно

    Узел, используемый для развертывания PostgreSQL, не должен использоваться для других целей, например, запуска заданий или управления контроллером.

  2. В секции [all:vars] укажите значения параметров подключения к СУБД.

Внешняя СУБД#

Если у вас уже есть кластер PostgreSQL, выполните следующие действия:

  1. Создайте в кластере PostgreSQL пользователей и принадлежащие им базы данных для используемых компонентов платформы.

  2. Убедитесь, что в инвентаре установщика секция [database] существует, но не содержит узлов.

  3. В секции [all:vars] укажите значения параметров подключения к СУБД.

Параметры подключения к PostgreSQL#

Параметры подключения Astra Automation Controller и Private Automation Hub к СУБД задаются в секции [all:vars]:

[all:vars]
# СУБД для Astra Automation Controller
pg_host = ''
pg_port = 5432
pg_database = 'aac'
pg_username = 'aac'
pg_password = ''
pg_sslmode = 'prefer'
postgres_use_ssl = True
postgres_ssl_cert = <path_to_SSL_cert>
postgres_ssl_key = <path_to_SSL_key>

# СУБД для Automation Hub
automationhub_pg_host = '192.0.2.101'
automationhub_pg_port = '5432'
automationhub_pg_database = 'automationhub'
automationhub_pg_username = 'automationhub'
automationhub_pg_password = 'hubpgpassword'
automationhub_pg_sslmode = 'prefer'

Здесь:

  • pg_host и automationhub_pg_host – IP-адреса или FQDN серверов СУБД для Astra Automation Controller и Private Automation Hub соответственно.

    Значение по умолчанию – пустая строка (используется локальное подключение).

  • pg_port и automationhub_pg_port – порты для подключения к серверам СУБД для Astra Automation Controller и Private Automation Hub соответственно.

    Значение по умолчанию – 5432.

  • pg_database и automationhub_pg_database – названия БД для Astra Automation Controller и Private Automation Hub соответственно.

  • pg_username и automationhub_pg_username – названия учетных записей пользователей БД Astra Automation Controller и Private Automation Hub соответственно.

  • pg_password и automationhub_pg_password – пароли пользователей БД Astra Automation Controller и Private Automation Hub соответственно.

    При использовании локального подключения пароль указывать не требуется.

  • pg_sslmode и automationhub_pg_sslmode – режим использования SSL.

    Может принимать следующие значения:

    • prefer – подключение к БД будет защищено с помощью SSL, если использование шифрования поддерживается настройками сервера (по умолчанию);

    • verify-full – защита подключения с помощью SSL необходима, производится строгая верификация сервера.

  • postgres_use_ssl – использование SSL при подключении к БД Astra Automation Controller:

    • True – включено;

    • False – выключено.

  • postgresql_ssl_cert – полный путь к файлу сертификата SSL, используемого для защиты подключения к СУБД Astra Automation Controller.

  • postgresql_ssl_key – полный путь к файлу ключа для сертификата SSL, используемого для защиты подключения к СУБД Astra Automation Controller.

    Примечание

    Файлы сертификата и его ключа должны размещаться в каталоге /opt/rbta/aa/astra-automation-setup/ или одном из его подкаталогов.

    Подробности о поддерживаемых параметрах шифрования см. в документации PostgreSQL.