我已经被“dfs\u hosts\u exclude.txt”排除在datanode主机“dn001”之外了,它可以工作了,如何也将datanode数据从这个“dn001”迁移到其他datanode?
lztngnrs1#
你什么都不用做。hadoop的hdfs应该重新复制数据节点上丢失的任何数据。来自hdfs体系结构—数据磁盘故障、心跳和重新复制每个datanode定期向namenode发送心跳消息。网络分区可能导致datanode的子集与namenode失去连接。namenode通过缺少心跳消息来检测这种情况。namenode将没有最近心跳的datanodes标记为dead,并且不向它们转发任何新的io请求。任何注册到死数据节点的数据都不再对hdfs可用。数据节点死亡可能导致某些块的复制因子低于其指定值。namenode不断跟踪哪些块需要复制,并在必要时启动复制。重新复制的必要性可能由于许多原因而产生:数据节点可能变得不可用,副本可能损坏,数据节点上的硬盘可能出现故障,或者文件的复制因子可能增加。
1条答案
按热度按时间lztngnrs1#
你什么都不用做。hadoop的hdfs应该重新复制数据节点上丢失的任何数据。
来自hdfs体系结构—数据磁盘故障、心跳和重新复制
每个datanode定期向namenode发送心跳消息。网络分区可能导致datanode的子集与namenode失去连接。namenode通过缺少心跳消息来检测这种情况。namenode将没有最近心跳的datanodes标记为dead,并且不向它们转发任何新的io请求。任何注册到死数据节点的数据都不再对hdfs可用。数据节点死亡可能导致某些块的复制因子低于其指定值。namenode不断跟踪哪些块需要复制,并在必要时启动复制。重新复制的必要性可能由于许多原因而产生:数据节点可能变得不可用,副本可能损坏,数据节点上的硬盘可能出现故障,或者文件的复制因子可能增加。