Hadoop3.x:HDFS NameNode Startup Progress 启动进度页面解析
·
HDFS NameNode Startup Progress 启动进度页面解析

这是 Hadoop3.1.3 NameNode WebUI(9870端口)的启动进度页面,
整体耗时33秒,进度100%,完整展示NameNode启动四大阶段:
加载fsimage → 回放edits日志 → 保存checkpoint → 进入安全模式。
逐行解读页面各个Phase
1. Loading fsimage(加载元数据快照)
Loading fsimage /opt/module/hadoop‑3.1.3/data/name/current/fsimage_0000000000000006190 13.23 KB
erasure coding policies (0/0)
inodes (167/167)
delegation tokens (0/0)
cache pools (0/0)
fsimage_0000000000000006190:FsImage元数据镜像文件,大小13.23KB,保存某时刻HDFS完整目录、权限、文件元信息。- inodes (167/167):inode代表HDFS里面的文件+目录,一共167个,全部加载完成。
- erasure coding policies:纠删码策略,0代表没有配置纠删码,使用默认副本机制。
- delegation tokens:代理令牌,用于认证,0个。
- cache pools:缓存池,未配置。
FsImage不包含启动之后的增量修改,增量操作保存在edits文件。
2. Loading edits(回放EditLog增量操作日志)
Loading edits
/opt/module/hadoop‑3.1.3/data/name/current/edits_0000000000000006191‑0000000000000006288 1 MB (98/98)
edits_xxxx‑xxxx:EditLog编辑日志,记录从上一次fsimage生成之后,所有增、删、改HDFS的操作。- 文件大小1MB,共98条操作记录,全部回放完毕(98/98)。
NameNode启动流程:先加载fsimage,再逐条回放edits日志,还原出集群最新元数据。
3. Saving checkpoint(执行Checkpoint,生成新fsimage)
Saving checkpoint
erasure coding policies /opt/module/hadoop‑3.1.3/data/name/current/fsimage.ckpt_0000000000000006288 (0/0)
inodes /opt/module/hadoop‑3.1.3/data/name/current/fsimage.ckpt_0000000000000006288 (0/0)
delegation tokens /opt/module/hadoop‑3.1.3/data/name/current/fsimage.ckpt_0000000000000006288 (0/0)
cache pools /opt/module/hadoop‑3.1.3/data/name/current/fsimage.ckpt_0000000000000006288 (0/0)
回放完edits日志之后,NameNode把合并后的完整元数据输出新的镜像fsimage.ckpt_0000000000000006288,写入磁盘。
这就是Checkpoint机制,由SecondaryNameNode触发(HA环境由Standby NameNode执行),生成新fsimage,清空旧edits日志。
4. Safe mode(安全模式)
Safe mode
awaiting reported blocks (51/51)
- 安全模式:NameNode启动后的保护状态。
awaiting reported blocks (51/51):等待DataNode上报所有数据块信息。总共有51个数据块,全部上报完成。- 当满足:块上报达到阈值比例,安全模式自动退出,集群提供读写服务。
安全模式下:只能读,不能写、不能删除文件。
FsImage + EditLog + SecondaryNameNode 对应关系
- 启动:加载fsimage + 回放edits → 内存得到完整元数据
- 做完checkpoint,输出新fsimage,edits日志重新从零开始记录
- 然后等待DataNode上报block,退出安全模式,对外提供服务。
关键知识点
- NameNode启动两大核心文件:fsimage(元数据快照)、edits(增量操作日志)
- inodes数量代表HDFS文件+目录总数量;
- safe mode安全模式,等待DataNode上报block;
awaiting reported blocks(51/51)代表全部块上报完成; - 安全模式手动命令:
# 查看安全模式状态 hdfs dfsadmin -safemode get # 手动退出安全模式 hdfs dfsadmin -safemode leave - 这个页面路径:
http://node1:9870/dfshealth.html#startup-progress
更多推荐
所有评论(0)