CdH版本hadoop编译

【准备的安装包】

repo.tar.gz

repo.tar.gz 链接:https://pan.baidu.com/s/1wGCgV_3R3VUm2ka_aVA8GQ 提取码:lrej
Hadoop Hadoop-2.6.0-cdh5.7.0-src.tar.gz  链接:https://pan.baidu.com/s/1uRMGIhLSL9QHT-Ee4F16jw 提取码:jb1d
jdk jdk-7u80-linux-x64.tar.gz  链接:https://pan.baidu.com/s/1xSCQ8rjABVI-zDFQS5nCPA 提取码:lfze
maven apache-maven-3.3.9-bin.tar.gz 链接:https://pan.baidu.com/s/1ddkdkLW7r7ahFZmgACGkVw  提取码:fdfz
protobuf protobuf-2.5.0.tar.gz 链接:https://pan.baidu.com/s/1RSNZGd_ThwknMB3vDkEfhQ  提取码:hvc2

注意】在配置环境变量的时候,我们用vi /etc/profile,全局的,因为我们在编译的过称中,用的是root用户为了避免权限不够的情况,但是编译出的安装包还要给hadoop用户用,所以为了避免环境问题我们用全局变量

[root@hadoop001 app]# pwd
/app

[root@hadoop001 app]# ll
total 167156
drwxr-xr-x 6 root root 4096 Apr 15 11:31 apache-maven-3.3.9
-rw-r--r-- 1 root root 8491533 Apr 15 11:20 apache-maven-3.3.9-bin.tar.gz
-rw-r--r-- 1 root root 42610549 Apr 9 19:37 hadoop-2.6.0-cdh5.7.0-src.tar.gz
-rw-r--r-- 1 root root 2401901 May 21 2017 protobuf-2.5.0.tar.gz
-rw-r--r-- 1 root root 110155070 Apr 9 20:37 repo.tar.gz

坑:要用jdk1.7版本
参考博客:https://blog.csdn.net/qq_32641659/article/details/89074365?tdsourcetag=s_pcqq_aiomsg

【下载相关依赖库】

[root@hadoop001 ~]# yum install -y svn ncurses-devel
[root@hadoop001 ~]# yum install -y gcc gcc-c++ make cmake
[root@hadoop001 ~]# yum install -y openssl openssl-devel svn ncurses-devel zlib-devel libtool
[root@hadoop001 ~]# yum install -y snappy snappy-devel bzip2 bzip2-devel lzo lzo-devel lzop autoconf automake cmake

【jdk1.7安装配置】
坑:jdk解压以后用户和用户组不是root,要改为root用户

[root@hadoop001 ~]# mkdir /usr/java
[root@hadoop001 ~]# tar -zxvf /home/hadoop/soft/jdk-7u80-linux-x64.tar.gz -C /usr/java
[root@hadoop001 ~]# cd /usr/java/
[root@hadoop001 java]# chown -R root:root jdk1.7.0_80

[root@hadoop001 jdk1.7.0_45]# vim /etc/profile
#添加如下两行环境变量

【export JAVA_HOME=/usr/java/jdk1.7.0_45
export PATH=$JAVA_HOME/bin:$PATH】

[root@hadoop001 jdk1.7.0_45]# source /etc/profile
#测试java是否安装成功

[root@hadoop001 jdk1.7.0_45]# java -version
java version "1.7.0_45"
Java(TM) SE Runtime Environment (build 1.7.0_45-b18)
Java HotSpot(TM) 64-Bit Server VM (build 24.45-b08, mixed mode)

【安装配置maven】

[root@hadoop001 app]# pwd
/app

[root@hadoop001 app]$ tar -zxvf apache-maven-3.3.9-bin.tar.gz 

[root@hadoop001 app]# ll
total 167156
drwxr-xr-x 6 root root 4096 Apr 15 11:31 apache-maven-3.3.9

[root@hadoop001 app]# vi /etc/profile

export MAVEN_HOME=/app/apache-maven-3.3.9
export PATH=$MAVEN_HOME/bin:$PATH
export MAVEN_OPTS="-Xms1024m -Xmx1024m"    -----加这个是为了防止oot

