HDFS体系结构
- namenode守护进程的作用
1)维护hdfs集群元数据的镜像文件【fsimage】
【fsimage】包括:文件属性信息,文件与blook块的对应关系,不包括块的位置信息
2)维护客户端对hdfs的相关操作,并记录到edits_log
3)接受来自所有datanode的心跳汇报,内容:块的信息与所属节点位置 - datanode守护进程的作用
1)负责实时监控当前节点的运行状态
2)以块的形式进行存储
3)响应来自客户端的请求 - secondarynamenode作用
SecondaryNameNode解决可靠性,HA解决的是高可用
dfsadmin命令
-
-report
【获取集群集群报表信息】
命令语句:hdfs dfsadmin -report
-
-setQuota
【设置目录配额】例:【注意:文件夹quota也会占用一个配额,所以只能在上传4个文件或文件夹】
hadoop fs -mkdir /quota
hdfs dfsadmin -setQuota 5 /quota
hadoop fs -put tt /quota/t1
hadoop fs -put tt /quota/t2
hadoop fs -put tt /quota/t3
hadoop fs -put tt /quota/t4 -
-setSpaceQuota
设置目录空间配额
要求:剩余空间必须大于所需上传文件的block数*副本数*block块大小:例:
hadoop fs -mkdir /spacequota
hdfs dfsadmin -setSpaceQuota 1000m /spacequota
hadoop fs -put tt /spacequota -
-clrQuota
清空目录配额例:hdfs dfsadmin -clrQuota /quota
-
-clrSpaceQuota
清空目录空间配额例:hdfs dfsadmin -clrSpaceQuota /spacequota
-
-count -q
查看配额指令例:hadoop fs -count -q /quota
结果:5 0 none inf 1 4 56 /quota
表示内容:文件数限额 可用文件数 空间限额 可用空间 目录数 文件数 总大小 文件/目录名 -
-metasave
保存hdfs集群相关节点信息到Hadoop日志目录的一个文件中例:hdfs dfsadmin -metasave 20190802
查看:cd $HADOOP_HOME /logs
cat 20190802 -
-fetchImage
从namenode获取最新的fsimage文件,在datanode从节点上操作例:【将最新的fsimage镜像放到 ~下】
hdfs dfsadmin -fetchImage ~ -
-allowSnapshot
允许为指定目录创建快照例:hdfs dfsadmin -allowSnapshot /use
hadoop fs -createSnapshot /use use_snapshot
更改快照名:
hadoop fs -renameSnapshot /use use_snapshot tt
删除此快照:
hadoop fs -deleteSnapshot /use tt