【发布时间】:2018-02-09 17:05:40
【问题描述】:
我在 Centos 上有一个带有 Cloudera Express 5.11 的 11 节点集群。最初它仅由 7 个节点组成;稍后又添加了 4 个节点。每个节点的磁盘容量都相同:5.4 TB。
我遇到的问题是hdfs dfsadmin -report 命令显示错误的磁盘使用值,尤其是对于配置容量。我的值是前 7 个节点中的 6.34 TB 和后 4 个节点中的 21.39 TB。
例如,在一个节点中,我有以下报告:
Decommission Status : Normal
Configured Capacity: 23515321991168 (21.39 TB)
DFS Used: 4362808995840 (3.97 TB)
Non DFS Used: 14117607018496 (12.84 TB)
DFS Remaining: 3838187159552 (3.49 TB)
DFS Used%: 18.55%
DFS Remaining%: 16.32%
Configured Cache Capacity: 2465202176 (2.30 GB)
Cache Used: 0 (0 B)
Cache Remaining: 2465202176 (2.30 GB)
Cache Used%: 0.00%
Cache Remaining%: 100.00%
在dfs.data.dir 文件夹上运行df 命令向我显示DFS Used 值(不是百分比)是正确的,但其他值是正确的。我读过 HDFS 可能显示的值可能不是最新的,但我已经看到相同的值几天了,即使在重新启动所有服务和所有机器之后也是如此。
最让我烦恼的是:
- 配置的容量远高于真实容量(我只有 5 TB,它怎么能推断出 21 TB?)
- 我对两组节点分别有两个不同的值
这些值的原因可能是什么?有没有办法修复它们?
PS:我问这个的原因是,使用错误的值,HDFS 低估了DFS Used%,因此无法重新平衡节点中的文件。事实上,我发布值的节点有:
-
DFS Used:~4 TB(正确) -
DFS Used%:~19%(错误)
每个其他节点都有:
-
DFS Used:~2 TB(正确) -
DFS Used%:从 11% 到 28%(错误)
这使得被指控节点的DFS Used%低于平均值,因此HDFS的平衡器推断该节点不应该重新平衡。
PS2:我注意到的一件事是第一组节点有 Centos 6.9,而第二组节点有 Centos 6.8。这会以某种方式导致问题吗?
【问题讨论】: