Hadoop之旅(7)— HDFS HA Zookeeper自动故障转移

大数据 | HDFS 如何实现故障自动转移 为什么需要自动故障转移 在 HDFS 2.x 集群的 HA 模式下通常会有两个 NameNode 用来进行记录元数据,其中一个是主节点(Active),另外一个是备节点(Standby)。主备之间的数据同步通过 JournalNode 节点来充当中介,从而完成了主备节点之间数据的最终一致性。 当 NameNode 的主节点宕机后,通过命令可以切换到它的备节点成为主节点,使用命令进行切换需要人工的参与,虽然这样可以解决HDFS高可用的问题,但是这样的切换还是比较繁琐... 阅读详情

1、HDFS HA Zookeeper自动故障转移的需求

     在 HDFS 集群下,我们知道也只有单个 NameNode 节点,虽然是集群但是也会有单节点故障等事故。所以需要一个协调者帮助我们遇到故障时及时帮助我们切换可用的 NameNode 节点。这个就是我们的需求、如果我们不需要ZK的话、搭建的HA需要我们手动切换,这是不可行的。所以我们需要 zookeeper安装与配置教程。


集群规划:



前提条件:
环境:三台虚拟机、三个zk节点(集群模式)
启动zk

2、HDFS HA配置文件


2.1、core-site.xml文件

	<property>
		<name>fs.defaultFS</name>
		<value>hdfs://ns1</value>
	</property>
	
	
	<property>
        <name>hadoop.tmp.dir</name>
        <value>/usr/local/chenzhengyou/hadoop/cluster/data/tmp</value>
    </property>
	
	<!--垃圾回收箱的时间-->
	<property>
		<name>fs.trash.interval</name>
		<value>640800</value>
	</property>

	<!--zookeeper-->
	<property>
		<name>ha.zookeeper.quorum</name>
		<value>czy-1:2181,czy-2:2181,czy-3:2181</value>
	</property>


2.2、hdfs-site.xml文件
<!-- 两个NameNode -->
	<property>
		<name>dfs.nameservices</name>
		<value>ns1</value>
	</property>
	<property>
		<name>dfs.ha.namenodes.ns1</name>
		<value>nn1,nn2</value>
	</property>
	
	<!-- #####################NameNode RPC ADDRESS######################### -->
	<property>
		<name>dfs.namenode.rpc-address.ns1.nn1</name>
		<value>czy-1:8020</value>
	</property>
	<property>
		<name>dfs.namenode.rpc-address.ns1.nn2</name>
		<value>czy-2:8020</value>
	</property>
	
	
	<!-- #####################NameNode HTTP WEB ADDRESS######################### -->
	<property>
		<name>dfs.namenode.http-address.ns1.nn1</name>
		<value>czy-1:50070</value>
	</property>
	<property>
		<name>dfs.namenode.http-address.ns1.nn2</name>
		<value>czy-2:50070</value>
	</property>
	
	
	<!-- #####################NameNode SHARED EDITS ADDRESS######################### -->
	<property>
		<name>dfs.namenode.shared.edits.dir</name>
		<value>qjournal://czy-1:8485;czy-2:8485;czy-3:8485/ns1</value>
	</property>
	<property>
		<name>dfs.journalnode.edits.dir</name>
		<value>/usr/local/chenzhengyou/hadoop/cluster/data/tmp/dfs/jn</value>
	</property>
	
	
	<!-- #################### HDFS PROXY client ######################### -->	
	<property>
		<name>dfs.client.failover.proxy.provider.ns1</name>
		<value>org.apache.hadoop.hdfs.server.namenode.ha.ConfiguredFailoverProxyProvider</value>
	</property>	
	
	
	<!-- ##################### NameNodes FENCE 隔离 ######################### -->	
	<property>
		<name>dfs.ha.fencing.methods</name>
		<value>sshfence</value>
	</property>
	<!--注意:两个NameNode之间能够ssh无密码登录-->
	<property>
		<name>dfs.ha.fencing.ssh.private-key-files</name>
		<value>/root/.ssh/id_rsa</value>
	</property>
	
	
	<!-- #####################  automatic failover ######################### -->		
	<property>
		<name>dfs.ha.automatic-failover.enabled</name>
		<value>true</value>
	</property>
	
	<!--权限-->
	<property>
		<name>dfs.permissions</name>
		<value>false</value>
    </property>


