Mesos部署的最佳基础


9

我们目前正在设计新的Apache Mesos云设置的体系结构。目的是通过将不同的堆栈移动到同一体系结构来统一我们的系统。主要工作量是使用Apache Spark和我们的公司基础结构(包括Web服务器,邮件服务器等)进行大数据分析。

这个想法是在Docker容器中运行我们的Web服务,该容器在Mesos的可用调度程序之一(Marathon / Chronos,Aurora或Singularity)之上运行。因此,这将是第一个Mesos框架组。在它旁边,我们将具有Apache Spark框架和几个用于数据存储的数据库框架。这将是第二组Mesos框架。在并行运行所有细节进行测试之后,我们将选择细节。

但是,我们很难决定要在哪个基础上运行Mesos。理想情况下,我们希望使其尽可能靠近金属。我们还希望使用业务流程解决方案来确保Mesos&Framework守护程序始终在故障发生时运行/重新启动。我们正在考虑的选项如下:

1)在最小的OS中将Mesos和框架作为docker容器运行。在这方面,我们目前倾向于CoreOS和Fleet。

2)直接在Ubuntu / Debian服务器上运行Mesos和框架。对于此选项,我们倾向于工头和木偶。

至于问题,我们正在寻找一种解决方案,按照重要性从高到低:

  • 配置最简单
  • 是最容易维护和更新的
  • 开销最少

我们以前没有使用CoreOS,但是似乎正在朝着这个方向努力。我遇到的一个大(主观)问题是,我们在Docker容器上运行Mesos,然后在Mesos上运行Docker容器。这似乎是“不洁的”,对我来说是错误的。这种考虑没有道理吗?

类似的想法涉及层之间的冗余。为了说明我的来历,我希望Mesos是仅在金属平台上运行的实际操作系统。看来,无论您使用什么基础,最终都会在多层体系结构(即CoreOS&Fleet&SystemD == Mesos&Marathon&Chronos)上获得相同的预期功能。这是不可避免的吗?

在记住我们的标准的同时,还有其他不错的选择可以在我们未能考虑的Mesos之下运行该层吗?


这听起来很复杂。在这种情况下,Mesos的吸引力是什么?
ewwhite

Mesos很好地补充了大数据/ HPC,例如Spark甚至是Hadoop,但我认为将所有内容都放在其中的价值不大,尤其是Web或邮件服务。
Michael Hampton 2015年

@ewwhite在这种情况下的吸引力在于,我们可以在所有应用程序之间分配可用的硬件资源,而不必分离我们的集群。如果运行两个配置,则必须手动在两个配置之间分配资源。
awishformore

@MichaelHampton我们相信Mesos架构是云计算的前进之路,但我丝毫不认为这是唯一的答案。但是,显而易见的是,在集群上进行管理比在同一集群上进行管理要容易得多。
awishformore 2015年

1
这可能值得一看: mesosphere.com/product-企业版显然可以在裸机上进行配置。
玛丽

Answers:


2

在Mesos下配置和运行服务可以是复杂的操作,也可以是简单的操作,您首先应根据需要和目标定义要在其下运行的服务架构,以获取所需的灵感。

我在HAProxy下运行超过70台计算机的设置以及各种不同的服务,以实现与Mesos-DNS和Marathon,Api网关,Chronos,Jenkins,Docker,Collected和Graphite,...的动态负载平衡。

现在回答您的直接问题:

  • 使用您最熟悉的“最喜欢的” Linux发行版进行配置时,Mesos最简单。
  • 最容易维护的是您最熟悉的发行版。
  • 关于开销,Mesos是一个软件系统,它除了使用其本身的基础OS库和其他软件功能外,而且将Mesos作为OS(与硬件和软件一起使用...)完全是错误的图景。

因此,对您来说,最好的选择是使用自己喜欢的Linux发行版并安装Mesos,或者,如果您想学习新的东西并且可能不费吹灰之力,请使用DCOSCoreOS (开源)

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.