Hadoop fsck显示丢失的副本

abb*_*inn 5 hadoop hdfs fsck

我正在运行带有两个datanode和一个namenode的Hadoop 2.2.0集群.当我尝试在namenode或任何datanode上使用hadoop fsck命令检查系统时,我得到以下内容:

Target Replicas is 3 but found 2 replica(s). 
Run Code Online (Sandbox Code Playgroud)

我尝试将配置更改为hdfs-site.xml(dfs.replication为2)并重新启动群集服务.在运行时hadoop fsck /它仍然显示相同的状态:

Target Replicas is 3 but found 2 replica(s).
Run Code Online (Sandbox Code Playgroud)

请澄清,这是一个缓存问题还是一个错误?

Sac*_*inJ 3

通过设置dfs.replication不会降低您的复制。仅当创建未指定复制的文件时才会引用此属性。要更改复制,可以使用以下 hadoop 实用程序

hadoop fs -setrep [-R] [-w] <rep> <path/file>

或者

hdfs dfs -setrep [-R] [-w] <rep> <path/file>

这里也可以指定/来更改整个文件系统的复制因子。