spark环境配置.docx

上传人:b****5 文档编号:6143150 上传时间:2023-01-04 格式:DOCX 页数:7 大小:714.72KB
下载 相关 举报
spark环境配置.docx_第1页
第1页 / 共7页
spark环境配置.docx_第2页
第2页 / 共7页
spark环境配置.docx_第3页
第3页 / 共7页
spark环境配置.docx_第4页
第4页 / 共7页
spark环境配置.docx_第5页
第5页 / 共7页
点击查看更多>>
下载资源
资源描述

spark环境配置.docx

《spark环境配置.docx》由会员分享,可在线阅读,更多相关《spark环境配置.docx(7页珍藏版)》请在冰豆网上搜索。

spark环境配置.docx

spark环境配置

一、安装JDK、Hadoop、Spark、Scala等,搭建spark集群

环境:

CentOS6.4,Hadoop1.1.2,JDK1.7,Spark0.7.2,Scala2.9.3

折腾了几天,终于把Spark集群安装成功了,其实比hadoop要简单很多,由于网上搜索到的博客大部分都还停留在需要依赖mesos的版本,走了不少弯路。

1.安装JDK1.7

yumsearchopenjdk-develsudoyuminstalljava-1.7.0-openjdk-devel.x86_64/usr/sbin/alternatives--configjava/usr/sbin/alternatives--configjavacsudovim/etc/profile#addthefollowinglinesattheendexportJAVA_HOME=/usr/lib/jvm/java-1.7.0-openjdk-1.7.0.19.x86_64exportJRE_HOME=$JAVA_HOME/jreexportPATH=$PATH:

$JAVA_HOME/binexportCLASSPATH=.:

$JAVA_HOME/lib/dt.jar:

$JAVA_HOME/lib/tools.jar#saveandexitvim#makethebashprofiletakeeffectimmediately$source/etc/profile#test$java-version

参考我的另一篇博客,安装和配置CentOS服务器的详细步骤。

2.安装Scala2.9.3

Spark0.7.2依赖Scala2.9.3,我们必须要安装Scala2.9.3.

下载 scala-2.9.3.tgz 并保存到home目录.

$tar-zxfscala-2.9.3.tgz$sudomvscala-2.9.3/usr/lib$sudovim/etc/profile#addthefollowinglinesattheendexportSCALA_HOME=/usr/lib/scala-2.9.3exportPATH=$PATH:

$SCALA_HOME/bin#saveandexitvim#makethebashprofiletakeeffectimmediatelysource/etc/profile#test$scala-version

3.下载预编译好的Spark

下载预编译好的Spark, spark-0.7.2-prebuilt-hadoop1.tgz.

如果你想从零开始编译,则下载源码包,但是我不建议你这么做,因为有一个Maven仓库,twitter4j.org,被墙了,导致编译时需要翻墙,非常麻烦。

如果你有DIY精神,并能顺利翻墙,则可以试试这种方式。

4.本地模式

4.1解压

$tar-zxfspark-0.7.2-prebuilt-hadoop1.tgz

4.2设置SPARK_EXAMPLES_JAR环境变量

$gedit/etc/profile#addthefollowinglinesattheendexportSPARK_EXAMPLES_JAR=/home/jay/spark-0.7.2/examples/target/scala-2.9.3/spark-examples_2.9.3-0.7.2.jar#saveandexitvim#makethebashprofiletakeeffectimmediately$source/etc/profile

这一步其实最关键,很不幸的是,官方文档和网上的博客,都没有提及这一点。

我是偶然看到了这两篇帖子,RunningSparkPi, Nullpointerexceptionwhenrunning./runspark.examples.SparkPilocal,才补上了这一步,之前死活都无法运行SparkPi。

4.3(可选)设置SPARK_HOME环境变量,并将SPARK_HOME/bin加入PATH

$gedit/etc/profile#addthefollowinglinesattheendexportSPARK_HOME=/home/jay/spark-0.7.2exportPATH=$PATH:

$SPARK_HOME/bin#saveandexitvim#makethebashprofiletakeeffectimmediately$source/etc/profile

4.4现在可以运行SparkPi了

$cd~/spark-0.7.2$./runspark.examples.SparkPilocal

5.集群模式

5.1安装Hadoop

用VMwareWorkstation创建三台CentOS虚拟机,hostname分别设置为master,slave01,slave02,设置SSH无密码登陆,安装hadoop,然后启动hadoop集群。

参考我的这篇博客,在CentOS上安装Hadoop.

5.2Scala

在三台机器上都要安装Scala2.9.3,按照第2节的步骤。

JDK在安装Hadoop时已经安装了。

5.3在master上安装并配置Spark

解压

$tar-zxfspark-0.7.2-prebuilt-hadoop1.tgz

设置SPARK_EXAMPLES_JAR环境变量

$gedit/etc/profile#addthefollowinglinesattheendexportSPARK_EXAMPLES_JAR=/home/jay/spark-0.7.2/examples/target/scala-2.9.3/spark-examples_2.9.3-0.7.2.jar#saveandexitvim#makethebashprofiletakeeffectimmediately$source/etc/profile

在in conf/spark-env.sh 中设置SCALA_HOME

$cd~/spark-0.7.2/conf$mvspark-env.sh.templatespark-env.sh$vimspark-env.sh#addthefollowinglineexportSCALA_HOME=/usr/lib/scala-2.9.3#saveandexit

在conf/slaves,添加Sparkworker的hostname,一行一个。

$vimslavesslave01slave02#saveandexit

(可选)设置SPARK_HOME环境变量,并将SPARK_HOME/bin加入PATH

