假设我有一个HDFS集群(v2.0.5),它包含多个机架,但它最初没有安装有机架意识。数据已通过默认的3x复制加载到其中。如果我现在将HDFS配置为机架感知,那么块的三个副本很可能在同一个机架上,这不是我想要的。
如果我的集群已经平衡了,那么运行HDFS均衡器是否会强制执行块复制策略并适当地对块进行洗牌,即在一个机架上有一个块,在另一个机架上有两个块?根据我所读到的,如果集群是平衡的,它就会简单地退出这个过程。
如果没有,我如何强迫HDFS重新复制所需的块以分离机架?
发布于 2015-01-07 03:35:24
如果您更改机架配置,使您现在只有两个机架,您只有一个之前,平衡器将自动确定与所有副本在同一机架上的块需要重新平衡。换句话说,当机架配置发生变化时,它不再认为集群是平衡的(除非在机架配置更改后,这些块神奇地位于正确的位置)。
https://stackoverflow.com/questions/23998498
复制相似问题