我正在构建一个 Ansible 配方来部署 mesos/marathon 集群(https://github.com/gridpocket/ansible-mesos-cluster)。
一旦一切都设置好了,mesos 和 marathon ui 就启动了,但我有两个问题:
- 从 mesos ui 我看不到任何已注册
的奴隶 - 相同的 ui 还指示“目前没有主人领先......”
设置如下:
- 3 个 mesos master (192.168.1.191, 192, 193):每个运行 mesos-master, zookeeper, marathon
- 3 个 mesos slave (192.168.1.194, 195, 196):每个运行 mesos-slave,码头工人
从站配置
在每个从站中:
/etc/mesos/zk:
zk://192.168.1.191:2181,192.168.1.192:2181,192.168.1.193:2181/mesos
大师配置
在每个主控上:
/etc/mesos/zk:
zk://192.168.1.191:2181,192.168.1.192:2181,192.168.1.193:2181/mesos
/etc/mesos-master/quorum:
2
/etc/mesos-master/hostname and /etc/mesos-master/ip
IP_OF_THE_MASTER
我在配置中遗漏了什么吗?
编辑
我重建了整个集群并更正了 zookeeper 配置(dataDir)。现在,
- mesos 主界面正在工作并指示主节点
- marathon ui 正在工作
在从机上,mesos-slave 进程在我启动后立即停止。
mesos-slave 日志对这个问题不是很详细:
Log file created at: 2015/07/09 15:51:15
Running on machine: vagrant-ubuntu-trusty-64
Log line format: [IWEF]mmdd hh:mm:ss.uuuuuu threadid file:line] msg
I0709 15:51:15.487542 8133 logging.cpp:172] INFO level logging started!
I0709 15:51:15.488011 8133 main.cpp:156] Build: 2015-05-05 06:15:50 by root
I0709 15:51:15.488081 8133 main.cpp:158] Version: 0.22.1
I0709 15:51:15.488137 8133 main.cpp:161] Git tag: 0.22.1
I0709 15:51:15.488190 8133 main.cpp:165] Git SHA: d6309f92a7f9af3ab61a878403e3d9c284ea87e0
编辑 2
当我手动启动一个slave时,指示zk字符串,slave正确启动:
sudo /usr/sbin/mesos-slave --master=zk://192.168.1.191:2181,192.168.1.192:2181,192.168.1.193:2181/mesos
但是“sudo service mesos-slave start”不能启动slave。
编辑 3
我在 ansible playbook 中将状态从“最新”更改为“当前”:
- name: install mesos + zookeeper
apt: name=mesos state=present
- name: install marathon
apt: name=marathon state=present
现在很好,从属设备在 mesos UI 中显示为激活状态。
是不是因为版本问题?