Mesos安装完毕后,发现agent无法和master关联(通过WebUI的agent页面无法看到agent信息),查看日志显示:
Elected as the leading master!
starat recovery...具体记不清了,就是打算向zookeeper中写入信息,但是失败了
Recovery failed: Failed to recover registrar
从slave日志中来看就是Mesos-Master总是不断的断开,不断的选举:
Master disconnected! Waiting for a new master to be elected
Detected a new leader: (id='33')
除此之外,通过ip:5050访问网页总是弹出断开连接,retry...
所有这些,原因就是:quorum配置值的问题,quorum的配置,修改为1,一切问题解决。
quorum的选举的原理就是“超过半数”,如果你的主机集群是5台,挂了一台,还剩下四台,那么成功选举的票数是3,那么quorum的值就是3.所以一般情况下,都是设置集群数为单数,因为单数A和大于单数A的双数选举票数是一样的,白白浪费了一台机器。
这里有一个需要注意的地方就是选举的Master,这里不包含Slave;我的配置是一台master,两台slave,我之前之所以设置quorum值为2,就是因为一共是3台(包含slave),但是其实是计算规则只是master的(slave并不参与选举,所以日志中也是看到的是等待选举,而不是参与选举)。