Конфигурационный сервер в платформе Inspark предоставляет модулям платформы их конфигурационные данные и отслеживает изменение этих данных.
Конфигурационный сервер является опциональным, модули могут использовать собственный конфигурационный файл. Но, в случае большого количества инстансов, модулей, ведение их конфигурационных данных удобно выполнять с помощью Сервера Конфигураций.
Сервер Конфигураций использует подход Spring Cloud Config и использует в качестве хранилища конфигураций Git репозиторий.
Структурная схема Сервера конфигураций представлена ниже:
Все конфигурационные файлы модулей хранятся в Git репозитории. Могут применяться разные схемы хранения:
На рисунке показан первый вариант.
При старте модуля, он обращается к Серверу Конфигураций за своим конфигом. Сервер конфигураций настроен на проект и ветку проекта, откуда по имени приложения находит конфигурацию для модуля и предоставляет ее модулю.
Такой подход к работе с конфигурационными файлами упрощает их сопровождение, уменьшает ошибки, и за счет ci/cd git репозиториев позоляет автоматизировать раскатку/обновление версий модулей.