2014-04-30 16 views
5

Ich verwende Hadoop 2.2.0 Cluster mit zwei Datenknoten und einem Namen. Wenn ich versuche, das System mit hadoop Befehl fsck auf NameNode oder einen der Datanodes Überprüfung, erhalte ich folgendes:Hadoop fsck zeigt fehlende Replikate

Target Replicas is 3 but found 2 replica(s). 

Ich habe versucht, die Konfiguration in hdfs-site.xml (dfs.replication bis 2) zu ändern und neu gestartet wird die Cluster-Dienste. Auf hadoop fsck / läuft es zeigt immer noch den gleichen Status:

Target Replicas is 3 but found 2 replica(s). 

Bitte klären, ist dies ein Caching-Problem oder ein Fehler?

Antwort

3

Durch Einstellung dfs.replication bringt nicht Ihre Replikation. Auf diese Eigenschaft wird nur verwiesen, wenn eine Datei erstellt wird, deren Replikation nicht angegeben ist. Zum Ändern der Replikation hadoop Dienstprogramm folgende könnte

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

oder

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

Hier / auch zum Ändern der Replikationsfaktor des gesamten Dateisystems werden kann angegeben werden.

+0

Ich habe Dateien in HDFS übertragen, ohne den Replikationsfaktor anzugeben, und zu diesem Zeitpunkt wurde der Replikationsfaktor auf 3 festgelegt, aber ich habe den Replikationsfaktor anschließend auf 2 geändert. Dann bekomme ich dieses Target Replicas ist 3 aber 2 Replik (s) gefunden. – abbasdjinn

+0

hadoop fs -setrep [-R] [-w] ist der vollständige Befehl auch hdfs dfs -setrep [-R] [-w] arbeiten. Details - https://hadoop.apache.org/docs/current/hadoop-project-dist/hadoop-common/FileSystemShell.html#setrep – ewm

+0

Danke, verpasste fs – sachin