hadoop0.20.1在centos5.5上的安装与运行

本文详细介绍在 CentOS 5.5 下安装配置 Hadoop 0.20.1 的步骤,并实现 Eclipse 开发环境的搭建。包括 JDK 安装、SSH 无密码验证、Hadoop 安装配置及 Eclipse 插件集成。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

[b]前言:[/b]
想学习hadoop,google了许久,找到两本资料《hadoop权威指南》清华大学出版社出版的,另外一本是《hadoop in action》,均是中文版。个人觉得前者适合理论学习和查阅,后者可以当做实践练习(具体过程中由于hadoop版本问题以及其他种种原因,书上的例子运行起来会让菜鸟很蛋疼,至少我是这样,哎。。),网上关于安装hadoop的教程已经很多,可是本人很负责任地告诉正在阅读此文的读者(你就暗爽吧,少走许多冤枉路):大多数都是坑爹!十分的坑爹!尤其是对于使用centos的同学,因为铺天盖地的几乎都是ubuntu下安装。。。安装过程中遇到许多问题,主要包括:
1 hadoop版本的选择。
2 centos中自带的openjdk与自行安装的jdk-6u20-linux-i586.bin,在运行eclipse时出现的问题。
3 利用eclipse做hadoop开发时,eclipse不能使用的问题。
本文主要用于记录本人摸索半个月后,终于在centos5.5上安装hadoop0.20.1(伪分布模式)并且利用eclipse做开发的步骤和心得,仅供参考,不喜勿喷,有错误的地方希望留言指正。
*********************************************************************************
[b]安装jdk[/b]
采用版本:jdk-6u20-linux-i586.bin
安装方法:
新建目录/usr/java
# mkdir /usr/java
将jdk-6u20-linux-i586.bin拷贝至 /opt/java目录下并切换当前工作目录为/usr/java
# cd /usr/java
对所有用户赋予安装文件“可执行”权限
# sudo ./jdk-6u20-linux-i586.bin
之后就是安装了,按照提示操作,很快就结束
安装完毕后,配置/etc/profile中的变量。添加内容如下:
---------------------------------------------------------------------
[color=blue]# set java enviroment
export JAVA_HOME=/usr/java/jdk1.6.0_20
export JRE_HOME=/usr/java/jdk1.6.0_20/jre
export PATH=$PATH:$JAVA_HOME/bin:$JRE_HOME/bin
export CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar[/color]
--------------------------------------------------------------------
运行一下代码使得配置文件生效
# source /etc/profile
将目录切换至/usr/bin设置链接(该链接据说是为了引导centos将其默认jdk设置为我们安装的jdk,否则centos会去寻找自带的openjdk)
cd /usr/bin
# ln -s -f /usr/java/jdk1.6.0_20/jre/bin/java
# ln -s -f /usr/java/jdk1.6.0_20/bin/javac
安装完jdk后,再卸载系统自带jdk
通过以下命令可以查看本系统jdk
# rpm -qa|grep jdk
删除除了jdk1.6.0_20以外的jdk,本文所涉及需删除的jdk如下
# yum -y remove java java-1.4.2-gcj-compat-1.4.2.0-40jpp.115
删除完成后,再次运行
# source /etc/profile
测试一下,看看是不是此时系统只有我们安装的那个jdk
# java -version
# javac
大致出现如图1_java.jpg所示,则说明此步骤安装成功。

[img]http://dl.iteye.com/upload/attachment/0070/2633/a2b1296e-0404-317f-afc8-3d6c1b8cac3b.jpg[/img]

**********************************************************************************
[b]ssh无密码验证登录localhost(SSH服务已经安装)[/b][size=medium][/size]
启动终端,执行命令:
# ssh-keygen -t dsa -P '' -f ~/.ssh/id_dsa
# cat ~/.ssh/id_dsa.pub >> ~/.ssh/authorized_keys
#测试SSH无密码验证
# ssh localhost
The authenticity of host 'localhost (127.0.0.1)' can't be established.
RSA key fingerprint is 79:91:d5:b6:3f:6f:8c:e4:72:1a:65:c6:3c:ee:2e:87.
Are you sure you want to continue connecting (yes/no)? yes
Warning: Permanently added 'localhost' (RSA) to the list of known hosts.
Last login: Wed May 23 20:41:09 2012


**********************************************************************************
[b]安装hadoop[/b]
(之所以选择hadoop0.20.1,是考虑到这个版本可以向下兼容,0.20之后的版本都不兼容老版本的hadoop了,头疼的是本来就少有的参考书还基本都是基于0.19版本的)
采用版本:hadoop-0.20.1.tar.gz
# cd /opt
将hadoop安装文件hadoop-0.20.1.tar.gz拷贝至/opt目录下,安装
# tar -zxvf hadoop-0.20.1.tar.gz
完成后配置/opt/hadoop-0.20.1/conf/hadoop-env.sh,添加如下内容
------------------------------------------------------------------------
[color=blue]export JAVA_HOME=/usr/java/jdk1.6.0_20
export HADOOP_HOME=/opt/hadoop-0.20.1
export PATH=$PATH:$HADOOP_HOME/bin[/color]
------------------------------------------------------------------------
根据所需要的模式进行单机/伪分布/集群配置,我们选择伪分布:
hadoop伪分布配置: 更改/opt/hadoop/hadoop-0.20.1/conf/目录下的三个xml文件
core-site.xml
======================================
 <configuration>  
