* Hadoop-CDH源码编译

这一节我们主要讲解一下根据CDH源码包手动编译的过程,至于为什么要使用CDH,前几节已经说明,那为什么又要自己手动编译,因为CDH的5.3.6对应的Hadoop2.5.0没有native动态库,很多压缩功能无法使用。

* 首先源码包下载:

http://archive.cloudera.com/cdh5/cdh/5/

找到对应的 :hadoop-2.5.0-cdh5.3.6-src.tar.gz开始下载即可。

* 下载完成后解压该软件包,注意目录权限问题

解压后,我的目录结构如图:

 
 

* 查看BUILDING.txt文件,重要内容如下:

 
 

注意:该部分描述的内容是编译这个版本的CDH所需的环境

编译环境所需软件打包下载传送门:

链接:http://pan.baidu.com/s/1jI1bHPG 密码:i8z8

* Findebugs安装:

$ unzip -o -d /opt/modules/ /opt/softwares/findbugs-1.3.9.zip

* ProtocolBuffer 2.5.0安装

$ ./configure --prefix=/opt/modules/protobuf-2.5.0

$ make && make install

如果,在执行以上命令时,如果出现编译错误,可能编译工具补全导致的,请安装:

# yum install gcc

# yum install gcc-c++

# yum install cmake

* 安装snappy

先下载:

https://github.com/electrum/hadoop-snappy

指定的一个安装目录,默认是根目录:

./configure --prefix=/opt/modules/snappy

make && make install

mvn package  -Dsnappy.prefix=/opt/modules/snappy

* 最后两个依赖:

# yum -y install zlib-devel

# yum -y install openssl

最后我的环境变量配置如图:

 
注意,JDK我临时用了1.7的,因为1.8的编译会出现错误

* 编译

Maven的setttings.xml中的mirror配置:

 
 

使用命令进行编译:

$ mvn package -Pdist,native,docs -DskipTests -Dtar

在编译过程中可能出现种种错误,比如tomcat依赖包下载不下来,或者各种依赖包下载不下来,可以自行下载报错的依赖然后放置到指定目录,以及删除报错对应目录下的x.lastUpdated文件。祝你好运:)(我从没遇见过1次就编译成功的)

最后,想省劲,或者在使用本教程的过程中想直接解决找不到native错误问题的,直接下载编译好的即可,注意最后要放在Hadoop的对应目录下:

链接:http://pan.baidu.com/s/1dEDgZBj 密码:x27z


个人微博:http://weibo.com/seal13

QQ大数据技术交流群(广告勿入):476966007


作者:Z尽际
链接:https://www.jianshu.com/p/a300bceb1caf
來源:简书
著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。

Hadoop-CDH源码编译的更多相关文章

  1. Hadoop的源码编译

    目录 正文 1.准备阶段 使用root登录Centos,并且要求能够正常连接网络.配置清单如下: (1)hadoop-2.7.2-src.tar.gz (2)jdk-8u144-linux-x64.t ...

  2. 1、Spark 2.1 源码编译支持CDH

    目前CDH支持的spark版本都是1.x, 如果想要使用spark 2x的版本, 只能编译spark源码生成支持CDH的版本. 一.准备工作 找一台Linux主机, 由于spark源码编译会下载很多的 ...

  3. Hadoop源码编译过程

    一.           为什么要编译Hadoop源码 Hadoop是使用Java语言开发的,但是有一些需求和操作并不适合使用java,所以就引入了本地库(Native Libraries)的概念,通 ...

  4. Hadoop,HBase,Zookeeper源码编译并导入eclipse

    基本理念:尽可能的参考官方英文文档 Hadoop:  http://wiki.apache.org/hadoop/FrontPage HBase:  http://hbase.apache.org/b ...

  5. apache kafka & CDH kafka源码编译

    Apache kafka编译 前言 github网站kafka项目的README.md有关于kafka源码编译的说明 github地址:https://github.com/apache/kafka ...

  6. 基于cdh5.10.x hadoop版本的apache源码编译安装spark

    参考文档:http://spark.apache.org/docs/1.6.0/building-spark.html spark安装需要选择源码编译方式进行安装部署,cdh5.10.0提供默认的二进 ...

  7. hadoop 源码编译

    hadoop 源码编译 1.准备jar 1) hadoop-2.7.2-src.tar.gz 2) jdk-8u144-linux-x64.tar.gz 3) apach-ant-1.9.9-bin. ...

  8. hadoop-2.0.0-mr1-cdh4.2.0源码编译总结

    准备编译hadoop-2.0.0-mr1-cdh4.2.0的同学们要谨慎了.首先看一下这篇文章: Hadoop作业提交多种方案 http://www.blogjava.net/dragonHadoop ...

  9. Spark环境搭建(六)-----------sprk源码编译

    想要搭建自己的Hadoop和spark集群,尤其是在生产环境中,下载官网提供的安装包远远不够的,必须要自己源码编译spark才行. 环境准备: 1,Maven环境搭建,版本Apache Maven 3 ...

随机推荐

  1. SQL语句将某字段查询出以逗号隔开

    MySQL的sql语句有好多能够省去server端的复杂处理 1.group_concat 这玩意儿能够实现  将一个字段如id查询出来   成为这种格式:121,122,123,124,125,12 ...

  2. 第二次phython作业

    第一题:编写程序,生成一个包含50个随机整数的列表,然后删除其中所有奇数.(注意保证删除操作的效率) import random x=[random.randint(0,100)for i in ra ...

  3. 基于对话框的应用程序,点击button打开一个网页

    核心:使用Webbrowser控件 加入一个新的对话框,右键 Insert ActiveX control,选中 双击对话框生成响应的类(Web).并为webbrowser绑定成员变量(m_Web) ...

  4. [LeetCOde][Java] Best Time to Buy and Sell Stock III

    题目: Say you have an array for which the ith element is the price of a given stock on day i. Design a ...

  5. 《Head First 设计模式》学习笔记——适配器模式 + 外观模式

    在ADO.NET中.对于我们从数据库中取出的数据都要放到一个DataSet中,无论你是Access的数据库,还是SQL的数据库,或者是Oracle的数据库都要放到DataSet中..NET中并没有提供 ...

  6. js解析网络中的json数据

    <?php echo <<<_END <html> <head> </head> <body> <div id=" ...

  7. [JZOJ NOIP2018模拟10.21]

    考试之前我刚刚领略到了特判的重要性,没想到T2的两个子任务还是写挂了,丢了20分 考试的感觉不行,一路打的都是暴力,正解的思路想到一半就断了推不下去 T1:逛公园 题目链接: https://jzoj ...

  8. TYVJ 1541 八数码

    Orz双向搜索的cy大神 我用的是hash 也蛮快的 //By SiriusRen #include <queue> #include <cstdio> using names ...

  9. Spring深入浅出(三)XML方式以及注解的方式操作IOC

    在日常的开发过程中,我们把程序分为3层:Controller层,Service层,DAO层.Controller类似于Servlet,也就是MVC中的控制层. 调用的顺序是: Controller层调 ...

  10. html5+css3+javascript 自定义弹出窗口

    效果图: 源码: 1.demo.jsp <%@ page contentType="text/html;charset=UTF-8" language="java& ...