文档章节

重启Hadoop集群时no namenode to stop的异常

aibati2008
 aibati2008
发布于 2016/04/13 17:35
字数 495
阅读 443
收藏 1

   今天修改了hadoop集群的配置文件而需要重启集群,但是却报错如下:

[hadoop@master ~]# stop-dfs.sh
Stopping namenodes on [master]
master1: no namenode to stop
master2: no namenode to stop
slave2: no datanode to stop
slave1: no datanode to stop


问题的原因是hadoop在stop的时候依据的是datanode上的journalnode和dfs的pid。而默认的进程号保存在/tmp下,linux 默认会每隔一段时间(一般是一个月或者7天左右)去删除这个目录下的文件。

因此删掉hadoop-hadoop-journalnode.pid和hadoop-hadoop-datanode.pid两个文件后,namenode自然就找不到datanode上的这两个进程了。

在配置文件hadoop_env.sh中配置export HADOOP_PID_DIR可以解决这个问题, 也可以在hadoop-deamon.sh中修改,它会调用hadoop_env.sh。修改HADOOP_PID_DIR的路径为“/var/hadoop_pid”,记得手动在“/var”目录下创建hadoop_pid文件夹并将owner权限分配给hadoop用户。

[hadoop@slave3 ~]$ ls /var/hadoop_pid/
hadoop-hadoop-datanode.pid  hadoop-hadoop-journalnode.pid

然后手动在出错的Slave上杀死Datanode的进程(kill -9 pid),再重新运行start-dfs..sh时发现没有“no datanode to stop”和“no namenode to stop”的出现,问题解决。

[hadoop@master1 ~]$ start-dfs.sh
16/04/13 17:20:26 WARN util.NativeCodeLoader: Unable to load native-hadoop library for your platform... using builtin-java classes where applicable
Starting namenodes on [master1 master2]
master1: starting namenode, logging to /data/usr/hadoop/logs/hadoop-hadoop-namenode-master1.out
master2: starting namenode, logging to /data/usr/hadoop/logs/hadoop-hadoop-namenode-master2.out
slave4: starting datanode, logging to /data/usr/hadoop/logs/hadoop-hadoop-datanode-slave4.out
slave3: starting datanode, logging to /data/usr/hadoop/logs/hadoop-hadoop-datanode-slave3.out
slave2: starting datanode, logging to /data/usr/hadoop/logs/hadoop-hadoop-datanode-slave2.out
slave1: starting datanode, logging to /data/usr/hadoop/logs/hadoop-hadoop-datanode-slave1.out
Starting journal nodes [master1 master2 slave1 slave2 slave3]
slave3: starting journalnode, logging to /data/usr/hadoop/logs/hadoop-hadoop-journalnode-slave3.out
master1: starting journalnode, logging to /data/usr/hadoop/logs/hadoop-hadoop-journalnode-master1.out
slave1: starting journalnode, logging to /data/usr/hadoop/logs/hadoop-hadoop-journalnode-slave1.out
master2: starting journalnode, logging to /data/usr/hadoop/logs/hadoop-hadoop-journalnode-master2.out
slave2: starting journalnode, logging to /data/usr/hadoop/logs/hadoop-hadoop-journalnode-slave2.out
16/04/13 17:20:40 WARN util.NativeCodeLoader: Unable to load native-hadoop library for your platform... using builtin-java classes where applicable
Starting ZK Failover Controllers on NN hosts [master1 master2]
master1: starting zkfc, logging to /data/usr/hadoop/logs/hadoop-hadoop-zkfc-master1.out
master2: starting zkfc, logging to /data/usr/hadoop/logs/hadoop-hadoop-zkfc-master2.out


© 著作权归作者所有

aibati2008
粉丝 14
博文 87
码字总数 61726
作品 0
成都
技术主管
私信 提问
hadoop 集群添加新的存储节点和删除一个计算节点需要刷新集群状态命令

HDFS添加删除节点并进行hdfs balance 方式1:静态添加datanode,停止namenode方式 1.停止namenode 2.修改slaves文件,并更新到各个节点 3.启动namenode 4.执行hadoop balance命令。(此项为b...

2k10
2015/03/14
1K
1
HADOOP的HA部署方案

一、准备服务器环境 1.1、服务器规划 Hadoop2 HA Cluster Host IP NameNode JournalNode FailoverController DataNode nn1 192.168.50.221 Y Y Y N nn2 192.168.50.222 Y Y Y N dn1 192.168.......

ifree613
2016/03/04
616
0
Hadoop运维操作

1. 处理hadoop的namenode宕机 处理措施: 进入hadoop的bin目录,重启namenode服务 操作命令: cd path/to/hadoop/bin ./hadoop-daemon.sh start namenode 2. 处理hadoop的jobtacker宕机 处理...

长征2号
2017/11/01
0
0
hadoop edits 文件损坏修复办法

前段时间公司hadoop集群宕机,发现是namenode 磁盘满了。。清理出部分空间后,重启集群时,重启失败。 又发现集群Secondary namenode 服务也恰恰坏掉,导致所有的操作log持续写入edits.new 文...

幽芒
2014/10/21
2.6K
2
Setting Up Hadoop NameNode High Availability

Hadoop2.0以后,2个NameNode的数据其实是实时共享的。新HDFS采用了一种共享机制,Quorum Journal Node(JournalNode)集群或者Nnetwork File System(NFS)进行共享。NFS是操作系统层面的,J...

candon123
2018/01/03
0
0

没有更多内容

加载失败,请刷新页面

加载更多

arduino项目-1. 模拟楼道灯

@toc 1.1 情景说明 说明 漆黑的夜晚,当有人非法进入一所房屋,房屋内的灯在恰当的时间亮起,也许会有效阻止非法活动的继续。 效果展示 1.2 实验器材 器材名称 数量 继电器 1 人体红外感应器...

acktomas
17分钟前
3
0
Nacos 常见问题及解决方法

Nacos 开源至今已有一年,在这一年里,得到了很多用户的支持和反馈。在与社区的交流中,我们发现有一些问题出现的频率比较高,为了能够让用户更快的解决问题,我们总结了这篇常见问题及解决方...

阿里云官方博客
24分钟前
3
0
pinyin4j 满足中文转拼音的需求

引入依赖 // https://mvnrepository.com/artifact/com.belerweb/pinyin4j //汉字转拼音compile group: 'com.belerweb', name: 'pinyin4j', version: '2.5.1' 写入中文转拼英的工具......

edison_kwok
29分钟前
3
0
IPSE接入Substrate/Polkadot插槽实现互操作性的运行原理

Substrate框架将区块链的众多功能都模块化,对于开发者来说,只是一个选择的问题,同时还保持了众多的可以定制的功能和模块,比如底层通信模块,比如账户体系,比如共识机制等都是可以自己定...

IPSE
35分钟前
155
0
linux配置安装phpMyAdmin的步骤记录

1、首先在phpMyAdmin官方网站 http://www.phpmyadmin.net/downloads下载源码包,或者通过脚本之家进行下载://www.jb51.net/codes/405261.html ,下载后上传到服务器解压即可,或者通过Linux...

蜗牛女孩
36分钟前
3
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部