Ubuntu14.04上配置hadoop

来源:互联网 发布:c语言 double 误差 编辑:程序博客网 时间:2024/05/01 19:03

Ubuntu14.04上配置hadoop

断断续续的摸索了几天hadoop配置,简直太坑了,网上的各种配置版本不对,在自己电脑上不一定实用,总结一下自己遇到的错误。

期间总算找到一个比较靠谱的参考说明了,链接为:hadoop-2.6.0单机配置和伪分布式配置

一,按照步骤执行到WordCount处总是出错

错误为下:Unable to load native-hadoop library for your platform...

大概意思是版本不对,我在网上找了好多,都是是官方库文件时32位,而自己电脑时64位才会出错。可我这电脑本来就是32位的,为什么会出错呢。

后面找到一个说明,说是2.5.2,2.6.0后面的版本库文件时64位的。果然,用file命令查看发现官方包里的libhadoop.so.1.0.0文件竟然是64位的。

无赖只好自己编译。

1,安装maven,在安装过程中

sudo apt-get install maven 

看见中间有个网络链接等了很久也没连上,中间停止了安装,然后继续进行的。结果执行mvn --version时,发现有两个版本可选,出现的错误提示大概如下:

mvn 存在于下面的软件中中  *maven *maven2请管理员选择要安装的版本。

然后找了很多方法,都没有解决。可能时中间停止安装导致。只好直接用路径来执行了,查找到maven所在的路径为/usr/share/maven/bin,以便后面编译使用。

2,安装依赖库

sudo apt-get install g++ autoconf automake libtool cmake zlib1g-dev pkg-config libssl-dev
3,安装openssh

sudo apt-get install openssh-server
4,安装protoc

sudo apt-get install protobuf-compilerprotoc --version

5,cd进入HADOOP源代码目录 hadoop-2.6.0-src,执行:

<span style="color: rgb(51, 51, 51); font-family: Arial; font-size: 14px; line-height: 26px;"></span><pre name="code" class="cpp">/usr/share/maven/bin/mvn clean package -Pdist,native -DskipTests -Dtar

因为我的mvn直接执行有问题,所以用路径来直接执行的。

打给半个多小时后,执行成功会显示:BUILD SUCCESS。

其中可能会遇到错误,如下:

[ERROR] Failed to execute goal org.apache.maven.plugins:maven-javadoc-plugin:2.8.1:jar (module-javadocs) on project hadoop-maven-plugins: MavenReportException: Error while creating archive:
很不幸,我在编译中就遇到了,原因时用jdk1.8.0会有这个错误,切换其它版本。

用以下命令:

sudo vi /etc/profile

看到原来的jdk是1.8.0_60,

#set java environmentexport JAVA_HOME=/usr/lib/jvm/jdk1.8.0_25  export JRE_HOME=${JAVA_HOME}/jre  export CLASSPATH=.:${JAVA_HOME}/lib:${JRE_HOME}/lib  export PATH=${JAVA_HOME}/bin:$PATH 

只需要改一行即可:

export JAVA_HOME=/usr/lib/jvm/java-7-openjdk-i386
ok,查看java -version看到修改成功,即可。

二,重新安装下面博客中的执行

Ubuntu14.04下hadoop-2.6.0单机配置和伪分布式配置

在hadoop目录下执行WordCount:

bin/hadoop jar share/hadoop/mapreduce/sources/hadoop-mapreduce-examples-2.6.0-sources.jar  org.apache.hadoop.examples.WordCount input output 

结果如下:


然后运行伪分布式操作,其中遇到一个错误,如下:

Hadoop安装完后,启动时报Error: JAVA_HOME is not set and could not be found.
解决办法:
        修改/etc/hadoop/hadoop-env.sh中设JAVA_HOME。
        应当使用绝对路径。
        export JAVA_HOME=$JAVA_HOME                  //错误,不能这么改
        export JAVA_HOME=/usr/java/jdk1.8.0_60       //正确,应该这么改

为了省事,当时就是按照第一种方式改的。修改就成功了。










0 0