hadoop-1.2.1 namenode未格式化

iezvtpos  于 2021-06-02  发布在  Hadoop
关注(0)|答案(1)|浏览(348)

我在ubuntu 16中安装了hadoop 1.2.1,配置如下:
core-site.xml文件

<property>
    <name>fs.default.name</name>
    <value>hdfs://localhost:8020</value>
</property>
<property>
    <name>hadoop.tmp.dir</name>
    <value>tmpDir/snadikop/hadoopdata</value>

hdfs-site.xml文件

<configuration>
<property>
    <name>dfs.replication</name>
    <value>1</value>
</property>

mapred-site.xml文件

<configuration>
<property>
    <name>mapred.job.tracker</name>
    <value>localhost:8021</value>
</property>

当我第一次开始的时候,一切都很顺利。但是当我重新启动系统时,当我试图启动守护进程时,namenode没有启动。
尝试

hadoop namenode -format

命令并尝试

sudo chown snadikop tmpDir/snadikop/hadoopdata
sudo chmod 750 tmpDir/snadikop/hadoopdata

其中snadikop是用户。还是解决不了这个问题。请帮我解决这个问题?
谢谢您。
下面是我的日志文件

2017-03-02 18:07:01,185 ERROR org.apache.hadoop.hdfs.server.namenode.FSNamesystem: FSNamesystem initialization failed.
java.io.IOException: NameNode is not formatted.
    at org.apache.hadoop.hdfs.server.namenode.FSImage.recoverTransitionRead(FSImage.java:331)
    at org.apache.hadoop.hdfs.server.namenode.FSDirectory.loadFSImage(FSDirectory.java:104)
    at org.apache.hadoop.hdfs.server.namenode.FSNamesystem.initialize(FSNamesystem.java:427)
    at org.apache.hadoop.hdfs.server.namenode.FSNamesystem.<init>(FSNamesystem.java:395)
    at org.apache.hadoop.hdfs.server.namenode.NameNode.initialize(NameNode.java:299)
    at org.apache.hadoop.hdfs.server.namenode.NameNode.<init>(NameNode.java:569)
    at org.apache.hadoop.hdfs.server.namenode.NameNode.createNameNode(NameNode.java:1479)
    at org.apache.hadoop.hdfs.server.namenode.NameNode.main(NameNode.java:1488)
2017-03-02 18:07:01,377 ERROR org.apache.hadoop.hdfs.server.namenode.NameNode: java.io.IOException: NameNode is not formatted.
    at org.apache.hadoop.hdfs.server.namenode.FSImage.recoverTransitionRead(FSImage.java:331)
    at org.apache.hadoop.hdfs.server.namenode.FSDirectory.loadFSImage(FSDirectory.java:104)
    at org.apache.hadoop.hdfs.server.namenode.FSNamesystem.initialize(FSNamesystem.java:427)
    at org.apache.hadoop.hdfs.server.namenode.FSNamesystem.<init>(FSNamesystem.java:395)
    at org.apache.hadoop.hdfs.server.namenode.NameNode.initialize(NameNode.java:299)
    at org.apache.hadoop.hdfs.server.namenode.NameNode.<init>(NameNode.java:569)
    at org.apache.hadoop.hdfs.server.namenode.NameNode.createNameNode(NameNode.java:1479)
    at org.apache.hadoop.hdfs.server.namenode.NameNode.main(NameNode.java:1488)

2017-03-02 18:07:01,411 INFO org.apache.hadoop.hdfs.server.namenode.NameNode: SHUTDOWN_MSG:

这就是终点站发生的事情

snadikop@satish-vb:~$ jps
11492 NameNode
11654 DataNode
11863 Jps
11818 SecondaryNameNode
snadikop@satish-vb:~$ jps
11654 DataNode
11880 Jps
11818 SecondaryNameNode
snadikop@satish-vb:~$

下面是“name”和“data”文件夹的截图位置name'文件夹路径我对此有疑问,是否两者必须在同一个文件夹或不。
“数据”文件夹路径

06odsfpq

06odsfpq1#

您提供给 hadoop.tmp.dir 是一个相对路径,这将根据从何处开始的路径每次更改 start 脚本被调用。这个 hadoop.tmp.dir 目录路径将是的基本路径 dfs.name.dir 以及 dfs.data.dir 如果没有在 hdfs-site.xml .
所以,如果 tmp.dir 更改,namenode的名称目录更改,因此 Namenode is not formatted 错误。
将这些属性添加到 hdfs-site.xml 带着一个绝对不- tmp 路径,

<property>
   <name>dfs.name.dir</name>
   <value>/home/username/namenode</value>
</property>
<property>
   <name>dfs.data.dir</name>
   <value>/home/username/datanode</value>
</property>

那么 format 名称节点

hadoop namenode -format

同时修改 hadoop.tmp.dir 绝对路径停止创建 tmp 目录随机。

相关问题