$gedit/etc/profile#addthefollowinglinesattheendexportSPARK_HOME=/home/jay/spark-0.7.2exportPATH=$PATH:

$SPARK_HOME/bin#saveandexitvim#makethebashprofiletakeeffectimmediately$source/etc/profile

5.4在所有worker上安装并配置Spark

既然master上的这个文件件已经配置好了,把它拷贝到所有的worker。

注意,三台机器spark所在目录必须一致,因为master会登陆到worker上执行命令,master认为worker的spark路径与自己一样。

$cd$scp-rspark-0.7.2dev@slave01:

~$scp-rspark-0.7.2dev@slave02:

~

按照第5.3节设置SPARK_EXAMPLES_JAR环境变量,配置文件不用配置了,因为是直接从master复制过来的,已经配置好了。

5.5启动Spark集群

在master上执行

$cd~/spark-0.7.2$bin/start-all.sh

检测进程是否启动

$jps11055Jps2313SecondaryNameNode2409JobTracker2152NameNode4822Master

浏览master的webUI(默认http:

//localhost:

8080).这是你应该可以看到所有的word节点,以及他们的CPU个数和内存等信息。

##5.6运行SparkPi例子

$cd~/spark-0.7.2$./runspark.examples.SparkPispark:

//fang:

7077

(可选)运行自带的例子,SparkLR和SparkKMeans.

#LogisticRegression#./runspark.examples.SparkLRspark:

//fang:

7077#kmeans$./runspark.examples.SparkKMeansspark:

//fang:

7077./kmeans_data.txt21

5.7从HDFS读取文件并运行WordCount

$cd~/spark-0.7.2$hadoopfs-putREADME.md.$MASTER=spark:

//fang:

7077./spark-shellscala>valfile=sc.textFile("hdfs:

//master:

9000/user/dev/README.md")scala>valcount=file.flatMap(line=>line.split("")).map(word=>(word,1)).reduceByKey(_+_)scala>count.collect()

5.8停止Spark集群

$cd~/spark-0.7.2$bin/stop-all.sh

 

二、安装工具sbt,来运行Scala程序

1、下载sbt通用平台压缩包:

sbt-0.13.5.tgz

http:

//www.scala-sbt.org/download.html

2、建立目录,解压文件到所建立目录

$sudomkdir/opt/scala/sbt

$sudotarzxvfsbt-0.13.5.tgz-C/opt/scala/

3、建立启动sbt的脚本文件

/*选定一个位置,建立启动sbt的脚本文本文件,如/opt/scala/sbt/目录下面新建文件名为sbt的文本文件*/

$cd/opt/scala/sbt/

$vimsbt

/*在sbt文本文件中添加

BT_OPTS="-Xms512M-Xmx1536M-Xss1M-XX:

+CMSClassUnloadingEnabled-XX:

MaxPermSize=256M"

java$SBT_OPTS-jarbin/sbt-launch.jar"$@"

然后按esc键输入:

wq保存退出,注意红色字体中的路径可以是绝对路径也可以是相对路径,只要能够正确的定位到解压的sbt文件包中的sbt-launch.jar文件即可*/

/×修改sbt文件权限×/

$chmodu+xsbt

4、配置PATH环境变量,保证在控制台中可以使用sbt命令

$vim~/.bashrc

/*在文件尾部添加如下代码后,保存退出*/

exportPATH=/opt/scala/sbt/:

$PATH

/*使配置文件立刻生效*/

$source~/.bashrc

5、测试sbt是否安装成功

/*第一次执行时,会下载一些文件包,然后才能正常使用,要确保联网了,安装成功后显示如下*/

$sbtsbt-version

[info]Setcurrentprojecttosbt(inbuildfile:

/opt/scala/sbt/)

[info]0.13.5

6、sbt命令下运行Scala程序

编写好Scala程序,保存为.scala形式,拷贝程序文件到安装目录下,命令行下进入安装目录,运行sbt命令,显示出info信息,之后运行run命令,即可运行写好的Scala程序。

 

三、Scala程序也可在eclipse中编写运行,只需安装一个Scala-IDE插件

1、安装完eclipse后,直接安装Scala-IDE即可,

2、重启eclipse,运行Scala程序。

Goto“File”-“New”-“Other…”andselect“ScalaProject”fromthefolder“ScalaWizards”

Choseaprojectnameandselect“Finish”

Select“File”-“New”-“ScalaObject”tocreateanewobject,Enter Hello asthenamefortheobjectandput greeter asthepackagenameabove

Savethefileandselect“Run”-“Run”fromthemenu.Chosetorunas“ScalaApplication”

 

四、使用sbt工具将Scala程序打包,在spark集群环境下运行

如下Scala程序代码:

     此段程序主要功能通过两个job并行分析spark自带的README.md文件中包含a和b字母分别有多少行。

一、我们还需要建立一个simple.sbt文件,来加入spark库依赖,scala程序执行的时候便可以调用spark库。

 建立好simple.sbt文件后,由于需要对整个工程进行打包成jar文件才能执行,官网建议使用sbt(simplebuildtool)这个工具对整个工程进行打包,而sbt对工程的目录有一定的要求,二、如下图所示建立好工程目录。

     由于sbt工具并不是linux自带的软件,因此还需要安装,安装好了sbt工具后,运行sbtpackage命令(电脑需要联网),电脑会分析工程自行下载一些其他需要的文件,然后将文件打包,在我的电脑上在下图所示的目录中会生成simple-project_2.10-1.0.jar的包。

    三、 这个时候进入spark安装目录下,运行spark-submit命令并附带一些参数便可得到结果。

     我们看到包含a的行数为73行,包含b的行数为35行。

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 求职职场 > 简历

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1