hadoop

hadoop官方网站:
[url]http://hadoop.apache.org/[/url]

中文介绍参考网站:
[url]http://hadoop.apache.org/docs/r1.0.4/cn/quickstart.html[/url]

[b]hadoop下载:[/b]
这里提供两种方式:
1. 编译好的文件:
[url]http://hadoop.apache.org/releases.html#Download[/url]
[url]http://apache.fayea.com/apache-mirror/hadoop/common/[/url]

笔者当时采用这种方式。需要注意的,该文件是用32位操作系统编译的,如果用这个文件部署到64位操作系统会有warn提示信息。但不影响hadoop的运行。
如果不想启动出现warn日志提示,可下载源代码,自行在64位操作系统下进行编译。
通过下面使命可查看到这种方式是32位系统下编译的。
[img]http://dl2.iteye.com/upload/attachment/0102/0046/42625db3-ded8-3733-8695-15980e4aa90a.jpg[/img]


2.下载源代码
通过svn 下载源码:[url]http://svn.apache.org/repos/asf/hadoop/common/branches/[/url]
具体编译方式,可上网查资料。有很详细的说明。
编译示例:[url]http://blog.csdn.net/wind520/article/details/38331167[/url]
编译时需要安装protobuf.
由于网络原因,wget https://protobuf.googlecode.com/files/protobuf-2.5.0.tar.gz下载不了,可从本文附件中下载。
maven hadoop 依赖:[url]http://mvnrepository.com/tags/hadoop[/url]
按照指示,在打包的时候出现一个错误。
最终还是报了一个错:

[ERROR] Failed to execute goal org.apache.maven.plugins:maven-antrun-plugin:1.6:run (make) on project hadoop-common: An Ant BuildException has occured: Execute failed: java.io.IOException: Cannot run program "cmake" (in directory "/root/hadoop-2.2.0-src/hadoop-common-project/hadoop-common/target/native"): error=2, No such file or directory -> [Help 1]


是没有安装cmake
# cd
# wget http://www.cmake.org/files/v2.8/cmake-2.8.12.2.tar.gz
# tar zxvf cmake-2.8.12.2.tar.gz
# cd cmake-2.8.12.2
# ./configure
# gmake
# gmake install

执行mvn 打包命令。最后成功:
[img]http://dl2.iteye.com/upload/attachment/0102/2592/811f5802-5191-3753-89f8-08082767c4a9.jpg[/img]

然后file下hadoop/lib/native。如图:发现已经是64位的。
[img]http://dl2.iteye.com/upload/attachment/0102/2594/f33f201f-ff62-33b8-87c7-d17825d860a6.jpg[/img]


整打包比较耗时,我把打好的包上传到百度云。下面是下载的链接:
[url]http://pan.baidu.com/s/1c0b9pAS[/url]

payattentin :
在$HADOOP_HOME/etc/hadoop/hadoop-env.sh中加入:
export HADOOP_OPTS="-Djava.library.path=$HADOOP_HOME/lib:$HADOOP_HOME/lib/native"


[b]hadoop安装[/b]
安装我分了三个步骤:
1.环境准备:
linux操作系统,JDK
此处省去1W字。

2.ssh 环境创建
关于SSH环境创建,请参考: [url]http://www.cnblogs.com/xia520pi/archive/2012/05/16/2503949.html[/url]
这篇文件介绍的很详细。而且是通篇介绍了hadoop的安装过程。感谢文章作者,让许多刚入手搭建hadoop的开发者少走了些弯路。

这里补充说明的SSH配置结束后,请用SSH IP 的方式来验证master和slaves之间SSH通信。


3.hadoop配置

Hadoop三种安装模式:单机模式,伪分布式,真正分布式
建议用第三种方式,构建一般产品环境真正的分布式模式。
这里需要说明的:网上很多例子讲述的都是比较老的版本的配置。笔者采用的hadoop2.4.1
这个版本是第二新的。不同版本之间配置项的参数和文件都不相同。
我是参考
[url]http://blog.itpub.net/26613085/viewspace-1219710/[/url]
这里做了调整,在其阐述的配置中,并没有用hostname,而一律用的是IP.
修改了如下配置:
hadoop-env.sh,yarn-env.sh 配置JAVA_HOME等环境变量
core-site.xml,hdfs-site.xml,mapred-site.xml,yarn-site.xml
建议:先统一处理master上配置。做好后再scp到slaves结点服务器上。

