Hadoop2.5.2+HA+Zookeeper3.4.6配置过程详解(2)

两个namenode上面已经说明,其实在hadoop2中几点之间namenode和datanode之间的划分已经不是那么明确了。这只是采用后4台机器作为namenode。这里也存在一个问题:如果把datanode和namenode放在一起,对数据的读取IO的效率肯定会有一定的影响,不同机器之间还是要通过网线和http请求完成数据之间的共享。实际中,两者是可以在一起。但是我不知道在一起和不在一起之间的主要区别在哪儿,上面的解释只是个人意见,如果读者有更好的意见可以留言,大家一起讨论。

下面就进入正式的集群的安装过程:

下面所有的过程都是在hadoop1机器上完成的,之后把文件复制到其他节点中。

Zookeeper安装过程:

1、下载解压zookeeper

下载地址:

解压到指定目录:这里目录:/home/tom/yarn/hadoop-2.5.2/app/

在hadoop目录中创建app目录。把文件解压到hadoop的app目录中,是为了以后整个项目可以整体移植。包括后面,我们会安装HBase、Hive等软件,都是解压到app的目录中。

2、修改配置文件

2.1进入zookeeper中conf目录:

拷贝命名zoo_sample.cfg 为zoo.cfg。我们一般不修改配置文件默认的示例文件,修改赋值其子文件。

编辑zoo.cfg

拷贝命名zoo_sample.cfg 为zoo.cfg。我们一般不修改配置文件默认的示例文件,修改赋值其子文件。

编辑zoo.cfg

tickTime=2000
      initLimit=10
      syncLimit=5
      dataDir=/home/tom/yarn/hadoop-2.5.0/app/zookeeper-3.4.6/zkdata
      dataLogDir=/home/tom/yarn/hadoop-2.5.0/app/zookeeper-3.4.6/zkdatalog
      clientPort=2181
      server.1=hadoop1:2888:3888
      server.2=hadoop2:2888:3888
      server.3=hadoop3:2888:3888
      server.4=hadoop4:2888:3888
      server.5=hadoop5:2888:3888

2.2创建zkdata和zkdatalog两个文件夹

在zookeeper的目录中,创建上述两个文件夹。进入zkdata文件夹,创建文件myid,填入1。这里写入的1,是在zoo.cfg文本中的server.1中的1。当我们把所有文件都配置完毕,我们把hadoop1中yarn目录复制到其它机器中,我们在修改每台机器中对应的myid文本,hadoop2中的myid写入2。其余节点,安照上面配置,依此写入相应的数字。Zkdatalog文件夹,是为了指定zookeeper产生日志指定相应的路径。

添加环境变量

本机环境变量添是在/etc/profile目录中添加的。也可以不用添加到环境变量

添加环境变量

本机环境变量添是在/etc/profile目录中添加的。

添加ZOOKEEPER_HOME/bin目录可以在原有的PATH后面加入

:$ZOOKEEPER_HOME/bin

关于环境变量修改/etc目录下的profile文件,也可以在根目录下的.bashrc目录下添加环境变量。这两者有什么区别:.bashrc是对当前目录用户的环境变量,profile文件是对所有用户都开放的目录。当系统加载文件中,先从profile找相应的路劲,如果没有会在.bashrc文件中找对应的环境变量路径。这两者大家稍至了解。

然后 source /etc/profile

上面3个步骤就安装zookeeper完毕。然后就是测试zookeeper,这个放到后面等hadoop1上整体配置完毕,scp到其它主机上后,再一起测试。

Hadoop配置

1、下载解压hadoop2.5.0

路径:

解压到:/home/tom/yarn/下。其实这一步应该在解压zookeeper之前。不再多讲。

2、修改配置文件

这里要修改配置文件一共包括6个,分别是在hadoop-env.sh、core-site.xml、hdfs-site.xml、mapred-site.xml、 yarn-site.xml和slaves。

修改文件的目录地址:/home/tom/yarn/hadoop-2.5.2/etc/hadoop/

2.1文件hadoop-env.sh

添加jdk环境变量:

export Java_HOME=/usr/lib/jvm/jdk1.7.0_45

2.2文件coer-site.xml

<configuration>   
            <property>   
                <name>fs.defaultFS</name>   
                <value>hdfs://cluster1</value>   
            </property>
        【这里的值指的是默认的HDFS路径。这里只有一个HDFS集群,在这里指定!该值来自于hdfs-site.xml中的配置】   
            <property>   
                  <name>hadoop.tmp.dir</name> 
                  <value>/home/tom/yarn/yarn_data/tmp</value> 
            </property>
          【这里的路径默认是NameNode、DataNode、JournalNode等存放数据的公共目录。用户也可以自己单独指定这三类节点的目录。这里的yarn_data/tmp目录与文件都是自己创建的】   
            <property>   
                <name>ha.zookeeper.quorum</name>   
                <value>hadoop1:2181,hadoop2:2181,hadoop3:2181,hadoop4:2181,hadoop5:2181</value> 
            </property>
          【这里是ZooKeeper集群的地址和端口。注意,数量一定是奇数,且不少于三个节点】   
        </configuration><span><span></span></span>
 

2.3文件hdfs-site.xml

内容版权声明:除非注明,否则皆为本站原创文章。

转载注明出处:https://www.heiqu.com/bdc7454a15a01a828b258edb4f3c233d.html