HadoopHA集群搭建手册.docx

上传人:b****8 文档编号:23812514 上传时间:2023-05-21 格式:DOCX 页数:34 大小:1.60MB
下载 相关 举报
HadoopHA集群搭建手册.docx_第1页
第1页 / 共34页
HadoopHA集群搭建手册.docx_第2页
第2页 / 共34页
HadoopHA集群搭建手册.docx_第3页
第3页 / 共34页
HadoopHA集群搭建手册.docx_第4页
第4页 / 共34页
HadoopHA集群搭建手册.docx_第5页
第5页 / 共34页
点击查看更多>>
下载资源
资源描述

HadoopHA集群搭建手册.docx

《HadoopHA集群搭建手册.docx》由会员分享,可在线阅读,更多相关《HadoopHA集群搭建手册.docx(34页珍藏版)》请在冰豆网上搜索。

HadoopHA集群搭建手册.docx

HadoopHA集群搭建手册

Hadoop+HA高可靠集群+Hbase+Zookeeper

环境搭建手册

什么是HA见附件。

集群环境:

Ubuntu15.0464位操作系统,通过VMWARE虚拟3个节点:

master1:

192.168.8.101

master2:

192.168.8.102

slave1:

192.168.8.201

由于只有3个节点,所以master1,master2为nodedate,master2为standby

zookeeper,datanode,hbase三个节点都部署

机器名

ip地址

安装软件

运行的进程

master1

192.168.8.101

jdk,hadoop,

hbase,zookeeper

NameNode,DataNode,

hbaseHmaster,

hbaseHRegionServer

QuorumPeerMain,zkfc

JournalNode,

ResourceManager

master2

192.168.8.102

jdk,hadoop,

hbase,zookeeper

NameNode,DataNode,

hbaseHRegionServer

QuorumPeerMain,zkfc

JournalNode,

NodeManager

slave1

192.168.8.201

jdk,hadoop,

hbase,zookeeper

DataNode,HRegionSever,

QuorumPeerMain,

JournalNode,

NodeManager

其中zkfc进程是DFSZKFailoverController

Jdk1.7.0_7964位,Hadoop2.6.0,HBase1.0.2,Zookeeper3.4.6

此时我们以master1节点为例,其他节点操作一致

准备工作(可选)

增加一个名为 hadoop 的用户,密码可设置为 hadoop (密码随意指定)。

首先按 ctrl+alt+t 打开终端窗口,输入如下命令创建新用户 :

$ sudo useradd -m hadoop -s /bin/bash

创建了可以登陆的 hadoop 用户,并使用 /bin/bash 作为shell。

接着使用如下命令修改密码,按提示输入两次密码 hadoop :

$ sudo passwd hadoop

可为 hadoop 用户增加管理员权限,方便部署,避免一些对新手来说比较棘手的权限问题:

$ sudo adduser hadoop sudo

最后注销当前用户(点击屏幕右上角的齿轮,选择注销),在登陆界面使用刚创建的 hadoop 用户进行登陆。

安装SSH server、配置SSH无密码登陆

集群需要用到SSH登陆(类似于远程登陆,你可以登录某台Linux电脑,并且在上面运行命令)

$ sudo apt-get install ssh

安装后,可以使用如下命令登陆本机:

$ ssh localhost

此时会有如下提示(SSH首次登陆提示),输入 yes 。

然后按提示输入密码 hadoop,这样就登陆到本机了。

但这样登陆是需要每次输入密码的,我们需要配置成SSH无密码登陆比较方便。

首先退出刚才的 ssh,就回到了我们原先的终端窗口,然后利用 ssh-keygen 生成密钥,并将密钥加入到授权中:

$ exit                           # 退出刚才的 ssh localhost

$ cd ~/.ssh/                # 若没有该目录,请先执行一次ssh localhost

$ ssh-keygen -t rsa              # 会有提示,都按回车就可以

$ cat id_rsa.pub >> authorized_keys  # 加入授权

就在.ssh文件夹下生成了2个文件,一个公钥和一个私钥文件,  id_rsa  id_rsa.pub

这样配置之后就可以实现无密码登录本机。

如果需要登录到远程主机,只需要将 authorized_keys文件发送到远程主机的~/.ssh/目录下。

