【问题标题】:could not delete files from dfs as safe mode is on安全模式已开启,无法从 dfs 中删除文件
【发布时间】:2014-04-27 22:16:42
【问题描述】:

我正在使用 cloudera 的虚拟机来运行 hadoop。 99% 的 dfs 空间已用完。所以我需要删除文件,但是要删除文件需要关闭安全模式。

我尝试使用以下命令关闭安全模式,

sudo -u hdfs hdfs dfsadmin -safemode leave

它说它已关闭,但由于空间不足,它会自动打开它。当我试图删除文件时,它说由于安全模式已开启,您无法删除文件。

SafeModeException: Cannot create directory /user/cloudera/.Trash/Current. Name node is in safe mode. Resources are low on NN. Please add or free up more resources then turn off safe mode manually. NOTE: If you turn off safe mode before adding resources, the NN will immediately return to safe mode.. (error 403)

要删除文件,需要关闭安全模式。要关闭安全模式,我需要释放空间!那么如何清理文件以腾出更多空间呢?

【问题讨论】:

    标签: hadoop hdfs cloudera


    【解决方案1】:

    您可以尝试通过暂时将以下选项设置为低值来降低触发安全模式的阈值:

    dfs.safemode.threshold.pct
    dfs.namenode.safemode.threshold-pct
    

    此外,NameNode 可能不会在离开后立即返回安全模式。就我而言,我可以通过将 hdfs dfsadmin -safemode leavehdfs dfs -rm 命令链接在一起来清理东西,例如

    sudo su hdfs
    hdfs dfsadmin -safemode leave; hdfs dfs -rm -skipTrash /path/to/stuff/to/delete
    

    【讨论】:

      【解决方案2】:

      重要的是要知道 HDFS 只使用硬盘的磁盘空间。因此,如果在单节点系统上 HDFS 已满,则本地磁盘也已满。

      试试是否可以通过删除非 hdfs 文件来清理文件(例如 /var/log/...)

      【讨论】:

        猜你喜欢
        • 2017-11-30
        • 1970-01-01
        • 2022-10-25
        • 2012-07-08
        • 2012-08-02
        • 2014-03-17
        • 2016-12-31
        • 2016-02-18
        • 1970-01-01
        相关资源
        最近更新 更多