记录一下历时四天的Hadoop改错历程!
本人hadoop使用的版本是hadoop-3.1.3的高可用(HA)
目录
问题描述:
从错节点jps查看进程显示正常,DataNode和NodeManager都存在的,
但是运行程序的时候会报奇奇怪怪的错误,下面是会报的错误:
错误一:
ERROR tool.ExportTool: Encountered IOException running export job: java.net.ConnectException: Call From hadoop01/192.168.17.128 to hadoop01:8020 failed on connection exception: java.net.ConnectException: Connection refused;
错误二:
Permission denied: user=dr.who, access=READ_EXECUTE, inode="/tmp/hadoop-yarn/staging/root/.staging":root:supergroup:drwx------
错误三:
Caused by: org.apache.hadoop.hdfs.BlockMissingException: Could not obtain block: BP-865521925-192.168.17.128-1650628993926:blk_1073778545_37721 file=/tmp/hadoop-yarn/staging/root/.staging/job_1654186230804_0001/job.split
错误四:
FAILED: Execution Error, return code 2 from org.apache.hadoop.hive.ql.exec.mr.MapredLocalTask
错误五:
Caused by: Could not obtain block
发现问题:
进入NameNode的9870端口(Hadoop2X的是50070)
发现DataNode不齐,jps查看所有的DataNode都是存在的。
找到问题了,DataNode假活!!!!
问题原因:
DataNode已经死了,jps还是会出现DataNode和NodeManager!
解决:
1、进入死了的DataNode节点,进入Hadoop的安装目录,删除data文件夹,重新启动,重新启动Hadoop从节点的data会重新生成!
2、重新启动后进入9870端口(Hadoop2X的是50070),我的是:hadoop01:9870
可能会出现文件损坏情况,如果出现,删除损坏的文件:
(1)hadoop fsck / (查看是否有损坏的文件)
最后出现Corrupt就是有损坏的文件
(2)hadoop fsck -delete (删除损坏的文件)
最后重新执行程序!没有报错!我的错误解决了!