我试图用mesos/marathon实现lizardfs集群。我为此创建了一些码头图像。我需要得到一个特定类型的docker容器(lizardfs-master)而不是在已经运行另一种类型的容器(lizardfs-shadow或lizardfs-metalogger)的同一个节点上运行。也就是说,我需要运行这三种类型容器中的每一种的实例,但它们不能同时在同一个节点上运行。它们是相互排斥的。相互排斥的码头集装箱的马拉松限制
我不想限制可以运行每个容器的节点。我只是想让它们独占。
有没有什么办法可以在马拉松中完成这个,即使用约束?它会怎样?
谢谢。
理想情况下,我的想法并不是将docker容器绑定到特定节点,但marathon可以“实现”它不能在已经运行其他容器类型的节点上运行某个容器。我想要一个“扁平”的集群,其中马拉松,如果节点损坏,可以决定在哪里运行该“死”容器,选择另一个不运行互斥容器的节点:) –
是的,你可以额外拆分将群集分组,然后使用LIKE或UNLIKE约束将您的容器分配给节点组并将它们相互排斥。 –
有道理。因此,我可以将群集节点拆分为不相交的集合,并强制每个互斥容器运行在不同的节点子集中。谢谢! –