Jeden Tag meldet unser Hadoop-Cluster, dass "untervervielfältigte Blöcke" sind. Es wird von Cloudera Manager verwaltet. Ein Beispiel für die Gesundheitswarnung ist:HDFS wiederkehrender Fehler: unterreplizierte Blöcke
! Under-Replicated Blocks
Concerning: 767 under replicated blocks in the cluster. 3,115 total blocks in the cluster. Percentage under replicated blocks: 24.62%. Warning threshold: 10.00%.
Ich habe Befehle läuft, der das Problem behebt, aber am nächsten Morgen ist die Warnung zurück und manchmal ohne neue Daten hinzugefügt werden. Einer der vorübergehend erfolgreichen Kommandos war
hdfs dfs -setrep -R 2 /*
ich auch another recommended command versucht haben
su hdfs
hdfs fsck/| grep 'Under replicated' | awk -F':' '{print $1}' >> /tmp/under_replicated_files
for hdfsfile in `cat /tmp/under_replicated_files`; do echo "Fixing $hdfsfile :" ; hadoop fs -setrep 2 $hdfsfile; done
Beide funktionieren, aber die Lösung ist nicht dauerhaft.
Im Cloudera Manager sind Replication Factor
und Minimal Block Replication
beide auf 2
eingestellt.
Da das Problem nur etwa einmal alle 24 Stunden auftritt, ist es schwierig und zeitraubend zu versuchen, es zu reparieren, wobei Versuch und Irrtum mein einziger Ausweg ist. Ich habe keine Ahnung, warum dieser Fehler immer wieder kommt! Irgendwelche Vorschläge würden geschätzt werden. Dank
Wenn Sie Daten unterrepliziert haben, sollte HDFS die Blöcke einfach automatisch in andere Datenknoten replizieren, um den Replikationsfaktor zu erreichen. Sie können auch einen in CM> HDFS> Aktionen angezeigten Balancer ausführen, um diesen Fehler zu beheben. Wie viele Datenknoten haben Sie in Ihrem Cluster? Haben Sie über NN Web UI gesehen, welche Dateien die unterreplizierten Blöcke haben? Sind diese Dateien temporäre Dateien, die von einem Job erstellt wurden? Hast du gesehen, ob diese Warnung nach einiger Zeit wegfällt, ohne dass etwas getan wurde? – Salim
Haben Sie einen Job, der mit der gleichen Trittfrequenz ausgeführt wird wie das Problem? – tk421
@ tk421 Leider nein, es scheint zu passieren, ohne irgendwelche Datenaufnahme-Jobs (oder Jobs, egal) – Smittey