64位Ubuntu 12.04 Server系统上Hadoop2.2.0/2.3.0环境搭建及总结

第一部分 Hadoop 2.2.0构建准备工作(每台都要做)

Hadoop我们从Apache官方网站直接下载最新版本Hadoop2.2.0。官方目前是提供了linux32位系统可执行文件,所以如果需要在64位系统上部署则需要单独下载src 源码自行编译。

下载地址:http://apache.claz.org/hadoop/common/hadoop-2.2.0/

三台主机的OS:Ubuntu 12.04-64 server

相关阅读

在三台机器上创建相同的用户

(这是Hadoop的基本要求)

创建用户的步骤如下:

(1) sudoaddgroup hadoop

(2) sudoadduser --ingroup hadoop haduser

编辑/etc/sudoers编辑文件,在root ALL=(ALL)ALL行下添加haduser ALL=(ALL)ALL。如果不添加这行,haduser将不能执行sudo操作。

在三台主机上分别设置/etc/hosts 和/etc/hostname

hosts这个文件用于定义主机名和IP地址之间的映射关系。

127.0.0.1 localhost
172.20.120.200 master
172.20.120.201 slave1
172.20.120.202 slave2

 

hostname这个文件用于定义Ubuntu的主机名:如:master(或者slave1等)注:可能需要重启才生效。

设置无密码登陆

安装完成后会在~目录(当前用户主目录,即这里的/home/haduser)下产生一个隐藏文件夹.sshls -a 可以查看隐藏文件)。如果没有这个文件,自己新建即可(mkdir .ssh)。

接着在master上生成密钥并配置SSH无密码登录

具体步骤如下:(简化成master无秘钥访问slave,每台机器都做最好)

1进入.ssh文件夹

2 ssh-keygen -t rsa之后一路回车(产生秘钥)

3id_rsa.pub追加到授权的 key 里面去(catid_rsa.pub >> authorized_keys

4重启 SSH服务命令使其生效

将生成的authorized_keys文件拷贝到两台slave主机相同的文件夹下,命令如下:

scp authorized_keysslave1:~/.ssh/

scp authorized_keysslave2:~/.ssh/

此时已经可以进行ssh的无密码登陆,查看是否可以从master主机无密码登录slave输入命令

$:ssh slave1

$:ssh slave2

安装jdk

(这里以.tar.gz版本,64位系统为例),下载地址:http://www.Oracle.com/technetwork/java/javase/downloads/jdk8-downloads-2133151.html

选择要安装java的位置,如/usr/目录下,新建文件夹java(mkdirjava)

将文件jdk-8-linux-x64.tar.gz移动到/usr/java

解压:tar -zxvfjdk-8-linux-x64.tar.gz

至此,jkd安装准备完毕,下面配置环境变量

4.3、打开/etc/profile(vim /etc/profile)

在最后面添加如下内容:

exportJAVA_HOME=/usr/java/jdk1.8.0/

exportJRE_HOME=/usr/java/jdk1.8.0/

export PATH=$JAVA_HOME/bin:$JAVA_HOME/jre/bin:$PATH

exportCLASSPATH=$CLASSPATH:.:$JAVA_HOME/lib:$JAVA_HOME/jre/lib

exportJAVA_BIN=/usr/java/jdk1.8.0/bin

执行source/etc/profile

验证是否安装成功:java -version

java version"1.8.0"

Java(TM) SERuntime Environment (build 1.8.0-b132)

JavaHotSpot(TM) 64-Bit Server VM (build 25.0-b70, mixed mode)

注:每台机器执行相同操作,最好将java安装在相同路径下(不是必须的,但这样会使后面的配置方便很多)

ufw disable (重启生效)

至此,准备工作完毕!

第二部分 集群环境搭建

1、这里我们搭建一个由三台机器组成的集群:

172.20.120.200 haduser/passwd master namenode/ secondarynamenode/resourcemanger

172.120.120.201 haduser/passwd slave1 datanode/nodemanage

172.128.120.202 haduser/passwd slave2 datanode/nodemanage

上面各列分别为IP、user/passwd、hostname和在cluster中充当的角色

进入hadoop-2.2.0安装:

以下操作以haduser登录进行操作

由于hadoop集群中每个机器上面的配置基本相同,所以我们先在namenode上面进行配置部署,然后再复制到其他节点。所以这里的安装过程相当于在每台机器上面都要执行。但需要注意的是集群中64位系统和32位系统的问题。

1解压文件

将第一部分中下载的hadoop-2.2.0_64.tar.gz解压到/home/haduser/Hadoop/路径下。然后,将其存放于其他地方进行备份。注意:每台机器的安装路径要相同!!

2 hadoop配置过程

这里要涉及到的配置文件有7个:

~/hadoop-2.2.0/etc/hadoop/hadoop-env.sh

~/hadoop-2.2.0/etc/hadoop/yarn-env.sh

~/hadoop-2.2.0/etc/hadoop/slaves

~/hadoop-2.2.0/etc/hadoop/core-site.xml

~/hadoop-2.2.0/etc/hadoop/hdfs-site.xml

~/hadoop-2.2.0/etc/hadoop/mapred-site.xml

~/hadoop-2.2.0/etc/hadoop/yarn-site.xml

以上个别文件默认不存在的,可以复制相应的template文件获得。

配置文件1hadoop-env.sh

修改JAVA_HOMEexport JAVA_HOME=/usr/java/jdk1.8.0

配置文件2yarn-env.sh

修改JAVA_HOMEexportJAVA_HOME=/usr/java/jdk1.8.0

配置文件3slaves(这个文件里面保存所有slave节点)

写入以下内容:

slave1

slave2

相关推荐