尚硅谷教育 发表于 2021-9-22 10:19:57

手把手教你搞定Hadoop源码编译

前期准备工作

1、CentOS联网
利用能毗连外网的CentOS系统假造机,利用root用户举行编译,避免出现文件夹权限题目。
2、Jar包准备
从官网下载以下安装包
(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包安装

1、上传软件包到指定的目次,例如 /opt/software/hadoop_source
$ pwd/opt/software/hadoop_source$ ll总用量 55868-rw-rw-r--. 1 atguigu atguigu9506321 3月28 13:23 apache-maven-3.6.3-bin.tar.gz-rw-rw-r--. 1 atguigu atguigu8614663 3月28 13:23 cmake-3.13.1.tar.gz-rw-rw-r--. 1 atguigu atguigu 29800905 3月28 13:23 hadoop-3.1.3-src.tar.gz-rw-rw-r--. 1 atguigu atguigu2401901 3月28 13:23 protobuf-2.5.0.tar.gz2、解压软件包至指定的目次,例如:/opt/module/Hadoop_source
$ tar -zxvfapache-maven-3.6.3-bin.tar.gz -C /opt/module/hadoop_source/ $ tar -zxvfcmake-3.13.1.tar.gz -C /opt/module/hadoop_source/ $ tar -zxvfhadoop-3.1.3-src.tar.gz -C /opt/module/hadoop_source/ $ tar -zxvfprotobuf-2.5.0.tar.gz -C /opt/module/hadoop_source/ $ pwd/opt/module/hadoop_source $ ll总用量 20drwxrwxr-x.6 atguigu atguigu 4096 3月28 13:25 apache-maven-3.6.3drwxr-xr-x. 15 root    root   4096 3月28 13:43 cmake-3.13.1drwxr-xr-x. 18 atguigu atguigu 4096 9月12 2019 hadoop-3.1.3-srcdrwxr-xr-x. 10 atguigu atguigu 4096 3月28 13:44 protobuf-2.5.03、安装JDK
(1)解压JDK
# tar -zxvfjdk-8u212-linux-x64.tar.gz -C /opt/module/hadoop_source/(2)设置环境变量
# vim/etc/profile.d/my_env.sh输入如下内容:#JAVA_HOMEexportJAVA_HOME=/opt/module/hadoop_source/jdk1.8.0_212export PATH=$PATH:$JAVA_HOME/bin(3)革新JDK环境变量
# source/etc/profile(4)验证JDK是否安装乐成
$ java-versionjava version "1.8.0_212"Java(TM) SE Runtime Environment (build1.8.0_212-b10)Java HotSpot(TM) 64-Bit Server VM (build25.212-b10, mixed mode)4、设置maven环境变量,maven镜像,并验证
(1)设置maven的环境变量
#vim /etc/profile.d/my_env.sh#MAVEN_HOMEMAVEN_HOME=/opt/module/hadoop_source/apache-maven-3.6.3PATH=$PATH:$JAVA_HOME/bin:$MAVEN_HOME/bin #source /etc/profile(2)修改maven的镜像
# vi conf/settings.xml# 在 mirrors节点中添加阿里云镜像            nexus-aliyun      central         Nexusaliyun               http://maven.aliyun.com/nexus/content/groups/public    (3)验证maven安装是否乐成
# mvn-versionApache Maven 3.6.3 (cecedd343002696d0abb50b32b541b8a6ba2883f)Maven home:/opt/module/hadoop_source/apache-maven-3.6.3Java version: 1.8.0_212, vendor: OracleCorporation, runtime: /opt/module/hadoop_source/jdk1.8.0_212/jreDefault locale: zh_CN, platform encoding:UTF-8OS name: "linux", version:"3.10.0-862.el7.x86_64", arch: "amd64", family:"unix"5、安装相关的依赖(留意安装次序不可乱,可能会出现依赖找不到题目)
(1)安装gcc make
# yuminstall -y gcc* make(2)安装压缩工具
# yum -y install snappy*bzip2* lzo* zlib*lz4* gzip*(3)安装一些基本工具
# yum -y install openssl* svn ncurses* autoconf automake libtool(4)安装扩展源,才可安装zstd
# yum -yinstall epel-release(5)安装zstd
# yum -yinstall *zstd*6、手动安装cmake
(1)在解压好的cmake目次下,执行./bootstrap举行编译,此过程需一小时请耐心等候
$ pwd/opt/module/hadoop_source/cmake-3.13.1$./bootstrap(2)执行安装
$ make&& make install(3)验证安装是否乐成
$ cmake-versioncmake version 3.13.1CMake suite maintained and supported byKitware (kitware.com/cmake).7、进入到解压后的protobuf目次,安装protobuf
(1)依次执行下列命令--prefix 指定安装到当前目次
$./configure --prefix=/opt/module/hadoop_source/protobuf-2.5.0 $ make&& make install(2)设置环境变量
$ vim /etc/profile.d/my_env.sh输入如下内容PROTOC_HOME=/opt/module/hadoop_source/protobuf-2.5.0PATH=$PATH:$JAVA_HOME/bin:$MAVEN_HOME/bin:$PROTOC_HOME/bin(3)验证
$ source /etc/profile$ protoc --versionlibprotoc 2.5.08、到此,软件包安装设置工作完成。
编译源码

1、进入解压后的Hadoop源码目次下,执行编译命令
$ pwd/opt/module/hadoop_source/hadoop-3.1.3-src#开始编译
$ mvn clean package -DskipTests -Pdist,native -Dtar留意:第一次编译需要下载很多依赖jar包,编译时间会好久,预计1小时左右,终极乐成是全部SUCCESS,爽!!!
https://p6.toutiaoimg.com/large/pgc-image/ec57a728239b47f09981bcd322d100b5
2、乐成的64位hadoop包在/opt/hadoop-3.1.3-src/hadoop-dist/target下
https://p26.toutiaoimg.com/large/pgc-image/396426bbd1cf4fc68828bf29b7c1a8e6
<hr>相关阅读:
hadoop 支持三种调治器
Hadoop之HDFS的I/O流操作
Hadoop(HDFS)之 数据完备性
大数据学习之部署Hadoop
Hadoop数据压缩之压缩方式选择
页: [1]
查看完整版本: 手把手教你搞定Hadoop源码编译