|
1.1 准备学习环境3 Z" s4 S" Y/ G$ k
对于大部分公司而言, 实验和生产环境中的服务器集群部署的是Linux操作系统, 考虑到Linux在服务器市场中具有统治地
5 Y' `9 ~0 V" e0 L# E位, Hadoop从一开始便是基于Linux操作系统开发的, 因而对Linux有非常完美的支持。 尽管Hadoop采用了具有跨平台特性的Java+ I% y2 i; F: H
作为主要编程语言, 但由于它的一些功能实现用到了Linux操作系统相关的技术, 因而对其他平台支持不够友好, 且没有进行过8 B& F4 v) U% x5 @/ b# N
严格测试。 换句话说, 其他操作系统( 如Windows) 仅可 作为开发环境 [1] , 不可作为生产环境。 对于学习源代码而言, 操作系: s" Y G4 |0 g! ^& v5 j
统的选择显得不是非常重要, 读者可根据个人爱好自行决定。 本节以64bit Linux为例, 介绍如何在单机上准备Hadoop源代码学习
/ u. z) V" Z2 [环境。
: D8 V7 U6 M% f1.1.1 基础软件下载" ~; Z, ^6 }2 \# F
前面提到Hadoop采用的开发语言主要是Java, 因而搭建Hadoop环境所需的最基础软件首先应该包括Java基础开发包JDK和
. e$ D9 x |. |) }# jJava项目管理工具Maven, 考虑到源代码阅读和调试的便利性, 本书采用功能强大的集成开发环境Eclipse。 搭建Hadoop阅读环境
& m, M# h1 ~3 z- o. Q1 [" a+ w需要的各种软件以及下载方式如表1-1所示。
/ i/ S4 j$ F- M9 q3 p, x表1-1 搭建Hadoop阅读环境所需的软件: u1 V3 K+ _6 O! d' d
Galileo以上版本: 注意, Indigo及以上版本与Hadoop Eclipse插件可能存在兼容问题。
# Z {. j, L9 }6 l1 w1.1.2 如何准备Linux环境) w. g; }- Y% `& e
本节主要介绍如何准备Linux下Hadoop学习环境。 搭建Linux学习环境需要安装JDK和Eclipse等软件。 为了方便1.6节介绍/ m, _/ f2 s3 D/ A4 L* R
Hadoop源代码编译方法, 本节顺便安装Hadoop项目管理工具Maven。 本文以64bit Ubuntu为例, 介绍安装这些软件的方法, 最终安
& J& j- D1 O# [( G8 S& A$ d/ x装完成的目录结构为:
& f$ x6 _$ |/ ~/ E' J+ S2 |ROOT
. F8 ~$ ~8 @3 L! y" i# u├─home! w8 R' F! @1 @1 I
│ └─dong& G+ C- g+ [/ F+ n: P
│ └─eclipse c" ^ u k& D4 b3 d+ L2 i8 }
└─
8 g/ s6 o6 `% d+ T) t+ ^; V$ a Wusr& B, B9 c1 q% i! U; V
└─; K- A; `. k- ?8 v, |2 f# p' U
lib
# z7 a# s& q7 P% m├─apache-maven-3.0.5" g4 M3 t1 s$ ]8 @. v$ P% E& _( ?
└─5 M3 k# D# [8 t& Q8 J# J) `( p. u2 |
jvm; v2 K/ I+ Y8 j4 R8 Q7 D
└─
! X3 @6 T4 O) { m. Ljdk1.6.0_255 v" p3 u! Q4 d0 G4 h
1.JDK安装与配置" D G- ?# h/ I: z, M' y
一般而言, Ubuntu系统会自带JDK, 如果没有或者版本不合要求, 可按以下步骤进行安装。
8 l$ `# M- {: m% f1 \5 K步骤1 安装JDK。/ q6 i5 `# Z8 H7 \: D5 Z) ?' D
将下载的.bin文件复制到Linux的某个目录下, 比如/usr/lib/jvm/, 然后在Shell中执行以下命令为该文件添加可执行权限:( n4 W& f `7 ~& o" g3 `3 C
chmod +x /usr/lib/jvm/jdk1.6.0_25.bin
2 T9 l/ X: Z1 h6 n1 H然后执行以下命令安装JDK:& ]) ^2 u7 x7 M M, |" q/ j
sudo /usr/lib/jvm/jdk1.6.0_25.bin& H9 m/ j5 o4 Z' L( ]3 t
之后将会出现安装信息, 直至屏幕显示要求按下回车键, 此时输入回车键后, 会把JDK解压到文件夹jdk1.6.0_25中。 至& Z+ T4 n/ c# g$ H& v
此, JDK已安装完毕, 下面进行配置。; n, @) \0 u, ]
步骤2 配置JDK。" U9 w2 A! x5 w8 u& K* R% ?
修改/etc/profile文件, 在里面添加以下内容:" x8 [& `5 B; L# A( m! d+ i* o
export JAVA_HOME=/usr/lib/jvm/jdk1.6.0_25; t+ S5 r W. h3 D
export PATH=$PATH JAVA_HOME/bin$ J/ a% [# X$ Q4 t
export CLASSPATH=$CLASSPATH JAVA_HOME/lib JAVA_HOME/jre/lib" ~ A; ~; O" ]2 ?
输入以下命令使配置生效:! r, T' b0 a& N0 J
source /etc/profile
3 b9 I# p" s. n步骤3 修改默认JDK版本。
0 E! ^# L9 s! p) l" n, g$ f, M$ dUbuntu中可能会有默认的JDK, 如openjdk, 因而我们需要将自己安装的JDK设置为默认JDK版本, 执行下面的代码:4 q- P# z* B6 @* u- m
sudo update-alternatives --install /usr/bin/java java /usr/lib/jvm/jdk1.6.0_25/bin/java 300
% M. ]! ~; u2 F+ |sudo update-alternatives --install /usr/bin/javac javac /usr/lib/jvm/jdk1.6.0_25/bin/javac 300
( k0 T: ~: @- s7 Vsudo update-alternatives --install /usr/bin/jar jar /usr/lib/jvm/jdk1.6.0_25/bin/jar 300
& Q$ _- v# A1 i# C9 f- ?sudo update-alternatives --install /usr/bin/javah javah /usr/lib/jvm jdk1.6.0_25/bin/javah 3008 |$ `) P$ y/ @; n X) r' l1 J
sudo update-alternatives --install /usr/bin/javap javap /usr/lib/jvm/jdk1.6.0_25/bin/javap 300% b3 J! n g0 u5 n9 C/ Y% Q
然后执行以下代码选择我们安装的JDK版本:' a) |; v$ M7 x
sudo update-alternatives --config java* v* O# q2 n$ W5 g* Z& x
步骤4 验证JDK是否安装成功。. n$ L: I/ S# T! \3 m. x
重启Shell终端, 执行java -version命令, 若输出以下内容, 则说明安装成功:+ O1 S" P2 g/ C6 l6 V; E2 @2 B9 i5 }
java version "1.6.0_25"- q& S% |$ E. t% C* d
Java(TM) SE Runtime Environment (build 1.6.0_25-b06)
; H" Q: X9 T# X! {3 T1 u$ s; B+ X0 DJava HotSpot(TM) Client VM (build 20.0-b11, mixed mode, sharing)# \8 |3 R# X( ^; c
2.安装、 配置Maven及Eclipse1 U9 h& y" ]1 [% j0 E3 I" Z: U/ s! s
下面介绍Maven和Eclipse的安装、 配置方法。! v7 A" E1 s8 c: l
( 1) 安装与配置Maven6 {' `2 g8 g7 j% ]* O3 ^
首先解压下载包, 比如解压到文件/usr/lib/apache-maven-3.0.5目录下, 然后修改/etc/profile文件, 在里面添加以下内容: v6 Z4 K) z+ K
export MAVEN_HOME=/usr/lib/apache-maven-3.0.5
. e/ M% X+ D [1 U+ ?, |% E4 Iexport PATH=$PATH$ ANT_HOME/bin
1 u' E4 R2 f" B W9 @/ j8 m, _输入以下命令使配置生效:
5 b1 b( M2 B; r3 jsource /etc/profile
& i* K& N) d# b! }9 i$ o同Windows下的验证方式一样, 重启终端, 执行mvn --version命令, 若输出以下内容, 则说明安装成功:2 i) Y6 F: x4 m7 P9 j+ W
Apache Maven version 3.0.5 compiled on June 27 2008
$ W' o# V+ W3 H* K/ I( 2) 安装Eclipse' w* ]' P2 ?, z M' i/ U
同Windows环境下安装方式一样, 直接解压即可使用。
3 z o- C6 ]# K9 {[1] 截至本书结稿时, Apache Hadoop SVN中已经出现了针对Windows操作系统的分支, 具体见http://svn.# l# x \$ T& y: q6 Z3 M9 ]
apache.org/repos/asf/hadoop/common/branches/下的branch-1-win和branch-trunk-win, 且Hortonworks公司发布了Windows安装版本, 具体$ w3 w8 }0 U6 E$ u/ e' d
见 http://hortonworks.com/partners/microsoft/。 1 [2 c: j1 p4 r7 ~9 R2 @+ T
5 B* W' G3 }- o
|
|