从网络上看不到 Mesos 从站 ui

Mesos slave not seen from web ui

我正在制作 ui 部署一个 mesos/marathon 集群的 Ansible 配方 (https://github.com/gridpocket/ansible-mesos-cluster)。

一切设置完成后,mesos 和 marathon ui 启动,但我有 2 个问题:
- 从 mesos ui 我看不到任何注册的奴隶
- 同样的 ui 也表示 "No master is currently leading..."

设置如下:
- 3 个 mesos master (192.168.1.191, 192, 193):每个 运行 mesos-master, zookeeper, marathon
- 3 个 mesos slave (192.168.1.194, 195, 196):每个 运行 mesos-slave,docker

从站配置

在每个奴隶中:

/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

我是不是在配置中遗漏了什么?

编辑

我重新 ui 整个集群并更正了 zookeeper 配置 (dataDir)。现在,
- mesos master 接口正在工作并指示主节点
- 马拉松 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 剧本中将状态从 "latest" 更改为 "present":

- name: install mesos + zookeeper
  apt: name=mesos state=present

- name: install marathon
  apt: name=marathon state=present

现在好了,slaves在mesos中出现activated状态UI。

是不是版本问题?

任何 Mesos 命令行参数都可以设置为文件,如 /etc/mesos-slave/master(对于 mesos-slave --master)。这就是服务启动查找 Mesos 参数的方式。

您还可以对环境变量使用 /etc/default/mesos-slave/(或 -master/),或对一般参数使用 /etc/mesos/

当我在安装 mesos 时使用 "present" 状态而不是 Ansible 剧本中的 "latest" 状态时,可以看到从属在 mesos UI 中被激活。

- name: install mesos + zookeeper
  apt: name=mesos state=present

- name: install marathon
  apt: name=marathon state=present