注意:
软件包目录:~/software;
安装目录:~/apps
命令:tar -zxvf jdk-8u221-linux-x64.tar.gz -C ~/apps/
环境变量配置:sudo vi /etc/profile
#jdk
export JAVA_HOME=/home/hadoop/apps/jdk1.8.0_221
export CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar:$CLASSPATH
export PATH=$PATH:$JAVA_HOME/bin
source /etc/profile
java -version
JDK配置成功!
命令:tar -zxvf apache-maven-3.6.1-bin.tar.gz -C ~/apps/
修改文件夹名:mv apache-maven-3.6.1/ maven-3.6.1
(这个修改文件夹名称并不是必须的,只是鄙人觉得以后会安装很多Apache软件,都是以Apache开头,在找某个软件的时候,可能不能一步到位找到对应软件,所以才该名称的)
环境变量配置:sudo vi /etc/profile
#maven
export MAVEN_HOME=/home/hadoop/apps/maven-3.6.1
export PATH=$PATH:$MAVEN_HOME/bin
配置镜像:阿里云
先备份文件:cp settings.xml settings_bak.xml (这是个习惯,修改配置之前,最好都备份一下)
编辑:vi setting.xml。
在mirrors 里面配置:
<mirrors>
<!-- mirror
| Specifies a repository mirror site to use instead of a given repository. The repository that
| this mirror serves has an ID that matches the mirrorOf element of this mirror. IDs are used
| for inheritance and direct lookup purposes, and must be unique across the set of mirrors.
|
<mirror>
<id>mirrorId</id>
<mirrorOf>repositoryId</mirrorOf>
<name>Human Readable Name for this Mirror.</name>
<url>http://my.repository.com/repo/path</url>
</mirror>
-->
<mirror>
<id>nexus-aliyun</id>
<name>aliyun nexus</name>
<url>http://maven.aliyun.com/nexus/content/groups/public/</url>
<mirrorOf>central</mirrorOf>
</mirror>
</mirrors>
source /etc/profile
mvn -v
出现下面内容,表示安装成功。
解压命令:tar -zxvf apache-ant-1.9.14-bin.tar.gz -C ~/apps/
修改文件夹名称:mv mv apache-ant-1.9.14/ ant-1.9.14
配置环境变量:
#ant
export ANT_HOME=/home/hadoop/apps/ant-1.9.14
export PATH=$PATH:$ANT_HOME/bin
source /etc/profile
ant -version
看到下面的结果,说明安装成功了
在安装protobuf之前,先安装几个软件包:glibc-headers、gcc-c++、make、cmake、 openssl-devel、ncurses-devel。
按照上面包的顺序依次执行命令:
sudo yum install -y glibc-headers
sudo yum install -y gcc-c++
sudo yum install -y make
sudo yum install -y cmake
sudo yum install -y openssl-devel
sudo yum install -y ncurses-devel
然后,解压protobuf,命令:tar -zxvf protobuf-2.5.0.tar.gz -C ~/apps/
进入protobuf的主目录下:cd protobuf-2.5.0/
在主目录下,依次执行下面的命令:
[hadoop@min1 protobuf-2.5.0]$ ./configure
[hadoop@min1 protobuf-2.5.0]$ sudo make
[hadoop@min1 protobuf-2.5.0]$ sudo make check
[hadoop@min1 protobuf-2.5.0]$ sudo make install
安装完成,验证protobuf是否安装成功,执行命令:protoc --version,如果出现下面信息,标志安装成功:
[hadoop@min1 protobuf-2.5.0]$ protoc --version
libprotoc 2.5.0
命令:
[hadoop@min1 software]$ tar -zxvf hadoop-2.8.5-src.tar.gz -C ~/apps/
进入hadoop安装主目录:
[hadoop@min1 software]$ cd ~/apps/hadoop-2.8.5-src/
[hadoop@min1 hadoop-2.8.5-src]$ pwd
/home/hadoop/apps/hadoop-2.8.5-src
[hadoop@min1 hadoop-2.8.5-src]$
用maven命令编译打包:
注意:建议直接在VMware的虚拟机上进行打包,我用过两个使用secureCRT连接工具打包,因为我配置好网络之后,就在这个连接工具上进行操作,它相比在VMware上直接操作要更方便点,只要可以复制粘贴,字体也可以调大,所以当我在secureCRT上执行这个打包命令的时候,奇慢无比,后来我就中断了,然后换在虚拟机上直接运行打包命令,感觉这个要在工具上打包要快一些,搞不懂是为什么。有知道的小伙伴可以评论区分享一下,感谢了!
[hadoop@min1 hadoop-2.8.5-src]$ mvn package -Pdist,native -DskipTests -Dtar
这个过程好久,不知道是它本来就那么久还是我的操作上哪里有问题,希望知道的老铁们,能在评论区和我分享一下。
我看打印的日志,只要慢在连接https的地址,除了这个https的地址,其他都挺快的,打包的过程中,很多事卡在获取https链接的资源上。我本机打开Apache的https链接也超级慢,几乎是打不开。但是,当我吧https删除之后,就很快连上了。真不知道是我网络的问题,还是Apache官网的问题。要是有知道这是什么原因或者有什么办法解决的兄dei,希望您在评论区多多分享一下,感谢了!
最后成功如下:
成功的 64 位 hadoop 包在~/apps/hadoop-2.8.5-src/hadoop-dist/target 下,如图:
最后分享下心路历程:真的太难了,这个过长太漫长了,昨晚弄了一个晚上,最后报protobuf的版本不兼容,之前安装protobuf-2.5.0的时候报错,没安装成功,我那时以为是protobuf的版低了,就想换个高的,不是高版本通常都是能向下兼容嘛,所以就下了个3.9.1版本,最后一晚下来,最终报错了,报错还提示要我选择2.5.0版本,我…真的太难了!
打包的时候一直有个进度显示【?/70】,感觉进度在一半以前都炒鸡慢,有的卡住半天没点动静,我都怀疑今晚可能又成不了。就在我准备安装官方的编译包的时候,我又看了下VMware的打包情况,发现速度变好快了,进度已经进行到后半程了,按照当前速度,很快就能知道最终的编译结果了。那个激动啊!最后,真的成功了,这两天的辛苦得到回报了!突然间想起一句话:守得云开见月明…
这首诗的原文是这样的,放在最后,即告慰自己,又勉励自己继续加油。
莫语常言道知足,万事至终总是空。
理想现实一线隔,心无旁骛脚踏实。
谁无暴风劲雨时,守得云开见月明。
花开复见却飘零,残憾莫使今生留。