Hadoop/Spark环境运行过程中可能遇到的问题或注意事项
1、集群启动的时候,从节点的datanode没有启动
问题原因:从节点的tmp/data下的配置文件中的clusterID与主节点的tmp/data下的配置文件中的clusterID不一致,导致集群启动时,hadoop会杀死从节点的datanode进程。
解决方案:
a) 将集群关闭;
b) 删除你在hadoop配置中设置的tmp下的data和name中的内容(每一个节点都要做这个操作)
c) 重新格式化一次hdfs
d) 重启集群,问题解决
2、集群启动时,jps显示所有的hadoop进程都已经存在,但是宿主机的浏览器打不开监控页面
问题原因:集群中的所有节点的防火墙没有被禁用,导致宿主机无法访问监控界面。
解决方案:
a) 将防火墙禁用(每一个节点都要做这个操作)
centos 7:
systemctl stop firewalld.service #停止
systemctl disable firewalld.service #禁用
之前的版本:
service iptables stop #停止
chkconfig iptables off #禁用
b) 问题解决。
3、启动sparkshell的时候出现错误:
Call From master to master:8020 failed on connection exception: java.net.ConnectException: Connection refused
问题原因:端口设置错误或者集群未启动导致通信失败
解决方案:
a) 先jps查看是否集群启动,如果启动则非此原因
b) 查看hdfs配置时候端口是8020
c) hdfsm默认端口为9000
4、提交任务到集群的时候报错:
ERROR SparkDeploySchedulerBackend: Application has been killed. Reason: All masters are unresponsive!
解决过程:
a) 先前我以为是scala版本不对,因为官网上spark默认所支持的scala版本是scala2.10,想要支持scala2.11.需要自行编译。而我用的时scala2.11,所以
我把集群中scala版本全部换成2.10版本。但是问题未得到解决。
b) 上网看到有人遇到相同的问题,说是spark提交任务的时候(如果通信工具没有改变的话,kafka另论),默认使用spark自带的通信工具akka,但是akka只 能够识别IP主机映射的hostname,而无法识别IP地址,所以我把集群中的每个节点的spark配置文件中的spark_master_ip修改为hostname(master主节点名 字),集群重启后,问题得到解决。
5、在Spark集群提交任务后报错:
You need to build Spark before running this program.
Initial job has not accepted any resources; check your cluster UI to ensure
通过查看日志发现,主节点的配置文件spark-evn.sh无故丢失(具体原因不详,可能是我在操作的时候在UI界面kill了一个任务导致),于是把其他节点的spark-evn.sh复制到主节点,集群服务全部关闭,主节点重启,服务重启,问题解决。
6、Spark的Application(print一个结果)在提交到yarn的时候,成功执行完成,但是没有打印结果:
Spark提交任务到yarn的时候有两种模式:yarn-client和yarn-cluster,yarn-client适合于日常生产,而yarn-client更适合于交互,可以作为测试使用。详细介绍请参看:《Spark:Yarn-cluster和Yarn-client区别与联系》
所以,刚刚提交任务的时候我采用的是cluster模式,故没有打印结果,换成client模式就可以了。
7、Spark提交任务后,Application运行成功,但是在SparkUI没有显示Application:
原因:Spark的缺省配置spark-default.conf没有打开
解决方案,去掉spark-default.conf.template最后的 .template,重启集群,问题解决!
PS: 其实1.4版本不打开这个spark-default.conf.template,spark默认在UI不可以显示的,这是因为你设置的主节点主机名不是master,而spark默认显示是master,所以UI无法正确显示Application。 另外,spark-submit提交任务到其他集群,在SparkUI中也是无法显示的,只能在对应的集群管理界面找到,一定要注意这一点!
8、Spark On Yarn运行时,设置历史记录:spark.history.fs.logDirectory要与spark.eventLog.dir指向同一目录,否则无法正确显示历史日志!
9、Spark On Yarn提交任务模板:spark-submit --master yarn-cluster --deploy-mode cluster --class com.quanttech.ASL.MoviesRecommond hdfs://192.168.2.201:54310/user/bigdata/script/zj/ScalaTestRecommond.jar
如有其他问题,我会后续更新!O(∩_∩)O
Hadoop/Spark环境运行过程中可能遇到的问题或注意事项的更多相关文章
- hadoop环境配置过程中可能遇到问题的解决方案
Failed to set setXIncludeAware(true) for parser 遇到此问题一般是jar包冲突的问题.一种情况是我们向java的lib目录添加我们自己的jar包导致had ...
- 【甘道夫】HBase开发环境搭建过程中可能遇到的异常:No FileSystem for scheme: hdfs
异常: 2014-02-24 12:15:48,507 WARN [Thread-2] util.DynamicClassLoader (DynamicClassLoader.java:<in ...
- Hadoop完全分布式搭建过程中遇到的问题小结
前一段时间,终于抽出了点时间,在自己本地机器上尝试搭建完全分布式Hadoop集群环境,也是借助网络上虾皮的Hadoop开发指南系列书籍一步步搭建起来的,在这里仅代表hadoop初学者向虾皮表示衷心的感 ...
- UITableView使用过程中可能遇到的问题
前言:记录一些UITableView使用过程中可能遇到的问题 环境:Xcode9 解决UITableViewStyleGrouped类型的TableView的cell距离顶部有距离的问题: table ...
- hadoop集群搭建过程中遇到的问题
在安装配置Hadoop集群的过程中遇到了很多问题,有些是配置导致的,有些是linux系统本身的问题造成的,现在总结如下. 1. hdfs namenode -format出现错误:hdfs namen ...
- HOWTO - Basic MSI安装包在安装运行过程中如何获取完整源路径
有朋友问到如何在一个Windows Installer安装包中获取安装包源路径,就是在安装包运行过程中动态获取*.msi所在完整路径. 这个问题分两类,如果我们的安装包只是一个*.msi安装文件,那么 ...
- ionic 运行过程中动态切换API服务器地址
ionic 运行过程中动态切换API服务器地址 keywords: ionic,phonegap,cordova,网络制式,动态切换,变更,API,服务器地址,$resource,localstora ...
- (转)在.NET程序运行过程中,什么是堆,什么是栈?什么情况下会在堆(栈)上分配数据?它们有性能上的区别吗?“结构”对象可能分配在堆上吗?什么情况下会发生,有什么需要注意的吗?
转自:http://www.cnblogs.com/xiaoyao2011/archive/2011/09/09/2172427.html 在.NET程序运行过程中,什么是堆,什么是栈? 堆也就是托管 ...
- Jmeter运行过程中如何让Fiddler同时可以抓获到服务器的应答报文
在默认情况下,Jmeter运行过程中,Fiddler是抓不到对应的应答报文的. 但是,在某些时候,我们希望分析Jmeter执行失败的原因,想了解Jmeter获取到的应答报文是否有问题,就需要同服务器返 ...
随机推荐
- 10th 本周工作量及进度统计
本周PSP C(类别) C(内容) S(开始时间) ST(结束时间) I(中断时间) T(实际时间) 文档 11月22日 规格说明书练习 10:23 15:30 132 175 11月23日 知识点 ...
- pygame学习笔记(6)——一个超级简单的游戏
转载请注明:@小五义 http://www.cnblogs.com/xiaowuyi 学了这么长时间的Pygame,一直想写个游戏实战一下.看起来很简单的游戏,写其来怎么这么难.最初想写个俄罗斯方块 ...
- mysql按日期分组统计数据
最近在做一个招聘网时,需要显示一个月内企业招聘信息的发布数量,按日期分组统计,刚开始是直接从源数据库表里面进行group by,但这样子就出现日期不连续的问题了,我想要的效果是,若当天没有数据,则显示 ...
- Linux下CPU信息的查看
逻辑CPU个数: cat /proc/cpuinfo | grep "processor" | wc -l //32 物理CPU个数: cat /proc/cpuinfo ...
- springcloud微服务实战:Eureka+Zuul+Feign/Ribbon+Hystrix Turbine+SpringConfig+sleuth+zipkin
相信现在已经有很多小伙伴已经或者准备使用springcloud微服务了,接下来为大家搭建一个微服务框架,后期可以自己进行扩展.会提供一个小案例: 服务提供者和服务消费者 ,消费者会调用提供者的服务,新 ...
- SGU326_Perspective
NBA打比赛.所有的比赛被分为多个团队.有的比赛是团内的,有的是与团外的队伍打的. 给出团内每个队伍已得分,以及总共有多少场比赛,还有团内所有队伍之间有多少场比赛? 问1队是否可能是分数最高的一个队伍 ...
- BZOJ 3143 游走(贪心+期望+高斯消元)
一个无向连通图,顶点从1编号到N,边从1编号到M. 小Z在该图上进行随机游走,初始时小Z在1号顶点,每一步小Z以相等的概率随机选 择当前顶点的某条边,沿着这条边走到下一个顶点,获得等于这条边的编号的分 ...
- jenkins 通过maven部署Tomcat8报错
问题过程 jenkins执行构建过程中,可以在workspace/项目名/target/目录下产生xxx.jar文件 但是在执行构建后操作时报出如下错误 [INFO] ---------------- ...
- laravel运行慢是怎么回事?
因为默认的 hello 页面引用了 google 的字体,至于为什么 google 这么慢就不用我详细说明了吧.
- MT【137】多少个?
数列\(\{a_n\}\)共11项,\(a_1=0,a_{11}=4\),且\(|a_{k+1}-a_{k}|=2,k=1,2,\cdots,10\) 求满足条件的不同的数列的个数______ 解答: ...