Hadoop详解(03)-Hadoop编译源码-了解

准备工作

  • CentOS联网

配置CentOS能连接外网。Linux虚拟机ping www.baidu.com 是畅通的

  • jar包准备(hadoop源码、JDK8、maven、ant 、protobuf)

(1)hadoop-3.1.3-src.tar.gz

(2)jdk-8u212-linux-x64.tar.gz

(3)apache-maven-3.6.3-bin.tar.gz

(4)protobuf-2.5.0.tar.gz(序列化的框架)

(5)cmake-3.13.1.tar.gz

Jar包安装

注意:所有操作都在root用户下完成,采用root角色编译,减少文件夹权限出现问题

上传软件包到服务器/opt/software/hadoop_source目录

[root@localhost hadoop_source]# pwd

/opt/software/hadoop_source

[root@localhost hadoop_source]# ll

total 62856

-rw-r--r--. 1 root root 6874544 Nov 13 22:26 apache-ant-1.10.7-bin.tar.gz

-rw-r--r--. 1 root root 9506321 Nov 13 22:26 apache-maven-3.6.3-bin.tar.gz

-rw-r--r--. 1 root root 6578184 Sep 18 2015 cmake-3.3.2.tar.gz

-rw-r--r--. 1 root root 9190037 Nov 13 22:25 findbugs-3.0.1.zip

-rw-r--r--. 1 root root 29800905 Nov 13 22:26 hadoop-3.1.3-src.tar.gz

-rw-r--r--. 1 root root 2401901 Nov 13 22:25 protobuf-2.5.0.tar.gz

解压软件包指定的目录,例如: /opt/module/hadoop_source

tar -zxvf apache-maven-3.6.3-bin.tar.gz -C /opt/module/hadoop_source/

tar -xzvf cmake-3.3.2.tar.gz -C /opt/module/hadoop_source/

tar -zxvf hadoop-3.1.3-src.tar.gz -C /opt/module/hadoop_source/

tar -zxvf protobuf-2.5.0.tar.gz -C /opt/module/hadoop_source/

[root@localhost hadoop_source]# cd /opt/module/hadoop_source/

[root@localhost hadoop_source]# ll

total 12

drwxr-xr-x. 6 root root 99 Nov 24 19:33 apache-maven-3.6.3

drwxr-xr-x. 14 root root 4096 Nov 24 22:23 cmake-3.3.2

drwxr-xr-x. 18 root root 4096 Sep 12 2019 hadoop-3.1.3-src

drwxr-xr-x. 13 109965 5000 4096 Nov 24 20:30 protobuf-2.5.0

确认Java已安装且配置好环境变量

[root@localhost hadoop_source]# java -version

java version "1.8.0_191"

Java(TM) SE Runtime Environment (build 1.8.0_191-b12)

Java HotSpot(TM) 64-Bit Server VM (build 25.191-b12, mixed mode)

配置maven环境变量,maven镜像, 并验证

配置maven的环境变量

[root@localhost hadoop_source]# vi /etc/profile

添加如下内容

#MAVEN_HOME

MAVEN_HOME=/opt/module/hadoop_source/apache-maven-3.6.3

PATH=$PATH:$JAVA_HOME/bin:$MAVEN_HOME/bin

重新加载

[root@localhost hadoop_source]# source /etc/profile

修改maven的镜像

[root@localhost ~]# cd /opt/module/hadoop_source/apache-maven-3.6.3/

[root@localhost apache-maven-3.6.3]# vi conf/settings.xml

在 mirrors节点中添加阿里云镜像

<mirrors>

<mirror>

<id>nexus-aliyun</id>

<mirrorOf>central</mirrorOf>

<name>Nexus aliyun</name>

<url>http://maven.aliyun.com/nexus/content/groups/public</url>

</mirror>

</mirrors>

验证maven环境

[root@localhost apache-maven-3.6.3]# mvn -version

Apache Maven 3.6.3 (cecedd343002696d0abb50b32b541b8a6ba2883f)

