`
wbj0110
  • 浏览: 1639067 次
  • 性别: 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 关闭进程时报错no 进程 to stop

    - 如果你是通过Hadoop的服务管理工具(如`start-dfs.sh`、`stop-dfs.sh`等)启动和停止服务,确保使用相同的方式停止服务。直接使用`kill`命令可能不会正确地清理资源,导致问题。 6. **配置文件问题**: - 检查...

    Hadoop使用常见问题以及解决方法

    java.net.NoRouteToHostException: No route to host 是 Hadoop 中的常见问题,主要是由于网络连接问题。解决方法是停止 iptables 服务,例如使用 `sudo /etc/init.d/iptables stop` 命令。 更改 namenode 后,在 ...

    完美解决Hadoop集群无法正常关闭的问题!

    相信对于大部分的大数据初学者来说,一定遇见过hadoop集群无法正常关闭的情况。...slave2: no datanode to stop slave1: no datanode to stop …  最开始的时候,我也是看了一个头两个大,这都是啥

    centos7下配置hadoop分布式环境完整版

    在CentOS 7环境下配置Hadoop分布式环境是一项涉及操作系统配置、网络设置、密钥管理等多个方面的技术任务。以下是根据提供的文件内容所整理的详细知识点: ### CentOS 7系统配置 #### 1. 修改主机名 - **CentOS 7...

    [hadoop] ERROR: but there is no HDFS_NAMENODE_USER defined. Aborting operation. Starting datanodes

    在Hadoop分布式文件系统(HDFS)的运行过程中,可能会遇到一个常见的错误,即"ERROR: but there is no HDFS_NAMENODE_USER defined. Aborting operation. Starting datanodes"。这个错误通常意味着系统在尝试启动...

    Hadoop集群部署

    通过上述步骤,您可以成功地在Windows环境下使用VirtualBox和CentOS 6.3构建出一个包含一台namenode和两台datanode的Hadoop集群,并且已经完成了基本的网络配置和SSH配置。这是搭建Hadoop集群的基础步骤,后续还需要...

    在本机搭建hadoop3.1.2开发环境详解

    sbin/hadoop-daemon.sh start datanode sbin/yarn-daemon.sh start resourcemanager sbin/yarn-daemon.sh start nodemanager ``` 至此,Hadoop 3.1.2的伪分布式环境就已经搭建完成了。接下来可以根据项目需求进一步...

    搭建一个大数据集群.docx

    # hdfs --daemon stop datanode # hdfs --daemon stop namenode # yarn --daemon stop nodemanager # yarn --daemon stop resourcemanager # zkServer.sh stop ``` 以上步骤详细介绍了如何搭建一个完整的...

    ambari安装文档

    $ systemctl stop firewalld ``` - 临时关闭SELinux(无需重启): ```bash $ setenforce 0 ``` - 修改配置文件以永久禁用SELinux: ```bash $ cat /etc/selinux/config SELINUX=disabled ``` 3. **网络...

Global site tag (gtag.js) - Google Analytics