`
wbj0110
  • 浏览: 1598539 次
  • 性别: Icon_minigender_1
  • 来自: 上海
文章分类
社区版块
存档分类
最新评论

hadoop常见问题-no datanode to stop

阅读更多

现象:当停止Hadoop的时候发现no datanode to stop的信息。

原因1每次namenode format会重新创建一个namenodeId,而tmp/dfs/data下包含了上次format下的idnamenode format清空了namenode下的数据,但是没有清空datanode下的数据,导致启动时失败,所要做的就是每次fotmat前,清空tmp一下的所有目录。

这里有两种解决方案:

1)删除“/usr/hadoop/tmp”里面的内容

       rm -rf /usr/hadoop/tmp/*

2)删除“/tmp”下以“hadoop”开头的文件

       rm -rf /tmp/hadoop*

3)重新格式化hadoop

       hadoop namenode -format

4)启动hadoop

       start-all.sh

这种方案的缺点是原来集群上的重要数据全没有了。因此推荐第二种方案:

1)修改每个SlavenamespaceID,使其与MasternamespaceID一致。

或者

2)修改MasternamespaceID使其与SlavenamespaceID一致。

Master“namespaceID”位于“/usr/hadoop/tmp/dfs/name/current/VERSION”文件里面,Slave“namespaceID”位于“/usr/hadoop/tmp/dfs/data/current/VERSION”文件里面。

 

原因2问题的原因是hadoopstop的时候依据的是datanode上的mapreddfs进程号。而默认的进程号保存在/tmp下,linux 默认会每隔一段时间(一般是一个月或者7天左右)去删除这个目录下的文件。因此删掉hadoop-hadoop-jobtracker.pidhadoop-hadoop-namenode.pid两个文件后,namenode自然就找不到datanode上的这两个进程了。

在配置文件hadoop_env.sh中配置export HADOOP_PID_DIR可以解决这个问题。

在配置文件中,HADOOP_PID_DIR的默认路径是“/var/hadoop/pids”,我们手动在“/var”目录下创建一个“hadoop”文件夹,若已存在就不用创建,记得用chown将权限分配给hadoop用户。然后在出错的Slave上杀死DatanodeTasktracker的进程(kill -9 进程号),再重新start-all.shstop-all.sh时发现没有“no datanode to stop”出现,说明问题已经解决。

分享到:
评论

相关推荐

    hadoop插件apache-hadoop-3.1.0-winutils-master.zip

    标题中的"apache-hadoop-3.1.0-winutils-master.zip"是一个针对Windows用户的Hadoop工具包,它包含了运行Hadoop所需的特定于Windows的工具和配置。`winutils.exe`是这个工具包的关键组件,它是Hadoop在Windows上的一...

    hadoop-common-2.6.0-bin-master.zip

    `hadoop-common-2.6.0-bin-master.zip` 是一个方便Windows开发者进行Hadoop本地开发和测试的压缩包,它解决了Windows环境下Hadoop二进制路径的问题。通过正确安装、配置和使用这个压缩包中的组件,开发者可以在没有...

    hadoop最新版本3.1.1全量jar包

    hadoop-annotations-3.1.1.jar hadoop-common-3.1.1.jar hadoop-mapreduce-client-core-3.1.1.jar hadoop-yarn-api-3.1.1.jar hadoop-auth-3.1.1.jar hadoop-hdfs-3.1.1.jar hadoop-mapreduce-client-hs-3.1.1.jar ...

    hadoop-eclipse-plugin三个版本的插件都在这里了。

    hadoop-eclipse-plugin-2.7.4.jar和hadoop-eclipse-plugin-2.7.3.jar还有hadoop-eclipse-plugin-2.6.0.jar的插件都在这打包了,都可以用。

    flink-shaded-hadoop-2-uber-2.7.2-10.0.jar

    Flink1.10.1编译hadoop2.7.2 编译flink-shaded-hadoop-2-uber

    hadoop-eclipse-plugin-3.1.2.jar

    在eclipse中搭建hadoop环境,需要安装hadoop-eclipse-pulgin的插件,根据hadoop的版本对应jar包的版本,此为hadoop3.1.2版本的插件。

    hadoop-eclipse-plugin-3.1.3.jar

    hadoop-eclipse-plugin-3.1.3,eclipse版本为eclipse-jee-2020-03

    hadoop-lzo-0.4.20.jar

    hadoop2 lzo 文件 ,编译好的64位 hadoop-lzo-0.4.20.jar 文件 ,在mac 系统下编译的,用法:解压后把hadoop-lzo-0.4.20.jar 放到你的hadoop 安装路径下的lib 下,把里面lib/Mac_OS_X-x86_64-64 下的所有文件 拷到 ...

    apache-hadoop-3.1.0-winutils-master.zip

    标题中的"apache-hadoop-3.1.0-winutils-master.zip"是一个专门为解决Windows 10上Hadoop安装问题的压缩包,它包含了一些修改后的bin目录文件,使得Hadoop可以在Windows环境中正常运行。 在Hadoop的默认下载版本中...

    hadoop-eclipse-plugin-2.7.4.jar

    最新的hadoop-eclipse-plugin-2.7.4.jar 很好用的hadoop的eclipse插件。自己编译的。 经过测试,使用没有任何问题。 请各位放心使用

    hadoop-eclipse-plugin-2.9.2

    找不到与hadoop-2.9.2版本对应的插件,手动生成的hadoop-eclipse-plugin-2.9.2版本,

    hadoop-eclipse-plugin-2.7.1.jar

    hadoop-eclipse-plugin-2.7.1.jar插件,直接放在eclipse插件目录中

    hadoop-common-2.7.2.jar

    hadoop-common-2.7.2.jar

    hadoop-eclipse-plugin-3.2.1.jar

    hadoop-eclipse-plugin.jar插件基于Ubuntu18.04和Hadoop-3.2.1编译的,最后可以在eclipse创建Map Reduce文件

    hadoop-common-2.7.3-bin-master-windows

    在Windows上安装Hadoop,首先需要下载`hadoop-common-2.7.3-bin-master-windows`压缩包,解压后设置环境变量`HADOOP_HOME`,指向解压后的目录。例如,如果解压路径为`C:\hadoop\common\2.7.3`,则在系统环境变量中...

    hadoop-common-2.2.0-bin

    标题 "hadoop-common-2.2.0-bin" 指的是Hadoop的公共库模块在2.2.0版本的二...通过正确配置和使用,可以在Eclipse等开发环境中顺利地开发和运行Hadoop应用,解决如“Could not locate executable...”这样的常见问题。

    hadoop-common-2.7.3-bin-master包含hadoop.dll、winutils.exe

    Hadoop 2.7.3是Hadoop的一个版本,其中包含了`hadoop-common-2.7.3-bin`这个模块,这个模块是Hadoop的基本组件集合,提供了在不同操作系统上运行Hadoop所需的各种工具和库。 标题中提到的`hadoop.dll`和`winutils....

Global site tag (gtag.js) - Google Analytics