前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >hdfs报错 'There are 10 missing blocks...'

hdfs报错 'There are 10 missing blocks...'

作者头像
阿dai学长
发布2020-03-13 09:44:09
3K0
发布2020-03-13 09:44:09
举报
文章被收录于专栏:阿dai_linux阿dai_linux

场景

今天本要部署spark on yarn,因为要在hdfs创建一些共享文件,于是到hdfs web UI去看了一下,结果发现下面的错误,顺手处理一下。

刚刚接触大数据,还是有点小慌张的,学习了...

Tips: hdfs集群下线DataNode要严格遵守顺序,不然... (PS:大数据开发人员蜜汁自信纯手动搭建hadoop,不知道接手后还有多少坑要踩,奉劝大家不要重复造轮子。。。移步CDH)

错误详情

There are 10 missing blocks. The following files may be corrupted:

排查错误

根据提示信息执行 fsck

执行命令: hdfs fsck /user/work02 查看丢失的文件详细信息

以上MISSING状态的文件和web界面的一致。

查看文件是否存在

直接查看文件,显示该文件是存在的:hdfs dfs -ls /path/to/file

查看文件内容

检查文件内容是否可查看:hdfs dfs -tail /path/to/file

即,当前存活的node中没有该block,该block存在于Dead nodes。

追溯处理

  • 经查资料判断:这种状态下的block是没办法再恢复的了。
  • 原因:之前进行过缩容,文件位于被缩容的datanode节点,已丢失。
  • 修复:处理该 warning 错误信息的办法就是在namenode直接删除已丢失的block即可
代码语言:javascript
复制
$ hdfs fsck -delete /user/work02/.flink/application_1576583910922_0101/logback.xml
...

删除之后到web查看:此时missing blocks变为9。

依次删除其他的block,清理完后结果如下:

思考:hdfs集群DataNode下线

  1. 在NameNode所在的机器(master)上的配置文件hdfs-site.xml中增加"黑名单"配置: <property> <!-- 黑名单信息--> <name>dfs.hosts.exclude</name> <value>/path/to/hadoop/etc/hadoop/dfs.exclude</value> </property>
  2. 在master机器上执行下面的命令: # 创建黑名单文件 $ touch /home/hadoop-twq/bigdata/hadoop-2.7.5/etc/hadoop/dfs.exclude
  3. /path/to/hadoop/etc/hadoop/dfs.exclude文件中增加要下线的机器清单: node11
  4. /path/to/hadoop/etc/hadoop/slaves文件中删除要下线的机器 node11
  5. 然后在NameNode所在的机器上执行如下的命令: # 更新节点信息 $ hdfs dfsadmin -refreshNodes
  6. 然后我们刷新HDFS的Web UI的DataNode信息,如下图:、

这个时候,master上的DataNode的状态变为Decommission In Progress。这个时候,在master上的DataNode的数据都在复制转移到其他的DataNode上,当数据转移完后,我们再刷新HDFS Web UI后,可以看到DataNode的状态变为Decommissioned,表示这个DataNode已经下线,如下图:

  1. 在node11上停止DataNode服务: $ hadoop-daemon.sh stop datanode
  2. 刷新DataNode:  $ hdfs dfsadmin -refreshNodes
本文参与 腾讯云自媒体分享计划,分享自作者个人站点/博客。
如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 场景
  • 错误详情
  • 排查错误
    • 根据提示信息执行 fsck
      • 查看文件是否存在
        • 查看文件内容
        • 追溯处理
        • 思考:hdfs集群DataNode下线
        相关产品与服务
        大数据
        全栈大数据产品,面向海量数据场景,帮助您 “智理无数,心中有数”!
        领券
        问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档