此时再用 ssh localhost 命令,无需输入密码就可以直接登陆了。

 

如果出现Agent admitted failure to sign using the key 

解決方式 使用 ssh-add 指令将私钥 加进来 (根据个人的密匙命名不同更改 id_rsa)  $ ssh-add   ~/.ssh/id_rsa  

再通过ssh 主机名 就可以实现无密码登录了

1安装jdk

$ sudo mkdir /usr/lib/jvm#创建jdk存放目录

$ sudo tar -zxvf jdk-7u79-linux-x64.tar.gz  -C /usr/lib/jvm

添加环境变量

$ sudo gedit ~/.bashrc

在最后添加

export JAVA_HOME=/usr/lib/jvm/jdk1.7.0_79

export JRE_HOME=$JAVA_HOME/jre  

export CLASSPATH=.:

$JAVA_HOME/lib:

$JRE_HOME/lib  

export PATH=$JAVA_HOME/bin:

$PATH 

然后在终端

$ source ~/.bashrc    # 使变量设置生效

$ echo $JAVA_HOME     # 检验是否设置正确

$echo $PATH

$java-version#输出如下表示成功

centos在/etc/profile中修改

2.修改/etc/hosts文件

添加集群所有机器,每个节点都如此操作。

192.168.8.101master1

192.168.8.102master2

192.168.8.201slave1

$sudovim/etc/hosts

如果之后没有问题不用注释127.0.0.1localhost

修改本机的hostname

$sudovim/etc/hostname 将原来的hostname改成master1即可

重启机器

cenos修改

hostname:

cat/etc/sysconfig/network

NETWORKING=yes

HOSTNAME=master1

ip:

cat/etc/sysconfig/network-scripts/ifcfg-eth0

DEVICE="eth0"

BOOTPROTO="static"

HWADDR="00:

0C:

29:

19:

8A:

5C"

IPV6INIT="yes"

NM_CONTROLLED="yes"

ONBOOT="yes"

TYPE="Ethernet"

UUID="9069ed01-3155-4485-b2cb-84b7d6b29f8b"

IPADDR="192.168.8.101"

NETMASK="255.255.255.0"

GATEWAY="192.168.8.1"

配置HADOOPHBASEZOOKEEPER

所有文件都放在/usr/local/hadoop下,所有黄色标注的地方建议手动新建相应文件夹

3.解压hadoop并修改环境变量

$sudomkdir/usr/local/hadoop#存放hadoop,hbase,zookeeper

#更改目录所有者权限,以防以后没用户权限

$sudochown-Rhadoophadoop

$sudotar-zxvfhadoop-2.6.0.tar.gz-C/usr/local/hadoop

$ sudovim~/.bashrc #更改环境变量

在最后添加

exportHADOOP_HOME=/usr/local/hadoop/hadoop-2.6.0

exportPATH=$HADOOP_HOME/bin:

$HADOOP_HOME/sbin:

$PATH

$source~/.bashrc#使环境变量修改生效

4.修改配置文件

4.1修改$HADOOP_HOME/etc/hadoop/slaves文件

加入所有slave节点hostname ,这里所有节点都是slave节点,如果机器多可以把Namenode节点分开

添加如下图

4.2修改$HADOOP_HOME/etc/hadoop/hadoop-env.sh文件 

修改JAVA_HOME路径 , 写全路径

4.3修改$HADOOP_HOME/etc/hadoop/yarn-env.sh文件 

4.4修改$HADOOPHOME/etc/hadoop/core-site.xml

文件详见附件8.5修改

HADOOP_HOME/etc/hadoop/core-site.xml文件 ,红色为需要修改的地方,黄色为需要新建的文件夹

 

    

--指定hdfs的nameservice为cluster-->

      fs.defaultFS 

      hdfs:

//cluster 

    

    

--指定hadoop的tmp目录-->

     hadoop.tmp.dir

     /usr/local/hadoop/hadoop-2.6.0/tmp/ 

    

    

--指定zookeeper地址-->

      ha.zookeeper.quorum 

      master1:

2181,master2:

2181,slave1:

