在hdfs中datanode的使用率之一达到了100%?平衡器无法运作

我对Hadoop hdfs有一些问题。 (Hadoop 2.7.3) 我有2个名称节点(1个活动节点,1个备用节点)和3个数据节点。复制因子是3。

$  hdfs dfs -df -h /
Filesystem                Size    Used  Available  Use%
hdfs://hadoop-cluster  131.0 T  51.3 T     79.5 T   39%

使用-df命令使用的磁盘为51T。

$ hdfs dfs -du -h /
912.8 G  /dir1
2.9 T    /dir2

但是使用-du命令使用的磁盘约为3T。

我发现一个数据节点的使用率达到100%。

Live datanodes (3):

datanode1: 
Configured Capacity: 48003784114176 (43.66 TB)
DFS Used: 2614091989729 (2.38 TB)
Non DFS Used: 95457946911 (88.90 GB)
DFS Remaining: 45294174318384 (41.19 TB)
DFS Used%: 5.45%
DFS Remaining%: 94.36%


*****datanode2******
Configured Capacity: 48003784114176 (43.66 TB)
DFS Used: 48003784114176 (43.66 TB)
Non DFS Used: 0
DFS Remaining: 0
DFS Used%: 100%
DFS Remaining%: 0%


datanode3: 
Configured Capacity: 48003784114176 (43.66 TB)
DFS Used: 2615226250042 (2.38 TB)
Non DFS Used: 87496531142 (81.49 GB)
DFS Remaining: 45301001735984 (41.20 TB)
DFS Used%: 5.45%
DFS Remaining%: 94.37%

我的问题是

  1. 我尝试做balancer。它似乎可以工作,但是所有迭代都没有移动任何块,并且它存在而没有任何错误。如何平衡数据节点的磁盘使用量?为什么hdfs balancer命令不移动任何块?
19/11/06 11:27:51 INFO balancer.Balancer: Decided to move 10 GB bytes from datanode2:DISK to datanode3:DISK
19/11/06 11:27:51 INFO balancer.Balancer: chooseStorageGroups for SAME_RACK: overUtilized => belowAvgUtilized
19/11/06 11:27:51 INFO balancer.Balancer: chooseStorageGroups for SAME_RACK: underUtilized => aboveAvgUtilized
19/11/06 11:27:51 INFO balancer.Balancer: chooseStorageGroups for ANY_OTHER: overUtilized => underUtilized
19/11/06 11:27:51 INFO balancer.Balancer: chooseStorageGroups for ANY_OTHER: overUtilized => belowAvgUtilized
19/11/06 11:27:51 INFO balancer.Balancer: chooseStorageGroups for ANY_OTHER: underUtilized => aboveAvgUtilized
19/11/06 11:27:51 INFO balancer.Balancer: Will move 10 GB in this iteration
19/11/06 11:27:51 INFO balancer.Dispatcher: Limiting threads per target to the specified max.
19/11/06 11:27:51 INFO balancer.Dispatcher: Allocating 5 threads per target.

No block has been moved for 5 iterations. Exiting...
  1. 尽管datanode2已满,但是节点的状态显示为“服务中”或“活动”或“正常”。当然,在这种情况下,我无法在hdfs中写入新数据。

  2. -df的结果和-du的结果太大。为什么?

gongchen10 回答:在hdfs中datanode的使用率之一达到了100%?平衡器无法运作

要么添加新的数据节点,要么减少复制因子。

为什么?

让我们将集群中使用最多的节点称为 alpha,将其余两个较少使用的节点称为 beta、gamma。

现在,假设您要将“file.txt”从复制因子为 3 的 alpha 节点移动到 beta 节点,这里发生的情况是主文件移动到 beta 节点,但在 alpha 节点中创建了复制文件.因此,alpha 节点中使用的总空间保持不变。

本文链接:https://www.f2er.com/3167995.html

大家都在问