HDFS启动流程、安全模式、checkpoint

一、分布式文件系统采用主Master/从Slaves结构
1)namenode守护进程作为Master节点:维护hdfs的元数据信息[镜像文件+编辑日志]
2)datanode守护进程作为Slaves节点:以Block(块)的形式存储数据。

二、HDFS启动流程

  1. Loading fsimage【加载镜像文件】
    解释:镜像文件里存的就是元数据,默认情况下只保留最新的两个镜像文件
    首次加载集群时,加载镜像文件:{hadoop.tmp.dir}/dfs/name/fsimage_0000000000000000000
    再次开启集群时,Loading fsimage {hadoop.tmp.dir}/dfs/name/current/fsimage_0000000000000000002
    如何查看镜像镜像文件

    hdfs oiv -p XML -i /home/dragon/tmp/dfs/name/current/fsimage_0000000000000000065 -o ~/fs02.xml
    解释:-p 是以什么方式去查看 -i 后加输入的镜像文件路径 -o 后加输出的路径和输出命名

    问:一个集群用的越来越久,fsimage镜像文件是否会越来越大?
    答:不一定fsimage存储的是目录信息,元数据,有可能在最后把目录都删除了,反而edits日志文件会越来越大

  2. Loading edits【加载编辑日志】解释:编辑日志记录的是对集群的每次操作
    首次开启集群时,无编辑日志
    再次开启集群时,/home/hadoop/tmp/dfs/name/current/edits_0000000000000000003-0000000000000000003
    如何查看编辑日志:

    hdfs oev -p XML -i edits_0000000000000000006-0000000000000000061 -o ~/edit_061.xml

  3. Saving checkpoint【保存检查点】
    首次开启集群时,无保存检查点
    保存检查点机制防止因集群长时间运行导致edits_log文件过大,导致集群重启恢复过程过慢或损毁所做的保护机制。
    检查点机制由secondarynamenode完成,做合并的工作,解决了集群的可靠性

  4. Safe mode【退出安全模式】
    解释:在这之前所有的集群操作不允许做编辑

三、checkpoint检查点
  触发检查点的阈值:

  1. 每小时触发一次

    <property>
    	  <name>dfs.namenode.checkpoint.period</name>
    	  <value>3600</value>
    	  <description>
    	  The number of seconds between two periodic checkpoints.
    	  </description>
    </property>
    
  2. 每100万次触发一次

    <property>
    	  <name>dfs.namenode.checkpoint.txns</name>
    	  <value>1000000</value>
    	  <description>
    	  The Secondary NameNode or CheckpointNode will create a checkpoint
    	  of the namespace every 'dfs.namenode.checkpoint.txns' transactions, regardless
    	  of whether 'dfs.namenode.checkpoint.period' has expired.
    	  </description>
    </property>
    
  3. 每一分钟检查事务id是否为100万次

    <property>
    	  <name>dfs.namenode.checkpoint.check.period</name>
    	  <value>60</value>
    	  <description>
    	  The SecondaryNameNode and CheckpointNode will poll the NameNode
    	  every 'dfs.namenode.checkpoint.check.period' seconds to query the number
    	  of uncheckpointed transactions.
    	  </description>
    </property>
    

四、安全模式

  1. 安全模式开启
    $>hdfs dfsadmin -safemode get #获取当前安全模式状态
    $>hdfs dfsadmin -safemode enter #进入安全模式状态
    $>hdfs dfsadmin -safemode leave#离开安全模式状态
    $>hdfs dfsadmin -safemode wait #等待当前安全模式状态
  2. 手动执行checkpoint,前提需进入到安全模式下
    $>hdfs dfsadmin -safemode enter
    $>hdfs dfsadmin -saveNamespace
    $>hdfs dfsadmin -safemode leave
  3. 滚动日志
    $>hdfs dfsadmin -rollEdits
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值