Configuring HDFS High Availability

原文请訪问 http://blog.csdn.net/ashic/article/details/47024617,突袭新闻小灵儿,linux公社,各种爬虫狗。在这里问候你们全家

Configuring HDFS High Availability

我们能够通过Clouder Manager来配置你的CDH4 Cluster来实现HDFS的HA





一、SecondaryNameNode能否够在NameNode宕机时接管,成为新的“NameNode”?

答案是否定的









NameNode

首先我们须要了解,NameNode负责管理文件系统的namespace,维护整个文件系统的文件文件夹树。及这些文件的索引文件夹。

这些信息以两种形式存储在本地文件系统中:

1.命名空间镜像(fsimage)

2.编辑日志(edit-logs)





须要注意的是,这些信息不是永久保存的,NameNode会在每次系统启动时动态地重建这些信息





SecondaryNameNode

从元数据节点并非元数据节点出现故障时候的备用节点,它和元数据节点负责不同的事情

其主要功能就是周期性将元数据节点的命名空间镜像文件和改动日志合并,以防日志文件过大

合并过后的命名空间镜像文件也在从元数据节点保存了一份。以防元数据节点失败的时候。能够恢复





二、配置HDFS HA(採用QJM)

HDFS HA架构中,由两个NameNode组成 —— Active NameNode 和 Standby NameNode

仅仅有一个NameNode能够处于Active状态

为了让Standby Node与Active Node保持同步,这两个Node都与一组称为JNS的互相独立的进程保持通信(Journal Nodes)。当Active Node上更新了namespace,它将记录改动日志发送给JNS的多数派。

Standby noes将会从JNS中读取这些edits,并持续关注它们对日志的变更。Standby Node将日志变更应用在自己的namespace中。当failover发生时,Standby将会在提升自己为Active之前。确保可以从JNS中读取全部的edits-log;即在failover发生之前,Standy持有的namespace应该与Active保持全然同步。





三、配置HA

1.Enabling High Availability with Quorum-based Storage

1.1点击-服务,选择HDFS

watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQv/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/Center" alt="">

1.2点击-实例

1.3点击-启用High Availability

watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQv/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/Center" alt="">

1.4下一个页面显示了有资格作为Standby NameNode和JournalNodes的主机

a.选择 启用基于Quorum存储的High Availability为High Availability类型

b.选择你要作为Standby NameNode的主机.Standby NameNode和Active NameNode不能够再一台主机上,而且要和Active NameNode拥有同样的硬件配置

c.选择奇数数量的host作为JournalNodes.JournalNodes应部署在与NameNode具有相似硬件配置的主机上。建议在Active NameNode和Standby NameNode分别部署一个JournalNode,并在一个与它们具有相似硬件配置的主机不是第三个JournalNode.

d.点击-继续



1.5在接下来出现的界面,为每一个JournalNode指定JournalNode编辑文件夹

a.你仅仅须要为每一个JournalNode指定一个文件夹。文件夹的名称不必统一

b.指定的文件夹由于空文件夹,而且有合适的权限

c.假设文件夹不为空,Clouder Manager不会删除这些内容;however, in that case the data should be in sync across the edits directories of the JournalNodes and should have the same version data as the NameNodes.

1.6点击-继续





假设你须要使用Hive,Impala或者Hue。你还须要运行以下的操作步骤

2.Post Setup Steps for Hue and Hive

不论你使用 Quorum-based storage 还是 NFS-mounted shared edits directory。你都是按以下的步骤进行配置来启用HA

2.1Configuring Hue to work with High Availability

2.1.1点击-服务。选择HDFS

2.1.2点击-实例

2.1.3点击-加入



2.1.4在接下来的页面,在HttpFS这一列中选择一个主机来安装HttpFS role。然后点击-继续

watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQv/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/Center" alt="">

2.1.5返回实例页面,选择你刚才选择将要安装HttpFS role的主机

2.1.6点击-已选定的操作-点击启动

2.1.7当启动命令运行完成后,点击-服务-选择Hue

watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQv/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/Center" alt="">

2.1.8点击-配置-查看和编辑

2.1.9在接下来出现的界面中。选择-服务范围,找到HDFS Web界面角色-选择之前选择的HttpFS role主机。然后点击保存更改

watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQv/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/Center" alt="">

2.1.10重新启动Hue服务,是配置生效





3.Updating the Hive Metastore for HDFS High Availability

3.1点击-服务,选择Hive

3.2点击-操作-停止

watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQv/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/Center" alt="">

3.3备份你的Hive数据库

3.4点击-操作-更新Hive metastore NameNode

3.5点击-操作-启动

3.6启动Hue和Impla,假设你之前关闭了





四、启用 Automatic Failover

注意:启动或禁用 Automatic Failover会关闭HDFS服务 和 基于HDFS的服务!

1.点击-服务。选择HDFS

