1、安装需要的包
(1)hadoop-2.7.7-src.tar.gz
(2)jdk-8u144-linux-x64.tar.gz
(3)apache-ant-1.9.9-bin.tar.gz(build工具,打包用的)
(4)apache-maven-3.6.3-bin.tar.gz
(5)protobuf-2.5.0.tar.gz(序列化的框架)
2、安装jdk
- 解压安装
tar -zxvf jdk-8u144-linux-x64.tar.gz -C /opt/module/
重命名为jdk1.8
- 配置环境变量
vim /etc/profile
在文件尾部加上
#JAVA_HOME
export JAVA_HOME=/opt/module/jdk1.8
export PATH=𝑃𝐴𝑇𝐻:JAVA_HOME/bin

- 验证安装
source /etc/profile
java -version

3、安装Maven
- 解压安装
tar -zxvf apache-maven-3.6.3-bin.tar.gz -C /opt/module/
重命名文件夹
mv apache-maven-3.6.3/ maven3.6

- 修改配置文件
配置阿里云仓库
vim conf/settings.xml
增加如下配置
<mirror>
<id>nexus-aliyun</id>
<mirrorOf>central</mirrorOf>
<name>Nexus aliyun</name>
<url>http://maven.aliyun.com/nexus/content/groups/public\</url>
</mirror>

- 配置环境变量
vim /etc/profile
在文件尾部加上
#MAVEN_HOME
export MAVEN_HOME=/opt/module/maven3.6
export PATH=PATH:MAVEN_HOME/bin

- 验证安装
source /etc/profile
mvn -version

4、安装ant
- 解压安装
tar -zxvf apache-ant-1.9.9-bin.tar.gz -C /opt/module/
重命名
mv apache-ant-1.9.9/ ant1.9

- 配置环境变量
vim /etc/profile
在文件尾部加上
#ANT_HOME
export ANT_HOME=/opt/module/ant1.9
export PATH=PATH:ANT_HOME/bin

- 验证安装
source /etc/profile
ant -version

5、安装 glibc-headers和g++
注意CentOS 7于2024年6月30日停止维护,原有镜像地址失效
如何解决:
创建备份目录
mkdir -p /etc/yum.repos.d/bak
移动所有 .repo 文件到备份目录
mv /etc/yum.repos.d/*.repo /etc/yum.repos.d/bak/
下载阿里云 CentOS 7 归档源配置
wget -O /etc/yum.repos.d/CentOS-Base.repo https://mirrors.aliyun.com/repo/Centos-7.repo
编辑配置文件,将所有 $releasever 替换为 7(避免变量解析问题)
sed -i 's/$releasever/7/g' /etc/yum.repos.d/CentOS-Base.repo
启用 epel 源(可选,但能补充更多依赖)
wget -O /etc/yum.repos.d/epel.repo https://mirrors.aliyun.com/repo/epel-7.repo
清理旧缓存
yum clean all
重建缓存(这一步会下载镜像源的包列表,耐心等待)
yum makecache
安装glibc-headers和gcc-c++
yum install -y glibc-headers
yum install -y gcc-c++
验证
gcc -v
c++ -v

6、安装make和cmake
yum install -y make
yum install -y cmake
7、编译protobuf
- 解压文件
tar -zxvf protobuf-2.5.0.tar.gz -C /opt/module/
mv protobuf-2.5.0/ protobuf2.5

- 编译文件
./configure
make
make check
make install
ldconfig

- 配置环境变量
vim /etc/profile
在文件尾部加上
#LD_LIBRARY_PATH
export LD_LIBRARY_PATH=/opt/module/protobuf2.5
export PATH=PATH:LD_LIBRARY_PATH

- 验证安装
source /etc/profile
protoc --version

8、安装openssl库
yum install -y openssl-devel

9、安装 ncurses-devel库
yum install -y ncurses-devel

10、编译Hadoop源码
(1)解压源码到/opt/目录
tar -zxvf hadoop-2.7.7-src.tar.gz -C /opt/

(2)通过maven执行编译命令
cd /opt/hadoop-2.7.7-src/
mvn package -Pdist,native -DskipTests -Dtar
过程比较漫长,最终成功是全部SUCCESS,如果编译期间maven报错,可能网络阻塞问题导致依赖库下载不完整导致,多次执行命令

(3)编译后文件位置
/opt/hadoop-2.7.7-src/hadoop-dist/target
