概述
下面列举了在启动Hadoop集群时出现的各种错误及解决方案
- 当启动HDFS集群的时候,启动后用jps命令查询集群各组件状态,发现Secondary name node没有出现。
故到Hadoop服务的logs日志文件夹查看hadoop-root-secondarynamenode-VM-4-2-ubuntu.log,发现如下报错:
-
Lock on /export/servers/hadoop-2.7.5/hadoopDatas/snn/name/in_use.lock或者Lock on /export/servers/hadoop-2.7.5/hadoopDatas/snn/edits/in_use.lock错误。解决方案:
直接定位到/export/servers/hadoop-2.7.5/hadoopDatas/snn/name或/export/servers/hadoop-2.7.5/hadoopDatas/snn/edits文件夹,然后文件夹里面会看到有一个in_use.lock文件,需要手动将其删除即可解除此锁定。 -
遇到报java.net.BindException: Port in use: node01:50090,Caused by: java.net.BindException: Address already in use错误。解决方案:
应该是之前关闭或异常关闭Hadoop集群的时候端口被占用了,可以通过命令lsof -i :50090查看端口占用的情况,然后找到对应的进程号通过命令kill -9 进程号将其占用端口的进程删除即可
- 最近启动Hadoop成功启动以后,最初一两天能够正常运行,但过到第三天用jps命令查看Hadoop组件连同zookeeper集群都集体挂掉了,然后去查看Hadoop主服务器日志,发现报了下面错误:
-
java.io.IOException: Connection reset by peer错误,解决方案:
有可能是由于zokeeper的默认连接数限制只有60个造成的:主要错误是“java.io.IOException: Connection reset by peer”,其实意思很明白了Zookeeper将connection closing.
通过在zookeeper的配置文件将maxClientCnxns调大一些,我目前将其配置修改一下参数maxClientCnxns调大到1000,目前再重新测试中等几天看看能不能解决问题,再下结论。待续 -
java.io.IOException: Connection reset by peer错误,解决方案二:
产生原因:
1 namenode用于处理RPC请求线程过小
2 网络不稳定
解决方案:
dfs.namenode.handler.count(加大) NN的服务线程数。用于处理RPC请求dfs.namenode.replication.interval(减小) NN周期性计算DN的副本情况的频率,秒
dfs.client.failover.connection.retries(建议加大) 专家设置。IPC客户端失败重试次数。在网络不稳定时建议加大此值
dfs.client.failover.connection.retries.on.timeouts(网络不稳定建议加大)专家设置。IPC客户端失败重试次数,此失败仅指超时失败。在网络不稳定时建议加大此值
参考:https://www.fffmo.com/1419.html
最后
以上就是欣喜玉米为你收集整理的Hadoop错误及解决方案集锦的全部内容,希望文章能够帮你解决Hadoop错误及解决方案集锦所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
发表评论 取消回复