Hadoop Name和Data节点丢失

1101621048795_.pic_hd.jpg

环境

  • CentOS 6.8 64位 1核 2GB

  • JDK 1.7.0_55 64 位

  • Hadoop 1.1.2

问题

1
2
3
4
5
6
$ jps
27841 TaskTracker
27897 Jps
27522 DataNode
27735 JobTracker
27650 SecondaryNameNode

查看启动进程,没有返回 Namenode 节点。

解决

  • 停止所有进程
1
2
$ cd /app/hadoop-1.1.2/bin
$ ./stop-all.sh
  • 删除 tmp 目录
1
2
$ cd /app/hadoop-1.1.2
$ rm -rf tmp

tmp 目录就是 core-site.xml**** 中配置的 hadoop.tmp.dir 所指向的目录。

  • 格式化 namenode
1
2
$ cd /app/hadoop-1.1.2/bin
$ ./hadoop namenode -format
  • 启动所有进程
1
$ ./start-all.sh
  • 再次查看进程
1
2
3
4
5
6
$ jps
12662 NameNode
13850 Jps
12918 SecondaryNameNode
13131 TaskTracker
13013 JobTracker

查看启动进程,此时没有返回 Datanode 节点。这是因为格式化 NameNode 后,Datanode 没有同步的原因。

  • 删除 hdfs/data 目录并重新创建
1
2
3
$ cd /app/hadoop-1.1.2
$ rm -rf hdfs/data/
$ mkdir -p hdfs/data/
  • 修改 hdfs/data 目录的权限
1
$ chmod -R 755 hdfs/data
  • 再次启动所有进程
1
$ ./start-all.sh
  • 再次查看进程
1
2
3
4
5
6
7
$ jps
17171 Jps
12662 NameNode
12918 SecondaryNameNode
13131 TaskTracker
14008 DataNode
13013 JobTracker

此时所有进程都存在。

-------------本文结束感谢您的阅读-------------
0%