最后启动没用问题。
如图所示:
[img]http://dl2.iteye.com/upload/attachment/0102/0048/a00c4978-2642-30a8-b06c-b5e8d91cfcce.jpg[/img]

标红的可以查看hadoop启动以及运行时产生的各种日志。
各个slave上也有同样的日志。

[b]eclipse访问hadoop[/b]

这里提供了两个插件的下载。放到eclipse的plugin目录下,然后重启tomcat即可。
其中hadoop-eclipse-plugin.jar是JDK1.6编译的。
而hadoop-2.4.1-eclipse-4.4-plugin是JDK1.7编译的。

[url]http://pan.baidu.com/s/1qWrzEqg[/url]
[url]http://pan.baidu.com/s/1gdKitcJ[/url]

JDK考虑到兼容性的问题,低版本运行在高的JDK上面不会有问题,但是高版本编译的插件运行在低版本JDK会报错。如下所示:
[img]http://dl2.iteye.com/upload/attachment/0102/0050/fbf67ea9-d9eb-344c-98aa-14da4a20ea2f.jpg[/img]

最后是配置eclipse上的配置:
请参考网上其他资料.
[img]http://dl2.iteye.com/upload/attachment/0102/0056/7575b5e4-0ad8-330d-aabc-1e1260302fad.jpg[/img]
关于Map/Reduce 和DFSMaster的配置项请参考两个文件:
Map/Reduce:mapred-site.xml
DFSMaster:core-site.xml

在DFS Locations下连接hadoop成功。但是上传和下载发生错误。查看日志:
org.apache.hadoop.util.Shell$ExitCodeException: id: Administrator:无此用户

这是因为我是在windows操作下操作的,而且当前用户是Administrator,eclipse以些用户去连hadoop.而且集群配置的帐户是hadoop.
有三种解决方案:
(1)修改Advanced parameters.好几十项配置,我也不清楚改哪个。但我估计是可以的。查了网上资料也说的不明白。主要是因为版本不一致的原因。
(2)用wind7 的管理员Administraor创建了一个hadoop(跟SSH的帐户相同)帐户,在这个帐户下操作,成功了。但是觉得也不太好。
(3)第三种,还可以去掉hdfs的权限检查
打开conf/hdfs-site.xml,找到dfs.permissions属性修改为false(默认为true)OK了。
        <property>
<name>dfs.permissions</name>
<value>false</value>
</property>

改完需要重启HDFS;
做完后,是正常连接到hadoop。通过eclipse插件操作文件增,删,查操作也成功了。
这里还有个问题,就是后台日志仍然会报:
org.apache.hadoop.util.Shell$ExitCodeException: id: Administrator:无此用户
这个错误。
但不影响操作。笔者认为在DEV环境或者自已搭建的环境可以产用这种方式。生产环境肯定是不允许的。一定要验证用户的身份。
(4)还有一种,TBD.

eclipse 调试时,仍出现了些问题,参照下面信息后,调试通过。
[url]http://blog.csdn.net/yueritian/article/details/23991741[/url]

测试用例:
[url]http://www.cnblogs.com/xia520pi/archive/2012/06/04/2534533.html[/url]

export JAVA_HOME=/data/index/Work/install/jdk1.7.0_55
export JRE_HOME=/data/index/Work/install/jdk1.7.0_55/jre
export CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar
export PATH=.:$JAVA_HOME/bin:$PATH

#set hadoop path
#set hadoop path
export HADOOP_HOME=/usr/hadoop
export HADOOP_COMMON_HOME=$HADOOP_HOME
export HADOOP_HDFS_HOME=$HADOOP_HOME
export HADOOP_MAPRED_HOME=$HADOOP_HOME
export HADOOP_YARN_HOME=$HADOOP_HOME
export HADOOP_CONF_DIR=$HADOOP_HOME/etc/hadoop
export PATH=$PATH:$HADOOP_HOME/bin:$HADOOP_HOOME/sbin:$HADOOP_HOME/lib
export HADOOP_COMMON_LIB_NATIVE_DIR=$HADOOP_HOME/lib/native
export HADOOP_OPTS="-Djava.library.path=$HADOOP_HOME/lib"

hbase安装
[url]http://www.micmiu.com/bigdata/hbase/hbase-setup-full-distributed/[/url]
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值