HDFS HA 架构理解篇

HA产生的背景

为了防止出现,单节点的NameNode挂了,不能对外提供服务,于是产生了,两个NameNode的节点,其中一台是standby,还有一台是active ,保证了两个NameNode,无论哪个出现问题,还是可以实时的对外提供服务

HDFS HA 架构

在这里插入图片描述

HDFS的HA的出现是为了解决单点问题,两个NameNode的通过JounalNode共享数据,通过ZKFC来监控NameNode的健康状态,选举active,自动备援.DataNode会同时向两个NameNode
节点发送心跳;

各进程主要作用:

ActiveNN:

ActiveNameNode 会将操作记录写到自己的editlog中,同时也会向JounalNode集群中记录一份;接受DataNode的心跳和blockreport

StandbyNN:

StandbyNameNode,会接受JounalNode集群中的日志,然后执行日志操作(相当于重演),保证自己的元数据信息和activenNameNode节点保持一致;也会接收DataNode的心跳和blockreport

JounalNode:

JounalNode,用于 activeNameNode和 standbyNameNode节点之间同步数据,JounalNode的部署节点数为奇数台

ZKFC:

ZKFC, 监控两个NameNode的健康状态; 向ZK定期发送心跳,使自己可以被选举;当自己被ZK选举为主的时候,zkfc进程通过RPC调用使NN的状态变为active,对外提供实时服务,无感知。

备注

zookeeper在实际生产中部署的规模:
生产上50台规模以下 7台
50~100 9/11台
>100 11台

猜你喜欢

转载自blog.csdn.net/weixin_40420525/article/details/84575592