hadoop 的编译
hadoop编译的环境要求
1.Unix System
2.jdk 1.6版本以上(我使用的是jdk1.7)
3.Maven 3.0以上版本
4.Findbugs 1.3.9 (可装可不装)
5.ProtocolBuffer 2.5.0
6.CMake 2.6 or newer (if compiling native code)
7.Zlib devel (if compiling native code)
8.openssl devel ( if compiling native hadoop-pipes )
9.Internet connection for first build (to fetch all Maven and Hadoop dependencies)–使虚拟机自动获取IP地址,并保证可联网
step 1 下载并解压安装hadoop-2.5.0源码
将hadoop-2.5.0-src.tar.gz压缩包解压到指定目录(此处为/opt/modules/目录下)
$tar -zxf hadoop-2.5.1-src.tar.gz -C /opt/modules/
step 2 安装配置jdk
2.1将jdk.1.7.0压缩包解压到指定目录(此处为/opt/opt/modules/目录下)
tar -zxf jdk-7u67-linx-x64.tar.gz –C /opt/modules/
2.2配置环境变量
编辑profile文件
$sudo vi /etc/profile
添加以下配置(G:到最后一行,o:下一行)
export JAVA_HOME=/opt/modules/jdk1.7.0_67
export PATH=$PATH:$JAVA_HOME/bin
保存退出
2.3 切换到root用户,生效profile文件,再退出重新登入
#source /etc/profile
#exist
$exist
2.4验证jdk是否安装成功
$java -version
step 3 安装配置maven
3.1 解压
tar -zxf apache-maven-3.0.5-bin.zip -C /opt/modules
3.2 配置环境变量
编辑profile文件
$sudo vi /etc/profile
添加以下配置
export MAVEN_HOME=/opt/modules/apache-maven-3.0.5
export PATH=.:$MAVEN_HOME/bin:$PATH
3.3 转到root用户生效profile,退出在登入
#source /etc/profile
#exist
$exist
3.4 验证是否安装成功
$mvn -version
step 4 安装protobuf
4.1 编译protobuf前先安装gcc/gcc-c++/make
sudo yum install gcc
sudo yum install gcc-c++
sudo yum install make
4.2 解压安装protobuf
$tar -zxf protobuf-2.5.0.tar.gz
$cd protobuf-2.5.0
$./configure --prefix=/usr/local/protoc/
$sudo make
$sudo make install
4.3 配置环境变量
$export PATH=.:/usr/local/protoc/bin:$PATH
4.4 验证是否安装成功
protoc -version
step 5 安装其他依赖
sudo yum install cmake
sudo yum install openssl-devel
sudo yum install ncurses-devel
step 6 编译hadoop源代码
6.1 添加镜像(使得外网下载更快)
1)配置镜像(/opt/modules/apache-maven-3.0.5/conf/setting.xml)
<mirror>
<id>nuxus-osc</id>
<mirrorOf>*</mirrorOf>
<name>Nexus</name>
<url>http://maven.oschina.net/content/groups/public/</url>
</mirror>
2)配置域名解析服务器
#vi etc/resolv.conf
添加内容:
nameserver 8.8.8.8
nameserver 8.8.4.4
6.2开始编译
$cd ~/app/hadoop-2.5.1-src
先去hadoop源码安装目录下
$mvn package -DskipTests -Pdist,native
编译成功!