hadoop环境配置


我这次Hahoop环境的搭建中所使用的硬件是4台服务器。使用hadoop为Hadoop的用户,机器名和IP依次为vc1(192.168.1.1),vc2(192.168.1.2),vc3(192.168.1.3)和vc4(192.168.1.4)。因为四台机器中vc3配置高点,所以作为Hadoop的Namenode,其他的作为Datanode.

详细环境配置介绍如下:

Hadoop版本为0.20.2.

JDK版本为1.6.0.

操作系统为FreeBSD8.0(最小化安装)

vc3(192.168.1.3)是Namenode(Master),其他三台作为Datenode(slave).

Hadoop是Java语言编写的机群程序,他的安装时建立在ssh和JDK之上的,所以在配置Hadoop之前首先要对系统进行ssh和JDK的安装与配置。

1.下面首先来通过ssh来实现Hadoop节点之间用户的无密码访问。

(1).在各个节点的/etc/hosts文件中添加节点IP及对应机器名,并在各个节点上建立相同用户名与密码的账户。

修改/etc/hosts文件如下:

192.168.1.1      vc1

192.168.1.2      vc2

192.168.1.3      vc3

192.168.1.4      vc4

修改成功后就可以实现IP地址与机器名的对应解析。

在各个节点建立用户名为Hadoop,密码为123456的用户。

(2).实现节点间通过ssh无密码访问。

在vc3的/home/hadoop目录建立.ssh目录。

mkdir .ssh           //建立.ssh目录

在/home/hadoop目录下进行ssh配置。

ssh-keygen -t rsa             //生成密匙对

cd /home/hadoop/.ssh

cp id_rsa.pub authorized_keys

chmod go-rwx authorized_keys     //要正确设置文件的权限644(即go-rwx)

scp -r /home/hadoop/.ssh vc1:/home/hadoop      //将vc3中的.ssh文件夹内容复制到vc2节点的相同位置去。

scp -r /home/hadoop/.ssh vc2:/home/hadoop      //同上

scp -r /home/hadoop/.ssh vc4:/home/hadoop      //同上

(3).测试是否配置成功

同过ssh+机器名命令测试能否无密码访问其他计算机,如果无密码访问则配置成功。

例:vc1使用ssh vc3是否能无密码访问vc3,vc3使用ssh vc1是否能无密码访问vc1。(其他主机方法类似)

2.JDK的安装

在这里利用ports安装JDK。在安装时要先下载如下几个文件:

jdk-1_6_0_16-fcs-bin-b02-jrl-28_may_2008.jar

jdk-1_5_0_16-fcs-src-b02-jrl-28_may_2008.jar

tzupdater-1_3_12-2009a.zip

bsd-jdk16-patches-9.tar.bz2

diablo-caffe-freebsd7-i386-1.6.0_07-b02.tar.bz2

到usr/ports/distfiles/目录,然后进入/usr/ports/java/jdk16进行安装。在这里需要说的是在安装JDK的时候最好安装最新版本,即1.6.0,否则在后面的Hadoop运行过程中可能会出错。

cd /usr/ports/java/jdk16     //进入jdk安装目录

make install clean        //安装jdk

还有一种安装方法是去Sun官网下载JDK软件包jdk-6u12-Linux-i586.bin进行安装。(我没试过,不知道行不行,只是提一下。)把下载的JDK软件放到/home/hadoop目录下,给软件加上可执行权限,如下:

chmod a+x jdk-6u12-Linux-i586.bin

运行jdk-6u12-Linux-i586.bin进行安装。

./jdk-6u12-Linux-i586.bin

安装完成后会在当前目录生成jkd1.6.0_12文件夹。把生成的文件夹复制到/usr/java文件夹中。

mkdir /usr/java          //新建java文件夹

cp -r jkd1.6.0_12  /usr/java

下载设置环境变量,修改/etc/profile文件。在该文件中添加如下代码:

export JAVA_HOME"/usr/java/jkd1.6.0_12"

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

export CLASSPATH ="$CLASSPATH:$JAVA_HOME/lib:$JAVA_HOME/jre/lib"

保存后键入命令:

source /etc/profile

使环境变量设置生效。

安装好JDK后可以通过which命令来测试JDK是否安装成功:

which java

若是第一种方法显示信息如下:

/usr/local/jdk1.6.0/bin/java

如是第二种方法显示信息如下:

/usr/java/jkd1.6.0_12/bin/java

3.下来进行Hadoop的安装和配置。

下载hadoop-0.20.2.tar.gz到/home/hadoop目录,并解压:

tar -vxzf hadoop-0.20.2.tar.gz     //解压hadoop到当前目录

解压完后进入/home/hadoop/hadoop-0.20.2/conf目录进行配置。

cd /home/hadoop/hadoop-0.20.2/conf

(1).修改hadoop-env.sh配置文件如下:

export JAVA_HOME=/usr/local/jdk1.6.0

(2).修改masters和slaves配置文件如下:

masters文件:

192.168.1.3

slaves文件:

192.168.1.1

192.168.1.2

192.168.1.4

(3).修改core-site.xml文件如下:

<?xml version="1.0"?>

<?xml-stylesheet type="text/xsl" href="configuration.xsl"?>

<!-- Put site-specific property overrides in this file. -->

<configuration>

<property>

<name>fs.default.name</name>

<value>hdfs://202.113.88.73:9000</value>

</property>

<property>

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

<value>/tmp/hadoop/hadoop-${user.name}</value>

</property>

</configuration>

(4).修改hdfs-site.xml文件如下:

=====line 1 col 0 lines from top 1 ============================================

<?xml version="1.0"?>

<?xml-stylesheet type="text/xsl" href="configuration.xsl"?>

<!-- Put site-specific property overrides in this file. -->

<configuration>

<property>

<name>dfs.replication</name>

<value>1</value>

</property>

</configuration>

(5).修改mapred-site.xml文件如下:

<?xml version="1.0"?>

<?xml-stylesheet type="text/xsl" href="configuration.xsl"?>

<!-- Put site-specific property overrides in this file. -->

<configuration>

<property>

<name>mapred.job.tracker</name>

<value>202.113.88.73:9001</value>

</property>

</configuration>

配置文件修改完毕后格式化Namenode(运行Hadoop之前必须先进行格式化),进入/home/hadoop/hadoop-0.20.2/目录,命令如下:

./bin/hadoop namenode -format

格式化完毕后就可以运行Hadoop了,命令如下:

./bin/start-all.sh      //在/home/hadoop/hadoop-0.20.2/目录下运行

如果要停止运行如下命令:

./bin/stop-all.sh       //在/home/hadoop/hadoop-0.20.2/目录下运行

到此,Hadoop的配置已经完成了.
  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值