hadoop在线退役datanode
退役dn2
echo "dn2" >>excludes
echo "dn2" >>yarn-excludes
sh refresh-namenodes.sh
(注:hdfs dfsadmin -refreshnodes和上述脚本实质是一致的,但是使用本命令退役失败,原因待研究)
yarn rmadmin -refreshNodes
注意事项:执行完命令后,hadoop会确保dn2上的blk都在其他借点上保留了符合副本数的副本,此过程为Decommissioning,这一过程结束后出现Decommissioned的状态,才算退役成功,一般生产中,Decommissioning状态时间较长
遇到的问题:
遇到了如下问题
************************************************************
内容引自http://www.freeoa.net/osuport/db/my-hbase-usage-problem-sets_2979.html
11、hadoop decommission时因block的replicas不够时久不能退役
hadoop
decommission一个节点Datanode,几万个block都同步过去了,但是唯独剩下2个block一直停留在哪,导致该节点几个小时也无法
下线。hadoop UI中显示在Under Replicated Blocks里面有2个块始终无法消除。
Under Replicated Blocks 2 Under Replicated Blocks In Files Under Construction 2
Under Replicated Blocks 2
Under Replicated Blocks In Files Under Construction 2
Namenode日志里面一直有这样的滚动:
2015-01-20
15:04:47,978 INFO org.apache.hadoop.hdfs.server.namenode.FSNamesystem:
Block: blk_8859027644264991843_26141120, Expected Replicas: 3, live
replicas: 2, corrupt replicas: 0, decommissioned replicas: 1, excess
replicas: 0, Is Open File: true, Datanodes having this block:
10.11.12.13:50010 10.11.12.14:50010 10.11.12.15:50010 , Current
Datanode: 10.11.12.13:50010, Is current datanode decommissioning: true
2015-01-20
15:04:47,978 INFO org.apache.hadoop.hdfs.server.namenode.FSNamesystem:
Block: blk_8859027644264991843_26141120,Expected Replicas: 3, live
replicas: 2, corrupt replicas: 0, decommissioned replicas: 1, excess
replicas: 0, Is Open File: true, Datanodes having this block:
10.11.12.13:50010 10.11.12.14:50010 10.11.12.15:50010 , Current
Datanode: 10.11.12.13:50010, Is current datanode decommissioning:true
google了好久,貌似是一个hadoop的bug,https://issues.apache.org/jira/browse/HDFS-5579
NameNode发现block的Replicas不够(期待应该有3个,实际有两个),或许是namenode认为数据不完整,执着地不让这个DataNode下架。。。
最终尝试如下方式解决,把replications设置成2:
hadoop fs -setrep -R 2 /
执行完后很快,该节点就下线了,神奇的replications。
************************************************************
但是我们的系统本身设置的副本数就是2,如果再设成1,感觉很不安全,加上仅剩8个block未完成,因此直接stop了dn应用。
dn节点网络修复后,启动dn,直接进入decommissioned状态,怀疑是bug;
下次遇到这种情况,hdfs fsck / -files -blocks -locations >a.log
将有问题文件的副本系数先升再降,看能否解决问题,待实验
hadoop在线退役datanode的更多相关文章
- Hadoop问题:DataNode进程不见了
DataNode进程不见了 问题描述 最近配置Hadoop的时候出现了这么一个现象,启动之后,使用jps命令之后是这样的: 看不到DataNode进程,但是能够正常的工作,是不是很神奇啊? 在一番 ...
- org.apache.hadoop.hdfs.server.datanode.DataNode: Exception in receiveBlock for block
Hbase依赖的datanode日志中如果出现如下报错信息:DataXceiverjava.io.EOFException: INFO org.apache.hadoop.hdfs.server.da ...
- 当Hadoop 启动节点Datanode失败解决
Hadoop 启动节点Datanode失败解决 [日期:2014-11-01] 来源:Linux社区 作者:shuideyidi [字体:大 中 小] 当我动态添加一个Hadoop从节点的之后,出现 ...
- Datanode启动问题 FATAL org.apache.hadoop.hdfs.server.datanode.DataNode: Initialization failed for Block pool <registering>
-- ::, INFO org.apache.hadoop.hdfs.server.datanode.DataNode: supergroup = supergroup -- ::, INFO org ...
- Hadoop添加节点datanode(生产环境)
Hadoop添加节点datanode 博客分类: hadoop HadoopSSHJDKXML工作 1.部署hadoop 和普通的datanode一样.安装jdk,ssh 2.修改host ...
- ERROR org.apache.hadoop.hdfs.server.datanode.DataNode: Incompatible namespaceIDs
用三台centos操作系统的机器搭建了一个hadoop的分布式集群.启动服务后失败,查看datanode的日志,提示错误:ERROR org.apache.hadoop.hdfs.server.dat ...
- FATAL org.apache.hadoop.hdfs.server.datanode.DataNode: Initialization failed for Block pool <registering> (Datanode Uuid unassigned) service to controller/192.168.1.183:9000. Exiting. java.io.IOExcep
2018-01-09 09:47:38,297 FATAL org.apache.hadoop.hdfs.server.datanode.DataNode: Initialization failed ...
- 启动Hadoop时,DataNode启动后一会儿自动消失的解决方法
查看slaver1/2的logs,发现 FATAL org.apache.hadoop.hdfs.server.datanode.DataNode: Initialization failed for ...
- Hadoop记录-退役
一.datanode添加新节点 1.在dfs.include文件中包含新节点名称,该文件在名称节点的本地目录下 [白名单] [/app/hadoop/etc/hadoop/dfs.include] 2 ...
随机推荐
- unpe13e 学习备忘1
转其他地方. http://blog.sina.com.cn/s/blog_a43aba560101a2s5.html 运行书本中的程序.1,首先,下载源码:unpv13e.tar.gz2,然后,编 ...
- Java Swing Action 动作
Swing包提供了一种非常实用的机制来封装命令,并将它们连接到多个事件源,这就是Action接口.一个动作是一个封装下列内容的对象: × 命令的说明(一个文本字符串和一个可选图标): × 执行命令所需 ...
- zookeeper单机安装
安装zookeeper步骤: 1,下载zookeeper http://mirror.bit.edu.cn/apache/zookeeper/zookeeper-3.4.14/ 2,放到合适目录,解压 ...
- E20170624-ts
stateless adj. 无国家的,无国籍的; groupware 群件 cookie n. 饼干; 小甜点; 吸引人的年轻妇女; 甜面包; session n. 开会,会议; (法庭的) 开 ...
- 仪表盘(Speedometer) icon 设计
- frameset的target属性
使用frameset时的target属性 (2012-09-18 08:19:31) 转载▼ 分类: java技术之路 一般常用的有四个属性 _blank 浏览器总在一个新打开.未命名的窗口中载入 ...
- [Swift通天遁地]三、手势与图表-(13)制作美观简介的滚动图表:折线图表、面积图表、柱形图表、散点图表
★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★➤微信公众号:山青咏芝(shanqingyongzhi)➤博客园地址:山青咏芝(https://www.cnblogs. ...
- Akka源码分析-local-DeathWatch
生命周期监控,也就是死亡监控,是akka编程中常用的机制.比如我们有了某个actor的ActorRef之后,希望在该actor死亡之后收到响应的消息,此时我们就可以使用watch函数达到这一目的. c ...
- Python基础数据类型(三)list 列表
3.4列表list [] 列表的格式 lst_l = [1,'123',[1,'www',2],'包青天'] 列表也有索引 print(lst_l[0]) print([-1][0:2]) #包青 切 ...
- Eclipse设置空格代替tab
1.点击 window->preference-,依次选择 General->Editors->Text Editors,选中右侧的 insert space for tabs;如下 ...