编译环境OS: Ubuntu 12.04 64-bit hadoop version: 2.2.0 Java: Jdk1.7.0_45 java环境配置空白的电脑,什么都没有啊 下载 jdk : http://www.oracle.com/technetwork/java/javase/downloads/jdk7-downloads-1880260.html 在 /usr/lib/下新建jvm文件夹,将刚下的压缩文件解压到/usr/lib/jvm/目录下 修改~/.bashrc 配置环境变量 export JAVA_HOME=/usr/lib/jvm/jdk1.7.0_45 export JRE_HOME=${JAVA_HOME}/jre export CLASSPATH=.:${JAVA_HOME}/lib:${JRE_HOME}/lib export PATH=${JAVA_HOME}/bin:$PATH 更新一下,使其生效 $ source .bashrc 检查一下是否配置成功 $ java -version java version "1.7.0_45" Java(TM) SE Runtime Environment (build 1.7.0_45-b18) Java HotSpot(TM) 64-Bit Server VM (build 24.45-b08, mixed mode) 安装依赖包这些库啊包啊基本都会在编译过程中用到,缺少的话会影响编译,看到error了再找solution非常麻烦,提前装好一劳永逸。 $ sudo apt-get install g++ autoconf automake libtool cmake zlib1g-dev pkg-config libssl-dev 因为还要用到ssh,所以如果机器上没有的话,装个openssh的客户端就好啦 (ubuntu 12.04应该预装了) $ sudo apt-get install openssh-client 当然想装server的话就 $ sudo apt-get install openssh-server 编译过程中还会用到protobuf 貌似需要最新的2.5.0,因此有低版本的也重新安装一下 安装配置 protobuf下载最新的protobuf: https://code.google.com/p/protobuf/downloads/list 解压,依次运行 $ ./configure --prefix=/usr $ sudo make $ sudo make check $ sudo make install 检查一下版本 $ protoc --version libprotoc 2.5.0 安装配置 mavenubuntu下用apt-get安装 $ sudo apt-get install maven
创建新用户及用户组我们为hadoop创建一个新组叫“hadoop”,创建一个新用户叫“hduser”属于“hadoop”组 (网上都这么起名字,我们也跟风好了) $ sudo addgroup hadoop $ sudo adduser --ingroup hadoop hduser 有了新用户以后,我们下面的操作就都要在新用户下完成了 $ su hduser 建立ssh信任hadoop启动的时候要ssh访问localhost,建立信任关系省得老输密码 $ cd /home/hduser $ ssh-keygen -t rsa -P "" $ cat .ssh/id_rsa.pub >> .ssh/authorized_keys 用命令验证一下是否可以免密码链接localhost $ ssh localhost 这是没有给rsa密钥设密码的情况,但是我觉得吧,一般还是给个密码好,可以用ssh-agent管理,以后也不许要每次都输入 $ ssh-add ~/.ssh/id_rsa.pub # 参数写成公钥了,应该传私钥进去,感谢twlkyao提醒 $ ssh-add ~/.ssh/id_rsa 编译 hadoop 2.2.0下载 hadoop 2.2.0 http://www.apache.org/dyn/closer.cgi/hadoop/common/ 解压到用户目录 /home/hduser/. 进入 hadoop-2.2.0-src 目录 因为已经安装了maven, protobuf, java环境也有了,compiler也有了所以直接运行 $ mvn package -Pdist,native -DskipTests -Dtar 正常应该不会有什么错误了, 参数和其他编译选择请看 hadoop目录下的 BUILDING.txt文件 如果出现如下错误: [ERROR] Failed to execute goal org.apache.maven.plugins:maven-compiler-plugin:2.5.1:testCompile (default-testCompile) on project hadoop-auth: Compilation failure: Compilation failure: 需要修改源码下边的hadoop-common-project/hadoop-auth/pom.xml Index: hadoop-common-project/hadoop-auth/pom.xml 添加加号部分代码。 安装配置 hadoop 2.2.0此时编译好的文件位于 hadoop-2.2.0-src/hadoop-dist/target/hadoop-2.2.0/ 目录中 |