I was using Hadoop in a pseudo-distributed mode and everything was working fine. But when I restarted my computer I can’t start Namenode. Only way I can start Namenode is by formatting it and I end up losing data in HDFS.
- Make following changes to start Namenode
In conf/hdfs-site.xml, you should have a property like
<property> <name>dfs.name.dir</name> <value>/home/hduser/hadoop/data</value> </property>
The property “dfs.name.dir” allow you to control where Hadoop writes NameNode metadata. And giving it another dir rather than /tmp makes sure the NameNode data isn’t being deleted when you reboot.
Format Namenode after you change it
$ bin/hadoop namenode -format $ bin/hadoop start-all.sh