前言

 

本人大三大数据专业,配置的虚拟机为Centos6.7系统,hadoop版本为2.6.0版本,先前已经完成搭建CentOS部署HbaseCentOS6.7搭建Zookeeper编写MapReduce前置插件Hadoop-Eclipse-Plugin 安装 。在此基础上完成了Hive详解以及CentOS下部署Hive和Mysql。现在进行Spark的一个安装以及环境配置。
 


提示:以下是本篇文章正文内容,下面案例可供参考

一、解决兼容问题

首先不同版本的Spark会和之前配置的Hbase或者是Hadoop,Python产生版本不兼容的问题。这个可以根据自己之前安装程序的版本来自行选择相应的版本下载或者更新配置文件。这里给出与Hive兼容版本:

可以进入local(安装)目录查看自己Hive版本:

我的版本是2.3.7的就选择2.0.0版本滴,省的发生一系列兼容问题比较折磨。

二、获取Spark

Spark官网:

https://spark.apache.org/downloads.html

选择自己的版本:

2.4.7一样能用。

放入虚拟机

三、配置Spark环境变量

JDK版本需要在1.8版本以上,没升级的可以先升级一波:JDK1.8安装(Linux系统)

同时也需要安装scala,官网下载地址:https://www.scala-lang.org/download/2.11.12.html

解压:

tar zxvf spark-2.4.7-bin-hadoop2.6.tgz spark-2.4.7

修改名字:

 mv spark-2.4.7-bin-hadoop2.6.tgz spark-2.4.7

移动到用户本地目录:

mv spark-2.4.7 /usr/local

移动到conf目录下配置env:

cd /usr/local/spark-2.4.7/conf

cp spark-env.sh.template spark-env.sh

vi spark-env.sh

修改配置内容:

export JAVA_HOME=/usr/java/defaul

export SCALA_HOME=/usr/local/scala-2.11.12
export HADOOP_CONF_DIR=/usr/lib/hadoop/etc/hadoop
export SPARK_MASTER_IP=hadoop1
export SPARK_MASTER_PORT=7077
export SPARK_WORKER_MEMORY=512m
export SPARK_WORKER_CORES=1
export SPARK_EXECUTOR_MEMORY=512m
export SPARK_EXECUTOR_CORES=1
export SPARK_WORKEY_INSTANCES=1

export SPARK_HISTORY_OPTS="-Dspark.history.ui.port=18080 -Dspark.history.retainedApplications=3 -Dspark.history.fs.logDirectory=hdfs://hadoop1:9000/spark-logs"

SPARK_MASTER_PORT为Spark主节的端口号。

配置slaves文件:

 cp slaves.template slaves

vi slaves

我的从者是:

hadoop2

hadoop3

配置spark-default.conf:

cp spark-defaults.conf.template spark-defaults.conf

vi spark-defaults.conf

spark.eventLog.enabled true

spark.eventLog.dir hdfs://master:9000/spark-logs

spark.eventLog.compress true

参数解释
spark.masterSpark主节点所在机器及端口,默认写法是spark://
spark.eventLog.enabled是否打开任务日志功能,默认为false,即不打开
spark.eventLog.dir任务日志默认存放位置,配置为一个HDFS路径即可
spark.history.fs.logDirectory存放历史应用日志文件的目录

 

在主节点把配置好的Spark目录复制到从节点上:

scp -r /usr/local/spark2.4.7 hadoop2:/usr/local

scp -r /usr/local/spark2.4.7 hadoop3:/usr/local

创建spark-logs目录:

 hdfs dfs -mkdir /spark-logs

配置一下profile的spark路径:

export SPARK_HOME=/usr/local/spark2.4.7

export PATH=$PATH:$JAVA_HOME/bin:$SCALA_HOME/bin:$SPARK_HOME/bin:$SPARK_HOME/sbin

进入spark的sbin目录启动Spark集群:

./start-all.sh

(注process information unavailabele,没问题具体看jps查看进程出现process information unavailable

我们可以进浏览器看看:

./start-history-server.sh

 

参阅:

https://zhuanlan.zhihu.com/p/143646583

https://blog.csdn.net/AntKengElephant/article/details/86690685?utm_medium=distribute.pc_aggpage_search_result.none-task-blog-2~aggregatepage~first_rank_v2~rank_aggregation-1-86690685.pc_agg_rank_aggregation&utm_term=spark%E7%9A%8418080%E7%AB%AF%E5%8F%A3&spm=1000.2123.3001.4430

Logo

华为开发者空间,是为全球开发者打造的专属开发空间,汇聚了华为优质开发资源及工具,致力于让每一位开发者拥有一台云主机,基于华为根生态开发、创新。

更多推荐