2016-02-17 215 views
1

我使用全新安装的CDH 5.5.2。在Cloudera Manager我看到,HDFS有一个严重的健康问题。我在群集中有1 NameNode和1 DataNodeCloudera Manager - HDFS未复制块

在复制的块

Under-Replicated Blocks

578集群中的复制块下。 群集中共有580个块。重复块下的百分比:99.66%。关键 阈值:40.00%

我该如何解决这个问题?

UPDATE:Cloudera Manager(CDH 5.0.2) -> HDFS -> Configuration -> View and Edit -> Service-Wide -> Replication -> Replication Factor (dfs.replication) -> 1在这种情况下不起作用。

回答

1

有几件事情要检查:

  • 名称节点可以使用过时的配置运行。如果是这样,请重新启动namenode以确保它正在使用cloudera管理器中显示的当前配置运行。
  • 有时Cloudera的代理需要重新启动,以及它生成的配置正确
  • 如果不工作,然后运行hadoop fsck /|egrep -v '^\.+$'|grep -i replica
  • 找出影响的文件和验证复制系数设置为1因为你只有一个数据节点
    • 您可以通过运行hadoop fs -ls /path/to/file.txt检查复制因子的文件,然后看看号码的第2列输出

注意: 请务必将HDFS网关角色添加到您要从中运行hadoop命令的服务器。

另外考虑升级cloudera管理器到5.5.1 - 你的版本是一个非常早期的版本,他们从那以后做了一个TON的变化。

2

新的复制因素只影响新文件。要更改复制因子现有文件shell中运行(与Hadoop的入口点的节点上)

hadoop fs -setrep -w <replication factor> -R/

但是,只有“HDFS”可以写入/(“HDFS”是超级用户,而不是“根”)。所以,可能你将不得不使用这个命令:

sudo -u hdfs hadoop fs -setrep -w <replication factor> -R/