このエラーの原因は何ですか?また、どのように修正できますか?
2015-11-29 19:40:04,670 FATAL org.Apache.hadoop.hdfs.server.datanode.DataNode: Initialization failed for Block pool <registering> (Datanode Uuid unassigned) service to anmol-vm1-new/10.0.1.190:8020. Exiting.
Java.io.IOException: All specified directories are not accessible or do not exist.
at org.Apache.hadoop.hdfs.server.datanode.DataStorage.recoverTransitionRead(DataStorage.Java:217)
at org.Apache.hadoop.hdfs.server.datanode.DataStorage.recoverTransitionRead(DataStorage.Java:254)
at org.Apache.hadoop.hdfs.server.datanode.DataNode.initStorage(DataNode.Java:974)
at org.Apache.hadoop.hdfs.server.datanode.DataNode.initBlockPool(DataNode.Java:945)
at org.Apache.hadoop.hdfs.server.datanode.BPOfferService.verifyAndSetNamespaceInfo(BPOfferService.Java:278)
at org.Apache.hadoop.hdfs.server.datanode.BPServiceActor.connectToNNAndHandshake(BPServiceActor.Java:220)
at org.Apache.hadoop.hdfs.server.datanode.BPServiceActor.run(BPServiceActor.Java:816)
at Java.lang.Thread.run(Thread.Java:745)
2015-11-29 19:40:04,670 WARN org.Apache.hadoop.hdfs.server.datanode.DataNode: Ending block pool service for: Block pool <registering> (Datanode Uuid unassigned) service to anmol-vm1-new/10.0.1.190:8020
2015-11-29 19:40:04,771 INFO org.Apache.hadoop.hdfs.server.datanode.DataNode: Removed Block pool <registering> (Datanode Uuid unassigned)
解決すべき2つの可能な解決策があります
最初:
NamenodeとdatanodeのクラスターIDが一致しません。必ず同じにしてください。
名前ノードで、次の場所にあるファイルのurクラスターIDを変更します。
$ nano HADOOP_FILE_SYSTEM/namenode/current/VERSION
データノードでは、クラスターIDがファイルに保存されます。
$ nano HADOOP_FILE_SYSTEM/datanode/current/VERSION
秒:
Namenodeをフォーマットします。
Hadoop 1.x: $ hadoop namenode -format
Hadoop 2.x: $ hdfs namenode -format
私は同じ問題に遭遇し、次の手順を実行して解決しました。
ステップ1。hdfs
ディレクトリを削除します(私にとってはデフォルトのディレクトリ "/tmp/hadoop-root/
")
rm -rf /tmp/hadoop-root/*
ステップ2。実行
bin/hdfs namenode -format
ディレクトリをフォーマットするには
これの根本的な原因は、datanodeとnamenodeclusterIDが異なることです。namenodeclusterIDと統合してから、hadoopを再起動してください。解決する必要があります。
この問題は、datanodeとnamenodeのクラスターIDの不一致が原因で発生します。
次の手順を実行します:
この問題は、datanodeとnamenodeのクラスターIDの不一致が原因で発生します。
次の手順を実行します:
1-Hadoop_homeに移動/フォルダーデータを削除
2-anthor名data123でフォルダを作成します
3-2つのフォルダnamenodeとdatanodeを作成します
4-hdfs-siteに移動し、パスを通過します
<name>dfs.namenode.name.dir</name>
<value>........../data123/namenode</value>
<name>dfs.datanode.data.dir</name>
<value>............../data123/datanode</value>
。
この問題は、ストレージI/Oエラーがある場合に発生する可能性があります。このシナリオでは、VERSIONファイルが使用できないため、上記のエラーとして表示されます。 hdfs-site.xml
でこれらの不良ドライブの保存場所を除外する必要がある場合があります。