文档章节

编译Hadoop-64 bit

ifree613
 ifree613
发布于 2016/03/04 14:59
字数 747
阅读 35
收藏 0

Hadoop源码版本:2.5.2

名称 版本
JDK

1.7u75(64bit)


Maven 3.3.1
Protobuf 2.5.0
autoconfautomake yum自动选择
libtool yum自动选择
cmake yum自动选择
openssl-devel yum自动选择
ncurses-devel yum自动选择
gcc* yum自动选择

4.2、安装依赖软件

yum install autoconfautomake libtool cmake

yum install openssl-devel

yum install ncurses-devel

yum install gcc*

4.2、安装maven

maven解析到安装目录,然后配置环境变量

MAVEN_HOME=/home/bdata/software/apache-maven-3.3.1

PATH=.:$MAVEN_HOME/bin

 

设置maven配置文件(settings.xml

本例设置如下:

<?xml version="1.0" encoding="UTF-8"?>

 

<settings xmlns="http://maven.apache.org/SETTINGS/1.0.0"

          xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"

          xsi:schemaLocation="http://maven.apache.org/SETTINGS/1.0.0 http://maven.apache.org/xsd/settings-1.0.0.xsd">

 

  <!-- <localRepository>D:\Program Files\JavaSoft\apache-maven-3.1.0\repository</localRepository> -->

  <pluginGroups>  

  </pluginGroups>

  <proxies>

  </proxies>

  <servers>

       <server>

              <id>releases</id>

              <username>admin</username>

              <password>admin123</password>

       </server>

       <server>

              <id>snapshots</id>

              <username>admin</username>

              <password>admin123</password>

       </server>

  </servers>

  <mirrors>  

        <mirror>

      <id>nexts-central</id>

      <url>http://192.168.50.213:8081/nexus/content/repositories/central/</url>

      <mirrorOf>central</mirrorOf>

    </mirror>

       <mirror>

      <id>nexts-apache-snapshot</id>

      <url>http://192.168.50.213:8081/nexus/content/repositories/apache-snapshots/</url>

      <mirrorOf>apache-snapshots</mirrorOf>

    </mirror>

       <mirror>

      <id>nexts-codehaus-snapshots</id>

      <url>http://192.168.50.213:8081/nexus/content/repositories/codehaus-snapshots/</url>

      <mirrorOf>codehaus-snapshots</mirrorOf>

    </mirror>

       <mirror>

      <id>nexts-thirdparty</id>

      <url>http://192.168.50.213:8081/nexus/content/repositories/thirdparty/</url>

      <mirrorOf>thirdparty</mirrorOf>

    </mirror>      

       <mirror>

              <id>nexus-osc</id>

              <mirrorOf>*</mirrorOf>

              <name>Nexus osc</name>

              <url>http://maven.oschina.net/content/groups/public/</url>

       </mirror>

       <mirror>

              <id>osc_thirdparty</id>

              <mirrorOf>thirdparty</mirrorOf>

              <url>http://maven.oschina.net/content/repositories/thirdparty/</url>

       </mirror>

  </mirrors>

  <profiles>

    <profile>

      <!--this profile will allow snapshots to be searched when activated-->

      <id>nexus</id>

      <repositories>        

              <repository>

                     <id>nexts-central</id>

                     <name>local private nexus</name>

                     <url>http://192.168.50.213:8081/nexus/content/groups/public</url>

                     <releases>

                            <enabled>true</enabled>

                     </releases>

                     <snapshots>

                            <enabled>false</enabled>

                     </snapshots>

              </repository>

             

              <repository>

                     <id>nexus thirdparty</id>

                     <name>local private thirdparty</name>

                     <url>http://192.168.50.213:8081/nexus/content/repositories/thirdparty</url>

                     <releases>

                            <enabled>true</enabled>

                     </releases>

                     <snapshots>

                            <enabled>true</enabled>

                     </snapshots>

              </repository>

             

              <repository>

                     <id>nexus-osc</id>

                     <name>Nexus osc</name>

                     <url>http://maven.oschina.net/content/groups/public/</url>

                     <releases>

                            <enabled>true</enabled>

                     </releases>

                     <snapshots>

                            <enabled>true</enabled>

                     </snapshots>

              </repository>

             

              <repository>

                     <id>osc_thirdparty</id>

                     <mirrorOf>thirdparty</mirrorOf>

                     <url>http://maven.oschina.net/content/repositories/thirdparty/</url>

                     <releases>

                            <enabled>true</enabled>

                     </releases>

                     <snapshots>

                            <enabled>true</enabled>

                     </snapshots>

              </repository>

      </repositories>

        

      <pluginRepositories>

              <pluginRepository>

                     <id>nexus</id>

                     <name>local private nexus</name>

                     <url>http://192.168.50.213:8081/nexus/content/groups/public</url>

                     <releases>

                            <enabled>true</enabled>

                     </releases>

                     <snapshots>

                            <enabled>false</enabled>

                     </snapshots>

              </pluginRepository>

             

              <pluginRepository>

                     <id>nexus-osc</id>

                     <name>local private nexus</name>

                     <url>http://maven.oschina.net/content/groups/public/</url>

                     <releases>

                            <enabled>true</enabled>

                     </releases>

                     <snapshots>

                            <enabled>false</enabled>

                     </snapshots>

              </pluginRepository>

      </pluginRepositories>

       </profile>

      

       <activeProfiles> 

              <activeProfile>nexus</activeProfile> 

       </activeProfiles> 

  </profiles>

</settings>

4.3、安装probuf

下载列表:https://github.com/google/protobuf/tags

下载地址(2.5.0版本)      https://s3.amazonaws.com/github-cloud/releases/23357588/09f5cfca-d24e-11e4-9840-20d894b9ee09.gz?response-content-disposition=attachment%3B%20filename%3Dprotobuf-2.5.0.tar.gz&response-content-type=application/octet-stream&AWSAccessKeyId=AKIAISTNZFOVBIJMK3TQ&Expires=1427785708&Signature=0FSZzyD%2BCgxJqn9dSnZj4tmCKCw%3D

 

       #./configure

       #make

       #make check

#make install

#protoc --version

libprotoc 2.5.0

 

4.4、编译

cd $hadoop_src_home/

mvn package -Pdist,native -DskipTests -Dtar

#编译时间可能持续20分钟左右,最终显示BUILD SUCCESS说明编译成功,可以开始部署了。

4.4、编译常见异常

  • 1、protobuf版本与hadoop源码依赖版本不一致。

hadoop-2.5.0必须使用protobuf-2.5.0

  • 2、Maven编译找不到依赖jarplugin,远程仓库设置不正确,导致maven无法下载jar文件。

把有效远程仓库地址加入mavensettings.xml

国内稳定私服:os-china(开源中国)

国外稳定私服:maven中央仓库(有可能因为网络地址被屏蔽无法下载,可以使用代理访问或改用国内私服)

建议搭建公司内部私服(sonatype-nexus),具体部署方案请网络搜索


© 著作权归作者所有

共有 人打赏支持
ifree613

ifree613

粉丝 28
博文 27
码字总数 44789
作品 0
成都
高级程序员
如何查看Hadoop是32位还是64位

hadoop在安装的时候,我们需要知道hadoop版本是32位还是64位。 hadoop官网本来提供的都是32位,因为我们大部分都是64位操作系统,所以不得不编译。后来官网从hadoop2.5版本开始就提供了64位。...

pmos
2016/04/21
349
0
YARN加载本地库Unable to load native-hadoop library解决办法

用官方的构建好的Hadoop 2.4.0(133MB)安装后,每次输入hadoop命令进去都会得到这样一个Warning,如图: WARN util.NativeCodeLoader: Unable to load native-hadoop library for your plat...

摆渡者
2014/05/28
0
0
Hadoop fuse_dfs编译与安装

Fuse-dfs可以将HDFS文件系统mount到本地,用于执行一些ls等基本的系统操作命令。Fuse-dfs位于$HADOOP_HOME/src/contrib/fuse-dfs目录下,需要用户进行编译。现将其编译步骤总结如下: 1.安装...

sdzzboy
2013/10/16
0
0
从零开始的 Win7 64Bit 编译Hadoop3

前言 最近在接触Hadoop方面的知识。去官网逛了一圈发现最新版本已经是3.0.0-alpha1了。刚好在搭建Hadoop的环境,就决定使用最新版本的Hadoop试试水。因为自己使用的机器是windows的,逛了一圈...

Alex_Nine
2016/11/02
474
0
centos 64位 hadoop编译

如果安装的centos是64位机,hadoop官网给出的源码是32位的,直接运行的话,会出现下面的信息: Java HotSpot(TM) 64-Bit Server VM warning: You have loaded library /usr/local/hadoop-2.2...

kt431128
2014/06/04
0
0

没有更多内容

加载失败,请刷新页面

加载更多

解析高可用分布式键值存储 etcd 的原理

这篇文章将会介绍 etcd 的实现原理,其中包括 Raft 协议、存储两大模块,在最后我们也会简单介绍 etcd 一些具体应用场景。 etcd 的官方将它定位成一个可信赖的分布式键值存储服务,它能够为整...

小刀爱编程
17分钟前
1
0
在ubuntun虚拟机里安装goLang语言编程环境

Go语言是谷歌2009发布的第二款开源编程语言。 Go语言专门针对多处理器系统应用程序的编程进行了优化,使用Go编译的程序可以媲美C或C++代码的速度,而且更加安全、支持并行进程。 北京时间201...

JerryWang_SAP
18分钟前
5
0
c++builder导出函数export function DLL

__stdcall __export 即可,如: ulong __stdcall __export od_disasm(char *src,ulong srcsize,ulong srcip, t_disasm *disasm,int disasmmode){ return Disasm(src,srcsiz......

simpower
19分钟前
2
0
KDC服务安装及配置

阿伦哥-
22分钟前
1
0
mybatis-plus公共字段操作以及springboot2整合mybatis-plus

1、公共实体 对于User类中有而user表中没有的属性需要加第二个注解@TableField(exist = false),表示排除User类中的属性 所有新增公共字段加注解 并指定 @TableField(value = "corp_code",fi...

glen_xu
27分钟前
1
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部