mesos群集在物理主机重新启动时不恢复

c6ubokkw  于 2021-06-21  发布在  Mesos
关注(0)|答案(3)|浏览(306)

我在Ubuntu14.04上的3主机上使用mesosphere,如下所示:
一个是梅索斯大师
两个带mesos slave
所有工作正常,但重新启动所有物理主机后,所有计划的作业都丢失。正常吗?我希望zookeeper将存储当前作业,然后当系统需要重新启动时,所有作业将在主引导后重新安排。
更新:我在同一个节点上使用marathon和mesos,使用flag-zk运行marathon

cnh2zyt3

cnh2zyt31#

我按照这个安装说明解决了这个问题:如何在ubuntu14.04上配置一个生产就绪的中间层集群

jjhzyzn0

jjhzyzn02#

用马拉松的 --zk 以及 --ha 如果启用,marathon应该将其状态存储在zk中,并在重新启动时恢复它,只要mesos允许它使用相同的框架id重新注册。
但是,您还需要启用mesos注册表(即使对于单个主机),以确保mesos在发生主机故障转移时保存有关注册了哪些frameworkid的信息。这可以通过设置 --registry=replicated_log (默认), --quorum=1 (因为你只有一个主人),而且 --work_dir=/path/to/registry (存储状态的位置)。

jei2mxaa

jei2mxaa3#

虽然你找到了解决办法,但我想对这个问题做更多解释:)
在正式文件中:http://mesos.apache.org/documentation/latest/slave-recovery/
请注意,如果从机上的操作系统重新启动,则主机上运行的所有执行器和任务都将被终止,并且在主机恢复时不会自动重新启动。
因此,在重启后,mesos上的所有框架都将被杀死。重新启动框架的一种方法是在marathon上运行所有框架,marathon将管理其他框架并在需要时重新启动它们。
然而,你需要在马拉松被杀后自动重启。在您提到的digitalocean链接中,marathon是用init.d中的脚本安装的,因此它可以在重新启动后重新启动。否则,如果您通过源代码安装了marathon,则可以使用类似supervisord的工具来监视marathon。

相关问题