Swarm Cluster Consul设置

时间:2016-10-03 15:50:25

标签: docker consul docker-swarm

我目前正尝试以下列方式设置Docker群集:

  • NodeA:SwarmManager1 + Consul1
  • NodeB:SwarmManager2 + Consul2
  • NodeC:SwamNode1(向Consul1做广告)+ Consul3
  • NodeD:SwarmNode2(向Consul2做广告)

我做了一些HA测试,发现了以下行为:

我在监视docker群集信息的同时重新启动了NodeB,我注意到SwarmNode2在重启时间与群集断开连接。 我的解释是,因为Consul2发生故障并且Node2被配置为连接到同一个Consul,所以它在集群透视图中变得不可用。

为了避免这个问题,为Swarm容器设置发现服务的正确方法是什么?

1 个答案:

答案 0 :(得分:3)

我建议创建一个consul集群,最好是在不同的节点上独立。 创建群集后,只要维持仲裁,所有consul客户端都应继续正常运行。

我还建议使用-join标志给多个consul服务器地址,以确保代理能够重新加入,以防一些领事服务器关闭时重新启动。