Параметры инвентаря#
Инвентарь установщика может иметь формат INI или YAML.
Инвентарь в формате INI имеет следующие особенности:
Для формирования групп узлов используют секции. Название каждой секции обрамляется квадратными скобками
[].[automationcontroller]Параметры отдельных узлов задают в той же строке, что и название узла. Название параметра и его значение указывают в одной строке через знак
=. Для разделения нескольких параметров используются символы пробела.[automationcontroller] node1 ansible_host=192.168.56.1 node_type=control node2 ansible_host=192.168.56.2 node_type=control
Переменные, общие для всех узлов группы, задают в секции, название которой состоит из названия группы узлов и суффикса
:vars.[automationcontroller:vars] ansible_user='administrator' ansible_ssh_private_key='/path/to/ssh/private/key' node_type='control'
В секции
[all:vars]задают глобальные переменные – они действуют на все узлы, указанные в инвентаре.[all:vars] pgdatabase='controllerdb'
Инвентарь в формате YAML имеет следующие особенности:
Для формирования групп узлов использует запись следующего вида:
automationcontroller: hosts:
Для перечисления узлов используют блоки, а не списки. Название узла указывается в названии блока.
automationcontroller: hosts: node1: ansible_host: 192.168.56.1 ansible_connection: ssh node_type: control node2: ansible_host: 192.168.56.2 ansible_connection: ssh node_type: control
Переменные, общие для всех узлов группы, задают в блоке
<group>.vars:automationcontroller: hosts: node1: ansible_host: 192.168.56.1 node2: ansible_host: 192.168.56.2 vars: ansible_connection: ssh node_type: control
Глобальные переменные задают в блоке
all.vars:all: vars: pgdatabase: controllerdb
Примечание
С целью сокращения все настройки описываются для инвентаря формата INI.
Переменные компонентов платформы можно задавать на следующих уровнях:
Для всех узлов.
Для группы узлов.
Чтобы задать переменные для всех узлов определенной группы, создайте соответствующую секцию. Название секции формирует по следующему принципу:
[<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
Для отдельных узлов в соответствующих строках.
При определении значений настроек используется следующий порядок:
глобальные переменные;
переменные группы;
переменные отдельных узлов.
Более поздние значения перезаписывают более ранние.
Настройка подключения#
Тип подключения к узлам платформы задают переменной 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.
Группы узлов#
Переменные для отдельных компонентов платформы задают в соответствующих секциях:
Platform Gateway –
[automationgateway].Automation Controller:
[automationcontroller]– узлы плоскости управления;[execution_nodes]– исполняющие узлы;[instance_group_<name>]– группа исполняющих узлов;дополнительные группы для промежуточных и исполняющих узлов.
Private Automation Hub –
[automationhub].Контроллер Event-Driven Automation –
[automationedacontroller].СУБД –
[database].На указанном узле средствами платформы будет развернута СУБД PostgreSQL, а в ней создана база данных для Automation Controller.
[database] rdbs.example.com ansible_host=192.168.56.101
Важно
Узел, используемый для развертывания PostgreSQL, не должен использоваться для других целей, например, запуска заданий или управления контроллером.
Если для хранения баз данных будет использован внешний PostgreSQL, секцию
[database]надо создать, но оставить пустой.
Настройка Platform Gateway#
Переменные Platform Gateway задают в секциях [automautomationgateway], [automationgateway:vars] и [all:vars].
Настройка узлов#
В секции [automationgateway] задают параметры подключения к узлам Platform Gateway, например:
[automationgateway]
gateway1.example.com
gateway2.example.com
Учетные данные администратора#
Учетные данные администратора Platform Gateway задают следующими глобальными переменными:
automationgateway_admin_password– пароль;automationgateway_admin_username– название учетной записи.Значение по умолчанию – «admin». В текущей версии изменять это значение нельзя.
automationgateway_admin_email– адрес электронной почты.
Сеть#
Параметры сети задают следующими глобальными переменными:
automationgateway_http_port– номер порта, на котором Platform Gateway прослушивает входящие HTTP-соединения.Значение по умолчанию:
80.automationgateway_https_port– номер порта, на котором Platform Gateway прослушивает входящие HTTPS-соединения.Значение по умолчанию:
443.automationgateway_ssl_cert– путь к файлу сертификата TLS, используемого веб-сервером.automationgateway_ssl_key– путь к файлу ключа сертификата TLS, используемого веб-сервером.automationgateway_ssl_protocol– протоколы, которые Platform Gateway будет поддерживать при обработке HTTPS-трафика.Значение по умолчанию:
TLSv1_2, TLSv1_3.automationgateway_https_enabled– включение HTTPS для Platform Gateway.true– включено;false– выключено.
automationgateway_hsts_enabled– включение HTTP Strict Transport Security (HSTS) для Platform Gateway.true– включено;false– выключено.
automationgateway_hsts_max_age– максимальная длительность (в секундах), в течение которой HSTS принудительно применяется для Platform Gateway.automationgateway_main_url– URL, к которому подключаются клиенты и который используют внутренние компоненты платформы для взаимодействия между собой.Используют при развертывании кластера, когда требуется использовать URL балансировщика нагрузки вместо серверного адреса компонента. Значение URL должно начинаться с
https://илиhttp://.
СУБД#
Параметры подключения Platform Gateway к СУБД задают следующими глобальными переменными:
automationgateway_pg_database– название базы данных.automationgateway_pg_host– IP-адрес или FQDN узла с СУБД.automationgateway_pg_password– пароль учетной записи СУБД.automationgateway_pg_port– порт СУБД.Значение по умолчанию:
5432.automationgateway_pg_username– название учетной записи СУБД.automationgateway_pg_sslmode– режим использования SSL при подключении к СУБД:prefer(по умолчанию) – подключение к СУБД будет защищено с помощью SSL, если сервер поддерживает шифрование;verify-full– защита подключения с помощью SSL необходима, производится строгая верификация сервера. Соединение не будет установлено, если это условие не выполнено.
automationgateway_postgres_ssl_cert– путь к файлу сертификата SSL/TLS, используемого для защиты подключения к серверу СУБД PostgreSQL.automationgateway_postgres_ssl_key– путь к файлу ключа сертификата SSL/TLS, используемого для защиты подключения к серверу СУБД PostgreSQL.automationgateway_postgres_use_ssl– использование SSL для защиты подключения к СУБД:true– включено;false– выключено (по умолчанию).
Redis#
Параметры подключения Platform Gateway к Redis задают в следующих глобальных настройках:
automationgateway_redis_host– адрес узла Redis, используемого Platform Gateway.По умолчанию используется первый узел из группы
[redis].automationgateway_redis_port– номер порта узла Redis, используемого Platform Gateway.automationgateway_redis_password– пароль для доступа к Redis.По умолчанию используется случайно сгенерированная строка.
automationgateway_redis_username– название учетной записи пользователя Redis.automationgateway_redis_ssl– включение TLS для Redis Platform Gateway.true– включено;false– выключено (по умолчанию).
automationgateway_redis_cert– путь к файлу сертификата Redis для Platform Gateway.automationgateway_redis_key– путь к файлу ключа Redis для Platform Gateway.
gRPC#
gRPC является встроенным сервисом, обеспечивающим аутентификацию пользователя через внешние системы (SSO, Single Sign-On) и перенаправление запроса пользователя к требуемому компоненту платформы. Следующие переменные влияют на его работу:
automationgateway_grpc_processes– количество процессов для обработки gRPC-запросов к Platform Gateway.automationgateway_grpc_max_threads– максимальное количество потоков, которые каждый процесс gRPC-сервера может создать для обработки запросов к Platform Gateway.automationgateway_grpc_timeout– длительность тайм-аута (в секундах) для запросов, осуществляемых к gRPC-сервису Platform Gateway.
Дополнительные переменные#
Следующие переменные используются реже, чем представленные ранее:
automationgateway_extra_settings– дополнительные переменные для использования Platform Gateway при установке.Например:
automationgateway_extra_settings: - setting: OAUTH2_PROVIDER['ACCESS_TOKEN_EXPIRE_SECONDS'] value: 600automationgateway_nginx_headers– список дополнительных заголовков NGINX для добавления в конфигурацию NGINX Platform Gateway.automationgateway_client_max_body_size– максимальный допустимый размер (в байтах) данных, отправляемых в Platform Gateway через NGINX.automationgateway_web_workers– количество рабочих процессов для обработки веб-запросов к Platform Gateway.По умолчанию: количество ядер CPU, умноженное на два, плюс один.
automationgateway_firewall_zone– зона сети, к которой применяются правила сетевого фильтра Platform Gateway.Контролирует, какие сети могут получать доступ к Platform Gateway на основе уровня доверия зоны.
automationgateway_web_cert_local– указание того, являются ли файлы сертификатов веб-сервера локальными для установочного узла (true) или находятся на управляемом узле (false).automationgateway_db_client_cert_local– указание того, являются ли файлы сертификатов клиента PostgreSQL локальными для установочного узла (true) или находятся на управляемом узле (false).automationgateway_ca_cert_local– указание того, являются ли файлы сертификатов, предоставленные Platform Gateway, локальными для установочного узла (true) или находятся на управляемом узле (false).automationgateway_cache_cert_local– указание того, являются ли файлы сертификатов клиента кэша локальными для установочного узла (true) или находятся на управляемом узле (false).Значение по умолчанию: значение параметра
ca_cert_local.automationgateway_ssl_verify– указание того, следует ли проверять веб-сертификаты Platform Gateway при выполнении вызовов из Platform Gateway к себе во время установки.automationgateway_compress_archive– включение сжатия архива для Platform Gateway.true– включено;false– выключено.
automationgateway_compress_database– включение сжатия базы данных для Platform Gateway.true– включено;false– выключено.
automationgateway_regenerate_cache_certs– указание того, следует ли повторно создавать сертификаты клиента Platform Gateway для кэша платформы.true– включено;false– выключено (по умолчанию).
automationgateway_disable_https_for_ui– отключение HTTPS при доступе к UI платформы.true– выключено;false– включено (по умолчанию).
automationgateway_pg_client_cert_auth– включение аутентификации по сертификату клиента на базе данных PostgreSQL Platform Gateway.true– включено;false– выключено (по умолчанию).
automationgateway_pg_client_cert– путь к файлу сертификата TLS клиента для подключения к СУБД PostgreSQL.Требуется, если включена аутентификация по сертификату клиента (
automationgateway_pg_client_cert_auth).automationgateway_pg_client_key– путь к файлу ключа SSL/TLS клиента для подключения к СУБД PostgreSQL.Требуется, если включена аутентификация по сертификату клиента (
automationgateway_pg_client_cert_auth).automationgateway_secret_key– значение секретного ключа, используемое Platform Gateway для подписи и шифрования данных.automationgateway_envoy_http_port– номер порта, на котором прокси Envoy прослушивает входящие HTTP-соединения.automationgateway_envoy_https_port– номер порта, на котором прокси Envoy прослушивает входящие HTTPS-соединения.
Настройка Automation Controller#
Переменные узлов Automation Controller задают в соответствующих секциях, а учетные данные администратора и переменные подключения к СУБД – в секции [all:vars].
Настройка узлов#
Для узлов Automation Controller доступны переменные, задающие тип узла (node_type) и связанную группу узлов (peers).
node_type– тип узла:control– управляющий;execution– исполняющий;hop– промежуточный;hybrid– гибридный.
Для узлов из секции
[automationcontroller]можно использовать только типыcontrolиhybrid(по умолчанию), однако в рекомендуемых топологиях представлен только типcontrol.Для узлов из секции
[execution_nodes]можно использовать только типыhopиexecution(по умолчанию).peers– название связанной группы узлов.С помощью
peersнастраивается связь между плоскостью управления и плоскостью исполнения.Пример использования переменной
peersсм. в описании развертывания кластера Automation Controller с удаленным исполнением.
Учетные данные системного администратора#
Учетные данные системного администратора Automation Controller задают следующими переменными:
admin_email– адрес электронной почты;admin_password– пароль;admin_username– название учетной записи.Значение по умолчанию – «admin». В текущей версии изменять это значение нельзя.
Сеть#
Параметры сети 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– название базы данных.Значение по умолчанию:
awx.pg_host– IP-адрес или FQDN узла с СУБД.Если указана пустая строка (по умолчанию), используется локальное подключение к СУБД, развернутой на том же узле, что и Automation Controller.
pg_password– пароль учетной записи СУБД.pg_port– порт СУБД.Значение по умолчанию:
5432.pg_sslmode– режим использования SSL при подключении к СУБД:prefer– подключение к СУБД будет защищено с помощью SSL, если использование шифрования поддерживается настройками сервера (по умолчанию);verify-full– защита подключения с помощью SSL необходима, производится строгая верификация сервера.
pg_username– название учетной записи учетной записи СУБД.Значение по умолчанию:
awx.postgres_ssl_cert– путь к файлу сертификата, который используется для защиты подключения к серверу СУБД PostgreSQL, развернутому средствами платформы.postgres_ssl_key– путь к файлу ключа сертификата, который используется для защиты подключения к серверу СУБД PostgreSQL, развернутому средствами платформы.postgres_use_ssl– использование SSL для защиты подключения к СУБД:true– включено;false– выключено (по умолчанию).
Настройка Private Automation Hub#
Переменные Private Automation Hub задают в секциях [automationhub], [automationhub:vars] и [all:vars].
Настройка узлов#
В секции [automationhub] задают переменные подключения к узлам Private Automation Hub, например:
[automationhub]
hub1.example.com ansible_host=192.168.56.102
hub2.example.com ansible_host=192.168.56.103
Учетные данные администратора#
Учетные данные администратора Private Automation Hub задают следующими глобальными переменными:
automationhub_admin_password– пароль.automationhub_admin_user– название учетной записи.Значение по умолчанию:
admin.
Сеть#
Сетевую настройку Private Automation Hub определяют с помощью следующих переменных:
automationhub_main_url– Private Automation Hub URL.Эта переменная определяет внешний URL для доступа к Private Automation Hub при развертывании его на двух или более узлах. Это гарантирует, что все компоненты используют единообразный URL при обращении к реестру контейнеров. Без явного указания этого параметра система использует первый узел из группы
automationhub.automationhub_ssl_cert– путь к файлу сертификата TLS, используемого веб-сервером.automationhub_ssl_key– путь к файлу ключа сертификата TLS, используемого веб-сервером.
СУБД#
Параметры подключения Private Automation Hub к СУБД задают следующими глобальными переменными:
automationhub_pg_database– название базы данных.Значение по умолчанию:
automationhub.automationhub_pg_host– IP-адрес или FQDN узла с СУБД.automationhub_pg_password– пароль учетной записи СУБД.automationhub_pg_port– порт СУБД.Значение по умолчанию:
5432.automationhub_pg_username– название учетной записи учетной записи СУБД.Значение по умолчанию:
automationhub.
Настройка хранилища 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– выключено.
Настройка резервного копирования#
Глобальная настройка automationhub_backup_collections управляет включением загруженных коллекций в резервную копию, создаваемую с помощью утилиты aa-setup:
true– коллекции из Private Automation Hub включаются в резервную копию (по умолчанию);false– коллекции из Private Automation Hub не включаются в резервную копию.
Когда содержимое Private Automation Hub размещается в хранилище S3, по умолчанию назначается false.
Для этого случая оно является рекомендуемым.
Настройка контроллера Event-Driven Automation#
Переменные контроллера Event-Driven Automation задают в секциях [automationedacontroller] и [all:vars].
Настройка узла#
В секции [automationedacontroller] задают переменные подключения к узлу контроллера Event-Driven Automation, например:
[automationedacontroller]
edac.example.com
Учетные данные администратора#
Учетные данные администратора контроллера Event-Driven Automation задают следующими глобальными переменными:
automationedacontroller_admin_password– пароль;automationedacontroller_admin_username– название учетной записи.Значение по умолчанию – «admin». В текущей версии изменять это значение нельзя.
Сеть#
automationedacontroller_ssl_cert– путь к файлу сертификата TLS, используемого веб-сервером.automationedacontroller_ssl_key– путь к файлу ключа сертификата TLS, используемого веб-сервером.
СУБД#
Параметры подключения контроллера Event-Driven Automation к СУБД задают следующими глобальными переменными:
automationedacontroller_pg_database– название базы данных.Значение по умолчанию:
automationedacontroller.automationedacontroller_pg_host– IP-адрес или FQDN узла с СУБД.automationedacontroller_pg_password– пароль учетной записи СУБД.automationedacontroller_pg_port– порт СУБД.Значение по умолчанию:
5432.automationedacontroller_pg_username– название учетной записи СУБД.Значение по умолчанию:
automationedacontroller.
Настройка развертывания без доступа к интернету#
Параметры развертывания платформы без доступа к интернету задают следующими глобальными переменными:
bundle_dir– путь к каталогу с файлами установщика платформы.Значение по умолчанию:
/opt/rbta/aa/astra-automation-setup/.bundle_repo_folder– путь к каталогу, в который будут скопированы DEB-пакеты, необходимые для развертывания платформы. Указанный каталог будет использоваться при настройке репозиториев APT.Значение по умолчанию:
/var/lib/astra-automation-setup/bundle/.bundle_install– развертывание платформы в окружении без доступа к интернету:true– включено;false– выключено, используются интернет-репозитории ПАО Группа Астра (по умолчанию).