七、Hadoop 2.5.2+zookeeper高可用部署

来源:互联网 发布:代码行估算法 编辑:程序博客网 时间:2024/05/18 21:48

一、原理(四大要点)


1)保证元数据一致(edits

namenode   fsimage  edits

  aNFS

  bjournalnode

  czk

2)只有一台namenode对外提供服务(proxy

3)接受datanode的心跳

4)隔离

二、HDFS HA启动并测试

主机名

ip

配置

服务

Bigdata01.xxx.com

192.168.249.130

内存1g

Cpu 1

硬盘 10g

QuorumPeerMain

DataNode

DFSZKFailoverController

NameNode

JournalNode

Bigdata02.xxx.com

192.168.249.131

内存1g

Cpu 1

硬盘 10g

QuorumPeerMain

DataNode

DFSZKFailoverController

NameNode

JournalNode

Bigdata03.xxx.com

192.168.249.132

内存1g

Cpu 1

硬盘 10g

QuorumPeerMain

DataNode

JournalNode

Bigdata01.xxxx.com中配置:

Core-site.xml


hdfs-site.xml



hadoop分别拷贝到bigdata02bigdata03

$scp -r hadoop-2.5.2/ bigdata03.xxxx.com:/home/jit/app

按照以下步骤启动

启动服务

Step1 :启动Zookeeper 集群 bin/zkServer.sh start

在各个JournalNode节点上,输入以下命令启动journalnode服务:

       $ sbin/hadoop-daemon.sh start journalnode

Step2:[nn1]上,对其进行格式化,并启动:

       $ bin/hdfs namenode –format

初始化 HA Zookeeper中状态 bin/hdfs zkfc -formatZK

       $ sbin/hadoop-daemon.sh start namenode

在各个NameNode节点上启动DFSZK Failover Controller,先在那台机器启动,那个机器的NameNode就是Active NameNode

       sbin/hadoop-daemin.sh start zkfc

Step3:[nn2]上,同步nn1的元数据信息:

       $ bin/hdfs namenode -bootstrapStandby

Step4:启动[nn2]

       $ sbin/hadoop-daemon.sh start namenode

Step6:[nn1]上,启动所有datanode

       $ sbin/hadoop-daemons.sh start datanode

Bigdata01



Bigdata02

Bigdata03




Kill -9 bigdata01namenode

Bigdata02变为active


上传文件


三、ResouceManager Restart 功能及配置部署与测试

三台机器yarn-site.xml分配进行配置



进行yarn启动,并查看yarn的状态


Kill rm1



Rm2状态变为active

重启rm1后状态变为standy






主机名

ip

配置

服务

Bigdata01.xxxx.com

192.168.249.130

内存1g

Cpu 1

硬盘 10g

QuorumPeerMain

DataNode

DFSZKFailoverController

NameNode

JournalNode

Bigdata02.xxxx.com

192.168.249.131

内存1g

Cpu 1

硬盘 10g

QuorumPeerMain

DataNode

DFSZKFailoverController

NameNode

JournalNode

Bigdata03.xxxx.com

192.168.249.132

内存1g

Cpu 1

硬盘 10g

QuorumPeerMain

DataNode

JournalNode

Bigdata01.ibeifeng.com中配置:

0 0