Hadoop-HA 高可用集群

本文详细介绍了Hadoop-HA高可用集群的架构和搭建过程,包括HDFS和YARN的HA集群配置。在HA集群中,Zookeeper负责监控和主备切换,确保业务连续性。当NameNode出现问题时,StandbyNameNode通过JournalNode进行日志同步以接管。在环境搭建部分,涵盖了CentOS、JDK、Zookeeper、Hadoop的安装配置,以及解决可能遇到的问题,如‘脑裂’保护机制。最后,展示了YARN集群的启动和ResourceManager的HA状态。
摘要由CSDN通过智能技术生成

Hadoop HA高可用集群

一、HA集群

HDFS HA集群 master\slave
YARN HA集群 master\slave

HA(High Available), 高可用性群集,是保证业务连续性的有效解决方案,避免了因为单点故障带来的风险,一般有两个或两个以上的节点,且分为活动节点及备用节点。通常把正在执行业务的称为活动节点,而作为活动节点的一个备份的则称为备用节点,各节点之间会传递心跳信息确认对方是否运行正常。当活动节点出现问题,导致正在运行的业务(任务)不能正常运行时,备用节点此时就会侦测到,并立即接续活动节点来执行业务。从而实现业务的不中断或短暂中断。

架构图

在这里插入图片描述

在HA集群中zookeeper 负责检测调动各个节点的运行和主备切换,HA中没有了SecondoryNameNode 取而代子的是一个StandbyNameNode 备机 在主机出现问题是进项切换 主备之间通过日志服务JournalNode 来进行日志同步保证数据一致

二、环境搭建

软件

  • CentOS-6.5 64 bit
  • jdk-8u181-linux-x64.rpm
  • hadoop-2.6.0.tar.gz
  • zookeeper-3.4.6.tar.gz

节点

node1 node2 node3
ActiveNameNode Y
StandbyNameNode Y
ResourceManager Y Y
DataNode Y Y Y
Zookeeper Y Y Y
JournalNode Y Y Y
ZkFailoverController Y Y
NodeManage Y Y Y
基础配置
  • 修改主机名
vi /etc/hostname
# 修改主机名
node1 
# 重启
reboot
  • 主机名和IP映射关系
vi /etc/hosts
##########################
127.0.0.1  localhost localhost.localdomain localhost4 localhost4.localdomain4
::1     localhost localhost.localdomain localhost6 localhost6.localdomain6
192.168.23.137 node1
192.168.23.138 node2
192.168.23.139 node3
  • 关闭防火墙
systemctl stop firewalld
systemctl disable firewalld
  • SSH免密登陆
# 生成秘钥公钥
[root@nodeX ~]# ssh-keygen -t rsa
#将秘钥公钥交给各个节点
[root@nodeX ~]# ssh-copy-id node1
[root@nodeX ~]# ssh-copy-id node2
[root@nodeX ~]# ssh-copy-id node3
  • 同步时钟
[root@nodeX ~]# date -s '2018-12-1 20:06:00'
2018年 12月 01日 星期六 20:06:00 CST
[root@nodeX ~]# clock -w
[root@nodeX ~]# date
2018年 12月 01日 星期六 20:06:09 CST
  • 安装JDK并配置环境变量
[root@nodeX ~]# rpm -ivh jdk-8u181-linux-x64.rpm
[root@nodeX ~]# vi .bashrc
JAVA_HOME=/usr/java/latest
CLASSPATH=.
PATH=$PATH:$JAVA_HOME/bin
export JAVA_HOME
export CLASSPATH
export PATH
[root@nodeX ~]# source .bashrc
  • 安装ZooKeeper集群并启动
[root@nodeX ~]# tar -zxf zookeeper-3.4.6.tar.gz -C /usr/
[root@nodeX ~]# vi /usr/zookeeper-3.4.6/conf/zoo.cfg
tickTime=2000
dataDir=/root/zkdata
clientPort=2181
initLimit=5
syncLimit=2
server.1=node1:2887:3887
server
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值