对于多少个 spark 节点,我应该使用 Mesos 还是 Yarn?

With how many spark nodes should I use Mesos or Yarn?

我目前 运行 一个有 4 个 spark 节点和 1 个 solr 节点的集群。我想将集群快速扩展到 20 个节点,然后扩展到 100 个左右。我只是不确定在多大的集群规模下使用 Mesos 或 Yarn 才有意义?当我的节点数少于 100 个时,添加 Yarn 或 Mesos 是否有意义?

谢谢

Mesos 和 YARN 可以毫无问题地扩展到数千个节点。

工作负载决定使用什么,如果您的工作负载 jobs/tasks 仅与 spark 或 hadoop 相关,YARN 将是更好的选择,否则如果您有 Docker 个容器或其他 运行 那么 Mesos 将是更好的选择。

使用Mesos还有很多其他的优点和缺点,请在比较中找到它们here

如果您只是 运行ning Spark,Spark 独立集群将提供几乎所有与其他集群管理器相同的功能。

如果您想 运行 Spark 与其他应用程序一起使用,或者使用更丰富的资源调度功能(例如队列),YARN 和 Mesos 都提供这些功能。其中,YARN 可能会预装在许多 Hadoop 发行版中。

如果您的节点少于 100 个,并且您不打算 运行 除了 spark 之外的任何其他应用程序,那么 spark 独立集群将是更好的选择,因为您不会过度杀伤。

这又取决于您想要使用的功能,例如队列或调度程序,例如公平调度程序,然后 YARN/Mesos 才有意义。 (使用或不使用这些功能取决于您对 spark 集群执行的操作、工作负载以及集群的繁忙程度。)