本文共 2927 字,大约阅读时间需要 9 分钟。
edits 存储的是对HDFS操作记录
fsimage 存储的是hdfs上面文件信息
nameNode 存储的数据的元数据信息,datanode的节点状态,block块的状态
元素据目录所在/home/hadoop-2.7.4/tmp/dfs/name/current
Hadoop 格式化 是为了初始化整个文件系统,目录结构
目录结构贴图
namespaceID=934548976 // dataNode 节点表示 clusterID=CID-cdff7d73-93cd-4783-9399-0a22e6dce196 // 整个集群的表示 cTime=0 // 集群的创建时间 storageType=NAME_NODE //数据结构信息(如果是 DataNode,storageType=DATA_NODE); blockpoolID=BP-893790215-192.168.24.72-1383809616115 //Namenode节点 主备关系 layoutVersion=-47 //数据结构变更,版本号也要递减
seen_txid - edits = ? 判断集群是否还原彻底 seen_txid 对HDFS操作记录 edits 存储的操作记录 当集群出现问题 还原的时候会用到 来判断整个集群的恢复状态
secondnaryNode 它的职责是合并 NameNode 的 edit
logs 到 fsimage 文件中,减小edits文件大小,得到最新的fsimage文件 。 这么做的目的一个是备份元数据信息,另一个是减小edits文件数据,节省内存 .这么做的目的也是数据备份还原合并流程图
触发条件
Checkpoint 操作受两个参数控制,可以通过 core-site.xml 进行配置:dfs.namenode.checkpoint.period 3600 两次连续的 checkpoint 之间的时间间隔。默认 1 小时 dfs.namenode.checkpoint.txns 1000000 最大的没有执行 checkpoint 事务的数量,满足将强制执行紧急 checkpoint,即使尚未达到检查点周期。默认设置为 100 万。
看下面的资料内容
基础准备-----------------------在基础准备部分,主要是设置hadoop运行的系统环境修改系统hostname(通过hostname和/etc/sysconfig/network进行修改)修改hosts文件,将集群所有节点hosts配置进去(集群所有节点保持hosts文件统一)设置NameNode到DataNode的免密码登录(ssh-copy-id命令实现)修改主节点slave文件,添加新增节点的ip信息(集群重启时使用)将hadoop的配置文件scp到新的节点上---------------------------添加DataNode---------------------------对于新添加的DataNode节点,需要启动datanode进程,从而将其添加入集群在新增的节点上,运行sbin/hadoop-daemon.sh start datanode即可然后在namenode通过hdfs dfsadmin -report查看集群情况最后还需要对hdfs负载设置均衡,因为默认的数据传输带宽比较低,可以设置为64M,即hdfs dfsadmin -setBalancerBandwidth 67108864即可默认balancer的threshold为10%,即各个节点与集群总的存储使用率相差不超过10%,我们可将其设置为5%然后启动Balancer,sbin/start-balancer.sh -threshold 5,等待集群自均衡完成即可---------------------------添加Nodemanager---------------------------由于Hadoop 2.X引入了YARN框架,所以对于每个计算节点都可以通过NodeManager进行管理,同理启动NodeManager进程后,即可将其加入集群在新增节点,运行sbin/yarn-daemon.sh start nodemanager即可在ResourceManager,通过yarn node -list查看集群情况
什么情况用安全? 重要性 ? 特征? 针对谁?
当启动HDFS集群的时候会开启一种特殊的状态 就叫做安全模式 ,在安全模式下 只读模式 - 不可以上传 修改 删除 只能查 满足三个条件。
安全模式就为了集群的稳定性,只有在稳定的时候才可以操作HDFS。
安全模式的启动条件
1 达到副本数量要求的 block 比例满足要求;
dfs.namenode.replication.min: 最小的文件 block 副本数量比例,默认为 1.
2 可以用的节点数 满足配置要求
dfs.namenode.safemode.threshold-pct: 指定应有多少比例的数据块满足最小副本数
要求。默认为 0.999f,大于这个比例就离开安全模式安全模式命令
手动进入安全模式hdfs dfsadmin -safemode enterhdfs dfsadmin -safemode leavehdfs dfsadmin -safemode get //可以在50070查看
由于在HDFS系统在设计的时候就决定不适合去存储大数据文本文件,因为小文件会占用nameNode节点大量的内存信息。通过archives这个方法将小文件打包,底层调用MR算法将打包后的文件进行分区 。依然使其可以访问每个文件 。
使用方法
hadoop archive -archiveName test.har -p /input -r 3 /outputdir在/outputdir 目录下创建一个名为 test.har 的存档文件。
解决了单独故障问题