Параметры инвентаря#

Настройки развертывания платформы Astra Automation задаются в конфигурационном файле inventory, доступного в следующих каталогах:

  • /opt/rbta/aa/astra-automation-setup/ – при использовании интернет-репозиториев ПАО Группа Астра;

  • в корневом каталоге распакованного архива – при использовании оффлайн-установщика.

Файл inventory это обычный инвентарь в формате INI, а значит, при описании настроек узлов вы можете использовать все возможности, предоставляемые Ansible при работе с файлами этого типа.

При указании имен файлов рекомендуется использовать полные пути. Относительные пути рассчитываются по отношению к каталогу, в котором находится файл inventory.

Общие принципы заполнения инвентаря#

Настройки компонентов платформы можно задавать на следующих уровнях:

  • Для всех узлов.

    Настройки из секции [all:vars] называются глобальными, потому что они действуют на все узлы, указанные в инвентаре.

  • Для группы узлов.

    Чтобы задать настройки для всех узлов определенной группы, создайте соответствующую секцию. Название секции формируется по следующему принципу:

    [<group>:vars]
    

    Здесь <group> – название группы узлов.

    Например, чтобы задать настройки для узлов из группы main создайте секцию [main:vars]:

    [main]
    node1.example.com   ansible_host=192.168.56.1
    node2.example.com   ansible_host=192.168.56.2
    node3.example.com   ansible_host=192.168.56.3
    
    [main:vars]
    ansible_user=administrator
    ansible_ssh_private_key=/path/to/ssh/private/key
    

    Эта запись эквивалентна следующей:

    [main]
    node1.example.com   ansible_host=192.168.56.1   ansible_user=administrator   ansible_ssh_private_key=/path/to/ssh/private/key
    node2.example.com   ansible_host=192.168.56.2   ansible_user=administrator   ansible_ssh_private_key=/path/to/ssh/private/key
    node3.example.com   ansible_host=192.168.56.3   ansible_user=administrator   ansible_ssh_private_key=/path/to/ssh/private/key
    
  • Для отдельных узлов в соответствующих строках.

При определении значений настроек используется следующий порядок:

  1. глобальные настройки;

  2. настройки группы;

  3. настройки отдельных узлов.

Более поздние значения перезаписывают более ранние.

Настройки подключения#

Тип подключения к узлам платформы задается в настройке ansible_connection:

  • local – локальное подключение к узлу. Используется только в том случае, когда все компоненты платформы развертываются на одном узле.

  • ssh – подключение с использованием протокола SSH (по умолчанию).

  • paramiko – подключение с использованием протокола Paramiko.

Основные настройки подключения#

Для всех типов подключения возможно использование следующих дополнительных настроек:

  • ansible_host – IP-адрес управляемого узла.

  • ansible_port – номер порта, через который следует выполнять подключение к управляемому узлу. При использовании протокола SSH значение по умолчанию – 22.

  • ansible_user – название учетной записи, от имени которой следует выполнять подключение к управляемому узлу.

  • ansible_password – пароль учетной записи.

Настройки протокола SSH#

Для протокола SSH доступны следующие настройки:

  • ansible_scp_extra_args – дополнительные аргументы вызова утилиты scp.

  • ansible_sftp_extra_args – дополнительные аргументы вызова утилиты sftp.

  • ansible_ssh_common_args – дополнительные аргументы вызова утилит ssh, scp и sftp.

  • ansible_ssh_executable – путь к исполняемому файлу утилиты ssh, который следует использовать вместо системного.

  • ansible_ssh_extra_args – дополнительные аргументы вызова утилиты ssh.

  • ansible_ssh_pipelining – сокращение количества операций подключения к управляемым узлам за счет выполнения некоторых модулей без копирования файлов:

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

    • false – выключено (по умолчанию).

  • ansible_ssh_private_key_file – путь к файлу приватного ключа SSH.

Повышение привилегий#

Для выполнения некоторых операций требуются повышенные привилегии. Способы их получения задаются в следующих настройках:

  • ansible_become – принудительное использование повышения привилегий;

  • ansible_become_exe – путь к исполняемому файлу, используемому для повышения привилегий;

  • ansible_become_flags – дополнительные флаги, используемые для выбранного метода повышения привилегий;

  • ansible_become_method – метод повышения привилегий;

  • ansible_become_user – название учетной записи, используемой для повышения привилегий;

  • ansible_become_password – пароль учетной записи, используемой для повышения привилегий.

Настройки окружения удаленных узлов#

Параметры выполнения сценариев Ansible на управляемых узлах задаются в следующих настройках:

  • ansible_shell_type – тип оболочки на управляемом узле:

    • csh;

    • fish;

    • sh (по умолчанию).

    Важно

    Значение этой настройки нужно изменять только если значением настройки ansible_shell_executable выбрана оболочка, не совместимая с sh.

  • ansible_shell_executable – путь к командному интерпретатору.

    Важно

    Значение этой настройки нужно изменять только в том случае, когда использование /bin/sh по какой-либо причине невозможно.

    Значение по умолчанию – /bin/sh.

