具有ID y的从属设备上不存在ID为x的框架

时间:2016-02-11 06:48:26

标签: configuration mesos mesosphere marathon

我在马拉松仪表板上一直收到此错误

Framework with ID 'a5a96e8c-c3f2-4591-8eb3-43f8dc902585-0001' does not exist on slave with ID '9959ba51-f6f7-448f-99d2-289767f12179-S2'.

发生此错误的路径是点击" Sandbox"在主要马拉松仪表板上的任务旁边。

路径看起来像这样

http://mesos.dev.internal/#/slaves/9959ba51-f6f7-448f-99d2-289767f12179-S2/frameworks/a5a96e8c-c3f2-4591-8eb3-43f8dc902585-0001/executors/rabbitmq.6316bf0a-d089-11e5-b895-fa163e196ca3/browse

但是,如果我通过从属面板进入奴隶,并从那里单击框架,我就可以访问沙箱了。这种情况下的链接如下所示

http://mesos.dev.internal/#/slaves/9959ba51-f6f7-448f-99d2-289767f12179-S2/browse?path=%2Ftmp%2Fmesos%2Fslaves%2Fc223b6b1-cef8-4599-8cea-b402bf20afc5-S0%2Fframeworks%2F20160108-205802-16842879-5050-1210-0001%2Fexecutors%2Frabbitmq.91b8bbf6-ceba-11e5-8047-0242ffdabb3e%2Fruns%2Fc66eb4d5-ea6d-451d-982f-6a0d29b25441

关于我错误配置的任何想法?

1 个答案:

答案 0 :(得分:1)

Mesos Web UI不会通过mesos-master代理日志(虽然它会很好)。基本上,您需要能够从浏览器(计算机)中解析奴隶的名称,并且需要为您打开端口5051

$ nc -z -w5 mesos.dev.internal 5051; echo $?
0 # port is open

让Mesos端口向公众开放并不是一个好主意,所以你可以:

  • 通过VPN连接
  • 将所有从属设备上的公共IP列入白名单
  • 使用CLI代替Web UI

一旦设置了主URI,使用CLI非常简单。你可以安装它:

pip install mesos.cli mesos.interface

然后,您可以使用mesos ps列出所有任务,或者获取stdout

  mesos tail -f rabbitmq.6316bf0a-d089-11e5-b895-fa163e196ca3

stderr

  mesos tail -f rabbitmq.6316bf0a-d089-11e5-b895-fa163e196ca3 stderr

请注意,mesos-cli不再开发,类似的功能以及您应该能够使用Mesosphere的更多DCOS CLI