Spark环境搭建文档(可不依赖hadoop,1.6.2版本Spark):
Spark环境依赖于Java和Scala。其中Java安装不再赘述,需要JRE 1.7+。
Scala下载:
Spark需要scala环境,http://www.scala-lang.org/download/2.10.6.html
选择2.10.6版本安装。Spark 1.6.2需要Scala 2.10版本的支持,不兼容2.11+。
解压下载包到指定路径:
1 | $ tar -zxvf scala-2.10.6.tgz /to/the/scala_path |
Spark 下载:
进入http://spark.apache.org/downloads.html 官网,Spark release选择1.6.2,package type选择Pre-built for Hadoop 2.6, 下载spark-1.6.2-bin-hadoop2.6.tgz。
解压spark-1.6.2-bin-hadoop2.6.tgz至指定路径:
1 | $ tar -zxvf spark-1.6.2-bin-hadoop2.6.tgz /to/the/spark_path |
环境变量:
环境变量可写在/etc/profile中,也可以写在/.bashrc等配置文件中,写好后使用source命令使其生效。
1 | $ vim /etc/profile #或者 vim ~/.bashrc |
环境变量中的添加内容如下:
1 | #Scala Config |
环境变量添加完毕后,使其生效。注意,/etc/profile中的环境变量需要重启机器才能每次启动终端都生效,/.bashrc环境变量每次启动终端都直接生效。
1 | $ source /etc/profile #或者 source ~/.bashrc |
最后需要注意,需要在每台机器的/etc/hosts里面写入一份所有机器的hostname ip映射关系。以方便所有机器都可用hostname去定位ip。
Spark配置
Spark的配置文件在${SPARK_HOME}/conf目录下。
1 | $ cd $SPARK_HOME |
- spark-env.sh配置需添加:
1 | export JAVA_HOME=${JAVA_HOME} |
- spark-defaults.conf配置需添加:
1 | spark.master spark://${master_hostname}:7077 |
- log4j.properties默认配置就好,需要记录在文件里再改
- slaves文件: slaves 跟hadoop启动一致,集群中每个worker机节点hostname都需要保存在slaves文件中。
注意,不包括master的hostname,如果master机也需要启动worker,则master的hostname也可写入slaves文件中。
Spark集群启动方式(在此只介绍不依赖于hadoop的集群的standalone启动方式):
- 在master机:
1 | $ start-master.sh |
即可启动。
- 在slave机:
1 | # start-slave.sh <master-spark-URL> |
另注,在master机也可以启动slave,slave中是worker的工作环境。所有spark任务均执行在work中。
仅供参考。