2.3、slaves文件(三台机器的主机名)
czy-1
czy-2
czy-3

2.4、yarn-site.xml文件
<!--主机2 -ResourceManager -->
	<property>
        <name>yarn.resourcemanager.hostname</name>
        <value>czy-2</value>
    </property>
	
    <property>
        <name>yarn.nodemanager.aux-services</name>
        <value>mapreduce_shuffle</value>
    </property>
	
	<!-- ################NodeManager Resouce#################### -->
	
	<!--内存-->
	<property>
        <name>yarn.nodemanager.resource.memory-mb</name>
        <value>4096</value>
    </property>
	<!--核-->
	<property>
        <name>yarn.nodemanager.resource.cpu-vcores</name>
        <value>4</value>
    </property>
    <property>
        <name>yarn.log-aggregation-enable</name>
        <value>true</value>
    </property>
	<!--收回存活时间-->
	<property>
        <name>yarn.log-aggregation.retain-seconds</name>
        <value>640800</value>
    </property>



3、格式化 ZKFC

hdfs zkfc -formatZK 


4、启动 NameNode、DataNode、nodemanager、resourcemanager等

[root@czy-1 hadoop-2.5.0]# sbin/start-all.sh 



5、启动界面




启动 czy-1 主机是 active 节点、czy-2 主机是 standby 节点。

我们现在把 czy-1 主机上的 namenode   kill 


界面瞬间变化(瞬间的切换就降低影响)









验证Zookeeper不可用情况下,对HDFS读写功能无影响 验证目标:确认ZK服务不可用情况下,HDFS读写功能是否受影响 验证结论:ZK不可用情况下,HDFS读写功能不受影响 验证方法: 停ZK服务前,验证HDFS读写 停ZK服务后,验证HDFS读写   验证环境 ZK实例: 10.237.54.239 10.237.49.23 10.237.49.148 10.237.54.244 10.237.49.121   Nameno... 阅读详情

相关推荐

配置Hadoop可高用集群文件

1、hadoop集群主要的配置文件 2、在core-site.xml中添加环境配置 切换到Hadoop目录:cd /export/servers/hadoop/etc/hadoop/ <configuration> <!--指定HDFS的nameservice为ns1 --> <property> <name>fs.defaultFS</name> <value>hdfs://n...

m0_50631783的博客 287

Hadoop高可用集群搭建

一、集群节点分布。 三个服务器组成一个Zookeeper集群。node-01和node-02作为集群的NameNode,需要运行ZKFC来监控NameNode的健康状态。 二、hadoop高可用集群 (1)先搭建普通的hadoop集群。 (2)修改core-site.xml文件。 该文件是Hadoop的核心配置文件,配置HDFS地址、端口号,以及临时文件 目录。打开该配置文件,添加如下配置内容。 zookeeper地址就是你的三台主机名 cd /export/...

m0_50744317的博客 4297

一幅长文细学华为MRS大数据开发(二)——HDFS分布式文件系统和ZooKeeper

HDFS和Zookeeper

弄鹊 2932

HADOOP高可用机制

1 Hadoop的HA机制 前言:正式引入HA机制是从hadoop2.0开始,之前的版本中没有HA机制 1.1 HA的运作机制 (1)hadoop-HA集群运作机制介绍 所谓HA,即高可用(7*24小时不中断服务) 实现高可用最关键的是消除单点故障 hadoop-ha严格来说应该分成各个组件的HA机制——HDFS的HA、YARN的HA (2)HDFS的HA机制详解 通过双namenode消除单点故障 双namenode协调工作的要点: A、元数据管理方式需要改变: ...

woaini886353的博客 1355

集群的高可用性----自动故障转移

