【工作经历:阿里巴巴搜索技术研发中心QA ,百度新产品测试部QA】
【领域:测试分析,自动化测试,性能测试,安全测试 】
【个人定位:高级测试工程师+培训师+领域产品专家】
hadoop单机版环境搭建
上一篇 /
下一篇 2010-03-30 23:58:47
/ 个人分类:Linux
项目中需要用到了hadoop,原有的hadoop环境因为
其他原因,有些冲突。自己就重新搭建了一套。
也为了以后自己可以更方便的
测试。
1、下载hadoop。这个在我之前的函数库中已经封装好了地址。直接hadoop_download 即可。
hadoop_download () { rsa `hostname -a`; wget
'http://labs.xiaonei.com/apache-mirror/hadoop/core/hadoop-0.18.3/hadoop-0.18.3.tar.gz'
'http://cds.sun.com/is-bin/INTERSHOP.enfinity/WFS/CDS-CDS_Developer-Site/en_US/-/ USD/VerifyItem-Start/jdk-6u14-linux-x64.bin?BundledLineItemUUID=Ev1IBe.p.mYAAAEilUYHlhw5&OrderID=AvVIBe.p208AAAEigkYHlhw5&ProductID=tPxIBe.oz2IAAAEhmh0zLjfT&FileName=/jdk-6u14-l inux-x64.bin'; tar zxvf hadoop-0.18.3.tar.gz; cd hadoop-0.18.3; [[ -z $JAVA_HOME ]] && print please set JAVA_HOME }
|
2、设置单机版的配置。在conf/hadoop-site.xml中,添加如下的配置
<configuration> <property> <name>fs.default.name</name> <value>hdfs://localhost:9000</value> </property> <property> <name>mapred.job.tracker</name> <value>hdfs://localhost:9001</value> </property> <property> <name>dfs.replication</name> <value>1</value> </property> </configuration>
|
在conf/hadoop-env.sh中,添加export JAVA_HOME=jdk的路径。
3、准备工作
把本机打通认证。就是让自己登陆自己不需要密码提示。使用函数库中的rsa 本机ip 即可。
格式化namenode
bin/hadoop namenode
–format |
4、启动
bin/start-all.sh 即可。
不过一般,可能会遇到一些奇怪的错误。比如
INFO hdfs.DFSClient:
org.apache.hadoop.ipc.RemoteException: java.io.IOException: File
<filename> could only be replicated to 0 nodes, instead of 1 |
当初遇到这种情况的时候,着实郁闷了一番。google无果。有人提出了方法,但是也不对。
后来考虑了下,可能是本机有其他的hadoop环境也在运行,可能是公用的东西有冲突。一般是/tmp下的文件。
我直接删除了/tmp下的相关文件,修改了所有的端口。然后重新格式化namenode。
然后重新启动。
结果OK。解决这个问题,是本次最大的收获。。
4、多机版的配置
触类旁通吧,修改相关的配置文件即可。做测试的话,单机版就OK.不够的话,就需要再conf/slave里面多添加几列ip吧。
5、若干问题记录。
hadoop的slave文件,是个鸡肋。系统读取相关的资源,是从hadoop-default.xml与hadoop-site.xml中读取的。配置好这两个文件是关键。
master,与slave只不过是client端使用。
启动后可以通过web界面去访问相关的信息,查看是否正常工作。
访问50070即可。
收藏
举报
TAG: