YARN源代码分析(四)——Journalnode
发布时间
阅读量:
阅读量
前言
在近期对公司Hadoop集群性能问题进行排查过程中,发现整个集群的处理效率明显下降,以往仅需数十分钟即可完成的任务,如今耗时已增加至一个小时左右。最初推测可能是网络因素所致,后续验证证实确实存在部分网络相关问题。然而不久后,该问题再次出现,此时排查难度显著增加。通过分析HDFS请求日志及Ganglia的各项监控数据,发现NameNode的积压请求数量持续偏高,表明其处理能力存在异常。进一步排查后确认,问题根源在于JournalNode写入EditLog的速度过慢。最终查明是由于JournalNode的EditLog目录未正确创建,导致某节点在写入EditLog时不断抛出FileNotFoundException错误。因此,在此提醒大家应高度重视诸如JournalNode等看似次要的组件。在此次故障排查过程中,也对YARN中与JournalNode相关的代码进行了深入学习,以下为部分学习心得,可能存在分析偏差之处,敬请理解与指正。
JournalNode功能与应用
部分学生可能对JournalNode这一概念较为陌生,仅熟悉Hadoop中的Datanode和Namenode,这是因为JournalNode是在MR2(即Yarn)版本中新增的组件。其主要功能是用于存储EditLog。在MR1版本中,EditLog与fsimage文件一同保存,而Secon
全部评论 (0)
还没有任何评论哟~
