Параметры Private Automation Hub#

Private Automation Hub можно развернуть на одном или нескольких узлах.

Развертывание Private Automation Hub на одном узле#

Для развертывания Private Automation Hub на одном узле выполните следующие действия:

  1. Создайте группу automationhub и добавьте в нее сведения об узле:

    [automationhub]
    hub.example.com
    
    automationhub:
      hosts:
        hub.example.com:
    
  2. В глобальных переменных automationhub_admin_user и automationhub_admin_password укажите название учетной записи и пароль администратора:

    [all:vars]
    automationhub_admin_user='<admin_user>'
    automationhub_admin_password='<admin_password>'
    
    all:
      vars:
        automationhub_admin_user: <admin_user>
        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_user='admin'
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_user: admin
    automationhub_admin_password: automationhub

Отказоустойчивая конфигурация Private Automation Hub#

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

  • Использование балансировщика нагрузки.

  • Использование внешнего высокодоступного сервиса PostgreSQL. Предполагается, что такой сервис уже настроен и доступен по доменному имени database.example.com через порт 5432.

  • Развертывание Private Automation Hub не менее чем на двух узлах.

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

  1. В группе automationhub перечислите все узлы, на которых необходимо развернуть Private Automation Hub:

    [automationhub]
    hub1.example.com
    hub2.example.com
    
    automationhub:
      hosts:
        hub1.example.com:
        hub2.example.com:
    
  2. В переменных группы 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
    
  3. В глобальных переменных укажите следующие данные:

    • параметры подключения к СУБД;

    • название учетной записи и пароль администратора;

    • 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_user='admin'
    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_user: admin
        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_user='admin'
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_user: admin
    automationhub_admin_password: automationhub
    automationhub_pg_host: database.example.com
    automationhub_pg_port: 5432

Подробное описание настроек и их возможные значения см. в справочнике.