官网配置地址:

HDFS HA : http://hadoop.apache.org/docs/current/hadoop-project-dist/hadoop-hdfs/HDFSHighAvailabilityWithQJM.html

ResourceManager HA : http://hadoop.apache.org/docs/current/hadoop-yarn/hadoop-yarn-site/ResourceManagerHA.html

安装jdk

关闭防火墙

hadoop自动HA借助于zookeeper实现,整体架构如下:

m2和m3作为NameNode节点应该配置与其他所有节点的SSH无密码登录

m4和m5应该与m6、m7、m8配置SSH无密码登录

core-site.xml具体配置

  1. <?xml version="1.0" encoding="UTF-8"?>
  2. <?xml-stylesheet type="text/xsl" href="configuration.xsl"?>
  3. <configuration>
  4. <property>
  5. <name>fs.defaultFS</name>
  6. <value>hdfs://cluster</value>
  7. </property>
  8.  
  9. <property>
  10. <name>hadoop.tmp.dir</name>
  11. <value>/home/hadoop/app/hadoop-2.7.3/tmp/data</value>
  12. </property>
  13.  
  14. <property>
  15. <name>ha.zookeeper.quorum</name>
  16. <value>m6:2181,m7:2181,m8:2181</value>
  17. </property>
  18. </configuration>

hdfs-site.xml具体配置

  1. <?xml version="1.0" encoding="UTF-8"?>
  2. <?xml-stylesheet type="text/xsl" href="configuration.xsl"?>
  3.  
  4. <configuration>
  5. <property>
  6. <name>dfs.nameservices</name>
  7. <value>cluster</value>
  8. </property>
  9.  
  10. <property>
  11. <name>dfs.ha.namenodes.cluster</name>
  12. <value>nn1,nn2</value>
  13. </property>
  14.  
  15. <property>
  16. <name>dfs.namenode.rpc-address.cluster.nn1</name>
  17. <value>m2:9820</value>
  18. </property>
  19. <property>
  20. <name>dfs.namenode.rpc-address.cluster.nn2</name>
  21. <value>m3:9820</value>
  22. </property>
  23.  
  24. <property>
  25. <name>dfs.namenode.http-address.cluster.nn1</name>
  26. <value>m2:9870</value>
  27. </property>
  28. <property>
  29. <name>dfs.namenode.http-address.cluster.nn2</name>
  30. <value>m3:9870</value>
  31. </property>
  32.  
  33. <property>
  34. <name>dfs.namenode.shared.edits.dir</name>
  35. <value>qjournal://m6:8485;m7:8485;m8:8485;/cluster</value>
  36. </property>
  37.  
  38. <property>
  39. <name>dfs.client.failover.proxy.provider.cluster</name>
  40. <value>org.apache.hadoop.hdfs.server.namenode.ha.ConfiguredFailoverProxyProvider</value>
  41. </property>
  42.  
  43. <property>
  44. <name>dfs.ha.fencing.methods</name>
  45. <value>
  46. sshfence
  47. shell(shell(/bin/true))
  48. </value>
  49. </property>
  50.  
  51. <property>
  52. <name>dfs.ha.fencing.ssh.private-key-files</name>
  53. <value>/home/hadoop/.ssh/id_rsa</value>
  54. </property>
  55.  
  56. <property>
  57. <name>dfs.journalnode.edits.dir</name>
  58. <value>/home/hadoop/app/hadoop-2.7.3/journalnode/data</value>
  59. </property>
  60.  
  61. <property>
  62. <name>dfs.replication</name>
  63. <value>3</value>
  64. </property>
  65.  
  66. <property>
  67. <name>dfs.ha.automatic-failover.enabled</name>
  68. <value>true</value>
  69. </property>
  70.  
  71. </configuration>

