我开始知道当 NameNode 启动几分钟时,它位于SAFEMODE
(这意味着数据不能用HDFS写入)几分钟后有一段时间自动进入writemode,我的问题是NameNode
在SAFEMODE
启动时的原因
答案 0 :(得分:3)
Namenode在safemode中启动,因为它必须在文件系统关闭之前重建文件系统的样子。如果它不知道文件系统的外观,它就无法对其进行任何更改。
请记住,hdfs中的文件系统基本上是重放的fsimage
plus all the entries in the edit log
。它将fsimage
加载到内存中并从日志文件中应用编辑日志。 Namenode等待DataNodes报告其块,以便它不会过早地开始复制块。在此期间,NameNode处于安全模式,即只读模式。所有DataNode完成报告其块后,Namenode应自动离开Safemode。