2181 

    

    

       io.file.buffer.size 

       131072 

    

    

       dfs.ha.fencing.methods 

       sshfence 

    

    

       dfs.ha.fencing.ssh.private-key-files 

       ~/.ssh/id_rsa 

    

 

此时在hadoop目录下新建一个tmp目录,并更改所有者权限,否则以后会因为权限问题出错。

如果hadoop目录已经改了只需要mkdirtmp即可

$sudomkdirtmp然后更改目录所有者权限

$sudochown-Rhadooptmp

4.5修改HADOOP_HOME/etc/hadoop/hdfs-site.xml文件 

 

    

--指定的hdfs的nameserice为cluster,与core-site.xml保持一致-->

               dfs.nameservices 

               cluster 

        

        

--cluster下有两个NameNode分别是master1和master2-->

               dfs.ha.namenodes.cluster 

               master1,master2 

        

        

--master1的RPC通信地址-->

               dfs.namenode.rpc-address.cluster.master1 

               master1:

8020 

        

        

--master2的RPC通信地址-->

               dfs.namenode.rpc-address.cluster.master2 

               master2:

8020 

        

        

--监控网页-->

               dfs.namenode.http-address.cluster.master1 

               master1:

50070 

        

        

               dfs.namenode.http-address.cluster.master2 

               master2:

50070 

        

    

                dfs.namenode.servicerpc-address.cluster.master1 

                master1:

53333 

         

         

                dfs.namenode.servicerpc-address.cluster.master2 

                master2:

53333 

         

        

--指定NameNode的元数据在JournalNode上的存储位置-->

               dfs.namenode.shared.edits.dir 

               qjournal:

//master1:

8485;master2:

8485;slave1:

8485;slave2:

8485/cluster 

        

        

               dfs.client.failover.proxy.provider.cluster 

               org.apache.hadoop.hdfs.server.namenode.ha.ConfiguredFailoverProxyProvider 

        

        

--指定JournalNode在本地磁盘存放数据的位置-->

               dfs.journalnode.edits.dir 

               /usr/local/hadoop/hadoop-2.6.0/mydata/journal 

        

    

--备份数-->

      dfs.replication 

      3 

    

     

          dfs.namenode.name.dir  

          file:

/usr/local/hadoop/hadoop-2.6.0/mydata/name  

     

     

---->

        dfs.datanode.data.dir  

         file:

/usr/local/hadoop/hadoop-2.6.0/mydata/data  

     

    

--开启NameNode失败自动切换-->

          dfs.ha.automatic-failover.enabled 

      true 

    

     

      dfs.webhdfs.enabled  

      true 

    

     

      dfs.journalnode.http-address  

      0.0.0.0:

8480  

     

     

      dfs.journalnode.rpc-address  

      0.0.0.0:

8485  

    

       

      dfs.permissions    

      false    

    

新建上诉黄色中的目录并修改所有者权限,需要更改目录所有者使用3中的方法

4.6修改 HADOOP_HOME/etc/hadoop/mapred−site.xml文件

 

    

--指定mapreduce框架为yarn方式-->

      mapreduce.framework.name 

      yarn 

    

 

      mapreduce.jobtracker.address 

      master1:

50030 

   

    

      mapreduce.jobhistory.address 

      master1:

10020 

    

    

      mapreduce.jobhistory.webapp.address 

      master1:

19888 

    

 

4.7修改$HADOOP_HOME/etc/hadoop/yarn-site.xml文件

   

      yarn.resourcemanager.ha.rm-ids

      rm1,rm2

   

   

      yarn.resourcemanager.hostname.rm1

      master1

   

   

      yarn.resourcemanager.hostname.rm2

      master2

   

   

--指定resourcemanager的clusterid,master2中需要该成rm2-->

      yarn.resourcemanager.ha.id

      rm1

   

   

       yarn.resourcemanager.address.rm1

       ${yarn.resourcemanager.hostname.rm1}:

8032

   

   

      yarn.resourcemanager.scheduler.address.rm1

      ${yarn.resourcemanager.hostname.rm1}:

8030

   

   

      yarn.resourcemanager.webapp.https.address.rm1

      ${yarn.resourcemanager.hostname.rm1}:

8089

   

   

      yarn.resourcemanager.webapp.address.rm1

  

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 高等教育 > 研究生入学考试

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1