阿里云ECS上搭建Hadoop集群环境——“启动Hadoop时,datanode没有被启动”问题的解决

转载请注明出处:http://blog.csdn.net/dongdong9223/article/details/81285732
本文出自【我是干勾鱼的博客】

Ingredient:

  • Hadoop:hadoop-2.9.1.tar.gz(Apache Hadoop Releases Downloads, All previous releases of Hadoop are available from the Apache release archive site)

  • Java:Java SE Development Kit 8u162(Oracle Java Archive),Linux下安装JDK修改环境变量

就像解决Hadoop启动时,没有启动datanode中所说,有的时候会出现Hadoop启动时,没有启动datanode的情况。

其实在使用:

hadoop namenode -format

对namenode进行格式化时,会在namenode数据文件夹,也就是Master节点的:

etc/hadoop/hdfs-site.xml

配置文件中“dfs.namenode.name.dir”属性对应的值,笔者这里为:

file:///opt/hadoop/hadoop-2.9.1/tmp/dfs/name

这个路径下,保存一个current/VERSION文件,里面会记录clusterID。

同样Slave节点的:

etc/hadoop/hdfs-site.xml

配置文件中“dfs.datanode.data.dir”属性对应的值,笔者这里为:

file:///opt/hadoop/hadoop-2.9.1/tmp/dfs/data

这个路径下,也会保存current/VERSION文件,里面的clustreID的值是上一次格式化保存的clusterID。

如果datanode和namenode里面的这2个clusterID值不一致,就会造成启动时datanode没有被启动的问题。

解决办法就是删除所有节点下的dfs文件夹,dfs目录在:

${HADOOP_HOME}/tmp/

下,然后再重新格式化namenode,再次启动时就可以了。

参考:

解决Hadoop启动时,没有启动datanode

你可能感兴趣的:(Hadoop,走进Hadoop)