Группы узлов#

Настройки узлов для отдельных компонентов платформы задаются в соответствующих секциях:

  • Automation Controller:

    • [automationcontroller] – узлы плоскости управления;

    • [execution_nodes] – исполняющие узлы;

    • [instance_group_<name>] – группа исполняющих узлов;

    • дополнительные группы для промежуточных и исполняющих узлов.

  • Private Automation Hub – [automationhub].

  • СУБД – [database].

    На указанном узле средствами платформы будет развернута СУБД PostgreSQL, а в ней создана база данных для Automation Controller.

    [database]
    rdbs.example.com   ansible_host=192.168.56.101
    

    Важно

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

    Если для хранения баз данных используется сторонний сервис, секцию [database] нужно создать, но оставить пустой.

Настройки Automation Controller#

Настройки узлов Automation Controller задаются в соответствующих секциях, а учетные данные администратора, настройки подключения к СУБД и настройки SSO – в секции [all:vars].

Настройки узлов#

Для узлов Automation Controller доступны дополнительные настройки – тип узла (node_type) и связанная группа узлов (peers).

  • node_typeтип узла.

    • control – управляющий;

    • execution – исполняющий;

    • hop – промежуточный;

    • hybrid – гибридный.

    Для узлов из секции [automationcontroller] можно использовать только типы control и hybrid (по умолчанию).

    Для узлов из секции [execution_nodes] можно использовать только типы hop и execution (по умолчанию).

  • peers – название связанной группы узлов.

    С помощью peers настраивается связь между плоскостью управления и группами исполняющих узлов.

    Пример использования настройки peers см. в описании развертывания кластера Automation Controller с удаленным исполнением.

Учетные данные системного администратора#

Учетные данные системного администратора Automation Controller задаются в следующих глобальных настройках:

  • admin_email – адрес электронной почты;

  • admin_password – пароль;

  • admin_username – название учетной записи.

Сеть#

Параметры сети Automation Controller задаются в следующих глобальных настройках:

  • mesh_ca_certfile – путь к файлу сертификата сети Mesh.

  • mesh_ca_keyfile – путь к файлу ключа сертификата сети Mesh.

  • receptor_listener_port – номер порта, используемый рецептором.

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

  • web_server_ssl_cert – путь к файлу сертификата веб-сервера.

  • web_server_ssl_key – путь к файлу ключа сертификата веб-сервера.

СУБД#

Параметры подключения Automation Controller к СУБД задаются в следующих глобальных настройках:

  • pg_database – название базы данных.

  • pg_host – IP-адрес или FQDN узла с СУБД.

    Если указана пустая строка (по умолчанию), используется локальное подключение к СУБД, развернутой на том же узле, что и Automation Controller.

  • pg_password – пароль пользователя СУБД.

  • pg_port – порт СУБД.

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

  • pg_sslmode – режим использования SSL при подключении к СУБД:

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

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

  • pg_username – название учетной записи пользователя СУБД.

  • postgres_ssl_cert – путь к файлу сертификата, который используется для защиты подключения к серверу СУБД PostgreSQL, развернутому средствами платформы.

  • postgres_ssl_key – путь к файлу ключа сертификата, который используется для защиты подключения к серверу СУБД PostgreSQL, развернутому средствами платформы.

  • postgres_use_ssl – использование SSL для защиты подключения к СУБД:

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

    • false – выключено (по умолчанию).

SSO#

Параметры SSO для Automation Controller задаются в следующих глобальных настройках:

  • attr_email – название атрибута, в котором хранится адрес электронной почты пользователя.

  • attr_first_name – название атрибута, в котором хранится фамилия пользователя.

  • attr_groups – название атрибута, в котором хранится список групп пользователя.

  • attr_last_name – название атрибута, в котором хранится имя пользователя.

  • attr_user_permanent_id – название атрибута, в котором хранится постоянный идентификатор пользователя.

  • attr_username – название атрибута, в котором хранится название учетной записи пользователя.

  • entity_id

  • private_key_path – путь к файлу приватного ключа сертификата, используемого для защиты подключения к поставщику услуг SSO.

  • provider_id – идентификатор поставщика услуг SSO.

  • provider_url – URL поставщика услуг SSO.

  • pub_cert_path – путь к файлу сертификата, используемого для защиты подключения к поставщику услуг SSO.

  • sso_displayname – название поставщика услуг SSO, отображаемое в Automation Controller.

  • sso_setup – использование SSO:

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

    • false – выключено (по умолчанию).

  • sso_url – URL поставщика услуг SSO.

  • support_contact_email – адрес электронной почты службы технической поддержки поставщика услуг SSO.

  • support_contact_name – название службы поддержки поставщика услуг SSO.

  • tech_contact_email – адрес электронной почты службы поддержки пользователей поставщика услуг SSO.

  • tech_contact_name – название службы поддержки пользователей поставщика услуг SSO.

