org.apache.hadoop.hdfs.server.namenode.SafeModeException: Cannot delete /user/admin/grep-temp-610649

org.apache.hadoop.hdfs.server.namenode.SafeModeException: Cannot delete /user/admin/grep-temp-610649987. Name node is in safe mode.

原因是namenode处在安全模式下 不能删除
执行:

hdfs dfsadmin -safemode leave

hadoop默认情况下在安全模式运行。可以通过下面hadoop dfsadmin -safemode 参数,查看相关的状态和设置安全模块是否启用。

enter 进入安全模式
leave 强制NameNode离开安全模式
get 返回安全模式是否开启的信息
wait 等待,一直到安全模式结束

解决办法有二种:

    《1》可能运行命令hadoop dfsadmin -safemode leave 离开安全模式,但是每次都需要手动去设置。

    《2》通过配置dfs.safemode.threshold.pct的参数。默认情况下是0.9990f。这个配置可以在hdfs-defalut.xml中找到。我们可以把这个参数配置为0,永久关闭安全模式。

在hadoop中的hdfs-site.xml添加如下配置:

        <property>

                <name>dfs.safemode.threshold.pct</name>

                <value>0f</value>

                <description>

                        Specifies the percentage of blocks that should satisfy

                        the minimal replication requirement defined by dfs.replication.min.

                        Values less than or equal to 0 mean not to wait for any particular

                        percentage of blocks before exiting safemode.

                        Values greater than 1 will make safe mode permanent.

                </description>

        </property>  

重启NameNode就可以了。
发布了175 篇原创文章 · 获赞 76 · 访问量 23万+

猜你喜欢

转载自blog.csdn.net/qq_29232943/article/details/103793986