2016-10-03 6 views
0

В настоящее время я пытаюсь настроить кластер Docker следующим образом:Swarm установки кластера Консул

  • узла А: SwarmManager1 + Consul1
  • NodeB: SwarmManager2 + Consul2
  • NodeC: SwamNode1 (реклама на Consul1) + Consul3
  • узловые: SwarmNode2 (для размещения наружной рекламы Consul2)

Я сделал некоторые испытания HA и нашел follwing поведение:

Я перезапустил NodeB, наблюдая за информацией о докерном кластере, и я заметил, что SwarmNode2 был отключен от кластера во время перезагрузки. Объяснение, которое у меня есть, состоит в том, что, поскольку Consul2 идет вниз и Node2 настроен для подключения к тому же Консулу, он становится недоступным в кластерной перспективе.

Каков правильный способ установки службы обнаружения для контейнеров Swarm, чтобы избежать этой проблемы?

ответ

3

Я предлагаю создать кластер consul, предпочтительно автономный на разных узлах. После создания кластера все клиенты-консулы должны продолжать функционировать должным образом, пока поддерживается кворум.

Я также предлагаю предоставить несколько адресов сервера консула с флагом -join, чтобы агент смог вернуться, если он перезагрузится, пока некоторые из серверов консула не работают.

+0

Как насчет использования контейнеров-консулов, они есть и позволяют VIP во внешнем LB. Контейнеры Swarm свяжутся с VIP и в основном получают доступ ко всем консулам. – Mgccon

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