Spark入门遇见的问题1

经理一般折腾之后总算跑通了一个spark wordcount程序,过程中遇到问题进行总结


问题1:

在使用start-all.sh脚本启动spark集群时候控制台可能会报错:大概意思是说worker启动失败,请去worker节点下的spark_home/logs下查看日志,经过查看日志内容如下:

Spark入门遇见的问题1_第1张图片

解决方案:关闭防火墙(也许可能是ip映射或者主机名的问题)


问题2:

由于本人Spark集群没有运行在Hadoop之上(本集群没有搭建Hadoop),所以除了的word文件放在linux本地文件系统中,如果文件放在本地必须保证每一个节点的该目录下都有要处理的数据的完整副本,多个节点有数据但是计算的时候不会出现同一段数据的重复计算

Spark入门遇见的问题1_第2张图片


问题3:Worker节点的Spark_home目录下有作业的日志文件和作业的jar包文件。


问题4:在Master节点使用start-all.sh脚本启动集群提示:

Spark入门遇见的问题1_第3张图片

一般最可能的原因(前提是你的集群搭建成功的情况下,就是说之前成功启动过集群)有两个: 

1:防火墙的原因,因为Worker定期向Master发送心跳,使用的协议是TCP/IP协议(可靠),如果防火墙打开的发送心跳会失败,所以关闭防火墙 可解决。(这里面就不截取日志的图片了)

2:也可能每一个节点的时间不同步引起的,因为发送心跳会计算心跳时间是否符合标准(两个节点时间悬疏太大一般会出错)可以使用date -s "2016- 10-7 10:08:20"同步时间。(这里面就不截取日志的图片了)

3:其他原因看日志具体分析吧。


问题5:关于启动集群(Standalone模式),如果在worker节点使用start-all.sh脚本启动的话,只会在当前worker节点启动一个Master节点,并不会向真正的Master节点发送RPC请求来要求真正的集群Master启动,所以一般启动集群还是在真正的Master集群上运行start-all.sh脚本。

你可能感兴趣的:(Spark入门遇见的问题1)