что сил больше нет. Сервера у здоровых людей уже давно конфигурируются по dhcp + ipxe : они сообщают свой уникальный id (MAC) и получают полностью готовый и настроеный для них конфиг. Почему приложения так не могут? Почему каждому надо положить его собственный аккуратно написанный конфиг? Перменные окружения не замена, всем кто не согласен предлагаю описать конфиг prometheus ноды чисто на переменных окружения. Да и обновлять их тяжеловесно (требуется рестарт).
Необходим стандард/протокол типа envoy xDS, но с произвольной схемой (или вообще без схемы), который бы работал так: приложение стартует и из конфига у него только 3 параметра: адрес сервиса конфигурирования, stage (prod, dev, PR 19889) и location (region, az, cluster name). Всё, больше ничего, чтобы задеплоить приложение не нужно (ну кроме образа).
При старте приложение обращается к сервису конфигов, передает stage, location и свой уникальный instance_id (типа namespace/pod_name) или и получает свой конфиг.
Сервис конфигов уже сам смотрит где хочет, куда хочет, но выдаёт нужную конфигурацию. Очень под это дело должен подойти open policy agent со своим rego, но что-нибудь на jsonnet/cue/dhall тоже сойдёт.
Если в такой сервис будет смотреть вообще всё, от pxe серверов до билделок образов виртуалок, то можно с одной контрол панели сквозное управление всей инфраструктурой делать.
Потому что
нет, это kv .
сложна
Обсуждают сегодня