Параметры 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_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 выполните следующие действия:

  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_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

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