yarn-site.xml具体配置

  1. <?xml version="1.0"?>
  2.  
  3. <configuration>
  4.  
  5. <!-- Site specific YARN configuration properties -->
  6.  
  7. <property>
  8. <name>yarn.resourcemanager.ha.enabled</name>
  9. <value>true</value>
  10. </property>
  11. <property>
  12. <name>yarn.resourcemanager.cluster-id</name>
  13. <value>cluster</value>
  14. </property>
  15. <property>
  16. <name>yarn.resourcemanager.ha.rm-ids</name>
  17. <value>rm1,rm2</value>
  18. </property>
  19. <property>
  20. <name>yarn.resourcemanager.hostname.rm1</name>
  21. <value>m4</value>
  22. </property>
  23. <property>
  24. <name>yarn.resourcemanager.hostname.rm2</name>
  25. <value>m5</value>
  26. </property>
  27. <property>
  28. <name>yarn.resourcemanager.webapp.address.rm1</name>
  29. <value>m4:8088</value>
  30. </property>
  31. <property>
  32. <name>yarn.resourcemanager.webapp.address.rm2</name>
  33. <value>m5:8088</value>
  34. </property>
  35. <property>
  36. <name>yarn.resourcemanager.zk-address</name>
  37. <value>m6:2181,m7:2181,m8:2181</value>
  38. </property>
  39.  
  40. <property>
  41. <name>yarn.nodemanager.aux-services</name>
  42. <value>mapreduce_shuffle</value>
  43. </property>
  44.  
  45. </configuration>

mapred-site.xml具体配置

  1. <?xml version="1.0"?>
  2. <?xml-stylesheet type="text/xsl" href="configuration.xsl"?>
  3.  
  4. <configuration>
  5. <property>
  6. <name>mapreduce.framework.name</name>
  7. <value>yarn</value>
  8. </property>
  9. </configuration>

slaves具体配置

  1. m6
  2. m7
  3. m8

拷贝hadoop到m3、m4、m5、m6、m7、m8

  1. scp -r hadoop-2.7.3/ m3:/home/hadoop/app/
  2. scp -r hadoop-2.7.3/ m4:/home/hadoop/app/
  3. scp -r hadoop-2.7.3/ m5:/home/hadoop/app/
  4. scp -r hadoop-2.7.3/ m6:/home/hadoop/app/
  5. scp -r hadoop-2.7.3/ m7:/home/hadoop/app/
  6. scp -r hadoop-2.7.3/ m8:/home/hadoop/app/ 

zookeeper配置zoo.cfg(m6 m7 m8) 

  1. # The number of milliseconds of each tick
  2. tickTime=2000
  3. # The number of ticks that the initial
  4. # synchronization phase can take
  5. initLimit=10
  6. # The number of ticks that can pass between
  7. # sending a request and getting an acknowledgement
  8. syncLimit=5
  9. # the directory where the snapshot is stored.
  10. dataDir=/home/hadoop/app/zookeeper-3.3.6/data
  11. # the port at which the clients will connect
  12. clientPort=2181
  13. server.1=m6:2888:3888
  14. server.2=m7:2888:3888
  15. server.3=m8:2888:3888

配置好后的启动顺序:

1、启动zookeeper   ./bin/zkServer.sh start

2、分别在m6  m7  m8上启动journalnode, ./hadoop-daemon.sh start journalnode只有第一次才需要手动启动journalnode,以后启动hdfs的时候会自动启动journalnode

3、在m2上格式化namenode,格式化成功后拷贝元数据到m3节点上

4、格式化zkfc  ./bin/hdfs zkfc -formatZK  只需要一次

5、启动hdfs

6、启动yarn

验证:

通过kill命令杀死namenode进程观察namenode节点是否会自动切换

yarn rmadmin -getServiceState rm1查看那个resourceManager是active那个是standby

单独启动namenode: ./sbin/hadoop-daemon.sh start namenode

