Hadoop HA 架构

原创 2016年08月30日 18:58:33

1 Hadoop HA 介绍

1.1 namenode 高可用集群

HDFS集群中如果只有一个namenode,那么如果namenode机器宕机则会导致整个集群不可用,所以,Hadoop提供HDFS高可用HA方案:HDFS集群中有两个namenode处在两台独立的机器上,一个处于active状态(对外提供服务),一个处于standby状态(不对外提供服务),用于同步active namenode的状态,进行备份,以防active namenode失败时可以迅速切换。

组件有:

  • Active NameNode
  • Standby NameNode
  • ZKFailoverController
  • Zookeeper集群
  • 共享存储系统
  • Datanode

为了让Standby Node与Active Node保持同步,这两个Node都与一组称为JNS的互相独立的进程保持通信(Journal Nodes)。当Active Node上更新了namespace,它将记录修改日志发送给JNS的多数派。Standby noes将会从JNS中读取这些edits,并持续关注它们对日志的变更。Standby Node将日志变更应用在自己的namespace中,当failover发生时,Standby将会在提升自己为Active之前,确保能够从JNS中读取所有的edits,即在failover发生之前Standy持有的namespace应该与Active保持完全同步。

为了支持快速failover,Standby node持有集群中blocks的最新位置是非常必要的。为了达到这一目的,DataNodes上需要同时配置这两个Namenode的地址,同时和它们都建立心跳链接,并把block位置发送给它们。

处理流程为:集群启动后一个NameNode处于Active状态,并提供服务,处理客户端和DataNode的请求,并把editlog写到本地和share editlog(这里是QJM)中。另外一个NameNode处于Standby状态,它启动的时候加载fsimage,然后周期性的从share editlog中获取editlog,保持与Active节点的状态同步。为了实现Standby在Active挂掉后迅速提供服务,需要DataNode同时向两个NameNode汇报,使得Stadnby保存block to DataNode信息,因为NameNode启动中最费时的工作是处理所有DataNode的blockreport。为了实现热备,增加FailoverController和Zookeeper,FailoverController与Zookeeper通信,通过Zookeeper选举机制,FailoverController通过RPC让NameNode转换为Active或Standby。

image

1.2 namenode 主备切换

主备切换流程图:
image

1.3 namenode的共享存储

架构图:
这里写图片描述

版权声明:本文为博主原创文章,未经博主允许不得转载。

相关文章推荐

hadoop2.7.3源码解析之HA架构分析

整体架构概述 具体分析 ZKFailoverController 概述 启动 HealthMonitor ActiveStandbyElector整体架构概述在hadoop 1.0的时候,hadoop...

hadoop之HA架构----->NameNode的高可靠性缘由

注意:只有hadoop2.x以后才有HA机制 一 、概念性 1.ZKFC(DFSZKFailoverController)------>故障转移,当Active NameNode挂掉了,会...

Hadoop-2.8.0之分布式集群(HA架构)搭建

1、安装前准备        ①、集群规划:   主机名称 用户 主机IP 安装软件 运行进程   centos71 hzq 192.168.1.201 jdk...

三台PC服务器部署Hadoop HA(Hadoop 高可用性架构)

写在前边的话:         转载请注明出处:@http://blog.csdn.net/gamer_gyt,Thinkagmer 撰写         之前是在自己电脑上部署的Hado...

hadoop学习笔记四 -- hadoop集群HA架构设计

环境: 系统:centos6.5 hadoop:2.7.1 zookeeper:3.4.6 涉及到的概念和作用解释: zk : zookeeper,主要的作用是保证HA(high ...

Hadoop 的HA高可集群用性

一、 Hadoop 的高可用性 1. 概论 本指南提供了一个HDFS 的高可用性(HA )功能的概述,以及如何配置和管理HDFS 高可用性(HA) 集群。本文档假定读者具有对HDFS 集群的组件和...
  • jdbc
  • jdbc
  • 2014-09-01 10:22
  • 439

Hadoop2.7.3全分布式环境搭建(非HA)

0.环境准备:在VMWare中准备四台CentOS6.5虚拟机,主机名分别为hadoop1,hadoop2,hadoop3,hadoop41.建立用户:hadoop273,并将其组名指定为jimmyu...

Hadoop 2.x之HDFS利用QJM实现HA高可用

【启动顺序】 1、关闭防火墙# service iptables stop2、启动三台zookeeper# zkServer.sh start3、在其中一个namenode上格式化,这个步骤只需要操...

Hadoop HA实战

Hadoop HA了解: 由于hadoop集群中所有数据信息存储在namenode上,因此namenode成为集群的核心,也是安全隐患,如果namenode因故障停止或者损坏,将导致集群的无法正常运...
  • sfrem
  • sfrem
  • 2016-01-29 13:39
  • 232

Hadoop2.2.0+HA+zookeeper3.4.5详细配置过程+错误处理(一)

Hadoop2.2.0+HA+zookeeper3.4.5+体系结构+错误处理         心血之作,在熟悉hadoop2架构的过程耽误了太长时间,在搭建环境过程遇到一些问题,这些问题一直卡...
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:深度学习:神经网络中的前向传播和反向传播算法推导
举报原因:
原因补充:

(最多只允许输入30个字)