zk:zookeeper
NN:namenode
DN:datanode
ZF Failover Controller:简称zkfc ,是zk的客户端,只运行在主备的namenode上,主要作用是判断 那个主节点,那莪是备用节点,同事在主备切换的时候也会做判断,zkfc 是active的状态,同理,这台namenode也是active的状态
zk 得作用是为NN做高可用得,zk的数量一般是要为奇数,最少是3个
上图绿色的方块是Journalnode,是保证namenode元数据的同步,journalnode 也是一个集群,是一个独立的进程,当namenode active的节点命名空间有变化,会通知大部分的journalnnode
的进程,standby namenode读取journalnode 的变化的信息,并且一直监控edit log的变化,把变化应用到自己的命名空间,保证集群出错的时候,自己的命名空间是完全同步的。
journalnode 集群工作的流程图
zk的工作原理:
集群的架构规划图:
后续有时间,把部署写上