Автоматизация процессов#
На этом шаге отредактируйте описание узлов плоскостей управления и исполнения.
Система автоматизации процессов является наиболее развитой и вариативной, особенно в топологии уровня предприятия. Поэтому описание ее инвентаря существенно зависит от топологических особенностей. С помощью сети Automation Mesh система объединяет плоскости управления и исполнения.
Общие параметры#
Учетные данные системного администратора Automation Controller необходимы для прямого обращения к Automation Controller. Это обеспечивает обратную совместимость с версией 1 платформы.
Предупреждение
В текущей версии платформы допускается только учетная запись «admin», которая назначается по умолчанию.
В глобальных переменных укажите только пароль для учетной записи admin:
[all:vars]
admin_password='p@ssw0rd!'
all:
vars:
admin_password: p@ssw0rd!
Система из одного управляющего и одного исполняющего узла#
Для создания сети Mesh из одного управляющего и одного исполняющего узла опишите соответствующий инвентарь следующим образом:
В группу
automationcontrollerдобавьте запись об управляющем узле.Создайте группу
execution_nodesи добавьте в нее запись об исполняющем узле.Создайте для группы
automationcontrollerпеременныеnode_typeиpeersсо значениямиcontrolиexecution_nodesсоответственно.
Пример описания системы из одного управляющего и одного исполняющего узлов:
# Control plane
[automationcontroller]
ctrl1.example.com
# Control plane variables
[automationcontroller:vars]
node_type='control'
peers='execution_nodes'
# Execution plane
[execution_nodes]
exec1.example.com
---
# Control plane
automationcontroller:
hosts:
ctrl1.example.com:
vars:
node_type: control
peers: execution_nodes
# Execution plane
execution_nodes:
hosts:
exec1.example.com:
Переменная peers со значением execution_nodes указывает, что управляющие узлы из группы automationcontroller должны связываться с узлами группы execution_nodes.
В этом примере не использованы промежуточные узлы (hop nodes).
Система из управляющих и исполняющих узлов#
Отказоустойчивая конфигурация требует наличия в системе по крайней мере двух управляющих и двух исполняющих узлов. Для этого опишите инвентарь следующим образом:
Добавьте в группу
automationcontrollerзаписи об управляющих узлах.Создайте группу
execution_nodesи добавьте в нее записи об исполняющих узлах.Создайте для группы
automationcontrollerпеременныеnode_typeиpeersсо значениямиcontrolиexecution_nodesсоответственно.
Пример описания системы из двух управляющих и двух исполняющих узлов:
# Control plane
[automationcontroller]
ctrl1.example.com
ctrl2.example.com
# Control plane variables
[automationcontroller:vars]
node_type='control'
peers='execution_nodes'
# Execution plane
[execution_nodes]
exec-1.example.com
exec-2.example.com
---
# Control plane
automationcontroller:
hosts:
ctrl1.example.com:
ctrl2.example.com:
vars:
node_type: control
peers: execution_nodes
# Execution plane
execution_nodes:
hosts:
exec-1.example.com:
exec-2.example.com:
Все управляющие узлы здесь имеют прямой доступ ко всем исполняющим узлам.
Примечание
При наличии более одного узла в группе
automationcontrollerучитывайте принцип главного узла.
Кластер с удаленным исполнением#
Конфигурация с промежуточными узлами позволяет подключаться через них к удаленным исполняющим узлам.
Пример отказоустойчивого кластера с промежуточным узлом hop1, через который выполняется подключение к исполняющему узлу exec3:
# Control plane
[automationcontroller]
ctrl1.example.com
ctrl2.example.com
[automationcontroller:vars]
node_type='control'
peers='instance_group_local'
# Execution plane
[execution_nodes]
exec1.example.com
exec2.example.com
exec3.example.com
hop1.example.com
# Execution nodes with direct connection to control nodes
[instance_group_local]
exec1.example.com
exec2.example.com
# Hop node
[hop]
hop1.example.com
[hop:vars]
# Direct connection to control nodes
node_type='hop'
peers='automationcontroller'
# Remote execution node
[instance_group_remote]
exec3.example.com
# Direct connection to hop nodes
[instance_group_remote:vars]
peers='hop'
---
# Control plane
automationcontroller:
hosts:
ctrl1.example.com:
ctrl2.example.com:
vars:
node_type: control
peers: instance_group_local
# Execution plane
execution_nodes:
hosts:
exec1.example.com:
exec2.example.com:
exec3.example.com:
hop1.example.com:
# Execution nodes with direct connection to control nodes
instance_group_local:
hosts:
exec1.example.com:
exec2.example.com:
# Hop node
hop:
hosts:
hop1.example.com:
vars:
node_type: hop
peers: automationcontroller
# Remote execution node
instance_group_remote:
hosts:
exec3.example.com:
vars:
peers: hop
Особенности этой топологии:
Управляющие узлы должны связываться с исполняющими узлами из группы
instance_group_localнапрямую, без промежуточных узлов.Исполняющие узлы из группы
instance_group_remote(в примере один узел) связываются с промежуточными узлами группыhop(в примере один узел), которые в свою очередь связываются с управляющими узлами в группеautomationcontroller.
Главный узел#
При первом запуске установщика узел, указанный первым в группе automationcontroller описания инвентаря, становится главным узлом (primary node).
К главному узлу предъявляются следующие требования:
При развертывании или обновлении узлов Automation Controller главный узел всегда должен быть доступен.
Запись о главном узле в инвентаре установщика должна размещаться на первой позиции в группе
automationcontroller.