HDFS HA 架构
-
架构图
-
架构说明
- HA 使用主备两个 NN 节点解决单点问题,一个状态为 active,另一个为 standby
- 两个 NN 节点通过 JN 集群共享状态,通过 ZKFC 选举 active 节点
- DN 会同时向两个 NN 节点发送心跳
- active 状态的 NN
- 接收 client 的 RPC 请求并处理,自己写一份 editlog,同时也向 JN 的共享存储上的 editlog 写一份
- 接收 DN 的 block report,block location updates 和 heartbeat
- standby 状态的 NN
- 从 JN 集群读取并执行 log 操作,使自己 NN 的元数据和 active NN 的元数据是同步的
- standby NN 是 active NN 的一个热备,如果active NN 出现问题,standby NN 切换到 active 状态,就能立即对外提供服务
- 接收 DN 的 block report,block location updates 和 heartbeat
- JN
- 用于同步 active NN 和 standby NN 的数据,本身是由一组 JN 节点组成的集群,奇数台(至少3台),支持Paxos协议,保证高可用
<