hadoop HA高可用(high available)部署一——HDFS集群配置

本文详细介绍了如何配置Hadoop HDFS的高可用集群,包括设置Zookeeper集群、配置Hadoop核心及HDFS站点、启动JournalNode、格式化及启动NameNode,并实现了基于Zookeeper的自动故障切换机制。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

目前状况:namenode是整个hdfs系统的核心,集群中只存在一个namenode节点,如果namenode挂掉,整个系统将进入瘫痪状态,目前我的集群namenode、ResourceManager、secondNamenode分配在三台服务器上
为了防止单点namenode挂掉导致整个系统瘫痪,传统的做法就是做namenode的备份节点,定期备份namenode的数据,恢复时间长,反应迟钝。
用心跳侦测的方式将namenode的主节点状态为active,备份节点的状态为standby,以心跳侦测的方式判断主节点是否存活
那么就会出现一个问题
如果仅主备节点的失去连接,主节点和备份节点互相认为对方挂掉,那么备份节点的状态会转变成active,那么集群中就会出现两个namenode,datanode在写入数据时就不知道往哪个namenode中写,最终的结果就是整个集群处于停滞状态,那么就会产生split-brain的问题
split-brian的原意为脑裂,就是精神分裂
为了避免split-brian的问题,hadoop引入fence(隔离)机制,即同一时刻只能有一台服务器对外响应,下面是相关配置信息

配置zookeeper
将三个服务器均需要部署zookeeper
传入zookeeper文件包
在zookeeper包下创建zkData文件夹
在conf文件夹下的zoo-sample.cfg更名为zoo.cfg
将dataDir变量配置成$zookeeper_HOME/zkData
    配置集群各节点信息:
                        server.1=host1:2888:3888
                        server.2=host2:2888:3888
                        server.3=host3:2888:3888
                        (server后数字表示节点编号,host*表示节点名或节点对应IP地址)
scp -r $zookeeper_HOME host*:/...
将配置好的zookeeper传到所有节点
集群所有机器开启zookeeper:$zookeeper_HOME/bin/zkServer start

配置hadoop
配置core-site.xml
将原来的单点namenode配置改为集群的

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值