大数据技术之Hadoop编译源码

系列博客
1、大数据技术之Hadoop完全分布式集群搭建+Centos7配置连通外网和主机
2、大数据技术之Hadoop编译源码
3、大数据技术之Hadoop分布式文件系统HDFS系统知识整理(从入门到熟练操作)
4、大数据技术之Hadoop分布式计算框架MapReduce系统知识整理(从入门到熟练操作)

一、前期准备工作

  1. 配置CentOS能连接外网,保证Linux虚拟机ping www.baidu.com是畅通的
  2. 全程使用root用户编译,减少文件夹权限出现问题
  3. 需要注意,读者如果操作需要按照自己的文件系统目录操作,我的只是示例
  4. jar包准备
    ①:hadoop-2.7.2-src.tar.gz(Hadoop源码)
    ②:jdk-8u144-linux-x64.tar.gz(JDK8)
    ③:apache-ant-1.9.9-bin.tar.gz(build打包工具)
    ④:apache-maven-3.0.5-bin.tar.gz(项目构建工具)
    ⑤:protobuf-2.5.0.tar.gz(序列化框架)

二、安装编译所需工具

2.1 安装JDK

  1. JDK解压
tar -zxf jdk-8u144-linux-x64.tar.gz -C /opt/module/
  1. 配置环境变量JAVA_HOME和PATH
# 打开配置文件
vi /etc/profile

# 添加下面内容
export JAVA_HOME=/opt/module/jdk1.8.0_144
export PATH=$PATH:$JAVA_HOME/bin
  1. 刷新配置文件
source /etc/profile
  1. 验证是否安装成功
java -version

2.2 安装Maven

  1. Maven解压
tar -zxvf apache-maven-3.0.5-bin.tar.gz -C /opt/module/
  1. 配置文件
# 打开配置文件
vi 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>
  1. 配置环境变量MAVEN_HOME和PATH
# 打开配置文件
vi /etc/profile

# 添加如下内容
export MAVEN_HOME=/opt/module/apache-maven-3.0.5
export PATH=$PATH:$MAVEN_HOME/bin
  1. 刷新配置文件
source /etc/profile
  1. 验证是否安装成功
mvn -version

2.3 安装Ant

  1. Ant解压
tar -zxvf apache-ant-1.9.9-bin.tar.gz -C /opt/module/
  1. 配置环境变量ANT _HOME和PATH
# 打开配置文件
vi /etc/profile

# 添加如下内容
export ANT_HOME=/opt/module/apache-ant-1.9.9
export PATH=$PATH:$ANT_HOME/bin
  1. 刷新配置文件
source /etc/profile
  1. 验证是否安装成功
ant -version

2.4 安装ProtoBuf

  1. 安装glibc-headers和g++
yum install glibc-headers
yum install gcc-c++
  1. 安装make和cmake
yum install make
yum install cmake
  1. 解压protobuf ,进入到解压后protobuf主目录
tar -zxvf protobuf-2.5.0.tar.gz -C /opt/module/
cd /opt/module/protobuf-2.5.0/
  1. 相继按顺序执行以下命令
./configure
make
make check
make install
ldconfig
  1. 配置环境变量LD_LIBRARY_PATH和PATH
# 打开配置文件
vi /etc/profile

# 添加如下内容


export LD_LIBRARY_PATH=/opt/module/protobuf-2.5.0
export PATH=$PATH:$LD_LIBRARY_PATH
  1. 刷新配置文件
source /etc/profile
  1. 验证安装是否成功
protoc --version

2.5 安装openssl库

yum install openssl-devel

2.6 安装ncurses-devel库

yum install ncurses-devel

三、开始编译

  1. 解压源码到/opt/目录
tar -zxvf hadoop-2.7.2-src.tar.gz -C /opt/
  1. 进入到hadoop源码主目录
cd /opt/hadoop-2.7.2-src
  1. 通过maven执行编译命令
mvn package -Pdist,native -DskipTests -Dtar
  1. 等待时间30分钟左右,最终成功是全部SUCCESS
    在这里插入图片描述
  2. 成功的64位hadoop包在/opt/hadoop-2.7.2-src/hadoop-dist/target下
cd /opt/hadoop-2.7.2-src/hadoop-dist/target

四、常见问题

  1. MAVEN install时候JVM内存溢出
    解决方法:在环境配置文件和maven的执行文件均可调整MAVEN_OPT的heap大小
  2. 编译期间maven报错。可能网络阻塞问题导致依赖库下载不完整导致,多次执行命令(一次通过比较难)
mvn package -Pdist,nativeN -DskipTests -Dtar
  1. 报ant、protobuf等错误
    解决方法:插件下载未完整或者插件版本问题
  • 1
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
Hadoop是一个开源的大数据处理框架,致力于解决大规模数据存储和处理问题。它采用了分布式计算的思想,能够在集群中高效地存储和处理大量的数据。 Hadoop的核心模块包括Hadoop Common、Hadoop Distributed File System(HDFS)和Hadoop MapReduce。Hadoop Common提供了Hadoop的基本功能和工具,比如文件系统和网络通信等;HDFS是Hadoop分布式文件系统,能够将大量数据分布式地存储在集群中的多个节点上;MapReduce是Hadoop的计算框架,通过将计算任务分解成多个小任务,并在集群中并行执行,加快了数据处理的速度。 Hadoop的使用有一定的技术门槛。首先,需要配置一个Hadoop集群,包括多台服务器,每台服务器都安装Hadoop软件;然后,需要了解Hadoop的基本概念和组件,比如NameNode、DataNode和JobTracker等;最后,需要掌握Hadoop的编程接口,比如Hadoop Streaming和Hadoop API等,以便进行数据处理和分析。 Hadoop具有许多优点。首先,它具备高容错性,即使集群中的某些节点出现故障,仍然能够保证数据的安全性和完整性;其次,Hadoop具有高可用性,能够自动将计算任务重新分配到其他健康的节点上,从而保证系统的连续运行;此外,Hadoop的可扩展性也非常好,可以根据数据规模的增长动态地扩展集群的规模。 总之,Hadoop是当前大数据处理的重要技术之一,通过分布式计算的思想和优秀的数据处理能力,能够帮助企业更有效地处理和分析大量的数据,并从中获取有价值的信息和洞察。对于初学者而言,掌握Hadoop的基本概念和使用方法,对于后续学习和应用大数据技术是非常有帮助的。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

IronmanJay

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值