zoukankan      html  css  js  c++  java
  • Apache版hadoop编译

    前言 

      做为大数据入门的基础,hadoop是每个大数据开发人员几乎不可避免的基础,目前hadoop已经发展到3.x.x版本,但当前企业使用的主流还是2.x.x版本,hadoop官网提供了编译后的hadoop,但这个是32位的,并且未供带C程序访问的接口,我们在使用本地库(可以用来做压缩,以及支持C程序等等)的时候就会出问题,所以需要自己再编译,之前自己编译过一次,但没有做总结,这次重新编译,做个总结记录一下。

    一、环境准备

        我是用的是 hadoop-2.8.5-src.tar.gz 版本,解压后找到BUILDING.txt

       此文件列出了我们需要使用的一些环境,官方给的是在Ubuntu上进行编译,这里我使用的是CentOS7 minimal,部分软件下载 Ubuntu和CentOS不同,这里给大家总结了出来,执行以下命令即可

     1 yum install -y gcc
     2 yum install -y gcc-c++
     3 yum install -y cmake
     4 yum install -y snappy
     5 yum install -y snappy-devel
     6 yum install -y openssl
     7 yum install -y autoconf
     8 yum install -y libtool
     9 yum install -y zlib-devel
    10 yum install -y pkgconfig
    11 yum install -y openssl-devel
    12 yum install -y bzip2
    13 yum install -y bzip2-devel
    14 yum install -y bzip2-libs

        上面是直接使用yum即可安装的,下面是需要我们自己下载相关文件编译安装,这里就不写这些软件的安装方式了,其中protobuf必须使用 2.5.0版本(注:谷歌将protobuf buffers放到github上后,已经找不到2.5.0官方版本了,这里提供一个从别人那里Fork到的提供给大家,protobuf-2.5.0)  

    1.    系统:CentOS Linux release 7.4.1708(minimal)
    2.    JDK:  java version "1.8.0_202"
    3.    MAVEN: apache-maven-3.6.0
    4.    ant: apache-ant-1.10.5
    5.    protobuf: protobuf-2.5.0  (必须)

     二、执行安装

        进入解压后的hadoop-2.8.5-src,执行  (这里maven可以将仓库挂载到宿主机的maven仓库,减少网络压力,挂载方法可以参考这里)

    mvn package -Pdist,native -Drequire.snappy -DskipTests -Dtar

       要确保网络的通常,此过程比较耗时,中间可能会出现有关jar包下载失败导致编译失败,再次编译即可

       编译完成后,hadoop-2.8.5-src/hadoop-dist/target  目录下即可找到我们编译后的文件

        解压  hadoop-2.8.5-src/hadoop-dist/target/hadoop-2.8.5.tar.gz  , bin文件夹下执行 ./hadoop checknative,即可查看是否成功将本地相关库编译成功

    最后啰嗦一下:

    1 java -version       #java查看版本
    2 mvn -v              #maven查看版本
    3 ant -version        #ant查看版本
    4 protoc --version    #protocol查看版本
  • 相关阅读:
    Get distinct count of rows in the DataSet
    单引号双引号的html转义符
    PETS Public English Test System
    Code 39 basics (39条形码原理)
    Index was outside the bounds of the array ,LocalReport.Render
    Thread was being aborted Errors
    Reportviewer Error: ASP.NET session has expired
    ReportDataSource 值不在预期的范围内
    .NET/FCL 2.0在Serialization方面的增强
    Perl像C一样强大,像awk、sed等脚本描述语言一样方便。
  • 原文地址:https://www.cnblogs.com/lly001/p/11153195.html
Copyright © 2011-2022 走看看