HDFS-源码NameNode启动(含安全模式)
上一篇总结了HDFS的RPC机制,那么本篇主要是来总结NN的启动,启动流程如下
忽略细节,抓住重点,那么从上图可以发现NN的启动伴随着如下时间的发生
- hdfs web服务启动
- NN文件系统被加载,初始化工作
- rpcServer 被创建
- namesystem 被启动
- rpcServer 启动
在namesystem.startCommonServices()被调用的时候会进行安全检查
- 首先就是检查NN目录是否满足系统要求
- 文件夹最小存储空间为100M
- 大于等于100M的文件夹数目>=1
- 赋值给 hasResourcesAvailable
- checkMode() 系统是否进入安全模式
- 系统的副本状态正常文件在0.999以下
- datanodeThreshold 最小dn数 默认为0,不为0的话,一旦dn个数小于阈值,那么就会进入安全模式
- 正常的editLog目录数目最小默认为1 目录下的可用空间最小是100M