0

我正在使用 docker 设置 Mesos 集群(ZooKeeper+Mesos),其中 3 个节点(A、B、C)为每个节点运行 zookeeper&master&slave 容器。

节点 B 和 C 相互重定向 (quorum=2)

当我运行 Mesos-Master 容器并打开 Mesos Web UI 时,

  • 节点 A 看起来像一个主节点
  • 节点 B 重定向到节点 C
  • 节点 C 重定向到节点 B

节点 A 是孤立的,节点 B 和 C 永远相互重定向,这似乎很奇怪。

这里发生了什么?

docker runMesos-Master 的命令如下。(除了 3 个节点相同MESOS_IP

docker run 
--net=host 
-e MESOS_LOG_DIR=/var/log/mesos 
-e MESOS_ZK=zk://<hostname-nodeA>:2181,<hostname-nodeB>:2181,<hostname-nodeC>:2181/mesos 
-e MESOS_CLUSTER=cheeter 
-e MESOS_HOSTNAME=<hostname-nodeA> 
-e MESOS_WORK_DIR=/var/lib/mesos 
-e MESOS_QUORUM=2 
-e MESOS_ISOLATOR=cgroups/cpu,cgroups/mem,cgroups/devices 
-e MESOS_CONTAINERIZERS=docker,mesos 
-e MESOS_IP=<ip-nodeA> 
-p 5050:5050 
-v /run/docker.sock:/var/run/docker.sock 
-v /var/log:/var/log 
-v /cgroup:/cgroup 
-v /sys:/sys 
-v /proc:/proc 
-t mesosphere/mesos-master:0.20.1

docker runZooKeeper 的命令如下。(除了 3 个节点相同ZOOKEEPER_ID

docker run 
-e ZOOKEEPER_ID=1 
-e ZOOKEEPER_SERVER_1=<hostname-nodeA>:2888:3888 
-e ZOOKEEPER_SERVER_2=<hostname-nodeB>:2888:3888 
-e ZOOKEEPER_SERVER_3=<hostname-nodeC>:2888:3888 
-e ZOOKEEPER_DATADIR=/var/zookeeper 
-p 2181:2181 
-p 2888:2888 
-p 3888:3888 
-v /var:/var 
-v /sys:/sys 
-v /proc:/proc 
-v /cgroup:/cgroup 
-t jplock/zookeeper:3.4.6

我试图改变法定人数 1-3,结果是;

3 个节点在循环中重定向 (quorum=1)

当我使用 运行 Mesos-Master 时quorum=1,节点会像 A->B->C->A->....

每个节点显示“当前没有主控...”(quorum=3)

当我使用 运行 Mesos-Master 时quorum=1,没有发生重定向,每个节点都显示“当前没有主控...”

4

1 回答 1

0

对于 3 个主节点,法定人数应至少为 2(请参阅http://mesos.apache.org/documentation/latest/configuration/)。请问楼主能分享一下日志吗?他们可能有助于了解出了什么问题。

于 2015-05-26T13:27:06.637 回答