如果数据节点失败,我需要在我的 HDFS 集群上重新复制块。实际上,这似乎在大约 10 分钟后就已经发生了。但是,我想减少这个时间,但想知道该怎么做。
我试图设置dfs.namenode.check.stale.datanode
但没有任何大的成功。那么配置选项是什么,或者我必须在这里调整哪些选项才能将其减少到 1 分钟?
hdfs-site.xml 的完整部分如下所示
<property>
<name>dfs.namenode.check.stale.datanode</name>
<value>true</value>
<description>Activate stale check</description>
</property>
<property>
<name>dfs.namenode.stale.datanode.interval</name>
<value>10</value>
<description>Timeout</description>
</property>
根据对hadoop-user-mailing-list的讨论,似乎
dfs.namenode.heartbeat.recheck-interval
需要在hdfs-site.xml
. 直到一个数据节点被标记为死亡的时间是从这个时间开始计算的dfs.heartbeat.interval
。实际上是一个配置导致大约 45 秒,直到节点被标记为死亡。(这适用于 Hadoop 2.6)