自动容灾 当状态为Active的Namenode主机发生故障时,HDFS进行自动故障转移,让状态为Standby的Namenode主机转成状态为Active的Namenode进行工作。

WQY992的博客 2038

Hadoop HA配置与Zookeeper及HBase集成实战

随着大数据处理需求的日益增长,Hadoop作为业界标准的分布式存储和处理框架,其高可用(HA)配置变得至关重要。Hadoop 2.6.0通过引入NameNode HA功能,极大提升了系统的稳定性和容错能力。本章节将为读者提供一个高可用配置的概览,让读者对后续章节的深入讲解有一个整体的认识。首先,我们将对Hadoop 2.6.0中的高可用机制进行简要介绍,包括其架构的工作原理和核心组件的配置。接着,将详细分解配置步骤,确保读者能按照标准流程完成HA环境的搭建。

weixin_32999557的博客 1263

HDFS HA 高可用搭建

HDFS HA 搭建 目录HDFS HA 搭建一、搭建高可用集群1、准备安装环境2、修改集群环境3、修改配置文件4、拷贝分发软件5、修改环境变量6、首先启动Zookeeper7、启动JournalNode8、格式化NameNode9、关闭集群10、重启测试集群二、访问Hadoop集群1、Java访问2、Idea访问附录:配置文件详解1、core-site.xml2、hdfs-site.xml 一、搭建高可用集群 NameNode-1 NameNode-2 DataNode Zookeeper ZK

忄凝^的博客 837

DELL服务器BIOS下配置RAID阵列

dell服务器配置raid阵列

weixin_58250887的博客 1万+

ZooKeeper FailoverController(ZK故障转移控制器)原理

ZooKeeper FailoverController(ZK故障转移控制器)原理 @Date : 2017-12-20 @Author : Spinach | GHB @Link : http://blog.csdn.net/bocai8058 概述 本文基于官方ZK Failover Controller Design文档的。 ZooKeeper(

GSpinach的博客 6119

【机器学习入门】1.4 吃透这些基本术语,才算真正入门

本文通过"挑西瓜"的生活案例,形象解释了机器学习的基本术语。样本对应单个西瓜,特征如色泽、根蒂等是观察维度,特征值是其具体表现,标签是西瓜的好坏判断。数据集是样本集合,特征向量是样本的数学表达,特征空间是所有可能的样本组合。文章强调数据集需划分为训练集、验证集和测试集,以评估模型的泛化能力。最后整理了术语对照表,并解答了常见问题。这些基础概念是理解机器学习的关键,建议读者重点掌握。

国科大硕士在读,分享Python/GEE/Matlab/R专业代码实践,涵盖数据分析、算法开发与应用技巧等,以代码会友。 656

二阶高通滤波器硬件设计:5种RC到有源方案对比与选型

在传感器前端和音频信号调理中,二阶高通滤波器是抑制直流偏移与低频干扰的关键模块。其设计核心围绕截止频率、品质因数Q、增益与噪声四个指标展开,其中Q值决定滤波器在转折频率附近的响应形状,如Butterworth最大平坦响应需Q=0.707。从纯无源RC电路到引入运放的有源拓扑,演变逻辑在于解决负载效应、提供增益并借助反馈提升Q值。实际工程中,RC级联、VCVS(Sallen-Key)、状态变量及回转器模拟电感等方案各有适用场景:RC电路简单但Q值受限,Sallen-Key单运放即可实现高Q,状态变量适合Q值独

weixin_32770423的博客 105

Hadoop全分布式安装

 Hadoop的全分布式安装       zookeeper管理节点   Journalnode实时备份   FailoverControll类实现 切换namenode的状态 active  standby     需要配置的信息(3台云主机)   【*练习过程中关闭防火墙,里面用到的zookeeper没写配置,到博客里面找找*】   step1:配置主机名 /etc/hosts     ...

Enter 228

1.用Python写了一个进销存管理的软件~需求分析&界面设计&数据库设计&技术路线选择~

