查看路径首先要打开本机的配置文件hdfs-site.xml查看
namenode
属性名dfs.namenode.name.dir的是namenode的Fsimage文件路径
属性名dfs.namenode.edits.dir的是namenode的Edits_Log文件路径
SecondaryNameNode
属性名dfs.namenode.checkpoint.dir的是namenode的Fsimage文件路径
属性名dfs.namenode.checkpoint.edits.dir的是namenode的Edits_Log文件路径
SecondaryNameNode存在的意义:
- 进行Fsimage和Edits的合并操作,减少edits日志大小,加快集群的启动速度
- 将Fsimage与Edits进行备份,防止丢失
Fsimage,Edits的作用
- Fsimage,Edits用于永久存储HDFS文件系统的镜像和操作日志。集群在二次启动时,使用Fsimage,Edits将集群状态恢复到集群关闭前的状态。
SecondaryNameNode工作的触发因素:
- 时间维度,默认一小时触发一次工作流程 dfs.namenode.checkpoint.period :3600
- 次数维度,默认100万次触发一次工作流程 dfs.namenode.checkpoint.txns : 1000000
- 六十秒判断一次是否达到100W
如何使用SecondaryNameNode还原namenode
-
记录NN存储 和Edits_Log的路径
-
记录SNN存储FSimage和Edits_Log的路径
-
删掉NN的FSimage和Edits_Log模拟数据丢失
-
将SNN的FSimage和Edits_Log复制到NN的FSimage和Edits_Log对应的目录下
-
启动集群进行验证
注意:SNN的FSimage和Edits_Log和NN的FSimage和Edits_Log不要混用