在现有的 Hadoop 集群上安装 Spark

PTD*_*TDS 6 linux hadoop apache-spark

我不是系统管理员,但我可能需要执行一些管理任务,因此需要一些帮助。

我们有一个(远程)Hadoop 集群,人们通常在集群上运行 map-reduce 作业。

我计划在集群上安装 Apache Spark,以便可以利用集群中的所有机器。这应该是可能的,我从http://spark.apache.org/docs/latest/spark-standalone.html 中读到“您可以在现有的 Hadoop 集群旁边运行 Spark,只需在同一台机器上将它作为单独的服务启动……”

如果你以前做过这个,请给我详细的步骤,以便创建 Spark 集群。

Nic*_*mak 8

如果您的集群上已经安装了 Hadoop 并且想要在 YARN 上运行 spark,这很容易:

步骤 1:找到 YARN 主节点(即运行资源管理器)。以下步骤仅在主节点上执行。

第 2 步: 下载Spark tgz 包并将其解压缩到某处。

第 3 步:定义这些环境变量,.bashrc例如:

# Spark variables
export YARN_CONF_DIR=$HADOOP_HOME/etc/hadoop
export SPARK_HOME=<extracted_spark_package>
export PATH=$PATH:$SPARK_HOME/bin
Run Code Online (Sandbox Code Playgroud)

第 4 步:使用或--master选项运行您的 spark 作业:yarn-clientyarn-master

spark-submit \
--master yarn-client \
--class org.apache.spark.examples.JavaSparkPi \
$SPARK_HOME/lib/spark-examples-1.5.1-hadoop2.6.0.jar \
100
Run Code Online (Sandbox Code Playgroud)

此特定示例使用 Spark 安装附带的预编译示例作业。

您可以阅读我写的这篇博客文章,了解有关集群上 Hadoop 和 Spark 安装的更多详细信息。

您可以阅读以下文章,了解如何在 Java 中编译和运行您自己的 Spark 作业。如果您想用 Python 或 Scala 编写作业,使用 IPython 或 Zeppelin 等笔记本很方便。在此处阅读有关如何将它们用于 Hadoop-Spark 集群的更多信息