解决HDFS NameNode启动时Loading edits时间超长的问题(NameNode数据同步机制介绍)
背景
有個(gè)好久好久沒怎么維護(hù)的Hadoop集群,一直在提供服務(wù),也做了HA,由于某些原因要對(duì)HDFS做重啟,重啟前檢查了遍服務(wù),發(fā)現(xiàn)另一個(gè)NameNode已經(jīng)掛了有一段時(shí)間了。
重啟過程倒是沒啥問題,但NameNode的Startup Progress特別久,持續(xù)Loading edits,將近3個(gè)小時(shí)。
分析
到NameNode的數(shù)據(jù)目錄看了下,發(fā)現(xiàn)有大量的edits_*文件,加起來得有60G,這些文件也存在很久了,最早的文件貌似和StandBy NameNode掛掉的時(shí)間比較接近。edits文件很久沒有做合并了,懷疑是跟另一個(gè)NameNode掛掉有關(guān)。
在網(wǎng)上也查了下NameNode合并的機(jī)制,果不其然,StandBy的NameNode平時(shí)并不是閑著的,雖然不對(duì)外提供服務(wù),但是它會(huì)在后臺(tái)默默的做edits的合并和JournalNode的同步等工作,合并edits文件后,也會(huì)同步給Active的NameNode,讓它清理無用的edits文件。
SecondaryNamenode(也是StandBy NameNode)最重要作用,是定期合并FsImage和EditLog文件,并替換NameNode上的舊的FsImage文件,生成新的EditLog文件,替換原來的舊的EditLog文件。這樣可以保證SecondaryNameNode上的文件為最近的信息。當(dāng)發(fā)生宕機(jī)時(shí)候,可以快速恢復(fù)。
強(qiáng)制刷新edits文件
執(zhí)行
hdfs dfsadmin -safemode enter然后再執(zhí)行
hdfs dfsadmin -saveNamespace總結(jié)
以上是生活随笔為你收集整理的解决HDFS NameNode启动时Loading edits时间超长的问题(NameNode数据同步机制介绍)的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: Hadoop Yarn任务优先级(作业优
- 下一篇: 利用 Arthas 解决启动 HDFS