博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Spark 集群环境搭建
阅读量:6272 次
发布时间:2019-06-22

本文共 2984 字,大约阅读时间需要 9 分钟。

 

思路:

        ①先在主机s0上安装Scala和Spark,然后复制到其它两台主机s1、s2

        ②分别配置三台主机环境变量,并使用source命令使之立即生效

 

主机映射信息如下:

192.168.32.100 s0192.168.32.101 s1192.168.32.102 s2

 

搭建目标:

s0 :  Master

s1 :  Worker

s2 :  Worker

 

 

1、准备

Hadoop 版本:2.7.7

Scala版本:2.12.8

Spark版本:2.4.3

 

2、安装Hadoop

下载地址:

 

Hadoop 安装步骤参考(示例版本与HDFS端口配置略有差异,根据实际情况调整):

 

3、安装Scala

下载地址:

 

解压到 /opt 下

tar -zxvf scala-2.12.8.tgz -C /opt/

 

环境变量可暂时不配置,等到全部配置完成后统一配置环境变量,并使之生效。

配置环境变量,追加如下内容:

export SCALA_HOME=/opt/scala-2.12.8export PATH=$PATH:$SCALA_HOME/bin

 

可用追加命令,如下所示:

echo -e '\nexport SCALA_HOME=/opt/scala-2.12.8\nexport PATH=$PATH:$SCALA_HOME/bin\n' >> /etc/profile

 

使用source命令使配置立即生效

source /etc/profile

 

 

4、安装Spark

Spark下载地址:

 

也可到官网下载其它版本,下载页面地址如下:

 

解压到 /opt 下

tar -zxvf spark-2.4.3-bin-hadoop2.7.tgz -C /opt/

 

 

5、修改配置文件

进入配置文件目录

cd /opt/spark-2.4.3-bin-hadoop2.7/conf

 

配置 log4j.properties

mv log4j.properties.template log4j.properties

 

 

配置 slaves

mv slaves.template slaves

内容如下:

s1s2

 

 

配置 spark-env.sh

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

在 spark-env.sh 中添加如下内容(以下为本机示例,配置路径根据实际情况调整):

export JAVA_HOME=/opt/jdk1.8.0_192export SCALA_HOME=/opt/scala-2.12.8export HADOOP_HOME=/opt/hadoop-2.7.7export HADOOP_CONF_DIR=/opt/hadoop-2.7.7/etc/hadoopexport SPARK_MASTER_IP=s0export SPARK_MASTER_HOST=s0export SPARK_WORKER_MEMORY=1gexport SPARK_WORKER_CORES=2export SPARK_HOME=/opt/spark-2.4.3-bin-hadoop2.7export SPARK_DIST_CLASSPATH=$(/opt/hadoop-2.7.7/bin/hadoop classpath)

 

 

6、远程复制Scala 安装目录到其它两台主机s1、s2

scp -r /opt/scala-2.12.8 root@s1:/opt/scp -r /opt/scala-2.12.8 root@s2:/opt/

 

 

7、远程复制Spark 安装目录到其它两台主机s1、s2

scp -r /opt/spark-2.4.3-bin-hadoop2.7 root@s1:/opt/scp -r /opt/spark-2.4.3-bin-hadoop2.7 root@s2:/opt/

 

 

8、配置三台主机环境变量

在 /etc/profile 中追加如下内容:

export SCALA_HOME=/opt/scala-2.12.8export PATH=$PATH:$SCALA_HOME/binexport SPARK_HOME=/opt/spark-2.4.3-bin-hadoop2.7export PATH=$PATH:$SPARK_HOME/bin:$SPARK_HOME/sbin

 

追加命令如下:

echo -e '\nexport SCALA_HOME=/opt/scala-2.12.8\nexport PATH=$PATH:$SCALA_HOME/bin\n' >> /etc/profileecho -e '\nexport SPARK_HOME=/opt/spark-2.4.3-bin-hadoop2.7\nexport PATH=$PATH:$SPARK_HOME/bin:$SPARK_HOME/sbin\n' >> /etc/profile

 

使用source命令使配置立即生效

source /etc/profile

 

 

9、启动

启动Hadoop集群

start-dfs.shstart-yarn.sh

 

启动Spark

start-master.shstart-slaves.sh

 

 

10、查看状态

在三台主机上分别输入jps命令查看状态,结果如下:

[root@s0 conf]# jps2097 ResourceManager1803 NameNode2675 Master

 

[root@s1 ~]# jps1643 NodeManager1518 DataNode1847 Worker

 

[root@s2 ~]# jps1600 NodeManager1475 DataNode1804 Worker

 

符合预期结果!

 

11、验证

浏览器输入地址:

 

截图如下:

 

 

集群状态完美!

 

 

12、测试

 输入spark-shell 命令,如下所示:

 

创建 wordcount.txt 文件,内容如下:

Hello HadoopHello HbaseHello Spark

  

上传 wordcount.txt 到 HDFS文件系统上

hdfs dfs -mkdir -p /spark/inputhdfs dfs -put wordcount.txt /spark/input

 

输入scala 统计单词个数程序,如下:

sc.textFile("hdfs://s0:8020/spark/input/wordcount.txt").flatMap(_.split(" ")).map((_,1)).reduceByKey(_ + _).collect

 

输出结果:

res0: Array[(String, Int)] = Array((Spark,1), (Hello,3), (Hbase,1), (Hadoop,1))

 

 

 

程序正常运行!

 

 

13、停止集群

stop-slaves.shstop-master.sh

 

停止Hadoop集群

stop-yarn.shstop-dfs.sh

 

 

 

 

Spark 集群环境搭建

.

转载于:https://www.cnblogs.com/jonban/p/spark.html

你可能感兴趣的文章
select、poll、epoll之间的区别总结[整理]【转】
查看>>
CSS基础知识(上)
查看>>
PHP中常见的面试题2(附答案)
查看>>
角色权限分配
查看>>
明小子动力上传拿webshell.zip
查看>>
ES6 Module export与import复合使用
查看>>
第三篇、image 设置圆角的几种方式
查看>>
关于Vs2010 C#使用DirectX的问题
查看>>
EPP(Eclipse PHP)语法高亮仿EditPlus配置
查看>>
OA账号架构权限的问题
查看>>
030——VUE中鼠标语义修饰符
查看>>
python编辑csv
查看>>
sql游标的使用与exec的两种用法
查看>>
数据结构
查看>>
78/90 Subsets --back tracking
查看>>
非托管资源的释放
查看>>
开篇寄语
查看>>
Dijkstra算法的C++实现
查看>>
phpstorm psr2样式.xml
查看>>
js 无限级分类
查看>>