【HDFS】EditLogTailer功能及原理(一)-- 整体流程
【HDFS】EditLogTailer功能及原理(二)-- selectInputStreams细节详解
【HDFS】EditLogTailer功能及原理(三)-- loadEdits方法细节详解
本文主要内容:
① EditLogTailer的产生背景以及基本工作流程。
② loadEdit的基本流程。
一、EditLogTailer背景
生产情况下的HDFS都是HA(高可用)模式的,在HA模式下,有Active namenode、Standby namenode、JournalNode、ZKFC这几个角色。当然,也可能有Observer namenode,它是从社区hadoop-3.3.0版本开始引入的一个新的角色,主要是用来做读写分离从而提高HDFS吞吐量的,让写请求发到Active namenode,读请求发到Observer namenode上。它不是本文重点。
为了能让standby namenode在active namenode发生故障时快速接管集群并成为新active namenode,就需要一种机制能保证active和standby之间的元数据相差尽量小。EditLogTailer就是解决方案。它只在standby namenode