Comments 7
Вопрос коллективному разуму - хорошо ли в базовом случае (когда не требуется менять параметры "на лету") использовать для передачи конфигурации Spring Cloud Config, если живешь в k8s+helm? Не является ли это лишним усложнением?
У меня тоже вопрос коллективному разуму :) Есть идея использовать Hashicorp Vault, чтобы туда вынести все настройки spring boot приложения, а не только токены/пароли... Так вообще можно делать? Или не стоит?
Более стандартным подходом будет использовать для конфигурации kv в consul (который часто используется совместно с vault) или etcd. IIRC, в spring cloud был стартер и для получения конфигурации из консула, и для регистрации в его service discovery.
А не получится масло-масляное? Spring умеет vault... И vault уже есть и работает... Консул необходим как компонент, или можно обойтись?
А поверх какого хранилища у вас работает vault? Наверняка же consul/etcd или подобная HA KV-store.
В принципе никто не запрещает хранить в нём и конфигурацию, не уверен что есть готовый property source. Получите больше нагрузки на vault, потенциальный геморрой с бутстрапом, хотя может и небольшой. Ну и можно упереться в размеры значений в самом vault, не помню есть ли там жёсткие лимиты. Ещё возможно посложнее будет если хочется делать property refresh. А так идея имеет право на жизнь.
kv2 используется, я тут только потребитель пока, да и сервисов кому это надо всего 12 шутк :) На самом деле спасибо большое за развернутый комментарий. Попробуем POC сделать, посмотреть
Если я правильно вас понял, то kv2
-- это со стороны клиента vault. Вопрос был про бэкенд где сам vault хранит своё состояние. Возможно вы используете integrated storage про который я совсем забыл.
Здесь есть информация о максимальных размерах storage entry. Начиная с 1.5.3 их можно увеличить, но вполне возможно что вам хватит 512k для конфигурации.
Spring Cloud Config — обновление конфигурации