加入收藏 | 设为首页 | 会员中心 | 我要投稿 阜新站长网 (https://www.0418zz.com.cn/)- 管理运维、AI硬件、数据集成、云备份、负载均衡!
当前位置: 首页 > 大数据 > 正文

企业是如何处理HDFS单点问题的?

发布时间:2021-06-04 11:23:37 所属栏目:大数据 来源:互联网
导读:言 在早期Hadoop刚出来的时候是没有解决HDFS单点问题的,这就意味着当NameNode的服务器宕机了就会导致整个集群瘫痪,这是非常危险的于是在Hadoop不断的更新下提出了Hadoop HA来解决NameNode单点问题,接下来我们就来聊一聊。 解决HDFS单点问题解决方案 解决H
在早期Hadoop刚出来的时候是没有解决HDFS单点问题的,这就意味着当NameNode的服务器宕机了就会导致整个集群瘫痪,这是非常危险的于是在Hadoop不断的更新下提出了Hadoop HA来解决NameNode单点问题,接下来我们就来聊一聊。
解决HDFS单点问题解决方案 解决HDFS点单问题其实可以部署两个NameNode,但是真正对外服务只有一个,部署两个NameNode那他们之间的元数据信息是不是需要共享元数据信息呀,不然当其中一个NameNode挂掉了元数据信息没有同步不就会有问题。
 
 
根据appche提出的解决方案目前有三种解决方案如下
方案一、目录共享
 
目录共享是在appche社区中提出但是现在没有引用,目录共享也是一个单点问题,如果当目录共享挂掉了是不是也会导致HDFS挂掉。所以就被一些企业抛弃了。
方案二、使用JournalNode方案
 
我们使用JN来保存元数据信息就不会造成单点问题,JN也是一个集群,我们一般部署JN一般会选择基数例如3,5,7,9等。JN有一个政策只要存活的节点大于二分之一就是一个正常的服务。
注意:我们不要为了解决NameNode的单点问题选择的的组件也是单点问题,这个根本还是没有解决。
JN中的信息都是一样的,那为什么也是其中的一个NameNode就是写数据其中一个就是读取数据那?
 
其实NameNode也是有角色之分的写的为action读为standby,在高可用的架构中只有一个NameNode真正对外服务, 用户也只会对action的NameNode进行打交道,举个理解:假设我们在工作中有2个领导(平级的)我们去请假其中一个领导同意其中一个领导不同意那这个假到底修还是不修那?这不就乱套了吗?也就是在高可用架构中同一时间只有一个说的算。
方案三、使用zookeeper方案
其实企业中也有好多使用zookeeper来带代替了。我们来想一想JN解决了什么问题,不是就数据的一致性和单点故障我们在想想zookeepr是不是也有,于是企业中就把zookeeper的源码改了改就使用了这个方案。

(编辑:阜新站长网)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    热点阅读