Параметры Private Automation Hub#
Private Automation Hub можно развернуть на одном или нескольких узлах.
Развертывание Private Automation Hub на одном узле#
Для развертывания Private Automation Hub на одном узле выполните следующие действия:
Создайте группу
automationhub
и добавьте в нее сведения об узле:[automationhub] hub.example.com
automationhub: hosts: hub.example.com:
В глобальной переменной
automationhub_admin_password
укажите пароль администратора:[all:vars] automationhub_admin_password = "<admin_password>"
all: vars: automationhub_admin_password: "admin_password"
Фрагмент файла инвентаря для развертывания Private Automation Hub на одном узле:
[automationhub]
hub.example.com
[all:vars]
ansible_python_interpreter = /usr/bin/python3
ansible_user = 'admin'
ansible_ssh_private_key_file = '/path/to/private/ssh/key'
# Доменное имя, по которому будет доступен Private Automation Hub
automationhub_main_url = https://hub.example.com/
automationhub_admin_password = 'automationhub'
automationhub:
hosts:
hub.example.com:
all:
vars:
ansible_python_interpreter: /usr/bin/python3
ansible_user: admin
ansible_ssh_private_key_file: /path/to/private/ssh/key
# Доменное имя, по которому будет доступен Private Automation Hub
automationhub_main_url: "https://hub.example.com/"
automationhub_admin_password: "automationhub"
Отказоустойчивая конфигурация Private Automation Hub#
Для развертывания отказоустойчивой конфигурации Private Automation Hub необходимо выполнение следующих условий:
Использование балансировщика нагрузки.
Использование внешнего высокодоступного сервиса PostgreSQL. Предполагается, что такой сервис уже настроен и доступен по доменному имени
database.example.com
через порт5432
.Развертывание Private Automation Hub не менее чем на двух узлах.
С учетом описанных требований, для развертывания отказоустойчивой конфигурации Private Automation Hub выполните следующие действия:
В группе
automationhub
перечислите все узлы, на которых необходимо развернуть Private Automation Hub:[automationhub] hub1.example.com hub2.example.com
automationhub: hosts: hub1.example.com: hub2.example.com:
В переменных группы
automationhub
укажите параметры подключения к хранилищу S3, который будет использоваться для хранения содержимого:[automationhub:vars] s3_endpoint_url = https://s3-storage.example.com s3_region_name = ru-central1 s3_access_key = '<access_key>' s3_secret_key = '<secret_key>' s3_bucket_name = 'private-hub-example-com'
automationhub: vars: s3_endpoint_url: https://s3-storage.example.com s3_region_name: ru-central1 s3_access_key: '<access_key>' s3_secret_key: '<secret_key>' s3_bucket_name: 'private-hub-example-com'
В глобальных переменных укажите следующие данные:
параметры подключения к СУБД;
пароль администратора;
URL, который пользователи будут использовать для доступа к Private Automation Hub.
[all:vars] automationhub_pg_host = 'database.example.com' automationhub_pg_port = '5432' automationhub_pg_database = 'automationhub' automationhub_pg_username = 'admin' automationhub_pg_password = 'automationhub' automationhub_admin_password = 'automationhub' automationhub_main_url = https://hub.example.com/
all: vars: automationhub_pg_host: 'database.example.com' automationhub_pg_port: 5432 automationhub_pg_database: 'automationhub' automationhub_pg_username: 'admin' automationhub_pg_password: 'automationhub' automationhub_admin_password: 'automationhub' automationhub_main_url: https://hub.example.com/
Фрагмент файла инвентаря с примером отказоустойчивой конфигурации Private Automation Hub:
[automationhub]
hub1.example.com
hub2.example.com
[automationhub:vars]
s3_endpoint_url = https://s3-storage.example.com
s3_region_name = ru-central1
s3_access_key = '<access_key>'
s3_secret_key = '<secret_key>'
s3_bucket_name = 'private-hub-example-com'
[database]
[all:vars]
ansible_python_interpreter = /usr/bin/python3
ansible_user = 'admin'
ansible_ssh_private_key_file = '/path/to/private/ssh/key'
# Адрес узла, к которому будут подключаться клиенты. Это должен быть адрес
# балансировщика нагрузки, например, https://<load_balancer_host>.
automationhub_main_url = https://hub.example.com/
automationhub_admin_password = 'automationhub'
automationhub_pg_host = 'database.example.com'
automationhub_pg_port = 5432
automationhub:
hosts:
hub1.example.com:
hub2.example.com:
vars:
s3_endpoint_url: https://s3-storage.example.com
s3_region_name: ru-central1
s3_access_key: '<access_key>'
s3_secret_key: '<secret_key>'
s3_bucket_name: 'private-hub-example-com'
database:
all:
vars:
ansible_python_interpreter: /usr/bin/python3
ansible_user: 'admin'
ansible_ssh_private_key_file: '/path/to/private/ssh/key'
# Адрес узла, к которому будут подключаться клиенты. Это должен
# быть адрес балансировщика нагрузки, например,
# https://<load_balancer_host>.
automationhub_main_url: https://hub.example.com/
automationhub_admin_password: 'automationhub'
automationhub_pg_host: 'database.example.com'
automationhub_pg_port: 5432
Подробное описание настроек и их возможные значения см. в справочнике.