前端也打算用Python来写,查了很多的python库,大家比较推荐的是wxpython和QPython,之前接触过一点点的QT,确实非常强大,但是库比较重量级,自己写的这个东西明显配不上QT,又详细调研了一下wxpython,就是它了!

pepper_lihui的专栏 4323

Hadoop HA 高可用之旅

Hadoop HA 高可用之旅概述HDFS-HA 集群搭建HDFS-HA 核心问题HDFS-HA 手动模式环境准备规划集群配置 HDFS-HA 集群启动 HDFS-HA 集群HDFS-HA 自动模式HDFS-HA 自动故障转移工作机制HDFS-HA 自动故障转移的集群规划配置 HDFS-HA 自动故障转移解决 NN 连接不上 JN 的问题YARN-HA 配置YARN-HA 工作机制配置 YARN-HA 集群环境准备规划集群核心问题具体配置启动 YARNHADOOP HA 的最终规划 概述 所谓 HA(Hig

记录点点滴滴 1353

19、CATIA V5:参数化建模与零件目录创建全解析

本文详细解析了在CATIA V5中通过设计表实现参数化建模及零件目录创建的完整流程。以支撑块和钩形夹为例,介绍了参数识别、设计表创建与关联、配置管理以及零件目录的构建方法。同时,提供了实际操作建议和注意事项,帮助设计师高效创建和管理零件族,提升设计效率和质量。

raspberrypi5的博客 449

S7-1200 PN与G120变频器控制起停及调速PROFINET实现详解

S7-1200 PLC与G120变频器通过PROFINET通信可实现高效、实时的电机控制。2. 《S7-1200与G120 CU250S-2PN的PROFINET通讯指南》- 控制器:S7-1200 PLC (如1214C DC/DC/DC)- 变频器:G120 CU250S-2PN (带PROFINET接口)- 输出区(PZD1-2):控制字(16位)、速度设定值(16位)- 输入区(PZD1-2):状态字(16位)、实际速度值(16位)- P922=1:选择报文类型为"标准报文1 (PZD2/2)"

电工 1871

【填坑之旅-hadoop-06】hadoop2.10.1 (基于2.4.1)zookeeper集群 HDFS HA 高可用 集群规划 zkfc(federation ) qjournalNode

hadoop2.0已经发布了稳定版本了,增加了很多特性,比如HDFS HA、YARN等。 最新的hadoop-2.4.1又增加了YARN HA 注意:apache提供的hadoop-2.4.1的安装包是在32位操作系统编译的,因为hadoop依赖一些C++的本地库, 所以如果在64位的操作上安装hadoop-2.4.1就需要重新在64操作系统上重新编译 (建议第一次安装用32位的系统,我将编译好的64位的也上传到群共享里了,如果有兴趣的可以自己编译一下) 前期准备就不详细说了,课堂上都介绍了 1.修改Lin

alwarse 844

具身智能(40):主流 VLA 模型π₀

摘要: π₀是首款专为机器人设计的VLA(视觉-语言-动作)端到端基础模型,通过双阶段训练实现“感知-决策-执行”闭环。其创新点包括:1)FlowMatching技术实现连续平滑动作控制(精度0.3°);2)结合VLM预训练与多机器人实操数据,零样本任务完成率达76.4%,远超同类模型;3)支持模糊指令理解与动态场景适应(如遮挡识别)。开源版本涵盖不同规模模型,适用于工业装配、服务机器人等场景,在延迟(213ms)和稳定性(92%自主恢复率)上显著领先OpenVLA等竞品。

码农17年的博客 513

打怪升级之小白的大数据之旅(五十八)<HadoopHA>

打怪升级之小白的大数据之旅(五十八) HadoopHA高可用 上次回顾 上一章,我们学习了Hadoop扩展内容–压缩的相关知识,本章为大家带来Hadoop的另一个扩展内容HA高可用技术,有了它,我们就再也不怕HDFS的NameNode泵机导致数据丢失了… HA概述 HA的意思就是高可用,即7*24小时不中断服务,有了它996什么的弱爆了 实现高可用最关键的策略是消除单点故障。HA严格来说应该分成各个组件的HA机制:HDFS的HA和YARN的HA 为什么要使用HA 还记得前面介绍HDFS的时候,提到过N

不断努力的数据汪 292

深水区探秘:小红书App x-s参数逆向与高并发爬虫实战(2026版)

在移动互联网的碎片化时代,小红书凭借其“社区+电商”的独特模式,积累了超过3亿月活用户。其内容生态覆盖了从美妆、穿搭到旅行、数码等几乎所有垂直领域。对于数据分析师、市场研究员以及AI算法工程师而言,小红书平台蕴含的价值是巨大的——无论是热门趋势洞察、KOL画像分析,还是多模态图文数据的采集。然而,想要高效、稳定地获取小红书App的公开数据,却并非易事。与Web端相比,小红书App的防护体系堪称“铜墙铁壁”。其核心的反爬机制建立在动态混淆的加密参数之上,尤其是请求头中的X-SX-T以及X-S-Common。

2201_76125261的博客 270

OV9734 DATASHEET,完整规格书

OV9734完整规格书,包括电气参数,尺寸规格,寄存器配置表等

Hadoop+Spark 之旅—脚踏实地、仰望星空(教程目录)

Hadoop是一个由Apache基金会所开发的分布式系统基础架构。用户可以在不了解分布式底层细节的情况下,开发分布式程序。充分利用集群的威力进行高速运算和存储。Hadoop实现了一个分布式文件系统

用心做每件事 2080

Devexpress16.2.6破解工具

Devexpress16.2.6破解工具Devexpress16.2.6破解工具Devexpress16.2.6破解工具Devexpress16.2.6破解工具

十分钟弄懂Hbase基础概念

row key(行键)必须是全表唯一的,更新row key是覆盖。插入数据需要指定row key。 扩展: RowKey是会按字典序排序的,RowKey相近的行总是存储在相近的位置,如果大量读写操作总是集中在某个RowKey范围就会造成Reginon热点,这会导致某部分数据会集中在某台HRegionServer上存储以及查询,而其他的HRegionServer却很空闲。打散RowKey:加盐+哈希、反转固定格式数值

RuiHao-He的博客 1606

复分析 阿尔福斯(Ahlfors) 第三版答案 英文

答案分为十章,有部分习题没有答案,全英文复分析阿尔福斯(Ahlfors) 第三版答案

Hadoop学习(十一)——hadoop下的HA机制

笔者是一个痴迷于挖掘数据中的价值的学习人,希望在平日的工作学习中,挖掘数据的价值,找寻数据的秘密,笔者认为,数据的价值不仅仅只体现在企业中,个人也可以体会到数据的魅力,用技术力量探索行为密码,让大数据助跑每一个人,欢迎直筒们关注我的公众号,大家一起讨论数据中的那些有趣的事情。 我的公众号为:livandata

livan1234的博客 980

搭建一个Hadoop集群 HDFS-HA (Zookeeper自动故障转移)

前言 之前已经搭建过一个hadoop集群(搭建方法),在这个集群的基础上进行改进,引用Zookeeper来进行自动故障转移! 搭建目标 HA简介 所谓HA(High Available),即高可用(7*24小时不中断服务)。 ​ Hadoop集群有HDFS和YARN!Hadoop的HA指HDFS和YARN必须保证可用性强(不能轻易故障,保持24h可用)! ​ 以HDFS为例: ​ 必...

Mr.Zheng的博客 3080

hadoop(10)---hdfs配置文件详解

以下只是简单的对hdfs(hdfs.site.xml)配置文件做一个简单的说明。 <configuration><property><!-- 为namenode集群定义一个services name --><name>dfs.nameservices</name><value>ns1</value></pr...

weixin_34414196的博客 1306
上一篇: Hadoop之旅(5)— MapReduce Java API案例实战
下一篇: Hadoop+Spark 之旅—脚踏实地、仰望星空(教程目录)
AndyChen9988
博客等级 码龄11年 276粉丝 89原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值