Category Archives: Hadoop

could only be replicated to 0 nodes, instead of 1

  Hadoop 1.0.3の検証環境を作ったのだが、お約束のHDFSのエラーにハマった。HDFSにファイル追加しようとすると、以下のようなExceptionが出る。 12/10/08 14:31:24 WARN hdfs.DFSClient: Error Recovery for block null bad datanode[0] nodes == null 12/10/08 14:31:24 WARN hdfs.DFSClient: Could not get block locations. Source file “/user/hadoop/input/input/text01” – Aborting… put: java.io.IOException: File /user/hadoop/input/input/text01 could only be replicated to 0 nodes, instead of 1 HDFSの再作成をしたのだが、なぜか復旧しなかった。色々試したが、どうやらHadoop関連のゴミプロセスが残っていたことが原因だったようだ。stop-all.shでは停止できなかったらしい。 エラー復旧させるために、 1、bin/stop-all.shする 2、Hadoopのシステムフォルダ(今回の環境だとデフォルトの/tmpの下)のhadoopユーザのファイル、ディレクトリを削除 3、ps -ef | grep <hadoopユーザ>して、ゴミプロセスを探し、kill -9 4、hadoop namenode -format 5、bin/start-all.sh したら直った。

Posted in Hadoop | Comments closed