Hadoop主要包含四个模块
- Hadoop Common: 为其他Hadoop模块提供基础设施。
- Hadoop HDFS: 一个高高靠、高吞吐量的分布式文件系统。
- Hadoop MapReduce: 一个分布式的计算框架,包括任务调度和集群资源管理。
- Hadoop YARN: 一个新的MapReduce框架
环境#
maven##
最新的Hadoop采用maven作为项目构建工具,所以系统需要安装maven。
protoc 2.5.0##
hadoop的编译需要protoco 2.5。如果没有安装,编译的时候会报错误
"protoc -version doesn't report a value"
下载protobuf-2.5.0.tar.gz ,然后
tar -zxvf protobuf-2.5.0.tar.gz
cd protocobuf-2.5.0
.configure
make
sudo make install
然后检查protoc是否正确安装
protoc -version
如果出现以下错误“protoc: error while loading shared libraries: libprotoc.so.8: cannot open shared object file: No such file or directory”,那么再执行下面的命令即可
sudo ldconfig
编译#
首先在github上下载hadoop源码。
然后进入hadoop源码目录,执行以下命令
mvn install -DskipTests
mvn eclipse:eclipse -DdownloadSources=true -DdownloadJavadocs=true
然后就可以编译了
mvn package -Pdist -DskipTests -Dtar
编译结果在每个项目的target下面。
比如,hadoop-hdfs的编译结果在
hadoop-hdfs-project/hadoop-hdfs/target/hadoop-hdfs-2.7.2