Maven home: /opt/module/hadoop_source/apache-maven-3.6.3

Java version: 1.8.0_191, vendor: Oracle Corporation, runtime: /usr/local/jdk1.8.0_191/jre

Default locale: en_US, platform encoding: UTF-8

OS name: "linux", version: "4.19.8-1.el7.elrepo.x86_64", arch: "amd64", family: "unix"

安装相关的依赖

注意安装依赖顺序不可乱,可能会出现依赖找不到问题

# 安装gcc make

yum install -y gcc* make

#安装压缩工具

yum -y install snappy* bzip2* lzo* zlib* lz4* gzip*

#安装一些基本工具

yum -y install openssl* svn ncurses* autoconf automake libtool

#安装扩展源,才可安装zstd

yum -y install epel-release

#安装zstd

yum -y install *zstd*

手动安装cmake

在解压好的cmake目录下,执行 ./bootstrap 进行编译,此过程需较长时间.

[root@localhost ~]# cd /opt/module/hadoop_source/cmake-3.3.2/

[root@localhost cmake-3.13.1]# ./bootstrap

执行安装

[root@localhost cmake-3.3.2]# gmake

[root@localhost cmake-3.3.2]# make install

验证安装是否成功

[root@localhost cmake-3.3.2]# cmake -version

cmake version 3.3.2

CMake suite maintained and supported by Kitware (kitware.com/cmake).

安装protobuf

[root@localhost ~]# cd /opt/module/hadoop_source/protobuf-2.5.0/

#依次执行下列命令 --prefix 指定安装到当前目录

[root@localhost protobuf-2.5.0]# ./configure --prefix=/opt/module/hadoop_source/protobuf-2.5.0

[root@localhost hadoop_source]# make && make install

#配置环境变量

[atguigu@hadoop101 protobuf-2.5.0]$ vim /etc/profile

PROTOC_HOME=/opt/module/hadoop_source/protobuf-2.5.0

PATH=$PATH:$JAVA_HOME/bin:$MAVEN_HOME/bin:$PROTOC_HOME/bin

[root@localhost protobuf-2.5.0]# source /etc/profile

#验证

[root@localhost protobuf-2.5.0]# protoc --version

libprotoc 2.5.0

到此,软件包安装配置工作完成

编译源码

进入解压后的hadoop源码目录下并执行编译命令

[root@localhost protobuf-2.5.0]# cd /opt/module/hadoop_source/hadoop-3.1.3-src/

[root@localhost hadoop-3.1.3-src]# mvn clean package -DskipTests -Pdist,native -Dtar

