【问题标题】:HDFS does not replicate blocksHDFS 不复制块
【发布时间】:2017-10-19 07:08:42
【问题描述】:

我最近安装了 Hadoop (Cloudera)。我收到一个错误,我在复制块下(在 Cloudera Manager 中,它是安装的 gui)。所以当我跑步时

hdfs dfsadmin -report

我明白了

Configured Capacity: 555730632704 (517.56 GB)
Present Capacity: 524592504832 (488.56 GB)
DFS Remaining: 524592193536 (488.56 GB)
DFS Used: 311296 (304 KB)
DFS Used%: 0.00%
Under replicated blocks: 5
Blocks with corrupt replicas: 0
Missing blocks: 0
Missing blocks (with replication factor 1): 0

这意味着由于某种原因我的 hdfs 没有复制这些块。从这里检查什么?有没有可能是我的HDFS Balancer 有问题,我需要手动运行它?

【问题讨论】:

    标签: hadoop hdfs cloudera-cdh


    【解决方案1】:

    复制块不足的主要原因有两个:

    1。复制因子超出可用数据节点

    假设您只有 2 个数据节点,并且您的复制因子为 3,那么您创建的每个块都将处于复制状态,因为根本没有 3 个数据节点可以复制到。

    解决方案可以是添加数据节点,也可以是减少复制因子。

    2。集群太忙了

    集群将优先考虑“实际”工作而不是复制块。因此,如果您创建大量块,可能需要一段时间才能赶上。如果您的集群一直很忙,理论上可能总会有一些复制不足的块。

    请注意,当您提到它是一个新集群时,磁盘似乎几乎是空的,我认为这里不会出现 2。


    除此之外,当然有可能确实发生了某些事情(例如平衡),但在您确认可以排除上述两种情况之前,我不会担心这一点。大多数中断的事情往往会在这里或那里导致错误,因此假设您没有看到任何错误,这种情况不太可能发生。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2014-11-26
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2015-09-11
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多