码迷,mamicode.com
首页 > 其他好文 > 详细

hadoop分布式的搭建过程

时间:2017-10-06 22:31:05      阅读:214      评论:0      收藏:0      [点我收藏+]

标签:文件的   环境变量   shuffle   etc   class   soft   java环境变量   auth   .gz   

Hadoop的搭建过程全纪录

1、  虚拟机的安装

这里采用vm虚拟机,安装过程网上有很多,可以自行查看

2、  安装linux系统

采用Centos 7作为linux系统,注意选择语言和时间

建立root用户,密码设置为root

3、  JDK的安装

下载好jdk

解压 tar -zxvf jdk-7u71-linux-x64.gz -C /usr/local

   mv jdk1.7.0_71 jdk

打开/etc/profile 配置java环境变量

 vim /etc/profile

按i进入插入模式,在后面添加如下语句

 

export JAVA_HOME=/usr/local/jdk

export PATH=PATH:$JAVA_HOME/bin

按esc再按:输入wq保存退出

执行 source /etc/profile 使其生效

输入java -version

出现以下提示则表明安装成功

java version "1.7.0_71"

Java(TM) SE Runtime Environment (build 1.7.0_71-b13)

Java HotSpot(TM) Client VM (build 25.0-b02, mixed mode)

4、  hadoop搭建

三台机器

查看这个机器的ip地址

Ifconfig

Master

192.168.32.127

Namenode

Resourcemanager

Slave1

192.168.32.128

Datanode

Nodemanager secondarynamenode

Slave2

192.168.32.129

datanode

nodemanager

设置主机名

vim /etc/hostname

删除里面的内容并分别设置成

master

slave1

slave2

修改hosts,建立主机名和ip地址的映射,每一个占一行

vim /etc/hosts

192.168.32.127 master

192.168.32.128 slave1

192.168.32.129 slave2

 配置ssh

ssh-keygen -t rsa

连续4个回车

会root目录生成两个文件,一个公钥一个私钥

ssh-copy-id master

ssh-copy-id slave1

ssh-copy-id slave2

这样会在slave1 的/root/.ssh/目录下生成一个authorized_keys 就可以实现master免登录到slave1,如下:

ssh slave1

如不需要输入密码,则配置ssh成功

下载好hadoop安装包,并解压,这句话的意思是将hadoop安装包解压到 /opt/soft/目录下

tar -zxvf ./hadoop-2.7.2.tar.gz -C /opt/soft/

将解压后的修改个名字(可以不用做,只是为了方便)

mv hadoop-2.7.2 hadoop

修改hadoop的配置文件群

vi /hadoop/ect/hadoop/hadoop-env.sh

设置JAVA_HOME=/usr/local/jdk

vi core-site.xml

<configuration>

    <!-- 指定HDFS老大(namenode)的通信地址 -->

    <property>

        <name>fs.defaultFS</name>

        <value>hdfs://master:9000</value>

    </property>

    <!-- 指定hadoop运行时产生文件的存储路径 -->

    <property>

        <name>hadoop.tmp.dir</name>

        <value>/opt/soft/hadoop/tmp</value>

    </property>

</configuration>

 

 

vi hdfs-site.xml

<configuration>

 

    <!-- 设置namenode的http通讯地址 -->

    <property>

        <name>dfs.namenode.http-address</name>

        <value>master:50070</value>

    </property>

 

    <!-- 设置secondarynamenode的http通讯地址 -->

    <property>

        <name>dfs.namenode.secondary.http-address</name>

        <value>slave1:50090</value>

    </property>

 

    <!-- 设置namenode存放的路径 -->

    <property>

        <name>dfs.namenode.name.dir</name>

        <value>/opt/soft/hadoop/name</value>

    </property>

 

    <!-- 设置hdfs副本数量 -->

    <property>

        <name>dfs.replication</name>

        <value>2</value>

   
</property>

    <!-- 设置datanode存放的路径 -->

    <property>

        <name>dfs.datanode.data.dir</name>

        <value>/opt/soft/hadoop/data</value>

    </property>

</configuration>

 

mapred-site.xml

没有这个文件,所以先要进行修改

mv mapred-site.xml.template mapred-site.xml

 

<configuration>

    <!-- 通知框架MR使用YARN -->

    <property>

        <name>mapreduce.framework.name</name>

        <value>yarn</value>

    </property>

</configuration>

 

yarn-site.xml

<configuration>

    <!-- 设置 resourcemanager 在哪个节点-->

    <property>

        <name>yarn.resourcemanager.hostname</name>

        <value>master</value>

    </property>

 

    <!-- reducer取数据的方式是mapreduce_shuffle -->

    <property>

        <name>yarn.nodemanager.aux-services</name>

        <value>mapreduce_shuffle</value>

    </property>

 

    <property>

         <name>yarn.nodemanager.aux-services.mapreduce.shuffle.class</name>

         <value>org.apache.hadoop.mapred.ShuffleHandler</value>

    </property>

</configuration>

 

slaves这占一行,表明datanode节点

 

slave1

slave2

以上操作完成之后,将jdk和hadoop分别copy到slave1和slave2节点上

copy jdk

scp /usr/local/jdk slave1:/usr/local/

scp /usr/local/jdk slave2:/usr/local/

copy hadoop

scp /opt/soft/* slave1:/opt/soft/

scp /opt/soft/* slave2:/opt/soft/

 

 

接着就是格式化

hadoop namenode –format

然后启动hadoop,在hadoop目录下

启动hdfs(nn,dn)

bin/start-dfs.sh

输入jps,会有以下进程

在master上

Jps

namenode

在slave1 和slave2上

Jps

datanode

启动yarn

bin/start-yarn.sh

输入jps,此时以下进程

在master上

Jps

Namenode

Resourcemanager

Secondarynamenode

再slave1和slave2上

Jps

Datanode

Nodemanager

至此就配置完成了

 

hadoop分布式的搭建过程

标签:文件的   环境变量   shuffle   etc   class   soft   java环境变量   auth   .gz   

原文地址:http://www.cnblogs.com/tolazychen/p/7633029.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!