[root@hadoop001 app]# which mvn
/app/apache-maven-3.3.9/bin/mvn

【测试是否可以使用maven】

[root@hadoop001 app]# mvn -version
Apache Maven 3.3.9 (bb52d8502b132ec0a5a3f4c09453c07478323dc5; 2015-11-11T00:41:47+08:00)
Maven home: /app/apache-maven-3.3.9
Java version: 1.7.0_45, vendor: Oracle Corporation
Java home: /usr/java/jdk1.7.0_45/jre
Default locale: en_US, platform encoding: UTF-8
OS name: "linux", version: "2.6.32-696.16.1.el6.x86_64", arch: "amd64", family: "unix"

【坑】执行这个的时候可能会出现Cannot allocate memory (errno=12)

这个我使用的阿里云的服务器,我实在找不大解决办法了,就重启了一下阿里云的服务器,你敢想,他就好了。

超级大坑

maven的setting的配置真的是一个超级大坑,报错的80%都是因为他,为什么说他是坑,因为里边所有的内容都是被注释掉的,稍微小白一点就会被弄死,并且更可气的是 ,你不可以自己往里插入,必须用原来的。

[root@hadoop001 conf]# pwd
/app/apache-maven-3.3.9/conf

 下边这两个图片一定一定注意,不可以差一丝一毫,差了就报各种错误

[root@hadoop001 ~]# mkdir maven_repo

[root@hadoop001 app]# pwd
/app

[root@hadoop001 app]#tar -xzvf repo.tar.gz -C /root/maven_repo/

[root@hadoop001 maven_repo]# ll
total 4
drwxrwxr-x 52 hadoop hadoop 4096 Dec 1 14:58 repo   【这里这个路径就是下边配置的这个路径】

【安装配置protobuf】

[root@hadoop001 app]# tar -zxvf protobuf-2.5.0.tar.gz

[root@hadoop001 app]# vi /etc/profile

export PROTOC_HOME=/root/protobuf
export PATH=$PROTOC_HOME/bin:$PATH

[root@hadoop001 protobuf-2.5.0]# ./configure  --prefix=/root/protobuf/

[root@hadoop001 protobuf-2.5.0]# make

[root@hadoop001 protobuf-2.5.0]# make install

【查看是否安装成功】

[root@hadoop001 protobuf-2.5.0]# protoc --version
libprotoc 2.5.0

【解压cdh的hadoop源码】

[root@hadoop001 app]# tar -xzvf hadoop-2.6.0-cdh5.7.0-src.tar.gz

[root@hadoop001 app]# cd hadoop-2.6.0-cdh5.7.0

[root@hadoop001 hadoop-2.6.0-cdh5.7.0]# mvn clean package -Pdist,native -DskipTests -Dtar

这是一个漫长而又紧张的等待过程,错误百出,顺利不易啊!!!!!

我一共遇见啦两个错误

上图吧

这个是因为我的

这个位置没有从注释里弄出来。

这个从错误中可以看出没有tomat包,所以我自己去下载的。

[root@hadoop001 downloads]# pwd
/app/hadoop-2.6.0-cdh5.7.0/hadoop-common-project/hadoop-kms/downloads
[root@hadoop001 downloads]# ll
total 6904
drwxr-xr-x 9 root root 4096 Apr 15 19:48 apache-tomcat-6.0.44
-rw-r--r-- 1 root root 7065218 Apr 15 19:41 apache-tomcat-6.0.44.tar.gz
[root@hadoop001 downloads]#

下载地址:

https://archive.apache.org/dist/tomcat/tomcat-6/v6.0.44/bin/    打开以后下载这个文件

最后终于成功了,,,泪奔

[root@hadoop001 target]# pwd
/app/hadoop-2.6.0-cdh5.7.0/hadoop-dist/target

拿着这个hadoop-2.6.0-cdh5.7.0.tar.gz重新部署一次hadoop伪分布,部署过程,看我的另一篇博客

原文地址:https://www.cnblogs.com/xuziyu/p/10721132.html