Spark2.1.0安装和配置

版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://blog.csdn.net/Wee_Mita/article/details/70308613

Spark主要使用HDFS充当持久化层,所以完整地使用Spark需要预先安装Hadoop

Hadoop的下载地址:http://hadoop.apache.org/
Spark的下载地址:http://spark.apache.org/

同时也可使用Ambari安装Hadoop生态系统的所有需要的组件,参看文章:http://blog.csdn.net/wee_mita/article/details/64121884

Spark在生产环境中,主要部署在安装Linux系统的集群中。在Linux系统中安装Spark需要预先安装JDK、Scala等所需要的依赖。

由于Spark是计算框架,所以需要预先在集群内有搭建好存储数据的持久化层,如HDFS、Hive、Cassandra等,最后可以通过启动脚本运行应用。

1.安装JDK
1-1 使用命令getconf LONG_BIT 查看Linux系统的位数,然后下载相应版本的JDK
1-2 Oracle JDK下载地址:http://www.oracle.com/technetwork/java/javase/downloads/index.html
1-3 把下载的jdk-8u131-linux-x64.tar.gz安装包解压到相应的目录

tar -zxvf jdk-8u131-linux-x64.tar.gz

1-4 配置环境变量,在/etc/profile 配置全局变量或者在.bash_profile 中配置用户变量
在文件中添加如下内容,
添加完成之后使用命令source /etc/profle 使环境变量生效,
然后使用命令java -version 查看是否安装成功

export JAVA_HOME=/usr/java
export JRE_HOME=$JAVA_HOME/jre
export PATH=$PATH:$JAVA_HOME/bin:$JRE_HOME/bin
export CLASSPATH=.:$CLASSPATH:$JAVA_HOME/lib:$JRE_HOME/lib

2.安装Scala
2-1 下载Scala地址:http://www.scala-lang.org/download/
2-2 根据Spark对应版本选择下载的Scala版本(scala-2.12.2.tgz)
2-3 如1-3那样的安装
2-4 配置环境变量,在/etc/profile 配置全局变量或者在.bash_profile 中配置用户变量
在文件中添加如下内容,
添加完成之后使用命令source /etc/profle 使环境变量生效,
在命令行输入Scala,能进入scala命令行说明安装成功

export SCALA_HOME=/usr/scala
export PATH=$PATH:$SCALA_HOME/bin

3.安装Hadoop
Hadoop的安装和配置,参看:
http://blog.csdn.net/wee_mita/article/details/52750112 或者 http://blog.csdn.net/wee_mita/article/details/53911747

4.Spark安装
4-1 Spark的下载地址:http://spark.apache.org/
4-2 下载对应Hadoop版本的Spark版本(spark-2.1.0-bin-hadoop2.7.tgz)
4-3 按照1-3的方式安装Spark
4-4 配置环境变量,在/etc/profile 配置全局变量或者在.bash_profile 中配置用户变量
在文件中添加如下内容,
添加完成之后使用命令source /etc/profle 使环境变量生效,

export SPARK_HOME=/usr/spark

4-5 配置conf/spark-env.sh 文件
官方配置文件参考:http://spark.apache.org/docs/latest/configuration.html
在文件中加入如下内容:

export SCALA_HOME=/usr/scala
export SPARK_WORK_MEMORY=4g
export SPARK_MASTER_IP=Master
export MASTER=spark://Master:7077

参数解释:

  • SPARK_WORK_MEMORY 决定在每一个Worker节点上可用的最大内存,增加这个数可以在内存中缓存更多数据,但一定要给Slave的操作系统和其他服务预留足够内存
  • SPARK_MASTER_IP 参数可以是具体的IP地址也可以是hostname,系统会更具hosts文件进行解析
  • MASTER配置端口号

PS:SPARK_MASTER_IP和MASTER必须配置否则会造成Slave无法注册主机错误

4-6 配置conf/slaves 文件 将节点的主机名加入到slaves文件中

Slave1
Slave2
...
...

5.启动Spark集群

Spark集群需要和Hadoop集群一起启动

5-1 Spark启动和关闭

./sbin/start-all.sh

./sbin/stop-all.sh

5-2 在Master节点查看是否启动成功

# jps
2127 Master

能查看都Master就成功了

5-3 利用SSH免密码登录Worker节点查看是否启动成功

关于SSH的配置在前面的Hadoop配置中有

# jps
1405 Worker

5-4 完全启动的一个Spark集群的进程如下:

2127 Master
1405 Worker
7396 NameNode
7594 SecondaryNameNode
1053 DataNode
7681 ResourceManager
31935 NodeManager

如缺少进程可以在logs文件夹下查看相应的日志,具体查看哪里出了问题 针对解决。

6.Spark集群样例运行

6-1 以./run-example 的方式运行

./bin/run-example org.apache.spark.examples.SparkPi

6-2 以./Spark Shell 的方式运行

./bin/spark-shell

6-3 通过web ui 查看集群状态

http://master:8080
http://master:4040
展开阅读全文

没有更多推荐了,返回首页