欢迎光临
我们一直在努力

如何搭建一个高可用的Hadoop集群

 

首先将Hadoop2.5.2和zookeeper-3.4.6,通过XFTP上传到其中一台虚拟机上,然后用scp命令分别传到其他虚拟机,搭建集群的最小数量建议是4台,每个虚拟机的内存不要低于1G,建议每个虚拟机2G内存。

NN DN ZK ZKFC JN RM NM(任务管理)
code1 Y Y Y
code2 Y Y Y Y Y Y Y
code3 Y Y Y Y
code4 Y Y Y

上表是本次搭建集群的方案。OK,那么更加以上方案开始搭建高可用集群。

首先分别解压四个虚拟机的Hadoop2.5.2.tar.gz和zookeeper-3.4.6.tar.gz,选择其中一个虚拟机开始配置:

首先修改Hadoop2.5.2的配置文件 hadoop2.5.2/etc/hadoop/下面的

core-site.xml

hadoop-env.sh

hdfs-site.xml

mapred-site.xml

yarn-site.xml

slaves

该配置下需要修改上面列出的6个配置文件,内容如下(官方文档也有):

core-site.xml

hadoop-env.sh

hdfs-site.xml

mapred-site.xml

yarn-site.xml

slaves

OK,到这里Hadoop的配置已经完毕,那么再来配置zookeeper的配置。

进入/root/zookeeper-3.4.6/conf 将zoo开头的配置文件改名为zoo.cfg,修改如下配置的地方:

在行末添加如下配置:

保存退出。

那么现在已经将所有的配置文件配置完毕,用scp命令分别发个其他虚拟机。在code1、code2、code3的/opt目录下新建zookeeper目录,进入目录后vi myid 创建一个名为myid的文件。输入对应的数值保存并退出。例如:

code1的虚拟机,那么myid的内容就是1,code2的虚拟机,myid的内容是2

到现在就可以进行集群的设置了!

步骤如下:

  1. 启动三个zookeeper,  命令: ./zkServer.sh start
  2. 启动三个journalnode , 命令./hadoop-daemon.sh start journalnode
  3. 在其中一个namenode格式化  ./hdfs namenode -format
  4. 启动已经格式化的namenode  ./hadoop-daemon.sh start namenode
  5. 在没有格式化的namenode上执行:./hdfs namenode -bootstrapStandby,完成后启动
  6. 在其中一个namenode上初始化zkfc,执行:./hdfs zkfc -formatZK
  7. 全名停止以上的所有节点:./stop-all.sh
  8. 启动所有集群:./start-all.sh。

搭建Hadoop高可用集群注意事项:

  • 每个虚拟机的时间尽量保持一致
  • 每个虚拟主机都配置hosts,并且内容一致
  • 每个虚拟主机都配置对应的环境变量
  • 配置集群时一定要关闭防火墙

那么Hadoop的高可用集群搭建好了,赶紧写个WordCount跑跑吧!

未经允许不得转载:李阳博客 » 如何搭建一个高可用的Hadoop集群

评论 抢沙发

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址