首页 > 代码库 > HDFS运维

HDFS运维

下面列举HDFS运行过程中可能出现的常见问题及解决方法,这些问题一般都会在日志中出现的相应的记录。
Incompatible clusterIDs in … :namenode clusterID = … ,datanode clusterIDs =…
出现该错误是由于NameNode重新格式化后会被赋予新的namespaceID,这个ID与DataNode不一致而导致的。解决该错误的方法有三种:

  • 删除datanode上的数据目录(如果DataNode上的数据无关紧要,可以这么做);
  • 修改DataNode上的clusterID与NameNode一致,具体的是将${dfs.datanode.data.dir}/current/VERSION文件中的clusterID改成与NameNode上的一致;
  • 重新指定DataNode的数据目录(修改配置项dfs.datanode.data.dir)。

... could only be replicated to 0 nodes, instead of 1 …
出现这个错误说明没有可用的DataNode可供操作,其原因有多种,

  • DataNode中XceiverServer的连接数超过了指定阈值
  • 磁盘空间不足
  • 防火墙导致无法访问DataNode

解决方法的关键是提供可用的DataNode,主要有如下几种方式:

  • 防火墙设置导致无法连接DataNode的情形,可以通过关闭防火墙来解决;
  • 重新格式化NameNode也可以解决这个问题;
  • 磁盘空间不足可以通过增加单节点容量或添加新DataNode节点来解决;
  • 并发过大导致连接数超过阈值的情况也可以通过添加DataNode节点来解决。

...ipc.Client: Retrying connect to server:...
这个错误主要是由于错误的端口配置导致的,请仔细检查core-site.xml和hdfs-site.xml文件,同时,还需确认/etc/hosts文件是否包含了所需组件的网络地址映射。
 java.net.NoRouteToHostException: No route to host
这个错误说明找不到主机,请检查网络连接是否正常,防火墙是否关闭。
...org.apache.hadoop.util.DiskChecker$DiskErrorException: Invalid value for volsFailed : 3 , Volumes tolerated : 0...
磁盘损坏会导致该错误。检查并更换损坏的磁盘即可。

HDFS运维