2016-06-24 2 views
1

Использование: контейнер haproxy, работающий с докерером. Я хочу, чтобы контейнер обнаружил, какие хосты доступны для воссоздания конфигурации haproxy и перезагрузки.Как контейнер может перечислять хосты в сети?

Я знаю, что будет один или несколько контейнеров с именем server1 и server2. Изнутри контейнера haproxy я могу запросить dns для server1 и получить более одного IP-адреса. Это единственный способ узнать, когда новый серверный cointainer становится доступным или умирает? Я знаю, что я могу использовать apker-apk из python, запущенного внутри контейнера, который имеет сокет-хост-докер, сопоставленный с ним, но я не уверен, что это будет работать при запуске на рое.

Идеальное решение было бы api или командой, позволяющей мне регистрировать обработчик событий, который вызывается, когда новый контейнер присоединяется к сети.

ответ

0

Решения, которые вы можете использовать Регистратор (https://github.com/gliderlabs/registrator), Консул и Консул.

Консул - это сервисное открытие Часы Consul-Template Консул и обновляет конфигурацию прокси-сервера HA и перезагружают его. Регистратор прослушивает Docker Engine и обновляет Consul, если есть контейнер вверх или вниз.

Пожалуйста, смотрите изображение:

enter image description here

Для полного руководства, вы можете обратиться к моему блогу (https://sonnguyen.ws/microservices-with-docker-swarm-and-consul/), чтобы знать, как это осуществить.

Смежные вопросы