VMWareワークステーションでCloudera Manager 5.4.1を使用して2ノードクラスタを実装しました。これにはHbase、Impala、Hive、Sqoop2、Oozie、Zookeeper、NameNode 、セカンダリ名とYARN。 ノードあたり3台のディスクドライブをシミュレートしました.SDAには、OS用にsdb & sdc(Hadoopストレージ用)が含まれています。HDFS構成の容量がdfsadminコマンドの元のディスク容量より小さい
私は16GBのsdb1と、各ノードのHadoopストレージ専用の16GBのsdc1を割り当てました。したがって、私は、両方のノードを含むHDFSストレージの総容量が64GBであることを前提としています。しかし、dfsadminコマンドとNameNode UIを使用して出力をチェックすると、「設定された容量がHDFSに割り当てられた元のディスクサイズよりも小さい」ことがわかります。 以下のdfsadminコマンドの出力を表示しました。また、df -hの出力も表示されています。設定された容量が元のディスクサイズよりも小さく表示されている理由を理解できたら助かりますか?
[[email protected] ~]$ df -h
Filesystem Size Used Avail Use% Mounted on
/dev/mapper/vg_node1-LogVol00 40G 15G 23G 39%/
tmpfs 3.9G 76K 3.9G 1% /dev/shm
/dev/sda1 388M 39M 329M 11% /boot
/dev/sdb1 16G 283M 15G 2% /disks/disk1/hdfsstorage/dfs
/dev/sdc1 16G 428M 15G 3% /disks/disk2/hdfsstorage/dfs
/dev/sdb2 8.1G 147M 7.9G 2% /disks/disk1/nonhdfsstorage
/dev/sdc2 8.1G 147M 7.9G 2% /disks/disk2/nonhdfsstorage
cm_processes 3.9G 5.8M 3.9G 1% /var/run/cloudera-scm-agent/process
[[email protected] ~]$
[[email protected] zookeeper]$ sudo -u hdfs hdfs dfsadmin -report
[sudo] password for hduser:
Configured Capacity: 47518140008 (44.25 GB)
Present Capacity: 47518140008 (44.25 GB)
DFS Remaining: 46728742571 (43.52 GB)
DFS Used: 789397437 (752.83 MB)
DFS Used%: 1.66%
Under replicated blocks: 385
Blocks with corrupt replicas: 0
Missing blocks: 0
Missing blocks (with replication factor 1): 0
-------------------------------------------------
Live datanodes (2):
Name: 192.168.52.111:50010 (node1.example.com)
Hostname: node1.example.com
Rack: /default
Decommission Status : Normal
Configured Capacity: 23759070004 (22.13 GB)
DFS Used: 394702781 (376.42 MB)
Non DFS Used: 0 (0 B)
DFS Remaining: 23364367223 (21.76 GB)
DFS Used%: 1.66%
DFS Remaining%: 98.34%
Configured Cache Capacity: 121634816 (116 MB)
Cache Used: 0 (0 B)
Cache Remaining: 121634816 (116 MB)
Cache Used%: 0.00%
Cache Remaining%: 100.00%
Xceivers: 2
Last contact: Sun May 15 18:15:33 IST 2016
Name: 192.168.52.112:50010 (node2.example.com)
Hostname: node2.example.com
Rack: /default
Decommission Status : Normal
Configured Capacity: 23759070004 (22.13 GB)
DFS Used: 394694656 (376.41 MB)
Non DFS Used: 0 (0 B)
DFS Remaining: 23364375348 (21.76 GB)
DFS Used%: 1.66%
DFS Remaining%: 98.34%
Configured Cache Capacity: 523239424 (499 MB)
Cache Used: 0 (0 B)
Cache Remaining: 523239424 (499 MB)
Cache Used%: 0.00%
Cache Remaining%: 100.00%
Xceivers: 2
Last contact: Sun May 15 18:15:32 IST 2016
ウォルターズありがとうございます。はい、プロパティ "dfs.datanode.du.reserved"によると、それは4.25 GBを使用するように設定されていましたので、4.25 GBが所与のノード内の各データディレクトリに割り当てられるようになりました。私は2つのデータディレクトリパーティションを持っていたので、予約されたスペースはノードあたり8.5GBでした。各ノードの構成済み容量は23.5GB(32GB - 8.5GB)になりました 私は式に達しました: 構成済み容量= (dfs.data.dir) - DFS以外の使用のための予約領域(dfs.datanode.du.reserved) – avinash
クラスタ内の "DFS非使用"は400MBまで増えています。 "非DFS使用"と削除方法、それは大きな助けになるでしょう。スタックオーバーフローにはいくつかの回答がありますが、それでも理解できません。 – avinash
[what-exactly-non-dfs-used-means](http://stackoverflow.com/questions/18477983/what-exactly-non-dfs-used-means)にはすばらしい回答があります。私は2つのアプローチしか考えていません。1。ファイルハンドラを削除したファイルに保持するプロセスを閉じます。 2. Asume/mnt/disk0 /はあなたのマウントポイントです、/ mnt/disk0/dfs /はあなたの設定されたdataDirです。ディスクに他のファイルはありませんか?/mnt/disk0/otherDir/otherFileのようなものです。それを削除してみてください。 – waltersu