<property>
<name>fs.default.name</name>
<value>hdfs://localhost:9000</value>
</property>
<property>
<name>hadoop.tmp.dir</name>
<value>/tmp/hadoop/hadoop-${user.name}</value>
</property>
</configuration>

======================================

hdfs-site.xml
======================================
 <configuration>  
<property>
<name>dfs.replication</name>
<value>1</value>
</property>
</configuration>

======================================

mapred-site.xml
======================================
 <configuration>  
<property>
<name>mapred.job.tracker</name>
<value>localhost:9001</value>
</property>
</configuration>

======================================

最后测试,运行jps命令后,出现6个进程则表示安装正确
# cd /opt/hadoop-0.20.1
# bin/hadoop namenode -format
12/05/24 09:53:34 INFO namenode.NameNode: STARTUP_MSG:
/************************************************************
STARTUP_MSG: Starting NameNode
STARTUP_MSG: host = localhost.localdomain/127.0.0.1
STARTUP_MSG: args = [-format]
STARTUP_MSG: version = 0.20.1
STARTUP_MSG: build = https://svn.apache.org/repos/asf/hadoop/common/branches/branch-0.20 -r 911707; compiled by 'chrisdo' on Fri Feb 19 08:07:34 UTC 2010
************************************************************/
12/05/24 09:53:35 INFO namenode.FSNamesystem: fsOwner=root,root,bin,daemon,sys,adm,disk,wheel
12/05/24 09:53:35 INFO namenode.FSNamesystem: supergroup=supergroup
12/05/24 09:53:35 INFO namenode.FSNamesystem: isPermissionEnabled=true
12/05/24 09:53:35 INFO common.Storage: Image file of size 94 saved in 0 seconds.
12/05/24 09:53:35 INFO common.Storage: Storage directory /tmp/hadoop/hadoop-root/dfs/name has been successfully formatted.
12/05/24 09:53:35 INFO namenode.NameNode: SHUTDOWN_MSG:
/************************************************************
SHUTDOWN_MSG: Shutting down NameNode at localhost.localdomain/127.0.0.1
************************************************************/
# bin/start-all.sh
starting namenode, logging to /opt/hadoop-0.20.1/logs/hadoop-root-namenode-localhost.localdomain.out
localhost: starting datanode, logging to /opt/hadoop-0.20.1/logs/hadoop-root-datanode-localhost.localdomain.out
localhost: starting secondarynamenode, logging to /opt/hadoop-0.20.1/logs/hadoop-root-secondarynamenode-localhost.localdomain.out
starting jobtracker, logging to /opt/hadoop-0.20.1/logs/hadoop-root-jobtracker-localhost.localdomain.out
localhost: starting tasktracker, logging to /opt/hadoop-0.20.1/logs/hadoop-root-tasktracker-localhost.localdomain.out
# jps
3866 DataNode
3763 NameNode
3987 SecondaryNameNode
4059 JobTracker
4221 Jps

**********************************************************************************
[b]eclipse安装[/b]
# cd /opt
将eclipse安装文件eclipse-SDK-3.5.2-linux-gtk.tar.gz拷贝至/opt目录下
# tar -zxvf eclipse-SDK-3.5.2-linux-gtk.tar.gz
解压缩完成后将hadoop-0.20.1-eclipse-3.5-plugin.jar(这个是挺关键的,且该插件只能用于eclipse3.5.2版本,附件中可以下载)拷贝至eclipse的plugins目录下
对eclipse/eclipse.ini进行修改,如下(主要添加jvm路径):
------------------------------------------------------------------------------
[color=blue]-startup
plugins/org.eclipse.equinox.launcher_1.0.201.R35x_v20090715.jar
--launcher.library
plugins/org.eclipse.equinox.launcher.gtk.linux.x86_1.0.200.v20090520
-showsplash
org.eclipse.platform
--launcher.XXMaxPermSize
256m[/color]
[color=red]-vm
/usr/java/jdk1.6.0_20/bin/java[/color]
[color=blue]-vmargs
-Xms40m
-Xmx256m[/color]
--------------------------------------------------------------------------------
完成后可以运行/opt/eclipse目录下的eclipse文件打开eclipse。

[img]http://dl.iteye.com/upload/attachment/0070/2683/fa90ab1f-bec5-349a-8f66-6b136830c293.jpg[/img]


--------------------------------------------------------------------------------
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值