目前来看,导致hdfs一直处于safemode模式最直接的原因是已成功复制的块的比例没有达到默认值,块的损坏也会造成一直处于安全模式。

1)文件系统中有损坏的文件,使用fsck命令来查看

hadoop fsck /

以上是查看hdfs的根目录下的所有文件健康状况,如果有损坏的文件,就会提示:

 The filesystem under path '/' is CORRUPT(损坏)

接下来就是排错,查看究竟是哪个目录下有损坏文件,使用fsck遍历检查根目录下的每个子目录,查看时候有损坏文件,例如查看user目录:

hadoop fsck /user

找到损坏的文件,删除掉即可,最终在使用fsck检查hdfs文件系统已完好:

但是看到Missing replicas一栏中,有321个副本丢失了,比如某个文件的复制因子是3,结果只有2个,那么表示有1个副本丢失了,所有的文件丢失副本数之后就是Missing replicas。同样使用fsck遍历所有目录,查看究竟是那些文件的冗余数量不够。

首先查看/user/Englishinput,命令如下:

hadoop fsck /user/EnglishInput -files -blocks -locations

仅仅这一个目录就有265个备份丢失,删除此目录。

Under开头的记录就是异常块的情况,数字.开头的就是正常的块情况。

2)以下就是hdfs正常情况的形式:

红色的箭头表示对一个文件的检查情况:1 block(s)表示这个文件只由一个块组成,ok表示文件处于正常状态。

蓝色箭头指示了“Average block replication”块平均复制因子2.8,因为其中有一个文件传到集群上是系统配置的复制因子是1,因此其复制因子是1,才导致平均复制因子是1.

3)修改配置文件中的复制因子值,并不会改变修改之前集群中文件的复制因子,必须重启hadoop才能使其生效。也可以使用命令行的方式修改,不用重新启动即可生效,不过依然不会修改之前文件的复制因子。

4)使用第二种方法的结果如下所示;

hdfs一直处于safemode模式的更多相关文章

  1. Apache Hadoop 2.9.2 的HDFS High Available模式部署

    Apache Hadoop 2.9.2 的HDFS High Available 模式部署 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 我们知道,当NameNode进程挂掉后,可 ...

  2. Hadoop 系列文章(二) Hadoop配置部署启动HDFS及本地模式运行MapReduce

    接着上一篇文章,继续我们 hadoop 的入门案例. 1. 修改 core-site.xml 文件 [bamboo@hadoop-senior hadoop-2.5.0]$ vim etc/hadoo ...

  3. 启动HDFS之后一直处于安全模式org.apache.hadoop.hdfs.server.namenode.SafeModeException: Log not rolled. Name node is in safe mode.

    一.现象 三台机器 crxy99,crxy98,crxy97(crxy99是NameNode+DataNode,crxy98和crxy97是DataNode) 按正常命令启动HDFS之后,HDFS一直 ...

  4. HDFS Safemode问题

    处于safemode的集群是无法接收不论什么写操作的,包含创建文件夹.删除文件.改动文件.上传文件等等. 关于safemode,在http://www.iteblog.com/archives/977 ...

  5. How to fix corrupt HDFS FIles

    1 问题描述 HDFS在机器断电或意外崩溃的情况下,有可能出现正在写的数据(例如保存在DataNode内存的数据等)丢失的问题.再次重启HDFS后,发现hdfs无法启动,查看日志后发现,一直处于安全模 ...

  6. HDFS退出安全模式

    运行Hadoop程序时,有时候会报以下错误: org.apache.hadoop.dfs.SafeModeException: Cannot delete /user/hadoop/input. Na ...

  7. HDFS安全模式

    用户可以通过dfsadmin -safemode value 来操作安全模式,参数value的说明如下: enter - 进入安全模式 leave - 强制NameNode离开安全模式 get - 返 ...

  8. HDFS概述(1)————HDFS架构

    概述 Hadoop分布式文件系统(HDFS)是一种分布式文件系统,用于在普通商用硬件上运行.它与现有的分布式文件系统有许多相似之处.然而,与其他分布式文件系统的区别很大.HDFS具有高度的容错能力,旨 ...

  9. hdfs常用的命令

    查看hadoop的状态hdfs haadmin -getServiceState nn1切换主从 hdfs haadmin -failover nn1 nn2查看hdfs是否安全模式hdfs dfsa ...

随机推荐

  1. Windows下SVN命令行工具使用详解

    根据我的记忆,似乎Windows 7下自自带一个svn命令行工具.如果你的机器没有,不必担心.你可以从http://subversion.tigris.org获 取subversion for win ...

  2. 34.如何获取app(apk和ipa)中的资源

    移动互联网中,主要的两个平台是android和ios,android上文件的安装包是后缀名为apk的文件,ios上文件的安装包是后缀名为ipa的文件,在本文分析一下这两种文件的特点,以及如何用程序去解 ...

  3. 高性能Server---Reactor模型【转载】

    原文链接:http://www.ivaneye.com/2016/07/23/iomodel.html 无处不在的C/S架构 在这个充斥着云的时代,我们使用的软件可以说99%都是C/S架构的! 你发邮 ...

  4. [TJOI2015] 棋盘

    Description 为了提高智商,ZJY去新世界旅游了.可是旅游过后的ZJY杯具的发现要打开通往原来世界的门,必须要解开门上面画的谜题.谜题是这样的:有个\(n\)行\(m\)列的棋盘,棋盘上可以 ...

  5. NET Core 跨平台执行命令、脚本

    一.前言 我们可能会遇到需要在程序中执行一些系统命令,来获取一些信息:或者调用shell脚本..NET Core 目前已经可以跨平台执行,那么它如何跨平台执行命令呢,请看下面的讲解. 二.Proces ...

  6. CSS操作笔记

    编写css样式:1. 标签的style属性2. 写在head里面 style标签中写样式- id选择区#i1{background-color: #2459a2;height: 48px;}- cla ...

  7. 提示“本地连接没有有效的ip配置-未修复“窗口

    很多人在使用电脑时可能会遇到了这样一个网络问题,电脑无法连接网络,使用自带网络诊断工具诊断提示:"本地连接没有有效的ip配置".这种网络故障多数是出在使用路由器共享上网的windo ...

  8. dummy_backend_queue.go

    ) } func (d *dummyBackendQueue) Empty() error {     return nil }

  9. 将外部dwg图纸中指定带属性的块插入到当前图纸中

    static void InsertBlock() { //获取要插入的块名 TCHAR str[40]; acedGetString(Adesk::kFalse, _T("\n请输入要插入 ...

  10. 「WC 2018」州区划分

    题目大意: 给一个无向图$G(V,E)$满足$|V|<=21$,对于某一种将$G(V,E)$划分为k个的有序集合方案,若每一个子集$G_i(V_i,E_i)$,$E_i=\{(x,y)|x\in ...