hdfs standby namenode checkpoint 的一些参数

dfs.namenode.checkpoint.period
--两次检查点创建之间的固定时间间隔,默认3600,即1小时。所以去ann snn 看到的fsimage 相隔1个小时。

dfs.namenode.checkpoint.txns
--standby namenode 检查的事务数量。若检查事务数达到这个值,也触发一次checkpoint,1,000,000。

以上两个参数都是触发snn checkpoint 的条件

dfs.namenode.checkpoint.check.period
--standby namenode检查是否满足建立checkpoint的条件的检查周期。默认60,即每1min检查一次。

dfs.namenode.num.checkpoints.retained
--在namenode上保存的fsimage的数目,超出的会被删除。默认保存2个。

dfs.namenode.num.checkpoints.retained
--最多能保存的edits文件个数,默认为1,000,000. 为防止standby namenode宕机导致edits文件堆积的情况,设置的限制。

dfs.ha.tail-edits.period
--standby namenode每隔多长时间去检测新的Edits文件。只检测完成了的Edits, 不检测inprogress的文件。default:60s

StandbyCheckpointer 的doWork()
 SNN查看是否满足创建checkpoint 的条件:
1) 距离上次checkpoint的时间间隔 >= ${dfs.namenode.checkpoint.period}(
2) Edits中的事务条数达到${dfs.namenode.checkpoint.txns}限制
这两个条件任何一个被满足了,就触发一次checkpoint 创建。

也可以手动checkpoint :

1. hdfs dfsadmin -safemode enter
 >Safe mode is ON in dev01/192.168.254.43:8020
 >Safe mode is ON in dev02/192.168.254.44:8020

2. hdfs dfsadmin -saveNamespace
  > Save namespace successful for dev01/192.168.254.43:8020
  > Save namespace successful for dev02/192.168.254.44:8020

3. hdfs dfsadmin -safemode leave
 >Safe mode is OFF in dev01/192.168.254.43:8020
 >Safe mode is OFF in dev02/192.168.254.44:8020
首先,checkpoint 之前要先进入安全模式。进入安全模式后,执行saveNamespace命令,他会把a-nn的fsimage 与 大于fsimage txid的editlog(包括finalized 与 in_progress的)合并成新的fsimage并落盘,然后新生成一个editlog。

checkpoint before:
945048-20180928194535391-616861381.png

checkpoint after:
945048-20180928194416594-65806389.png


参考:http://blog.cloudera.com/blog/2014/03/a-guide-to-checkpointing-in-hadoop/

posted on 2018-09-28 15:51 姜小嫌 阅读( ...) 评论( ...) 编辑 收藏

转载于:https://www.cnblogs.com/jiangxiaoxian/p/9719117.html

  • 1
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值