HA架构中的脑裂,什么是脑裂,怎样预防脑裂?

  在HA架构中有一个非常重要的问题,就是需要保证同一时刻只有一个处于Active状态的NameNode,否则就会出现两个NameNode同时修改命名空间的问题,也就是脑裂(split-brain)。脑裂的HDFS集群很有可能造成数据块的丢失,以及向DataNode下发错误指令等异常情况。

 为了预防脑裂的情况,HDFS提供了三个级别的隔离机制。

  • 共享存储隔离:同一时间只允许一个NameNode向JournalNodes写入EditLog数据。
  • 客户端隔离:同一时间只允许一个NameNode响应客户端请求。
  • DataNode隔离:同一时间只允许一个NameNode向DataNode下发名字节点指令,例如删除、复制数据块指令等。

你可能感兴趣的:(Hadoop)