Простая оркестрация контейнеров?

Суть задачи: есть N машин с докером, есть приложение на python в контейнере, которое конфигурируется через yml файл. Есть некоторая админка, отдельная от приложения.
На данный момент при необходимости поменять yml конфиг это делается вручную.
Идея: генерировать yml в админке/там же хранить, оттуда же перезапускать контейнеры/добавлять новые контейнеры (образ один и тот же используется, обновлять версию образа из админки не нужно).
Простой способ решения: ходить по ssh, копировать конфиг/docker-compose.yml, выполнять docker compose restart.
Можно ли это сделать через какой-то оркестратор простым образом? k8s точно тащить ради этого не надо. С docker swarm опыта не имел и знаю, что он уже не развивается. Слышал про rancher/nomad, но опять же, с ними опыта не было. Знаю только, что nomad, судя по документации, очень легко развернуть (один агент на ноду).
  • Вопрос задан
  • 212 просмотров
Решения вопроса 1
Пригласить эксперта
Ответы на вопрос 1
azerphoenix
@azerphoenix
Java Software Engineer
Добрый день.
Могу рассказать, как это решается на Java + Spring.
Конфигурацию микросервисов можно сделать централизованной. Для этого необходимо развернуть amqp сервис. Например, rabbitmq.
Конфигурация при этом выносится в отдельный репозиторий и хранится там.
Далее каждый из микросервисов при старте знает, что ему нужно обратиться к микросервису, который отвечает за конфигурации. Также они подписываются на событие к rabbitmq.
Когда в гит репозиторий пушатся конфиги, то конфиг сервер кидает их в rabbitmq, а они в свою очередь забираются микросервисом и проводится динамическое обновление конфигов.
Скорее всего, на python есть некий похожий сервис для этих целей.
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы