hadoop HA高可用

本文介绍了如何搭建Hadoop HA高可用集群,以解决单点故障问题,确保7*24小时服务。通过Zookeeper进行健康状态检查和故障转移,环境包括3台CentOS6.10服务器,使用Hadoop2.7.2和Zookeeper3.0.4。详细步骤涵盖环境准备、配置修改、集群启动以及常见问题和注意事项。
摘要由CSDN通过智能技术生成

一、前言
所谓HadoopHA高可用集群就是要消灭单点故障问题,实现7 * 24小时无间断提供服务。
当然想到搭建高可用前提示会搭建hadoop的分布式,最起码也要熟练搭建伪分布式。
想要实现自动故障转移,需要借助Zookeeper来实现管理和检查节点的健康状态。也就是需要会搭建Zookeeper集群,本次搭建我就不在演示搭建zookeeper集群了,如果还不熟悉参考我之前的博客。https://blog.csdn.net/qq_44719527/article/details/104671380
如果伪分布式还不熟悉参考(包括修改主机名,修改hosts文件,解压)https://blog.csdn.net/qq_44719527/article/details/104560392
需要免密登录,详见https://blog.csdn.net/qq_44719527/article/details/104670797
二、搭建环境版本和环境说明
1.使用linuxCentOS6.10(三台)
2.hadoop2.7.2,jdk1.8.0_144
3.zookeeper3.0.4
4.Xshell5

三、搭建步骤
1.首先当然是上传压缩包,解压就不演示了。。。
2.关闭防火墙,修改静态ip,更改主机名,三台都需要修改。然后重启
3.更改/ect/hosts文件,三台都需要同样的配置
节点有几台就配几台的IP和主机名映射

192.168.25.134 hadoop102
192.168.25.135 hadoop103
192.168.25.136 hadoop104
1
2
3

4.保证zookeeper集群是启动没问题的,地址https://blog.csdn.net/qq_44719527/article/details/104671380

5.配置高可用的HDFS
(1)去修改core-site.xml

	<property>
		<name>fs.defaultFS</name>
    	<value>hdfs://mycluster</value>
	</property>

	<!-- 指定hadoop运行时产生文件的存储目录 -->
	<property>
		<name>hadoop.tmp.dir</name>
		<value>/opt/ha/hadoop-2.7.2/data/tmp</value>
	</property>
<!--zookeeper配置-->
<property>
  <name>ha.zookeeper.quorum</name>
  <value>hadoop102:2181,hadoop103:2181,hadoop104:2181</value>
</property>

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
(2)修改hdfs-site.xml,这里注意使用隔离机制时需要ssh无秘钥登录,我这里是root用户,你是什么用户,就写你的用户名。注意修改主机名与你自己的对应了。

dfs.replication 1 dfs.nameservices mycluster dfs.ha.namenodes.mycluster nn1,nn2 dfs.namenode.rpc-address.mycluster.nn1 hadoop102:9000 dfs.namenode.rpc-address.mycluster.nn2 hadoop103:9000
<!-- nn1的http通信地址 -->
<property>
	<name>dfs.namenode.http-address.mycluster.nn1</name>
	<value>hadoop102:50070</value>
</property>
<!-- nn2的http通信地址 -->
<property>
	<name>dfs.namenode.http-address.mycluster.nn2</name>
	<value>hadoop103:50070</value>
</property>
<!-- 指定NameNode元数据在JournalNode上的存放位置 -->
<property>
	<name>dfs.namenode.shared.edits.dir</name>
<value>qjournal://hadoop102:8485;hadoop103:8485;hadoop104:8485/mycluster</value>
</property>
<!-- 配置隔离机制,即同一时刻只能有一台服务器对外响应 -->
<property>
	<name>dfs.ha.fencing.methods</name>
	<value>sshfence</value>
</property>
<!-- 使用隔离机制时需要ssh无秘钥登录-->
<property>
	<name>dfs.ha.fencing.ssh.private-key-files</name>
	<value>/root/.ssh/id_rsa</value>
</property>
<!-- 声明journalnode服务器存储目录-->
<property>
	<name>dfs.journalnode.edits.dir</name>
	<value>/opt/ha/hadoop-2.7.2/data/jn</value>
</property>
<!-- 关闭权限检查-->
<property>
	<name>dfs.permissions.enable</name>
	<value>false</value>
</property>
<!-- 访问代理类:client,mycluster,active配置失败自动切换实现方式-->
<property>
	<name>dfs.client.failover.proxy.provider.myclust
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值