Apache zookeeper 物理主机重新启动时,Mesos群集无法恢复

Apache zookeeper 物理主机重新启动时,Mesos群集无法恢复,apache-zookeeper,mesos,mesosphere,Apache Zookeeper,Mesos,Mesosphere,我在Ubuntu14.04上使用3主机上的mesosphere,如下所示: 一个是mesos master 两个是mesos奴隶 所有工作正常,但重新启动所有物理主机后,所有计划的作业都丢失正常吗?我希望zookeeper会存储当前作业,然后当系统需要重新启动时,所有作业都会在主引导后重新安排 更新: 我在同一个节点上使用marathon和mesos,我在运行marathon时使用flag--zk启用了marathon的--zk和--ha,marathon应该将其状态存储在zk中并在重新启动

我在Ubuntu14.04上使用3主机上的mesosphere,如下所示:

  • 一个是mesos master
  • 两个是mesos奴隶
所有工作正常,但重新启动所有物理主机后,所有计划的作业都丢失正常吗?我希望zookeeper会存储当前作业,然后当系统需要重新启动时,所有作业都会在主引导后重新安排

更新: 我在同一个节点上使用marathon和mesos,我在运行marathon时使用flag--zk

启用了marathon的
--zk
--ha
,marathon应该将其状态存储在zk中并在重新启动时恢复,只要mesos允许它使用相同的框架ID重新注册


但是,您还需要启用Mesos注册表(即使对于单个主机),以确保Mesos在主机故障切换时保存有关注册了哪些FrameworkId的信息。这可以通过设置
--registry=replicated\u log
(默认)、
--quorum=1
(因为您只有一个主控)和
--work\u dir=/path/to/registry
(状态存储位置)来实现。

我按照此安装说明解决了问题:

尽管您找到了解决方案,我想对这个问题做更多解释:)

在官方文件中:

请注意,如果从机上的操作系统重新启动,则所有 主机上运行的执行器和任务将被终止,而不会被终止 当主机重新启动时自动重新启动

因此,重新启动后,Mesos上的所有框架都将被杀死。重新启动框架的一种方法是在Marathon上运行所有框架,这将管理其他框架并在需要时重新启动它们


然而,当马拉松被杀时,你需要自动重启它。在您提到的Digitalocean链接中,Marathon是用init.d中的脚本安装的,因此它可以在重新启动后重新启动。否则,如果您通过源代码安装了马拉松,您可以使用supervisord之类的工具来监控马拉松。

您使用的是什么计划程序?@KirkSpaziani,我使用的是马拉松。您可以检查zookeeper状态吗?请在回答中留下完整的说明,而不是只留下链接吗?这样,即使链接断开,也可以帮助未来的访问者堆叠溢出。