理解HDFS高可用性架构
来源:互联网 发布:搜狗电影网络电影 编辑:程序博客网 时间:2024/05/16 03:29
在Hadoop1.x版本的时候,Namenode存在着单点失效的问题。如果namenode失效了,那么所有的基于HDFS的客户端——包括MapReduce作业均无法读,写或列文件,因为namenode是唯一存储元数据与文件到数据块映射的地方。而从一个失效的namenode中恢复的步骤繁多,系统恢复时间太长,也会影响到日常的维护。
Hadoop的2.x版本在HDFS中增加了对高可用性的支持来解决单点失效的问题。
这一实现中简单说就是配置了一对活动-备用namenode。当活动namenode失效的时候,备用namenode就会接管它的任务并开始服务于来自客户端的请求,不会有任何明显中断。
下面我们来看一下HDFS实现高可用性的架构图:
从架构图我们可以看到:
Active NameNode 和 Standby NameNode:两台 NameNode 形成互备,一台处于 Active 状态,为主 NameNode,另外一台处于 Standby 状态,为备 NameNode,只有主 NameNode 才能对外提供读写服务。
主备切换控制器又称故障转移控制器,ZKFailoverController:ZKFailoverController 作为独立的进程运行,对 NameNode 的主备切换进行总体控制。ZKFailoverController 能及时检测到NameNode 的健康状况,在主NameNode 故障时借助 Zookeeper 实现自动的主备选举和切换。
Zookeeper 集群:为主备切换控制器提供主备选举支持。
共享存储系统:共享存储系统是实现NameNode 的高可用最为关键的部分,共享存储系统保存了 NameNode 在运行过程中所产生的 HDFS 的元数据。主NameNode和备NameNode 通过共享存储系统实现元数据同步。在进行主备切换的时候,新的主 NameNode 在确认元数据完全同步之后才能继续对外提供服务。
DataNode 节点:除了通过共享存储系统共享 HDFS 的元数据信息之外,主 NameNode 和备 NameNode 还需要共享 HDFS 的数据块和 DataNode 之间的映射关系。DataNode 会同时向主 NameNode 和备 NameNode 上报数据块的位置信息。
- 理解HDFS高可用性架构
- 理解HDFS高可用性架构
- HDFS高可用性
- HDFS 联盟和高可用性
- hdfs的高可用性HA
- 架构要素-高可用性
- 高可用性的HDFS学习笔记1
- hadoop2的HDFS的高可用性
- Hadoop HDFS高可用性(HA) 原理篇
- Hadoop HDFS高可用性(HA) 部署篇
- HDFS架构理解
- sqlserver 2005 高可用性架构 日志传送
- sqlserver 2005 高可用性架构 日志传送
- sqlserver 2005 高可用性架构 日志传送
- sqlserver 2005 高可用性架构 日志传送
- mongodb高可用性架构—Replica Set
- 系统高可用性解架构决方案
- 具有高可用性的CloudFoundry架构
- CentOS 6.4安装Apache+MySQL+PHP
- UVA1428 Ping pong(树状数组)
- xgboost算法的学习小案例
- 使用腾讯云GPU学习深度学习系列之六:物体的识别与定位
- JavaScript立即执行函数
- 理解HDFS高可用性架构
- HNUST 1231:猜牌术(水....)
- 一种定位内存泄露的方法(Linux)
- SUSE linux手动添加更新源
- oracle 在个人电脑安装成功,第二天orcl的oem无法登陆
- 乌云沙龙:赛棍的自我修养
- EditText获取焦点 失去焦点监听,获取焦点操作
- 响应式Web中,避免不必要的图片加载
- C++标准库——第一周课程笔记