HDFS的启动过程
HDFS的启动过程分为四个阶段:
第一阶段:NameNode 读取包含元数据信息的fsimage文件,并加载到内存;
第二阶段:NameNode读取体现HDFS最新状态的edits日志文件,并加载到内存中
第三阶段:生成检查点,SecondaryNameNode将edits日志中的信息合并到fsimage文件中
第四阶段:进入安全模式,检查数据块的完整性

HDFS的安全模式
- 什么是安全模式
安全模式是HDFS的一种保护机制,用于保证数据块的完整性。当HDFS处于安全模式下,HDFS是只读状态,命令无法使用;只有安全模式处于OFF状态时,命令才能使用。 - 安全模式的检查过程
当HDFS处于安全模式下时会检查数据块的完整性。假设我们设置的副本数为3(即配置hdfs-site.xml文件,如下)那么在datanod上有3个副本。
如果系统只存在2个副本,那么副本率为2/3=0.666,在hdfs-default.xml中定义了一个最小副本率0.999f。我们的副本率0.666明显小于0.999f, 因此系统会复制副本到其他的datanode,使得副本率不小于0.999f;
如果系统中的副本为4,超过了我们设定的2,系统就会删除多余的2个副本
<!--hdfs-site.xml配置副本数-->
<property>
<name>dfs.replication</name>
<value>3</value>
</property>
<!--hdfs-default.xml配置副本率-->
<property>
<name>dfs.namenode.safemode.threshold-pct</name>
<value>0.999f</value>
<description>
Specifies the percentage of blocks that should satisfy
the minimal replication requirement defined by dfs.namenode.replication.min.
Values less than or equal to 0 mean not to wait for any particular
percentage of blocks before exiting safemode.
Values greater than 1 will make safe mode permanent.
</description>
</property>
- 进入 退出 查看安全模式的命令
hdfs dfsadmin -safemode get 查看安全模式状态
hdfs dfsadmin -safemode enter 进入安全模式
hdfs dfsadmin -safemode leave 离开安全模式
本文详细介绍了HDFS的启动过程,包括四个阶段:加载fsimage、edits日志、生成检查点和进入安全模式。同时,阐述了HDFS的安全模式,这是一种确保数据块完整性的保护机制,只有在安全模式关闭时,HDFS才允许读写操作。安全模式会检查数据块的副本率,确保其达到预设的最小副本率要求。
916

被折叠的 条评论
为什么被折叠?