编译过程会非常漫长,第一次编译需要下载很多依赖jar包,最终所有的模块全部SUCCESS,如下所示:

  1. [INFO] ------------------------------------------------------------------------
  2. [INFO] Reactor Summary for Apache Hadoop Main 3.1.3:
  3. [INFO] 
  4. [INFO] Apache Hadoop Main ................................. SUCCESS [  0.981 s]
  5. [INFO] Apache Hadoop Build Tools .......................... SUCCESS [  0.852 s]
  6. [INFO] Apache Hadoop Project POM .......................... SUCCESS [  0.754 s]
  7. [INFO] Apache Hadoop Annotations .......................... SUCCESS [  2.603 s]
  8. [INFO] Apache Hadoop Assemblies ........................... SUCCESS [  0.122 s]
  9. [INFO] Apache Hadoop Project Dist POM ..................... SUCCESS [  1.125 s]
  10. [INFO] Apache Hadoop Maven Plugins ........................ SUCCESS [  3.186 s]
  11. [INFO] Apache Hadoop MiniKDC .............................. SUCCESS [  1.455 s]
  12. [INFO] Apache Hadoop Auth ................................. SUCCESS [  4.232 s]
  13. [INFO] Apache Hadoop Auth Examples ........................ SUCCESS [  1.891 s]
  14. [INFO] Apache Hadoop Common ............................... SUCCESS [02:21 min]
  15. [INFO] Apache Hadoop NFS .................................. SUCCESS [  4.183 s]
  16. [INFO] Apache Hadoop KMS .................................. SUCCESS [ 17.735 s]
  17. [INFO] Apache Hadoop Common Project ....................... SUCCESS [  0.047 s]
  18. [INFO] Apache Hadoop HDFS Client .......................... SUCCESS [01:53 min]
  19. [INFO] Apache Hadoop HDFS ................................. SUCCESS [02:06 min]
  20. [INFO] Apache Hadoop HDFS Native Client ................... SUCCESS [  4.489 s]
  21. [INFO] Apache Hadoop HttpFS ............................... SUCCESS [ 13.033 s]
  22. [INFO] Apache Hadoop HDFS-NFS ............................. SUCCESS [  2.463 s]
  23. [INFO] Apache Hadoop HDFS-RBF ............................. SUCCESS [ 15.698 s]
  24. [INFO] Apache Hadoop HDFS Project ......................... SUCCESS [  0.041 s]
  25. [INFO] Apache Hadoop YARN ................................. SUCCESS [  0.040 s]
  26. [INFO] Apache Hadoop YARN API ............................. SUCCESS [ 12.451 s]
  27. [INFO] Apache Hadoop YARN Common .......................... SUCCESS [03:25 min]
  28. [INFO] Apache Hadoop YARN Registry ........................ SUCCESS [  9.642 s]
  29. [INFO] Apache Hadoop YARN Server .......................... SUCCESS [  0.029 s]
  30. [INFO] Apache Hadoop YARN Server Common ................... SUCCESS [01:02 min]
  31. [INFO] Apache Hadoop YARN NodeManager ..................... SUCCESS [ 30.559 s]
  32. [INFO] Apache Hadoop YARN Web Proxy ....................... SUCCESS [  2.942 s]
  33. [INFO] Apache Hadoop YARN ApplicationHistoryService ....... SUCCESS [ 26.503 s]
  34. [INFO] Apache Hadoop YARN Timeline Service ................ SUCCESS [  9.220 s]
  35. [INFO] Apache Hadoop YARN ResourceManager ................. SUCCESS [ 30.232 s]
  36. [INFO] Apache Hadoop YARN Server Tests .................... SUCCESS [  0.892 s]
  37. [INFO] Apache Hadoop YARN Client .......................... SUCCESS [  4.010 s]
  38. [INFO] Apache Hadoop YARN SharedCacheManager .............. SUCCESS [  2.382 s]
  39. [INFO] Apache Hadoop YARN Timeline Plugin Storage ......... SUCCESS [  2.250 s]
  40. [INFO] Apache Hadoop YARN TimelineService HBase Backend ... SUCCESS [  0.094 s]
  41. [INFO] Apache Hadoop YARN TimelineService HBase Common .... SUCCESS [ 41.098 s]
  42. [INFO] Apache Hadoop YARN TimelineService HBase Client .... SUCCESS [01:50 min]
  43. [INFO] Apache Hadoop YARN TimelineService HBase Servers ... SUCCESS [  0.030 s]
  44. [INFO] Apache Hadoop YARN TimelineService HBase Server 1.2  SUCCESS [  3.158 s]
  45. [INFO] Apache Hadoop YARN TimelineService HBase tests ..... SUCCESS [02:32 min]
  46. [INFO] Apache Hadoop YARN Router .......................... SUCCESS [  3.164 s]
  47. [INFO] Apache Hadoop YARN Applications .................... SUCCESS [  0.047 s]
  48. [INFO] Apache Hadoop YARN DistributedShell ................ SUCCESS [  2.130 s]
  49. [INFO] Apache Hadoop YARN Unmanaged Am Launcher ........... SUCCESS [  1.590 s]
  50. [INFO] Apache Hadoop MapReduce Client ..................... SUCCESS [  0.172 s]
  51. [INFO] Apache Hadoop MapReduce Core ....................... SUCCESS [ 32.555 s]
  52. [INFO] Apache Hadoop MapReduce Common ..................... SUCCESS [ 16.913 s]
  53. [INFO] Apache Hadoop MapReduce Shuffle .................... SUCCESS [  2.936 s]
  54. [INFO] Apache Hadoop MapReduce App ........................ SUCCESS [  5.723 s]
  55. [INFO] Apache Hadoop MapReduce HistoryServer .............. SUCCESS [  3.798 s]
  56. [INFO] Apache Hadoop MapReduce JobClient .................. SUCCESS [  3.924 s]
  57. [INFO] Apache Hadoop Mini-Cluster ......................... SUCCESS [  0.554 s]
  58. [INFO] Apache Hadoop YARN Services ........................ SUCCESS [  0.026 s]
  59. [INFO] Apache Hadoop YARN Services Core ................... SUCCESS [ 15.753 s]
  60. [INFO] Apache Hadoop YARN Services API .................... SUCCESS [  0.765 s]
  61. [INFO] Apache Hadoop YARN Site ............................ SUCCESS [  0.027 s]
  62. [INFO] Apache Hadoop YARN UI .............................. SUCCESS [  0.836 s]
  63. [INFO] Apache Hadoop YARN Project ......................... SUCCESS [  6.716 s]
  64. [INFO] Apache Hadoop MapReduce HistoryServer Plugins ...... SUCCESS [  5.620 s]
  65. [INFO] Apache Hadoop MapReduce NativeTask ................. SUCCESS [ 47.760 s]
  66. [INFO] Apache Hadoop MapReduce Uploader ................... SUCCESS [  1.505 s]
  67. [INFO] Apache Hadoop MapReduce Examples ................... SUCCESS [  3.326 s]
  68. [INFO] Apache Hadoop MapReduce ............................ SUCCESS [  3.788 s]
  69. [INFO] Apache Hadoop MapReduce Streaming .................. SUCCESS [ 13.515 s]
  70. [INFO] Apache Hadoop Distributed Copy ..................... SUCCESS [  3.195 s]
  71. [INFO] Apache Hadoop Archives ............................. SUCCESS [  1.461 s]
  72. [INFO] Apache Hadoop Archive Logs ......................... SUCCESS [  1.569 s]
  73. [INFO] Apache Hadoop Rumen ................................ SUCCESS [  8.515 s]
  74. [INFO] Apache Hadoop Gridmix .............................. SUCCESS [  2.649 s]
  75. [INFO] Apache Hadoop Data Join ............................ SUCCESS [  1.873 s]
  76. [INFO] Apache Hadoop Extras ............................... SUCCESS [  1.511 s]
  77. [INFO] Apache Hadoop Pipes ................................ SUCCESS [  4.113 s]
  78. [INFO] Apache Hadoop OpenStack support .................... SUCCESS [  7.416 s]
  79. [INFO] Apache Hadoop Amazon Web Services support .......... SUCCESS [02:40 min]
  80. [INFO] Apache Hadoop Kafka Library support ................ SUCCESS [  09:50 h]
  81. [INFO] Apache Hadoop Azure support ........................ SUCCESS [ 25.711 s]
  82. [INFO] Apache Hadoop Aliyun OSS support ................... SUCCESS [ 37.034 s]
  83. [INFO] Apache Hadoop Client Aggregator .................... SUCCESS [  1.356 s]
  84. [INFO] Apache Hadoop Scheduler Load Simulator ............. SUCCESS [  4.156 s]
  85. [INFO] Apache Hadoop Resource Estimator Service ........... SUCCESS [ 12.507 s]
  86. [INFO] Apache Hadoop Azure Data Lake support .............. SUCCESS [ 23.888 s]
  87. [INFO] Apache Hadoop Image Generation Tool ................ SUCCESS [  2.220 s]
  88. [INFO] Apache Hadoop Tools Dist ........................... SUCCESS [  8.810 s]
  89. [INFO] Apache Hadoop Tools ................................ SUCCESS [  0.027 s]
  90. [INFO] Apache Hadoop Client API ........................... SUCCESS [01:56 min]
  91. [INFO] Apache Hadoop Client Runtime ....................... SUCCESS [01:06 min]
  92. [INFO] Apache Hadoop Client Packaging Invariants .......... SUCCESS [  4.242 s]
  93. [INFO] Apache Hadoop Client Test Minicluster .............. SUCCESS [02:06 min]
  94. [INFO] Apache Hadoop Client Packaging Invariants for Test . SUCCESS [  0.116 s]
  95. [INFO] Apache Hadoop Client Packaging Integration Tests ... SUCCESS [  0.086 s]
  96. [INFO] Apache Hadoop Distribution ......................... SUCCESS [01:13 min]
  97. [INFO] Apache Hadoop Client Modules ....................... SUCCESS [  0.038 s]
  98. [INFO] Apache Hadoop Cloud Storage ........................ SUCCESS [  0.443 s]
  99. [INFO] Apache Hadoop Cloud Storage Project ................ SUCCESS [  0.029 s]
  100. [INFO] ------------------------------------------------------------------------
  101. [INFO] BUILD SUCCESS
  102. [INFO] ------------------------------------------------------------------------
  103. [INFO] Total time:  10:24 h
  104. [INFO] Finished at: 2021-11-24T19:56:26-05:00
  105. [INFO] ------------------------------------------------------------------------

