问题一、
Incompatible clusterIDs in … :namenode clusterID = … ,datanode clusterIDs =…
出现该错误是由于NameNode的namespaceID与DataNode不一致而导致的。解决该错误的方法:
1、删除文件夹重新格式化
2、修改DataNode上的clusterID与NameNode一致,将{dfs.datanode.data.dir}/current/VERSION文件中的clusterID改成与NameNode上的一致;
[hadoop@master current]$ pwd
/home/hadoop/software/hadoopdata/dfs/name/current
[hadoop@master current]$ cat VERSION
#Sat Mar 30 14:58:06 CST 2019
namespaceID=681455630
clusterID=CID-43eb0f39-de8b-4fa3-9268-6f72d66eaba5
[hadoop@slave2 current]$ pwd
/home/hadoop/software/hadoopdata/dfs/data/current
[hadoop@slave2 current]$ cat VERSION
#Mon Apr 08 07:58:54 CST 2019
storageID=DS-0ccd2b2d-6f8a-4861-a8cf-3aa0898f9873
clusterID=CID-43eb0f39-de8b-4fa3-9268-6f72d66eaba5
问题二、
could only be replicated to 0 nodes, instead of 1 …
出现这个错误说明没有可用的DataNode可供操作,原因可能:
1、DataNode中XceiverServer的连接数超过了指定阈值
(DataXceviverServer监听块传输连接请求,同时控制进行的块传输请求数(同一时刻的传输数不能超过maxXceiverCount)和带宽耗费情况(块传输时带宽耗费带宽不能超过预定值BlockTransferThrottler.bytesPerPeriod)。当在run里监听到一个块传输请求时,开启一个DataXceiver线程处理块传输。系统关闭时,会关闭用于监听的连接的ServerSocket同时将DataXceiver所产生的线程关闭,使得DataXceiver因为出现错误而退出。)
2、磁盘空间不足
3、防火墙导致无法访问DataNode
解决方法的关键是提供可用的DataNode,主要有如下方式:
1、并发过大导致连接数超过阈值的情况也可以通过添加DataNode节点来解决;
2、磁盘空间不足可以通过增加单节点容量或添加新DataNode节点来解决;
3、防火墙设置导致无法连接DataNode的情形,可以通过关闭防火墙来解决;
4、重新格式化NameNode也可以解决这个问题;
问题三、
ipc.Client: Retrying connect to server:…
这个错误主要是由于错误的端口配置导致的,仔细检查core-site.xml和hdfs-site.xml文件,同时还需确认/etc/hosts文件是否包含了所需组件的网络地址映射。
问题四、
java.net.NoRouteToHostException: No route to host
这个错误说明找不到主机,请检查网络连接是否正常,hosts文件解析是否正常,防火墙是否关闭
问题五、
Job…faild with state FAILED due to …faild on socket timeout exception…
datanode进程死亡或者网络故障造成datanode无法与namenode通信,namenode不会立即把该节点判定为死亡,要经过一段时间,这段时间暂称作超时时长。
HDFS默认的超时时间为10分钟+30秒,暂定义超时时间为timeout,
计算公式为:timeout = 2 * heartbeat.recheck.interval + 10 * dfs.heartbeat.interval
hdfs-site.xml:
<property>
<name>heartbeat.recheck.interval</name>
<value>1200000</value>
</property>
<property>
<name>dfs.heartbeat.interval</name>
<value>5</value>
</property>
而默认的heartbeat.recheck.interval 大小为5分钟,dfs.heartbeat.interval默认的大小为3秒。
需要注意的是hdfs-site.xml 配置文件中的heartbeat.recheck.interval的单位为毫秒,dfs.heartbeat.interval的单位为秒
经验:
找不到文件:注意核对自己路径
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。
文章由极客之音整理,本文链接:https://www.bmabk.com/index.php/post/11836.html