20

root ユーザーとして hadoop を実行しようとしています。Hadoophadoop namenode -formatファイル システムの実行中に namenode 形式のコマンドを実行しました。

この後、ネームノードサーバーを起動しようとすると、以下のようなエラーが表示されます

13/05/23 04:11:37 ERROR namenode.FSNamesystem: FSNamesystem initialization failed.
java.io.IOException: NameNode is not formatted.
        at org.apache.hadoop.hdfs.server.namenode.FSImage.recoverTransitionRead(FSImage.java:330)
        at org.apache.hadoop.hdfs.server.namenode.FSDirectory.loadFSImage(FSDirectory.java:100)
        at org.apache.hadoop.hdfs.server.namenode.FSNamesystem.initialize(FSNamesystem.java:411)

解決策を探してみましたが、明確な解決策が見つかりません。

誰でも提案できますか?

ありがとう。

4

7 に答える 7

25

DFS をフォーマットする必要があります。すべてを停止した後、次のコマンドを発行してから再起動してください。

hadoop namenode -format
于 2014-08-11T18:46:28.163 に答える
24

クール、私は解決策を見つけました。

実行中のすべてのサーバーを停止します

1) stop-all.sh 

ファイルを編集し/usr/local/hadoop/conf/hdfs-site.xml、不足している場合は以下の構成を追加します

<property>
    <name>dfs.data.dir</name>
    <value>/app/hadoop/tmp/dfs/name/data</value> 
    <final>true</final> 
    </property> 
    <property> 
    <name>dfs.name.dir</name>
    <value>/app/hadoop/tmp/dfs/name</value> 
    <final>true</final> 
</property>

HDFS と MapReduce デーモンの両方を開始します

2) start-dfs.sh
3) start-mapred.sh

次に、残りの手順を実行して、このリンクにある map reduce サンプルを実行します。

注 :bin/start-all.shダイレクト コマンドが実行されていない場合は、コマンドを実行する必要があります。

于 2013-05-23T13:19:56.127 に答える
2

namenodeが停止したときにhdfsをフォーマットします(一番上の答えと同じように)。

さらに詳細を追加します。

FORMAT コマンドは、path/dfs/name をチェックまたは作成し、初期化または再初期化します。次に start-dfs.sh を実行すると、namenode、datanode、namesecondary の順に実行されます。namenode チェックが path/dfs/name が存在しない場合、または初期化されていない場合は、致命的なエラーが発生して終了します。そのため、namenode は起動しません。

詳細については、HADOOP_COMMON/logs/XXX.namenode.log を確認してください。

于 2014-02-16T15:20:41.417 に答える
0

名前を付けるディレクトリ (dfs.name.dir) とデータ (dfs.data.dir) フォルダーが hdfs-site.xml に正しくリストされていることを確認します。

于 2016-12-26T20:18:22.150 に答える
0

最初に mkdir [フォルダ]、次に hdfs-site.xml を設定し、次にフォーマットします

于 2016-03-30T07:26:42.493 に答える