【问题标题】:How to set up cluster environment for Spark applications on Windows machines?如何在 Windows 机器上为 Spark 应用程序设置集群环境?
【发布时间】:2017-11-10 06:42:02
【问题描述】:

我一直在 pyspark 中使用 spark 独立非集群模式进行开发。这几天,想对spark的集群模式进行更多的探索。我在互联网上搜索,发现我可能需要一个集群管理器来使用 Apache Mesos 或 Spark Standalone 在不同的机器上运行集群。但是,我无法轻易找到图片的细节。

我应该如何从系统设计的角度进行设置,以便在多台 Windows 机器(或多台 Windows 虚拟机)中运行 Spark 集群。

【问题讨论】:

  • 文档说明非常清楚......独立工作正常,而且mesos无论如何都不会在windows上运行
  • 我很惊讶地发现 Mesos 不能完全在 Windows 上运行。 Mesos 代理可以正常运行,但这肯定不是解决方案 --> mesos.apache.org/documentation/latest/windows.

标签: windows apache-spark mesos apache-spark-standalone


【解决方案1】:

您可能想(从最简单的)探索 Spark Standalone,从 Hadoop YARN 到 Apache Mesos 或 DC/OS。见Cluster Mode Overview

我建议首先使用 Spark Standalone(作为提交 Spark 应用程序的最简单选项)。 Spark Standalone 包含在任何 Spark 安装中,并且在 Windows 上运行良好。问题是没有脚本可以启动和停止 Windows 操作系统的独立 Master 和 Workers(又名 slave)。您只需自己“编码”它们即可。

使用以下命令在 Windows 上启动独立的 Master:

// terminal 1
bin\spark-class org.apache.spark.deploy.master.Master

请注意,在您启动独立 Master 后,您不会收到任何输入,但不要担心,前往 http://localhost:8080/ 查看 Spark Standalone 集群的 Web UI。

在单独的终端中启动独立 Worker 的实例。

// terminal 2
bin\spark-class org.apache.spark.deploy.worker.Worker spark://localhost:7077

单机 Spark Standalone 集群启动后,您应该能够按以下方式提交 Spark 应用程序:

spark-submit --master spark://localhost:7077 ...

请阅读 Spark 官方文档中的Spark Standalone Mode


我刚刚发现 Mesos 不是一个选项,因为它的 System Requirements

Mesos 在 Linux(64 位)和 Mac OS X(64 位)上运行。

但是,您可以使用使用 VirtualBox 或类似工具的虚拟机运行任何集群。至少 DC/OS 有dcos-vagrant,这应该让它相当容易:

dcos-vagrant 在本地机器上快速配置 DC/OS 集群以进行开发、测试或演示。

部署 DC/OS Vagrant 涉及使用 dcos-vagrant-box 基础映像创建 VirtualBox VM 的本地集群,然后安装 DC/OS。

【讨论】:

    猜你喜欢
    • 2013-07-02
    • 2011-09-25
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2014-09-30
    • 2015-05-28
    • 2011-10-30
    相关资源
    最近更新 更多