Настройки Private Automation Hub#

Настройки Private Automation Hub задаются в секциях [automationhub], [automationhub:vars] и [all:vars].

Настройки узлов#

В секции [automationhub] задаются настройки подключения к узлам Private Automation Hub, например:

[automationhub]
hub1.example.com   ansible_host=192.168.56.101
hub2.example.com   ansible_host=192.168.56.102

Учетные данные администратора#

Учетные данные администратора Private Automation Hub задаются в следующих глобальных настройках:

  • automationhub_admin_password – пароль;

  • automationhub_admin_user – название учетной записи.

Сеть#

  • automationhub_main_url – URL Private Automation Hub.

    Указанное здесь значение используется при формировании шаблонов настроек, позволяющих утилитам Ansible загружать необходимое содержимое из Private Automation Hub.

  • automationhub_ssl_cert – путь к файлу сертификата TLS, используемого веб-сервером.

  • automationhub_ssl_key – путь к файлу ключа сертификата TLS, используемого веб-сервером.

CУБД#

Параметры подключения Private Automation Hub к СУБД задаются в следующих глобальных настройках:

  • automationhub_pg_database – название базы данных.

  • automationhub_pg_host – IP-адрес или FQDN узла с СУБД.

  • automationhub_pg_password – пароль пользователя СУБД.

  • automationhub_pg_port – порт СУБД.

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

  • automationhub_pg_username – название учетной записи пользователя СУБД.

SSO#

Параметры SSO для Private Automation Hub задаются в следующих глобальных настройках:

  • sso_authomation_hub_authorization_url – URL страницы входа, на которую перенаправляется пользователь при авторизации через SSO.

  • sso_automation_hub_client_id – идентификатор клиента, который будет использоваться для авторизации приложения при взаимодействии с сервером SSO.

  • sso_authomation_hub_token_url – URL страницы, используемой Private Automation Hub для получения токена от поставщика услуг SSO.

  • sso_automation_platform_realm – область в системе SSO.

  • sso_client_secret – секретный ключ клиента, который используется для подтверждения подлинности при запросах к серверу SSO.

  • sso_host – адрес сервера поставщика услуг SSO.

  • sso_port – порт сервера поставщика услуг SSO.

  • sso_protocol – протокол, который будет использоваться для соединения с сервером SSO.

  • sso_realm_public_key – публичный ключ области, используемый для проверки цифровых подписей токенов и других данных авторизации.

Настройки хранилища S3#

Параметры подключения к S3-совместимому хранилищу задаются в следующих глобальных настройках:

  • s3_access_key – ключ доступа к бакету.

  • s3_addressing_style – стиль адресации объектов в бакете:

    • auto – если возможно, используется стиль virtual, в противном случае – path;

    • path – название бакета включено в путь URI (по умолчанию);

    • virtual – название бакета включено в FQDN узла.

  • s3_bucket_name – название бакета.

  • s3_default_acl – список контроля доступа (access control list, ACL), используемый при работе с хранилищем по умолчанию.

    Список возможных значений зависит от типа используемого хранилища. Рекомендуется не задавать значение этого параметра в инвентаре, а выполнить необходимые настройки на стороне хранилища.

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

  • s3_endpoint_url – точка доступа к хранилищу.

  • s3_region_name – название региона, в котором размещен бакет.

    Список возможных значений зависит от типа используемого хранилища.

  • s3_secret_key – секретный ключ для доступа к хранилищу.

  • s3_signature_version – версия подписи, используемая для работы с хранилищем:

    • s3v4 (по умолчанию);

    • s3.

      Примечание

      Это значение считается устаревшим и не рекомендуется к использованию.

  • s3_use_sigv4 – подписывание запросов к хранилищу с помощью AWS Signature V4:

    • true – включено (по умолчанию);

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

Настройки развертывания без доступа к интернету#

Параметры развертывания платформы без доступа к интернету задаются в следующих глобальных настройках:

  • bundle_dir – путь к каталогу с файлами установщика платформы.

    Значение по умолчанию – /opt/rbta/aa/astra-automation-setup/.

  • bundle_repo_folder – путь к каталогу, в который будут скопированы DEB-пакеты, необходимые для развертывания платформы. Указанный каталог будет использоваться при настройке репозиториев APT.

    Значение по умолчанию – /var/lib/astra-automation-setup/bundle/.

    Added in version 1.1-upd1.

  • bundle_install – развертывание платформы в окружении без доступа к интернету:

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

    • false – выключено, используются интернет-репозитории ПАО Группа Астра (по умолчанию).

  • registry_ip – IP-адрес узла, на котором должен быть развернут реестр образов среды исполнения.

    Изменено в версии 1.1-upd1: Ранее этот параметр назывался docker_registry_ip.

  • registry_port – порт, который должна использовать служба реестра образов среды исполнения.

    Изменено в версии 1.1-upd1: Ранее этот параметр назывался docker_registry_port.