hadoop 在linux中的搭建

关于hadoop在linux系统中的搭建问题

本人有点linux基础,但是没有在linux系统中搭建过大数据平台,所以也算是0起点吧,也是边学边搭建。期初真的不知道该如何是好,但是经过多次的不断练习,终于把hadoop成功的在本地服务器和本地的虚拟机上搭建成功,现在我把我的搭建步骤分享给大家,如果有疑问的,可以发我邮箱[email protected]

首先准备好linux和基本的软件还有主机IP地址,名字可以随意起

1环境:redhat 6.5JDK 1.6hadoop 1.2.1(这时候我推荐大家使用一个工具直接是windows和linux直接传输文件的工具winscp可以直接传文件,大家可以下载一个方便使用)

192.168.0.218 bd2 / IP 地址 +主机名称

192.168.0.219 bd1

192.168.0.217 bd1

没有特殊说明,每台机器都需要以下步骤

2、创建用户和组

groupadd hadoop

useradd -d /home/hadoop -g hadoop -s/bin/bash hadoop

passwd hadoop

3.hadoop及其他的环境变量配置  (vi .bashrc)

export JAVA_HOME=/home/hadoop/jdk1.8.0_111

export HADOOP_HOME=/home/hadoop/hadoop

export CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar

export HBASE_HOME=/home/hadoop/hbase

export SCALA_HOME=/home/hadoop/scala

export SPARK_HOME=/home/hadoop/spark

export MONGODB_HOME=/home/hadoop/mongodb

export PATH=$MONGODB_HOME/bin:$SPARK_HOME/bin:$SCALA_HOME/bin:$HBASE_HOME/bin:$JAVA_HOME/bin:$JAVA_HOME/jre/bin:$HADOOP_HOME/bin:$PATH

export HADOOP_HOME_WARN_SUPPRESS=1

4、关闭防火墙

 1.service iptables stop

  2.chkconfig --list iptables

  3.chkconfig off


5、每个节点的hosts文件(vi /etc/hosts)(和hostname不一样,hostname的配置文件是/etc/sysconfig/network.

#127.0.0.1 localhost localhost.localdomain localhost4 localhost4.localdomain4

#::1 localhost localhost.localdomain localhost6 localhost6.localdomain6

192.168.13.100  node1.uplooking.com  node1    主机IP地址    主机    

192.168.13.101  node2.uplooking.com  node2

192.168.13.102  node3.uplooking.com  node3

6、hadoop用户下配置以下文件,以下文件路径在/home/hadoop/hadoop/etc/hadoop

 1hadoop-env.sh(什么都不要加,就加java的目录,注意注释的部分不要动它!!)

export JAVA_HOME=/home/hadoop/jdk1.8.0_111

 

 2yarn-env.sh

 #some Java parameters

 export JAVA_HOME=/home/hadoop/jdk1.8.0_111

 

3slaves(主从关系)

node2

node3

在hadoop/etc/hadoop 目录下,对core-site.xml进行编辑

4core-site.xml

<configuration>

<property>

<name>fs.defaultFS</name>

<value>hdfs://node1:9000</value>

</property>

<property>

<name>io.file.buffer.size</name>

<value>131072</value>

</property>

<property>

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

<value>file:/home/hadoop/hadoop-2.6.3/tmp</value>

<description>Abase for other temporary directories.</description>

</property>

<property>

<name>hadoop.proxyuser.hduser.hosts</name>

<value>*</value>

</property>

<property>

<name>hadoop.proxyuser.hduser.groups</name>

<value>*</value>

</property>

</configuration>

5hdfs-site.xml

<configuration>

<property>

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

<value>node1:9001</value>

</property>

<property>

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

<value>file:/home/hadoop/hadoop-2.6.3/name</value>

</property>

<property>

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

<value>file:/home/hadoop/hadoop-2.6.3/data</value>

</property>

<property>

<name>dfs.replication</name>

<value>1</value>

</property>

<property>

<name>dfs.webhdfs.enabled</name>

<value>true</value>

</property>

</configuration>

(6)mapred-site.xml,该文件没有,可以copy下面的mapred-site.xml.template

(cp mapred-site.xml.template  mapred-site.xml)( 里面的node1是主机的名称)

<configuration>

<property>

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

<value>yarn</value>

</property>

<property>

<name>mapreduce.jobhistory.address</name>

<value>bd1:10020</value>

</property>

<property>

<name>mapreduce.jobhistory.webapp.address</name>

<value>bd1:19888</value>

</property>

</configuration>

7yarn-site.xml

<configuration>

<!-- Site specific YARNconfiguration properties-->

<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>

<property>

<name>yarn.resourcemanager.address</name>

<value>bd1:8032</value>

</property>

<property>

<name>yarn.resourcemanager.scheduler.address</name>

<value>bd1:8030</value>

</property>

<property>

<name>yarn.resourcemanager.resource-tracker.address</name>

<value>bd1:8031</value>

</property>

<property>

<name>yarn.resourcemanager.admin.address</name>

<value>bd1:8033</value>

</property>

<property>

<name>yarn.resourcemanager.webapp.address</name>

<value>bd1:8088</value>

</property>

<property>

<name>yarn.nodemanager.resource.memory-mb</name>

<value>100000</value>

</property>

<property>

<name>yarn.scheduler.maximum-allocation-mb</name>

<value>10000</value>

</property>

<property>

<name>yarn.scheduler.minimum-allocation-mb</name>

<value>3000</value>

</property>

<property>

<name>mapreduce.reduce.memory.mb</name>

<value>2000</value>

</property>

</configuration>

7、jdk及配置好的hadoop copynode2node3上如:

scp -r /home/hadoop/hadoop  node2:/home/hadoop

当然也可以用scripts里面的3scp.sh进行传输

sh  xxx.sh hostnames  /home/hadoop/hadoop  /home /hadoop

以下操作是在Node1

8、格式化namenode/home/hadoop/hadoop-2.6.3/bin

./hdfs namenode -format

9、启动(/home/hadoop/hadoop-2.6.3/sbin

./start-all.sh

10、JPS查看进程

主机上是:



从机上是:



如果达到以上步骤都是成功的,那么恭喜你已经把hadoop成功的部署在你linux系统当中了。


猜你喜欢

转载自blog.csdn.net/chshgod1/article/details/77748131