我尝试使用 bin/start-all.sh 启动 namenode。但是,这个命令不会启动namenode。我知道如果我执行 bin/hadoop namenode -format ,namenode 将启动,但在这种情况下,我将丢失所有数据。有没有办法在不格式化的情况下启动namenode?

最佳答案

您的问题可能与以下有关:

默认情况下,Hadoop 将其 NameNode 数据写入/tmp/hadoop- 文件夹中,每次重启后都会清除该文件夹。

将以下属性添加到 conf/hdfs-site.xml

<property>
   <name>dfs.name.dir</name>
   <value><path to your desired folder></value>
</property>

“dfs.name.dir”属性允许您控制 Hadoop 写入 NameNode 元数据的位置。

关于hadoop - 不带格式启动namenode,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/22783992/

10-16 01:34