HDFS HA(High Availability)高可用性
HDFS HA(High Availability)高可用性
参考文献:
官方文档
全文翻译
Hadoop组件之-HDFS(HA实现细节)

这张图片的个人理解
由于NameNode在Hadoop1只有一个节点,可能存在(SPOF)single point of file单节点故障。包括机器故障,软件硬件升级等。
在Hadoop2砍死你使用两台机器配置为NameNode,在任何时候,只有一个处于Active状态。为了保证两个NameNode节点的数据统一性,1:datanode同时向两个NameNode发送心跳和块报告;2:NameNode中磁盘存储的文件主要有镜像文件和编辑日志,通过JournalNode日志节点保证edits文件的可靠性。如下图:

无ZKFC

有ZKFC
active的NameNode向JournalNode写如日志文件,standby的NameNode读取JournalNode中的数据,以达到编辑日志文件的同步。
通过Zookeeper的ZKFailoverContral来监控active的健康状态,一旦出现问题,安排Client访问第二个NameNode,从而实现熱备。
需要配置的四个地方(遵循官方文档即可)
1.share edits
JournalNode
2.NameNode
Active,Standby
3.Client
Proxy代理(Zookper)
4.fence(篱笆)
同一时刻仅有一个NameNode对外提供服务
隔离方式:
SSHfence:两个NameNode之间相互能够无密码登录
启动HA
#1.在各个journalnode节点上启动journalNode服务
$ sbin/hadoop-daemon.sh start journalnode
#2.在nn1上对其进行格式化并启动
$ bin/hdfs namenode -format
$ sbin/hadoop-daemon.sh start namenode
#3.在nn2上同步nn1上的源数据
$ bin/hdfs namenode -bootstrapStandby
#4.在nn2上启动NameNode节点
$ sbin/hadoop-daemon.sh start namenode
#此时,两个节点都是standby状态
#5.将nn1节点的NameNode设置为activity
$ bin/hdfs haadmin -transitionToActive nn1
#获取状态
$ bin/hdfs haadmin -getServiceState nn1
#6.开启各个节点的DataNode
$ sbin/hadoop-deamon.sh start datanode
集群规划
| 123 | 124 | 125 |
|---|---|---|
| NameNode | NameNode | |
| ZKFC | ZKFC | |
| JournalNode | JournalNode | JournalNode |
不需要SecondaryNameNode,因为不会出现重启情况
Zookeeper用于自动故障转移
配置依据官方文档即可
启动带监控的HDFS HA服务器集群
#1.关闭所有hdfs服务
#2.启动ZK集群
$ bin/zkServer.sh start
#3.初始化HA在ZooKeeper中状态
$ bin/hdfs zkfc -formatZK
#4.启动HDFS文件系统,看到所有的NameNode节点上多了一个DFSZKFailoverController即zkfc启动成功
可以通过kill -9 1234来验证
HDFS HA(High Availability)高可用性的更多相关文章
- 第6章 HDFS HA配置
目录 6.1 hdfs-site.xml文件配置 6.2 core-site.xml文件配置 6.3 启动与测试 6.4 结合ZooKeeper进行自动故障转移 在Hadoop 2.0.0之前,一个H ...
- HDFS概述(5)————HDFS HA
HA With QJM 目标 本指南概述了HDFS高可用性(HA)功能以及如何使用Quorum Journal Manager(QJM)功能配置和管理HA HDFS集群. 本文档假设读者对HDFS集群 ...
- [转]HDFS HA 部署安装
1. HDFS 2.0 基本概念 相比于 Hadoop 1.0,Hadoop 2.0 中的 HDFS 增加了两个重大特性,HA 和 Federaion.HA 即为 High Availability, ...
- HDFS HA架构以及源代码引导
HA体系架构 相关知识介绍 HDFS master/slave架构,HDFS节点分为NameNode节点和DataNode节点. NameNode存有HDFS的元数据:主要由FSImage和EditL ...
- 6,HDFS HA
目录 HDFS HA 一.HA(High Availability)的使用原因 二.HA的同步 三.HA的自动容灾 HDFS HA 一.HA(High Availability)的使用原因 1.1 在 ...
- hadoop(二):hdfs HA原理及安装
早期的hadoop版本,NN是HDFS集群的单点故障点,每一个集群只有一个NN,如果这个机器或进程不可用,整个集群就无法使用.为了解决这个问题,出现了一堆针对HDFS HA的解决方案(如:Linux ...
- 【解决】HDFS HA无法自动切换问题
[解决]HDFS HA无法自动切换问题 原因: 最早设置为root互相登录,可是zkfc服务是hdfs账号运行的,没有权限访问到root的id_rsa文件.更改为hdfs账号免密钥登录恢复正常. ...
- Hadoop 学习笔记 (十) hadoop2.2.0 生产环境部署 HDFS HA Federation 含Yarn部署
其他的配置跟HDFS-HA部署方式完全一样.但JournalNOde的配置不一样>hadoop-cluster1中的nn1和nn2和hadoop-cluster2中的nn3和nn4可以公用同样的 ...
- Hadoop 学习笔记 (九) hadoop2.2.0 生产环境部署 HDFS HA部署方法
step1:将安装包hadoop-2.2.0.tar.gz存放到某一个目录下,并解压 step2:修改解压后的目录中的文件夹/etc/hadoop下的xml配置文件(如果文件不存在,则自己创建) 包括 ...
随机推荐
- C#面向对象几组关键字的详解(this,base,dynamic,var,const,readonly,is,as)
× 目录 [1]this和base的区别 [2]var和dynamic的区别 [3]const和readonly的区别 [4]is和as的区别 这几个关键字,在用法上有许多相似之处.这里主要看看细节之 ...
- 【Troubleshooting 】Outlook 客户端无法显示电子邮件图像
出于安全原因,Outlook 2013/2016不会在电子邮件中显示图像,但您可以右键单击图像并选择" 下载图片 "选项.我最近注意Outlook停止显示图像,并且没有下载图像的选 ...
- 笨办法学Python(三十四)
习题 34: 访问列表的元素 列表的用处很大,但只有你能访问里边的内容时它才能发挥出作用来.你已经学会了按顺序读出列表的内容,但如果你要得到第 5 个元素该怎么办呢?你需要知道如何访问列表中的元素.访 ...
- SAP Fiori里的List是如何做到懒加载Lazy load的
今天一同事问我这个问题:S/4HANA Fiori应用里的列表,一旦Scroll到底部就会自动向后台发起新的请求把更多的数据读取到前台显示. 以Product Master这个应用为例,我点击搜索之后 ...
- IOS 封装View的fram(X Y W H )
@interface UIView (Extension) @property (nonatomic, assign) CGFloat x; @property (nonatomic, assign) ...
- CRSF在ASP.NET CORE MVC 的处理方式
https://www.cnblogs.com/catcher1994/p/6720212.html
- 重设SVN 的GNOME keyring [(null)] 的密码
在ubuntu里如果改了登录密码,那么在使用svn是会要求GNOME keyring [(null)] 的密码: 去掉这个只需:rm -f ~/.gnome2/keyrings/login.keyri ...
- vue 城市搜索组件
1.实现大致是如下效果 2.搜索组件的页面结构 <template> <div> <div class="search"> ...
- 关于新项目上传远程库报错 non-fast-forward
已有项目上传远程库会报错 non-fast-forward 首先使用命令行 git pull origin master --allow-unrelated-histories 之所以使用这个命令,是 ...
- 转 IOS7开发错误收集
转自:http://blog.csdn.net/smallsky_keke/article/details/16117653 1. fatal error: file '/Applications/X ...