Hadoop 獲取 DFS Remaining hadoop文件系統可以使用的剩餘容量大小

Hadoop 獲取 DFS Remaining hadoop文件系統可以使用的剩餘容量大小。(能夠經過http://<HOST>:50070直觀的查看)
Configured Capacity:    18.22 GB
DFS Used:    44 KB
Non DFS Used:    15.92 GB
DFS Remaining:    2.3 GB
DFS Used%:    0%

Configured Capacity : hadoop設置的總空間大小
DFS Used : hadoop文件系統所使用的空間
Non DFS Used : 非hadoop文件系統所使用的空間大小,好比說自己的linux系統使用的,或者存放的其它文件
DFS Remaining :hadoop文件系統可以使用的剩餘容量大小



這裏,DFS Remaining的值我經過查看api發現沒有可以獲取的相關接口。 
java

(以前查詢的是早期的api接口。。。這兩天查看2.6.0 版本的api接口時候已經找到,在文章的最後說明 linux

org.apache.hadoop.fs.DF
DF df = new DF(path,configuration);
DF 對象內容:
df -k null
null    104864252    48683192    56181060    46%    null
其中只包含Configured Capacity、DFS Used、(Configured Capacity - DFS Used)、DFS Used。沒法獲取到DFS Remaining
這裏使用 http://<HOST>:<HTTP_PORT>/jmx?qry=Hadoop:service=NameNode,name=FSNamesystemState

eg:http://192.168.1.118:50070/jmx?qry=Hadoop:service=NameNode,name=FSNamesystemState apache


FsStatus對象提供了獲取 hadoop 總空間、已使用空間、剩餘空間 的方法。使用方式以下: api


FileSystem fileSystem = FileSystem.get(new URI(hdfsURL), configuration);
FsStatus fsStatus = fileSystem.getStatus();
long capacity = fsStatus.getCapacity(); //Configured Capacity
long remaining = fsStatus.getRemaining(); //DFS Remaining
long used = fsStatus.getUsed(); // DFS Used
相關文章
相關標籤/搜索