我不是系统管理员,但我可能需要做一些管理任务,因此需要一些帮助。
我们有一个(远程)Hadoop集群,人们通常在集群上运行map-reduce作业。
我计划在群集上安装Apache Spark,以便可以利用群集中的所有计算机。这应该是可能的,我已经从http://spark.apache.org/docs/latest/spark-standalone.html读取了“你可以在你现有的Hadoop集群上运行Spark,只需在相同的机器上将它作为单独的服务启动......”
如果您之前已经这样做过,请给我详细的步骤,以便创建Spark群集。
答案 0 :(得分:3)
如果您的群集上已经安装了Hadoop,并希望在YARN上运行spark,这很容易:
步骤1:找到YARN主节点(即运行资源管理器的节点)。以下步骤仅在主节点上执行。
第2步: Download 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
第4步:使用--master
选项yarn-client
或yarn-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
此特定示例使用Spark安装附带的预编译示例作业。
您可以阅读我撰写的this blog post,了解有关群集上Hadoop和Spark安装的更多详细信息。
您可以阅读下面的帖子,了解如何在Java中编译和运行您自己的Spark作业。如果你想用Python或Scala编写作业,可以方便地使用像IPython或Zeppelin这样的笔记本。阅读有关如何在Hadoop-Spark集群here中使用它们的更多信息。