2.点击-实例

3.点击-启用自己主动故障转移

启动故障自己主动转移成功

watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQv/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/Center" alt="">

Configuring HDFS High Availability的更多相关文章

  1. HDFS Federation与HDFS High Availability详解

    HDFS Federation NameNode在内存中保存文件系统中每个文件和每个数据块的引用关系,这意味着对于一个拥有大量文件的超大集群来说,内存将成为限制系统横向扩展的瓶颈.在2.0发行版本系列 ...

  2. [HDFS Manual] CH4 HDFS High Availability Using the Quorum Journal Manager

    HDFS High Availability Using the Quorum Journal Manager HDFS High Availability Using the Quorum Jour ...

  3. HDFS High Availability(HA)高可用配置

    高可用性(英语:high availability,缩写为 HA) IT术语,指系统无中断地执行其功能的能力,代表系统的可用性程度.是进行系统设计时的准则之一. 高可用性系统意味着系统服务可以更长时间 ...

  4. HDFS High Availability Using the Quorum Journal Manager

    http://hadoop.apache.org/docs/r2.9.0/hadoop-project-dist/hadoop-hdfs/HDFSHighAvailabilityWithQJM.htm ...

  5. hadoop2.x HDFS HA linux环境搭建

    HDFS High Availability Using the Quorum Journal Manager 准备3台机器可以更多   NN  DN  ZK  ZKFC  JN  RM  DM  n ...

  6. hadoop 的HDFS 的 standby namenode无法启动事故处理

    standby namenode无法启动 现象:线上使用的2.5.0-cdh5.3.2版本Hadoop,开启了了NameNode HA,HA采用QJM方式.hadoop的集群的namenode的sta ...

  7. HDFS NameNode HA 部署文档

    简介: HDFS High Availability Using the Quorum Journal Manager Hadoop 2.x 中,HDFS 组件有三个角色:NameNode.DataN ...

  8. 第6章 HDFS HA配置

    目录 6.1 hdfs-site.xml文件配置 6.2 core-site.xml文件配置 6.3 启动与测试 6.4 结合ZooKeeper进行自动故障转移 在Hadoop 2.0.0之前,一个H ...

  9. hadoop权威指南(第四版)要点翻译(4)——Chapter 3. The HDFS(1-4)

    Filesystems that manage the storage across a network of machines are called distributed filesystems. ...

随机推荐

  1. 009 HDFS的shell命令(里面有一个安全模式)

    一:dfs的命令 1.所有的领命 2.解释 -appendToFile <localsrc> ... <dst>   :追加文件 -checksum <src> . ...

  2. install vscode on centos

    1.down load package from https://code.visualstudio.com/docs/?dv=linux64 2.tar zxf code-stable-code_1 ...

  3. caffe 中 plot accuracy和loss, 并画出网络结构图

    plot accuracy + loss 详情可见:http://www.2cto.com/kf/201612/575739.html 1. caffe保存训练输出到log 并绘制accuracy l ...

  4. 【定时任务】Spring Boot 中如何使用 Quartz

    这篇文章将介绍如何在Spring Boot 中使用Quartz. 一.首先在 pom.xml 中添加 Quartz 依赖. <!-- quartz依赖 --> <dependency ...

  5. SQL注入使用Django中继数据包bypassWAF

    原理 本人基于文章bypassword的文章在HTTP协议层面绕过WAF所编写一款工具. 环境 Python3.7.0 Django 2.1 Requests 使用范围 POST注入 可以分块传输的漏 ...

  6. Spring boot之SpringApplicationBuilder,@@Configuration注解,@Component注解

    SpringApplicationBuilder: 该方法的作用是可以把项目打包成war包 需要配置启动类,pom.xml文件等,具体见:http://blog.csdn.net/linzhiqian ...

  7. dSploitzANTI渗透教程之HTTP服务重定向地址

    dSploitzANTI渗透教程之HTTP服务重定向地址 HTTP服务 HTTP服务主要用于重定向地址的.当用户创建一个钓鱼网站时,可以通过使用HTTP服务指定,并通过实施中间人攻击,使客户端访问该钓 ...

  8. PHP中var_export和var_dump的区别

    var_dump -- 此函数显示关于一个或多个表达式的结构信息,包括表达式的类型与值. var_export -- 输出或返回一个变量的字符串表示, 它和 var_dump() 类似,不同的是其返回 ...

  9. 如何破解安卓App

    韩梦飞沙 yue31313 韩亚飞 han_meng_fei_sha  313134555@qq.com 如何破解安卓App

  10. Qt Quick快速入门之线程基础

    首先必须明确的是,Qt中的线程使用是相对复杂的,并不像C#中那么随意,特别是结合串口.网络编程等,使用时稍有不慎就会出问题,然后Qt里面经常出了问题就直接崩溃(这个真是谁用谁知道),所以如果在功能上用 ...