• Welcome to the world's largest Chinese hacker forum

    Welcome to the world's largest Chinese hacker forum, our forum registration is open! You can now register for technical communication with us, this is a free and open to the world of the BBS, we founded the purpose for the study of network security, please don't release business of black/grey, or on the BBS posts, to seek help hacker if violations, we will permanently frozen your IP and account, thank you for your cooperation. Hacker attack and defense cracking or network Security

    business please click here: Creation Security  From CNHACKTEAM

Recommended Posts

hadoop无法退出安全模式,报"name node is in safe mode"错误提示。

集群安全模式

jnzxciloatb3647.png

群集处于安全模式,无法执行重要操作(写入操作)。集群启动后,会自动退出安全模式。

基本语法:

(1)bin/hdfs dfsadmin -safemode get(功能描述:检查安全模式的状态)

(2)bin/HDFS DFS admin-安全模式进入(功能描述:进入安全模式状态)

(3) Bin/HDFS DFS管理-安全模式离开(功能描述:离开安全模式状态)

(4)bin/HDFS DFS admin-安全模式等待(功能描述:等待安全模式状态)

原因分析

一、查看是否是数据损坏导致的

hadoop集群非正常关机,比如直接关闭虚拟机,导致hdfs中部分块丢失或损坏。Hadoop将进入安全模式。

发生这种情况:要先手动退出安全模式,再处理坏的数据块。

1.退出安全模式:

第一:正常退出安全模式。

HDFS DFS admin-安全模式休假

如果提示安全模式关闭,说明退出成功,但有时该命令无法退出安全模式,需要使用强制退出。

第二种:强制退出安全模式。

hdfs dfsadmin -safemodeforceExit

2.处理坏数据块:

第一,直接删除坏数据块。

第二,修复坏数据块。

检查路径中是否有坏块:

bin/hdfs fsck /

删除路径下的坏块:

bin/HDFS fsck/-删除

修复坏块:

hdfs调试恢复lease-path/-重试次数5

###retries是重试的次数。

# # # # #######损坏的块意味着坏块。

坏数据块:

/vul/file/old/9/file:缺少1个总大小为10315 B.Status:损坏

总尺寸: 596245766 B

总dirs: 570

文件总数: 758

符号链接总数: 0

总块数(已验证): 660(平均。块大小903402 B)

低于最小REPL块3360 660 (100.0 %)

DFS . NameNode . replication . min : 1

损坏的文件: 660

丢失的块: 660

缺少尺寸: 596245766 B

损坏的块: 660

最小复制块数3360 0 (0.0 %)

过度复制的块: 0 (0.0 %)

复制不足的块: 0 (0.0 %)

错误复制的块: 0 (0.0 %)

默认复制因子: 2

平均块复制: 0.0

损坏的块: 660

丢失的副本: 0

数据节点数量: 1

机架数量: 1

FSCK于2019年12月31日星期二10:02:48 CST在2844毫秒内结束

路径“/”下的文件系统已损坏

———————————————————

二、查看集群空间的使用情况

使用df -h命令检查集群空间的使用情况。

显示分区空间

i4muuvy4j2j3648.png

发现磁盘被100%占用,空间被占用。

当硬盘使用率超过90%时,namenode将进入安全模式,强制退出是不可接受的。发生这种情况

1、检查并杀死无用进程释放资源

在/opt目录下执行lsof |grep delete检查对应的进程号,用kill -9进程号杀死对应的进程;

ps -a(或者使用top命令)查看所有进程,使用kill -9进程号杀死无用的进程。

2、删除硬盘中的某些文件,释放空间

3、对硬盘进行扩容

Link to comment
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now