成功的64位hadoop包位/hadoop-3.1.3-src/hadoop-dist/target下的hadoop-3.1.3.tar.gz压缩包

[root@localhost hadoop-3.1.3-src]# cd hadoop-dist/target/

[root@localhost target]# ll

total 287544

drwxr-xr-x. 2 root root 28 Nov 25 08:55 antrun

drwxr-xr-x. 3 root root 22 Nov 25 08:55 classes

drwxr-xr-x. 9 root root 149 Nov 25 08:55 hadoop-3.1.3

-rw-r--r--. 1 root root 294442930 Nov 25 08:55 hadoop-3.1.3.tar.gz

drwxr-xr-x. 3 root root 22 Nov 25 08:55 maven-shared-archive-resources

drwxr-xr-x. 3 root root 22 Nov 25 08:55 test-classes

drwxr-xr-x. 2 root root 6 Nov 25 08:55 test-dir

Hadoop详解(03)-Hadoop编译源码-了解的更多相关文章

  1. Hadoop详解(02)Hadoop集群运行环境搭建

    Hadoop详解(02)Hadoop集群运行环境搭建 虚拟机环境准备 虚拟机节点数:3台 操作系统版本:CentOS-7.6-x86-1810 虚拟机 内存4G,硬盘99G IP地址分配 192.16 ...

  2. Hadoop详解(09) - Hadoop新特性

    Hadoop详解(09) - Hadoop新特性 Hadoop2.x新特性 远程主机之间的文件复制 scp实现两个远程主机之间的文件复制 推 push:scp -r hello.txt root@ha ...

  3. spring事务详解(三)源码详解

    系列目录 spring事务详解(一)初探事务 spring事务详解(二)简单样例 spring事务详解(三)源码详解 spring事务详解(四)测试验证 spring事务详解(五)总结提高 一.引子 ...

  4. Hadoop详解(10) - Hadoop HA高可用

    Hadoop详解(10) - Hadoop HA高可用 HA概述 HA(High Availablity),即高可用(7*24小时不中断服务). 实现高可用最关键的策略是消除单点故障.HA严格来说应该 ...

  5. Hadoop详解(08) - Hadoop企业优化方案.docx

    Hadoop详解(08) - Hadoop企业优化方案.docx MapReduce优化 MapReduce 跑的慢的原因 计算机性能:CPU.内存.磁盘健康.网络 I/O 操作优化 (1)数据倾斜 ...

  6. ThreadLocal类详解:原理、源码、用法

    以下是本文目录: 1.从数据库连接探究 ThreadLocal 2.剖析 ThreadLocal 源码 3. ThreadLocal 应用场景 4. 通过面试题理解 ThreadLocal 1.从数据 ...

  7. 广告行业中那些趣事系列8:详解BERT中分类器源码

    最新最全的文章请关注我的微信公众号:数据拾光者. 摘要:BERT是近几年NLP领域中具有里程碑意义的存在.因为效果好和应用范围广所以被广泛应用于科学研究和工程项目中.广告系列中前几篇文章有从理论的方面 ...

  8. (二十三)原型模式详解(clone方法源码的简单剖析)

    作者:zuoxiaolong8810(左潇龙),转载请注明出处,特别说明:本博文来自博主原博客,为保证新博客中博文的完整性,特复制到此留存,如需转载请注明新博客地址即可. 原型模式算是JAVA中最简单 ...

  9. AlexNet 网络详解及Tensorflow实现源码

    版权声明:本文为博主原创文章,未经博主允许不得转载. 1. 图片数据处理 2. 卷积神经网络 2.1. 卷积层 2.2. 池化层 2.3. 全链层 3. AlexNet 4. 用Tensorflow搭 ...

