@hadoopMan
2017-03-25T03:23:32.000000Z
字数 2526
阅读 1008
hadoop
想学习spark,hadoop,kafka等大数据框架,请加群459898801,满了之后请加2群224209501。后续文章会陆续公开
/opt/complieHadoop/
hadoop-2.5.0-src.tar下载地址:
hadoop下载
解压jdk-7u67-linux-x64.tar
$tar –zxvf jdk-7u67-linux-x64.tar /opt/modules/
配置环境变量
查看系统自带java
$yum list installed |grep java。
卸载自带java
$yum -y remove java-1.7.0-openjdk*
$yum -y remove tzdata-java.noarch
安装jdk1.7.0_67
$vi /etc/profile
末尾添加
export JAVA_HOME=/opt/modules/jdk1.7.0_67
export PATH=$PATH:$JAVA_HOME/bin
测试java环境是否配置成功
$java --version
下载apache-maven-3.0.5-bin.tar.gz
mvn下载
解压apache-maven-3.0.5-bin.tar
$tar –zxvf apache-maven-3.0.5-bin.tar.gz
配置环境变量
$vi /etc/profile
末尾添加
export MAVEN_HOME=/usr/local/apache-maven-3.0.5
export PATH=$PATH:$MAVEN_HOME/bin
验证是否配置成功
由于protobuf-2.5.0.tar.gz需要先编译,所以安装之前应该先安装gcc/gcc-c++/make。
安装gcc/gcc-c++/make:
$sudo yum install gcc
$sudo yum install gcc-c++
$sudo yum install make
解压protobuf-2.5.0.tar.gz
tar -zvxf protobuf-2.5.0.tar.gz
编译protobuf-2.5.0
$cd protobuf-2.5.0
$./configure --prefix=/usr/local/protoc/
$sudo make
安装protobuf-2.5.0
$sudo make install
添加环境变量
$vi /etc/profile
末尾添加
export export PATH=$PATH:/usr/local/protoc/bin
验证是否配置成功
$sudo yum install cmake
$sudo yum install openssl-devel
$sudo yum install ncurses-devel
编译之前先配置镜像及域名服务器,来提高下载速度,进而提高编译速度,用nodepad++打开/opt/compileHadoop/apache-maven-3.0.5/conf/setting.xml。(nodepad已经通过sftp链接到了机器)
<mirror>
<id>nexus-osc</id>
<mirrorOf>*</mirrorOf>
<name>Nexus osc</name>
<url>http://maven.oschina.net/content/groups/public/</url>
</mirror>
sudo vi /etc/resolv.conf
添加内容:
nameserver 8.8.8.8
nameserver 8.8.4.4
在hadoop-2.5.0-src目录下输入下面命令。
$mvn package -DskipTests -Pdist,native
或者:
mvn package -DskipTests -Pdist,native -Dtar(生成压缩文件)
编译成功有以下提示
会在目录/opt/compileHadoop/hadoop-2.5.0-src/hadoop-dist/target/下生成编译成的目标文件。
缺zlib、protocbuf、CMake之类的提示比较明显,却啥装啥此处不作叙述。
本方法用于官网下载的hadoop-2.5.0-cdh5.3.6.tar.gz解压后src文件夹下源码的编译,不用于hadoop-2.5.0-cdh5.3.6-src.tar.gz源码包的编译,源码包没成功过估计二者有不同。
解压源码
maven镜像----------maven安装目录和/home/当前用户/.m2 两个地方的mirror都要屏蔽其他mirror并使用下面的
```
nexus-spring
cdh.repo
spring
http://repo.spring.io/repo/
nexus-spring2
cdh.releases.repo
spring2
http://repo.spring.io/repo/
首先上面两个特殊镜像与本次编译有关需要添加,其次maven.oschina.net这个镜像必须屏蔽,否则提示找不到jar导致失败,估计是oschina上面的依赖包不全或目录结构不一样。
到src源码文件夹下执行:
这句话可选,设置一下应该能提高成功率
export MAVEN_OPTS="-Xms256m -Xmx512m"
下面这句编译很熟了,过程不一般漫长要耐心等待
mvn package -Pdist,native -DskipTests -Dtar -Drequire.snappy
```
失败可直接重试一次,关注出错点内容,如果再出错是同一个地方,则要认真处理。