Automation Config включает в себя от четырех и более архитектурных компонентов, в том числе сервер RaaS, подключаемый модуль Master и две центральные базы данных.

На рисунке ниже показаны основные компоненты базовой архитектуры Automation Config, участвующие в процессе установки.

Примечание: В рамках инициативы корпорации VMware по удалению сомнительных терминов термин «Salt master» (главный сервер Salt) будет заменен на более подходящий в системе Automation Config, в связанных продуктах и документации. Для обновления терминологии может потребоваться несколько этапов, прежде чем этот процесс будет полностью завершен.

Главные серверы Salt и подключаемый модуль Master

Automation Config выполняется в системе Salt, которая представляет собой систему управления автоматизацией и настройкой с открытым исходным кодом.

Главный сервер Salt является основным связующим звеном между Automation Config и остальными узлами в сети (служебными серверами). Команда, отправляемая из Automation Config (например, задание), поступает на главный сервер Salt для последующего распределения по целевым служебным серверам.

Automation Config может подключаться к одному или нескольким главным серверам Salt, если это необходимо в системе. Для связи Automation Config с главным сервером Salt необходимо установить подключаемый модуль Master на главном сервере Salt и принять его ключ в Automation Config. Подключаемый модуль Master позволяет главному серверу Salt получать доступ к заданиям и процессам, инициированным Automation Config. У главного сервера Salt есть доступ к внешним файлам и данным хранилища pillar, которые хранятся в базе данных PostgreSQL.

Подключаемый модуль интегрируется с существующими точками расширения, которые предоставляет Salt. Например, сбор возвращаемых результатов заданий выполняется с помощью внешнего кэша заданий Salt на стороне главного сервера Salt, а файловый сервер RaaS использует подключаемый модуль файлового сервера Salt.
Примечание: К Automation Config можно подключить несколько главных серверов Salt. На каждом главном сервере Salt, который подключается к Automation Config, требуется установить подключаемый модуль Master.

RaaS

RaaS (возврат данных как сервис) является основополагающим компонентом Automation Config. По сути, когда некоторые люди говорят о самой системе Automation Config, очень часто подразумевается именно RaaS.

RaaS предоставляет конечные точки RPC для приема управляющих команд из пользовательского интерфейса Automation Config, а также конечные точки управления RPC для взаимодействия с подключенными главными серверами Salt. Вся передача данных осуществляется с помощью вызовов API-интерфейса RPC по протоколу WebSockets или HTTP(s).

Пользовательский интерфейс Automation Config

Пользовательский интерфейс Automation Config — это веб-приложение, которое предоставляет графический пользовательский интерфейс для RaaS. Хотя система Automation Config прежде всего ориентирована на работу через API-интерфейс, пользовательский интерфейс взаимодействует непосредственно с API-интерфейсом (RaaS) и позволяет легко управлять всеми системами в среде. Используя разные рабочие области, можно управлять служебными серверами, пользователями, ролями, заданиями и т. д.

Базы данных

База данных PostgreSQL

RaaS использует базу данных PostgreSQL для хранения данных служебных серверов, возвращаемых результатов заданий, данных о событиях, файлов и данных хранилища pillar, учетных записей локальных пользователей, а также других настроек пользовательского интерфейса.

База данных Redis

RaaS использует базу данных Redis для хранения определенных типов данных, например кэшированных данных, во временном хранилище. Эта служба также использует временное хранилище данных для распределения поставленных в очередь заданий по фоновым рабочим процессам.

Дополнительные сведения о процессе работы Salt см. в разделе Архитектура системы Salt.