随机推荐

  1. Day3 最短路 最小生成树 拓扑排序

    Day3 最短路 最小生成树 拓扑排序 (一)最短路 一.多源最短路 从任意点出发到任意点的最短路 1. Floyd \(O(n^3)\) for(int k=1;k<=n;k++) for(i ...

  2. 即兴小探华为开源行业领先大数据虚拟化引擎openLooKeng

    @ 目录 概述 定义 背景 特点 架构 关键技术 应用场景 安装 单台部署 集群部署 命令行接口 连接器 MySQL连接器 ClickHouse连接器 概述 定义 openLooKeng 官网地址 h ...

  3. Debian玩红警2

    Debian玩红警2 1. 安装wine sudo apt update sudo apt install wine wine --version wine-5.0.3 (Debian 5.0.3-3 ...

  4. Java多线程-ThreadPool线程池-2(四)

    线程池是个神器,用得好会非常地方便.本来觉得线程池的构造器有些复杂,即使讲清楚了对今后的用处可能也不太大,因为有一些Java定义好的线程池可以直接使用.但是(凡事总有个但是),还是觉得讲一讲可能跟有助 ...

  5. 【lvgl】01-lvgl移植之在linux上跑

    目录 前言 linux安装SDL2 官方推荐 移植lvgl v8.0 目录框架 拉取lvgl 添加lv_conf.h和lv_drv_conf.h配置文件 lv_conf.h lv_drv_conf.h ...

  6. 2022-11-09 Acwing每日一题

    本系列所有题目均为Acwing课的内容,发表博客既是为了学习总结,加深自己的印象,同时也是为了以后回过头来看时,不会感叹虚度光阴罢了,因此如果出现错误,欢迎大家能够指出错误,我会认真改正的.同时也希望 ...

  7. 渗透测试中遇到的Adminer任意文件读取漏洞

    渗透测试中遇到的Adminer任意文件读取漏洞 免责声明: 软件简介 漏洞原理 漏洞复现 字典脚本 直接输入文件读取脚本 直接输入文件绝对路径读取脚本使用方法 字典脚本使用方法 免责声明: 免责声明: ...

  8. Java-ArrayList常用方法

    数组的长度不可以发生改变. 但是ArrayList集合的长度是可以随意改变的. 对于ArrayList来说,有一个尖括号代表泛型. 泛型:也就是装在集合当中的所有元素,全都是统一的什么类型. 注意:泛 ...

  9. 【DL论文精读笔记】ResNet

    Abstract 利用残差学习架构释放深度 152层深度是VGG的8倍,且复杂度更低 ImageNet上的错误率3.57% 在ILSVRC和2015COCO竞赛,在多项任务拿到第一 3.1 Intro ...

  10. Aspose.Cells实现excel预览

    ​ 在WEB项目中经常遇到excel文档在线预览的需求,基本的解决思路有以下几大类:excel文档转PDF.excel文档直接转html.后台读取excel数据返回给前端利用Excel效果的表格插件如 ...