首页 > 代码库 > Spark2.0.2 Hadoop2.6.4全分布式配置详解

Spark2.0.2 Hadoop2.6.4全分布式配置详解

一、Scala安装

  下载目录http://www.scala-lang.org/download/ 

  修改/etc/profile。

export SCALA_HOME=/usr/local/scala/scala-2.0.2export PATH=/usr/local/scala/scala-2.0.2/bin:$PATH

 然后测试

scala -versionScala code runner version 2.0.2-- Copyright 2002-2013, LAMP/EPFL

  

二、安装Spark

官网下载地址:http://spark.apache.org/downloads.html 
需要下载预编译版本 

技术分享

  我当时直接从花圈的地方复制链接,然后迅雷下载,去linux下tar解压,一直不行,高了几个小时,后来我仔细看了看发现才17k,也用了tgz解压工具在win下也是打不开,说是未知类型,感觉下载有问题,需要点击

技术分享

2.1 spark-env.sh

安装后,需要在 ./conf/spark-env.sh 中修改 Spark 的 Classpath,执行如下命令拷贝一个配置文件:

cp ./conf/spark-env.sh.template ./conf/spark-env.sh

  这样就有了spark-env.sh,否则只有.template。

编辑 ./conf/spark-env.sh(gedit ./conf/spark-env.sh) ,在最后面加上如下(里面的具体路径我没改动):

export JAVA_HOME=/usr/local/java/jdk1.8.0_73export SCALA_HOME=/usr/local/scala/scala-2.11.7export HADOOP_HOME=/usr/local/hadoopexport HADOOP_CONF_DIR=/usr/local/hadoop/etc/hadoopexport SPARK_MASTER_IP=192.168.58.180export SPARK_WORKER_INSTANCES=2  #删掉export SPARK_WORKER_MEMORY=1gexport SPARK_WORKER_CORES=1export SPARK_HOME=/usr/local/sparkexport SPARK_DIST_CLASSPATH=$(/usr/local/hadoop/bin/hadoop classpath)

2.2 slaves

然后修改slaves

cd conf/cp slaves.template slavesvim slaves#insertCentOSMasterStandByNameNode

  吧同样的配置拷贝到StandByNameNode上,这样启动spark后发现有四个worker,webui上显示每台有两个worker,然后启动spark shell时候提示SPARK_WORKER_INSTANCES他已经废弃,中间改成EXECTOR就好,我看其他人没配置,我直接删除了,然后就是两个worker了,jps看到一个Master和一个Worker,否则是两个Worker。

2.3 spark-defaults.conf

cp  spark-defaults.conf.template  spark-defaults.conf#加入spark.executor.extraJavaOptions     -XX:+PrintGCDetails -DKey=value -Dnumbers="one two three"spark.eventLog.enabled              truespark.eventLog.dir                  hdfs://CentOSMaster:8020/historyserverforSparkspark.yarn.historySever.address     Master:18080spark.history.fs.logDirectory       hdfs://CentOSMaster:8020/historyserverforSpark

  在hdfs上穿件历史服务器文件夹

hdfsdfs -mkdir /historyserverforSpark

  否则打不开18080,开启的时候不提示,关闭的时候提示没有historyserver来关闭。

  hadoop的历史服务器是JHistoryServer,Spark的服务器是HistoryServer。

三、测试Spark

sbin目录下start-all.sh./start-history-server.sh

  启动之前需要启动hadoop的dfs和yarn。

bin/spark-shell

    注意后边没有.sh

出现scala>时说明成功。

技术分享

    在浏览器中输入192.168.10.1:8080时,会看到如下图,有两个Worker

技术分享

在浏览器中输入192.168.10.1:4040(必须先启动spark-shell,否则打不开4040)

出现如图:

技术分享

 四、总结

  spark-shell的启动真的好慢。

Spark2.0.2 Hadoop2.6.4全分布式配置详解