`
guiyu0856
  • 浏览: 39157 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

独家 安装 Hadoop 2.0.0-cdh4.3.0 LZO 成功

阅读更多

在经历过忍饥挨饿、老眼昏花的深夜加班,最后扛不住没搞定,今天周六,再次来从新梳理思路和审核每一步操作,最终苍天终不负,让我搞定了LZO的安装,使集群间lzo文件的对拷和读写成为现实。期间,重启集群不下30遍,甚至一度丢掉了所有文件(测试环境),重新格式化。真心不容易,同时我很喜悦!因此,只要坚持和努力,结果不会令人太失望!

言归正传,把我安装的过程记录一下,以备下次再安装时,我就驾轻就熟了。

1、安装JAVA、HADOOP、ANT等环境以及安装lzo、lzop系统工具,这里不赘述;

2、下载lzo源码(我是从这里下载的 https://github.com/twitter/hadoop-lzo)和下载 hadoop-gpl-compression源码(https://code.google.com/a/apache-extras.org/p/hadoop-gpl-compression/downloads/list)最新版

3、 由于lzo已经年久失修,而hadoop的版本却与时俱进,这就导致了lzo的源码显得老气横秋,而hadoop却无比娇艳。因此,原生的lzo是不支持新版hadoop的,需要更改。更改的地方也不多,不要害怕,这些需要自己动手,问度娘也不知道的,具体涉及的是两个类三个地方, "Impala V1.0安装之lzo "

4、去lzo的根目录下(即hadoop-lzo-master下),把lib目录下的jar删除,替换成你要对应的hadoop版本的jar包(我的是Hadoop 2.0.0-cdh4.3.0 );

5、对更改好的lzo源码进行编译,去lzo源码根目录下执行 

export CFLAGS=-m64

export CXXFLAGS=-m64

ant compile-native tar

把编译完成生产的 cp ./builder/hadoop-lzo-0.4.17-SNAPSHOT.jar $HADOOP_HOME/share/hadoop/yarn/lib

6、把更改好的lzo源码(java src部分)全部拷贝至 hadoop-gpl-compression-0.1.0 根目录下的 java src下。删除hadoop-gpl-compression-0.1.0目录下的lib,把 hadoop-lzo-master 下lib目录完全拷贝至 hadoop-gpl-compression-0.1.0目录下,在其根目录下执行

ant compile-native tar

拷贝结果 cp ./builder/hadoop-gpl-compression-0.1.0-dev.jar $HADOOP_HOME/share/hadoop/yarn/lib

tar -cBf - -C build/hadoop-gpl-compression-0.1.0-dev/lib/native . | tar -xBvf - -C  $HADOOP_HOME/lib/native

把hadoop的lib、share目录scp至各个节点

7、设置 各个节点设置~/.bashrc (这很重要,我就因为忘了设置JAVA_LIBRARY_PATH,一直没无法读取lzo )

export JAVA_LIBRARY_PATH=/export/servers/jdk1.6.0_25/jre/lib/amd64/server:/export/servers/jdk1.6.0_25/jre/lib/amd64/server::/usr/local/hadoop/lib/native/Linux-amd64-64:/usr/local/hadoop/lib/native:/usr/local/lib:/usr/local/hadoop/lib/native/Linux-amd64-64:/usr/local/hadoop/lib/native:/usr/local/lib

export LD_LIBRARY_PATH=$JAVA_LIBRARY_PATH

 

至此,大功告成,重启集群,执行 hdfs dfs -text /你的lzo文件,那么就可以看到结果了,如果成功了,那么恭喜你;如果不成功,继续努力,去审查每个过程,是否有漏掉的错误没有解决。

 

 

        欢迎进行交流,QQ:214814466

 

0
2
分享到:
评论
1 楼 guiyu0856 2013-09-20  
java.lang.UnsatisfiedLinkError: Native Library /data0/javaprogram/hdfsfilecp/javapro/lib/native/Linux-amd64-64/libgplcompression.so already loaded in another classloader

相关推荐

Global site tag (gtag.js) - Google Analytics