Spark学习记录(二)Spark集群搭建

余生长醉 提交于 2019-11-30 22:30:20

Hadoop  Spark集群搭建,以及IDEA远程调试

环境:Hadoop-2.7.2  jdk-1.8   scala-2-11-12  spark-2.1.0

spark2.0.0开始,只支持Java8版本了,并且Java8版本最好相对高一点,并且从spark2.1.0开始只支持scala2.11了

 

scala下载地址(选择2.11.X以上版本):http://www.scala-lang.org/download/
spark下载地址:http://spark.apache.org/downloads.html

 

由于我们的hadoop是2.7.2 版本,这里选择下载对应的spark版本。

首先,将scala和spark的tar包上传到我们的三台虚拟机上,并进行解压配置。

三台虚拟机IP:

192.168.194.131 Hadoop.Master
192.168.194.129 Hadoop.Slave1
192.168.194.130 Hadoop.Slave2

我们先来配置scala,在配置scala之前我们必须保证服务器上有Java8之后,配置scala的环境变量,编辑/etc/profile:

 

保存然后使其生效之后,执行scala -version观察输出:

 

如果输出对应版本号则说明配置成功。

接下来我们配置spark,首先就是环境变量:

 

然后我们进入spark目录下的conf目录,去配置两个配置文件spark-env.sh slaves

首先我们编辑spark-env.sh,将spark-env.sh.template文件重命名

 

然后我们编辑slaves,将slaves.template文件重命名,并且将hosts文件中我们的两个hadoop从节点的host也来充当我们的spark的从节点

 

然后我们进入spark目录下的sbin目录中执行start-all.sh,用jps命令观察各个节点的启动效果。

Master:

 

Slave:

 

 

遇到的坑:

1.stop-all.sh执行关闭spark集群的时候,worker节点没有正常关闭(原因看第3点)

2.spark UI在单机节点的时候访问地址为 IP:4040 ,集群状态下 的访问地址为IP:8080。

3.由于我的hadoop的环境变量中,将hadoop目录下的sbin目录配置到了PATH中,导致我在spark目录下的sbin目录下执行start-all.sh/stop-all.sh时,总是执行hadoop的start-all.sh/stop-all.sh,想执行spark的start-all.sh只能通过绝对路径执行

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!