hadoop NameNode HA 和ResouceManager HA的更多相关文章

  1. 通过tarball形式安装HBASE Cluster(CDH5.0.2)——Hadoop NameNode HA 切换引起的Hbase错误,以及Hbase如何基于NameNode的HA进行配置

    通过tarball形式安装HBASE Cluster(CDH5.0.2)——Hadoop NameNode HA 切换引起的Hbase错误,以及Hbase如何基于NameNode的HA进行配置 配置H ...

  2. hadoop namenode HA集群搭建

    hadoop集群搭建(namenode是单点的)  http://www.cnblogs.com/kisf/p/7456290.html HA集群需要zk, zk搭建:http://www.cnblo ...

  3. Hadoop搭建高可用的HA集群

    一.工具准备 1.7台虚拟机(至少需要3台),本次搭建以7台为例,配好ip,关闭防火墙,修改主机名和IP的映射关系(/etc/hosts),关闭防火墙 2.安装JDK,配置环境变量 二.集群规划: 集 ...

  4. 虚拟机centos7系统下安装hadoop ha和yarn ha(详细)

    一:基础环境准备 (一):虚拟机新建五个centos7系统(复制文件夹的方式) (二):角色分配 (三)按照角色分配表配置 (1)更改主机ip(自行查找),如果只是个人搭建玩一玩,可选择安装cento ...

  5. 【Hadoop学习之四】HDFS HA搭建(QJM)

    环境 虚拟机:VMware 10 Linux版本:CentOS-6.5-x86_64 客户端:Xshell4 FTP:Xftp4 jdk8 hadoop-3.1.1 由于NameNode对于整个HDF ...

  6. 【Hadoop 分布式部署 十:配置HDFS 的HA、启动HA中的各个守护进程】

    官方参考 配置 地址  :http://hadoop.apache.org/docs/r2.5.2/hadoop-project-dist/hadoop-hdfs/HDFSHighAvailabili ...

  7. Apache版本的Hadoop HA集群启动详细步骤【包括Zookeeper、HDFS HA、YARN HA、HBase HA】(图文详解)

    不多说,直接上干货! 1.先每台机器的zookeeper启动(bigdata-pro01.kfk.com.bigdata-pro02.kfk.com.bigdata-pro03.kfk.com) 2. ...

  8. hadoop 2.0安装及HA配置简述

    一.单机模式 a.配置本机到本机的免密登录 b.解压hadoop压缩包,修改hadoop.env.sh中的JAVA_HOME c.修改core-site.xml <configuration&g ...

  9. Hadoop集群搭建(非HA)

    1.准备Linux环境 1.0先将虚拟机的网络模式选为NAT 1.1修改主机名 vi /etc/sysconfig/network NETWORKING=yes HOSTNAME=itcast ### ...

随机推荐

  1. Scrum会议4(Beta版本)

    组名:天天向上 组长:王森 组员:张政.张金生.林莉.胡丽娜 代码地址:HTTPS:https://git.coding.net/jx8zjs/llk.git SSH:git@git.coding.n ...

  2. metasploit--payload模块信息

    Name                                             Disclosure Date  Rank    Description ----           ...

  3. windows上在linux客户端上传小文件lrzsz

    yum install lrzsz 即可 rz上传,会打开本地图形化界面直接上传 基于centos系统,其他系统请找对应 的源码包编译 一下

  4. mac下限速

    sudo ipfw pipe 1 config bw 15KByte/s #设置带宽 sudo ipfw add 1 pipe 1 src-port 80 sudo ipfw add 1 pipe 1 ...

  5. php 使用GD库上传图片以及创建缩略图

    php 使用GD库上传图片以及创建缩略图   GD库是PHP进行图象操作一个很强大的库. 先在php.ini里增加一行引用:extension=php_gd2.dll 重启apache.做一个测试页 ...

  6. 20145235 《Java程序设计》第5周学习总结

    教材学习内容总结 8.1语法与继承架构 try和catch语法,如果被try{}的语句出现了catch()的问题就执行catch{}的语句. 错误的对象都继承于java.long.Throwable, ...

  7. VC更换图标文件

    步骤 1. 删除图标 2. 在VC中移除图标 3. 用新图标替换原来图标 4. 添加图标到VC 5. 重新编译 参考文档 http://www.cnblogs.com/BloodAndBone/arc ...

  8. nrf51822裸机教程-硬件timer

    该讲介绍51822的Timer/Counter模块工作在timer模式下(定时器模式,还可以工作为计数器模式) 如何操作 51822的Timer/Counter结构如下图所示 Timer模块从PCLK ...

  9. 【Android开发学习笔记】【第五课】Activity的生命周期-上

    今天学习Activity当中的七个生命周期函数: 首先得说一个事情,就是在代码当中如果加入了 System.out.println(" ------");之后,如何查看这里面的输出 ...

  10. 原因是未找到“sgen.exe”,或未安装 .NET Framework SDK v2.0

    visual studio编译出现错误:错误 2 任务失败,原因是未找到“sgen.exe”,或未安装 .NET Framework SDK v2.0.该任务正在注册表项 HKEY_LOCAL_MAC ...