`
jsh0401
  • 浏览: 10952 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

haddoop2.2.0的分布式安装(HA)

 
阅读更多
规划:
namenode:crxy1和crxy2
datanode:crxy3、crxy4、crxy5
journalnode:crxy1、crxy2、crxy3
resourcemanager:crxy1
nodemanager:crxy3、crxy4、crxy5

zookeeper:  crxy1,crxy2,crxy3

--------------------------------------------------

基础设置

---设置好静态ip

克隆虚拟机ifconfig发现只有eth1.没有eth0

1 编辑  /etc/udev/rules.d/70-persistent-net.rules
 注释掉包含eth0的行
 把包含“eth1”行的“eth1”修改成“eth0”
2 编辑 /etc/sysconfig/network-script/ifcfg-eth0
把其中的mac地址修改成虚拟机设置里的地址。

---关闭防火墙    chkconfig iptables off

---关闭selinux     vi /etc/sysconfig/selinux   SELINUX=disabled

---设置主机名,绑定主机名与ip
     vi /etc/sysconfig/network
      --HOSTNAME=crxy1
     vi /etc/hosts    
      --192.168.121.131     crxy1
      --192.168.121.132     crxy2
      --192.168.121.133     crxy3
      --192.168.121.134     crxy4
      --192.168.121.135     crxy5
       
---设置ssh无密码访问,crxy1和crxy2要互联
     ssh-keygen -t rsa
     ssh-copy-id crxy1
     ssh-copy-id crxy2
     ssh-copy-id crxy3
     ssh-copy-id crxy4
     ssh-copy-id crxy5

---用scp拷贝相同配置到其他机器

#!/bin/sh

for i in 1 2 3 4 5 6
do
     scp -rq /usr/local/jdk crxy$i:/usr/local
     ssh crxy$i "source /etc/profile"
done


修改配置文件(手工切换namenode方式)

1.1 配置文件(hadoop-env.sh、core-site.xml、hdfs-site.xml、yarn-site.xml、mapred-site.xml、slaves)
1.1.1 hadoop-env.sh
  export JAVA_HOME=/usr/local/jdk
1.1.2 core-site.xml

<property>
<name>fs.defaultFS</name>
<value>hdfs://cluster1</value>
</property>

<property>
<name>hadoop.tmp.dir</name>
<value>/usr/local/hadoop/tmp</value>
</property>

1.1.3 hdfs-site.xml

<property>
<name>dfs.replication</name>
<value>3</value>
</property>

<property>
<name>dfs.nameservices</name>
<value>cluster1</value>
</property>

<property>
<name>dfs.ha.namenodes.cluster1</name>
<value>crxy1,crxy2</value>
</property>

<property>
<name>dfs.namenode.rpc-address.cluster1.crxy1</name>
<value>crxy1:9000</value>
</property>

<property>
<name>dfs.namenode.http-address.cluster1.crxy1</name>
<value>crxy1:50070</value>
</property>

<property>
<name>dfs.namenode.rpc-address.cluster1.crxy2</name>
<value>crxy2:9000</value>
</property>

<property>
<name>dfs.namenode.http-address.cluster1.crxy2</name>
<value>crxy2:50070</value>
</property>

<property>
<name>dfs.ha.automatic-failover.enabled.cluster1</name>
<value>false</value>
</property>

<property>
<name>dfs.namenode.shared.edits.dir</name>
<value>qjournal://crxy1:8485;crxy2:8485;crxy3:8485/cluster1</value>
</property>

<property>
<name>dfs.journalnode.edits.dir</name>
<value>/usr/local/hadoop/tmp/journal</value>
</property>

<property>
<name>dfs.ha.fencing.methods</name>
<value>sshfence</value>
</property>

<property>
<name>dfs.ha.fencing.ssh.private-key-files</name>
<value>/root/.ssh/id_rsa</value>
</property>

<property>
<name>dfs.client.failover.proxy.provider.cluster1</name>
<value>org.apache.hadoop.hdfs.server.namenode.ha.ConfiguredFailoverProxyProvider</value>
</property>

1.1.4 yarn-site.xml

<property>
<name>yarn.resourcemanager.hostname</name>
<value>crxy1</value>
</property>

<property>
<name>yarn.nodemanager.aux-services</name>
<value>mapreduce_shuffle</value>
</property>

1.1.5 mapred-site.xml

<property>
<name>mapreduce.framework.name</name>
<value>yarn</value>
</property>

1.1.6 slaves
crxy3
crxy4
crxy5


1.1.7 把crxy1上的hadoop文件夹复制到crxy2、crxy3、crxy4、crxy5节点

--------------------------------------------------
启动集群 (手工切换namenode方式)

1.2 启动journalnode集群
  在crxy1、crxy2、crxy3上分别执行hadoop/sbin/hadoop-daemon.sh start journalnode

--启动8485端口,namenode format的时候会连接

1.3 格式化namenode、启动namenode
  在crxy1上执行hadoop/bin/hdfs namenode -format
  在crxy1上分别执行hadoop/sbin/hadoop-daemon.sh start namenode

--启动了才能下一步的格式化

  在crxy2上执行hadoop/bin/hdfs namenode -bootstrapStandby
  在crxy2上分别执行hadoop/sbin/hadoop-daemon.sh start namenode

  在crxy1上执行
hadoop/bin/hdfs haadmin -failover --forceactive crxy1 crxy2
---》crxy1:standby  crxy2:active
hadoop/bin/hdfs haadmin -failover --forcefence crxy1 crxy2 (crxy2不能为active)
---》crxy1:dead  crxy2:active
1.4 启动datanode
  在crxy1上分别执行hadoop/sbin/hadoop-daemons.sh start datanode

1.5 启动resourcemanager和nodemanager
  在crxy1上执行 hadoop/sbin/yarn-demon.sh start resourcemanager
                        hadoop/sbin/yarn-demon.sh start nodemanager

1.6 简便执行:crxy1上分别执行
     hadoop/sbin/start-dfs.sh    
     hadoop/sbin/start-yarn.sh

1.7 web页面验证
     crxy1:50070/crxy2:50070
     crxy1:8088



-------------------------------------------------
修改配置文件(自动切换namenode方式)

2.0 搭建zookeeper集群
2.0.1  在crxy1上解压缩,重命名为zookeeper,把conf/zoo_sample.cfg重命名为conf/zoo.cfg
  修改文件conf/zoo.cfg
  (1)dataDir=/usr/local/zookeeper/data
  (2)增加以下内容
     server.1=crxy1:2888:3888
     server.2=crxy2:2888:3888
     server.3=crxy3:2888:3888
  创建目录mkdir zookeeper/data
  写入文件echo 1 zookeeper/data/myid

  复制zookeeper文件夹到hadoop2、hadoop3上
  scp -rq zookeeper  hadoop2:/usr/local
  scp -rq zookeeper  hadoop3:/usr/local

  在hadoop2上执行命令echo 2 zookeeper/data/myid
  在hadoop3上执行命令echo 3 zookeeper/data/myid
2.0.2 启动
  在crxy1、crxy2、crxy3上,分别执行命令zookeeper/bin/zkServer.sh start
2.0.3 验证
  执行命令zookeeper/bin/zkCli.sh
  进入后执行ls /


2.1修改hadoop配置文件
与手工切换namenode的配置不同处:
core-site.xml
<property>
     <name>ha.zookeeper.quorum</name>
     <value>crxy1:2181,crxy2:2181,crxy3:2181</value>
</property>

hdfs-site.xml
<property>
     <name>dfs.client.failover.proxy.provider.cluster1</name>
     <value>org.apache.hadoop.hdfs.server.namenode.ha.ConfiguredFailoverProxyProvider</value>
</property>

修改好后,删除其他节点的hadoop文件夹,然后把crxy1上的hadoop文件夹复制到其他节点

--------------------------------------------------
启动集群 (自动切换namenode方式)

2.2 格式化zk集群
  在crxy1上执行hadoop/bin/hdfs zkfc -formatZK
2.3 启动journalnode集群
  在crxy1、crxy2、crxy3上分别执行hadoop/sbin/hadoop-daemon.sh start journalnode
2.4 格式化namenode、启动namenode
  在crxy1上执行hadoop/bin/hdfs namenode -format
  在crxy1上分别执行hadoop/sbin/hadoop-daemon.sh start namenode
  在crxy2上执行hadoop/bin/hdfs namenode -bootstrapStandby
  在crxy2上分别执行hadoop/sbin/hadoop-daemon.sh start namenode
2.5 启动datanode
  在crxy1上分别执行hadoop/sbin/hadoop-daemons.sh start datanode
2.6 启动ZKFC
  在crxy1、crxy2上 启动zkfc,执行命令hadoop/sbin/hadoop-daemon.sh start zkfc

总结:
  自动切换比手工切换多出来的
  (1)配置上core-site.xml增加了配置项ha.zookeeper.quorum;hdfs-site.xml中把dfs.ha.automatic-failover.enabled.cluster1改为true
  (2)操作上格式化zk,执行命令bin/hdfs zkfc -formatZK;启动zkfc,执行命令sbin/hadoop-daemon.sh start zkfc

分享到:
评论

相关推荐

    haddoop-1.2.1.tar.gz hadoop基础学习之hadoop jar

    haddoop-1.2.1.tar.gz hadoop基础学习之hadoop jar hadoop 学习

    hadoop搭建

    关于Hadoop分布式搭建部署的文档,仅供参考,可以切磋交流噢

    spark2.4.7兼容haddoop 3.1.4 和hive 3.1.2修改spark源码和jar

    spark2.4.7兼容haddoop 3.1.4 和hive 3.1.2修改spark源码和jar

    可运行的haddoop程序

    只需改下输入输出路径就可直接运行的hadoop程序,包含需要的完整jar

    Hadoop权威指南 中文版

    全书共14章,3个附录,涉及的主题包括:haddoop简介:mapreduce简介:hadoop分布式文件系统;hadoop的i/o、mapreduce应用程序开发;mapreduce的工作机制:mapreduce的类型和格式;mapreduce的特性:如何安装hadoop...

    Hadoop: The Definitive Guide

    全书共14章,3个附录,涉及的主题包括:Haddoop简介:MapReduce简介:Hadoop分布式文件系统;Hadoop的I/O、MapReduce应用程序开发;MapReduce的工作机制:MapReduce的类型和格式;MapReduce的特性:如何安装Hadoop...

    Hadoop 权威指南(中文版)

    全书共14章,3个附录,涉及的主题包括:haddoop简介:mapreduce简介:hadoop分布式文件系统;hadoop的i/o、mapreduce应用程序开发;mapreduce的工作机制:mapreduce的类型和格式;mapreduce的特性:如何安装hadoop...

    Hadoop权威指南第三版

    全书涉及的主题包括:Haddoop简介;MapReduce简介;Hadoop分布式文件系统;Hadoop的I/O、MapReduce应用程序开发;MapReduce的工作机制;MapReduce的类型和格式;MapReduce的特性;如何安装Hadoop集群,如何管理...

    Hadoop权威指南(第三版)

    全书共14章,3个附录,涉及的主题包括:Haddoop简介;MapReduce简介;Hadoop分布式文件系统;Hadoop的I/O、MapReduce应用程序开发;MapReduce的工作机制;MapReduce的类型和格式;MapReduce的特性;如何安装Hadoop...

    Hadoop The Definitive Guide 2nd Edition

    全书共14章,3个附录,涉及的主题包括:Haddoop简介;MapReduce简介;Hadoop分布式文件系统;Hadoop的I/O、MapReduce应用程序开发;MapReduce的工作机制;MapReduce的类型和格式;MapReduce的特性;如何安装Hadoop...

    Hadoop权威指南(英文原版)

    全书共14章,3个附录,涉及的主题包括:Haddoop简介;MapReduce简介;Hadoop分布式文件系统;Hadoop的I/O、MapReduce应用程序开发;MapReduce的工作机制;MapReduce的类型和格式;MapReduce的特性;如何安装Hadoop...

    Hadoop权威指南

    全书共14章,3个附录,涉及的主题包括:Haddoop简介;MapReduce简介;Hadoop分布式文件系统;Hadoop的I/O、MapReduce应用程序开发;MapReduce的工作机制;MapReduce的类型和格式;MapReduce的特性;如何安装Hadoop...

    Hadoop权威指南中文版第一版

    全书共14章,3个附录,涉及的主题包括:Haddoop简介;MapReduce简介;Hadoop分布式文件系统;Hadoop的I/O、MapReduce应用程序开发;MapReduce的工作机制;MapReduce的类型和格式;MapReduce的特性;如何安装Hadoop...

    Hadoop权威指南.pdf

    全书共16章,3个附录,涉及的主题包括:haddoop简介;mapreduce简介;Hadoop分布式文件系统;Hadoop的i/o、mapreduce应用程序开发;mapreduce的工作机制;mapreduce的类型和格式;mapreduce的特性;如何构建Hadoop...

    hadoop权威指南(第2版)

    全书共16章,3个附录,涉及的主题包括:haddoop简介;mapreduce简介;hadoop分布式文件系统;hadoop的i/o、 mapreduce应用程序开发;mapreduce的工作机制;mapreduce的类型和格式;mapreduce的特性;如何构建hadoop...

    hadoop权威指南(中文第2版)

    全书共16章,3个附录,涉及的主题包括:haddoop简介;mapreduce简介;hadoop分布式文件系统;hadoop的i/o、mapreduce应用程序开发;mapreduce的工作机制;mapreduce的类型和格式;mapreduce的特性;如何构建hadoop...

    thrift框架示例

    thrift框架示例,thrift框架客户端代码。 开发平台MyEclipse 9

    hadoop权威指南第2版

    全书共16章,3个附录,涉及的主题包括:Haddoop简介;MapReduce简介;Hadoop分布式文件系统;Hadoop的I/O、MapReduce应用程序开发;MapReduce的工作机制;MapReduce的类型和格式;MapReduce的特性;如何构建Hadoop...

Global site tag (gtag.js) - Google Analytics