spark 运行环境搭建
第一步:下载spark-1.0.2-bin-hadoop2.tgz ,scala-2.10.4.tgz 版本随意,由于文件包大于10兆,上传不了,自行下载吧,下载地址:http://spark.apache.org/downloads.html,http://www.scala-lang.org/download/
下载完后解压到目录 如:/exprot/servers ,命令tar -zxvf spark-1.0.2-bin-hadoop2.tgz
第二步:配置环境变量,命令vi /etc/profile
1.配置JAVA_HOME 如:export JAVA_HOME=/export/servers/jdk1.7.0_80,jdk请自行下载
2.配置SCALA_HOME 如:export SCALA_HOME=/export/servers/scala-2.10.4
3.配置SPARK_HOME 如:export SPARK_HOME=/export/servers/spark-1.0.2-bin-hadoop2
4.配置PATH ,可以自己新增一个 如:export PATH=$PATH:$SCALA_HOME/bin:$SPARK_HOME/bin:$SPARK_HOME/sbin
第三步:配置spark conf文件,首先进入到conf目录 cd /export/servers/spark-1.0.2-bin-hadoop2/conf,
1.如果该目录下存在spark-env.sh.template这个文件 ,那么请复制一份并改名为
spark-env.sh,如果没有spark-env.sh.template,自己直接创建一个spark-env.sh
2.如果该目录下存在slaves.template这个文件,那么请复制一份并改名为slaves,如果存在slaves,那就什么不用做
3.配置spark-env.sh
export JAVA_HOME=/export/servers/jdk1.7.0_80
export SCALA_HOME=/export/servers/scala-2.10.4
export SPARK_MASTER_IP=192.168.195.159
export SPARK_WORKER_MEMORY=1g
export HADOOP_CONF_DIR=/export/servers/spark-1.0.2-bin-hadoop2/conf
SPARK_WORKER_INSTANCES=2
SPARK_WORKER_CORES=2
4.配置 slaves
192.168.158.94
OK! 一台机器配置完毕 我把这台机器(192.168.195.159)设置成master,那么接下来按照上面的步骤配置slaves吧,对应我的机器是192.168.158.94
注意:spark目录和master机器保持一致 如:/export/servers/
slaves配置完毕后,就可以运行了(2台机器最好配置下ssh免密码登陆,因为master,slaves运行的时候需要通讯,如果没有配置,会要求输入密码,网上资料很多也很简单,请自行配置)
到master机器 spark sbin目录下 cd /export/servers/spark-1.0.2-bin-hadoop2/sbin
执行./start-all.sh 即可,通过jps 查看 多出了一个Master进程, 上slaves机器查看,多出了一个worker进程
并通过链接访问UI界面:http://192.168.195.159:8080/
运行环境配置到此结束,那么运行一个worldcount程序测试下
然后打成一个jar包,并上传到master机器(slaves也行)
并新建一个test.txt,写入如下内容
my name is xx
my name is yy
接下来就是提交到spark运行了, cd /export/servers/spark-1.0.2-bin-hadoop2/bin
执行如下命令:
spark-submit --master spark://192.168.195.159:7077 --name JavaWordCount --class com.xx.spark.JavaWordCount --executor-memory 10M --total-executor-cores 1 /export/servers/runspark/spark-study-1.0-SNAPSHOT.jar /export/servers/runspark/test.txt
运行结果:
my 2
name 2
is 2
xx 1
yy 1