2012年12月13日木曜日

Hadoopをさくらのクラウド(CentOS6)にインストールする

Hadoopをインストールします

参考)「Hadoopファーストガイド」を執筆しました
http://blog.livedoor.jp/sasata299/archives/51842860.html

環境

さくらのクラウド
CentOS6(64bit)

JDKのインストール
# yum install java-1.6.0
# java -version
java version "1.6.0_22"
OpenJDK Runtime Environment (IcedTea6 1.10.6) (rhel-1.25.1.10.6.el5_8-x86_64)
OpenJDK 64-Bit Server VM (build 20.0-b11, mixed mode)

Apache Hadoopのインストール

http://www.apache.org/dyn/closer.cgi/hadoop/common/
最新のstableバージョンを探します

hadoopをダウンロードして設置
# /usr/sbin/useradd hadoop
# wget http://ftp.kddilabs.jp/infosystems/apache/hadoop/common/stable/hadoop-1.1.1.tar.gz
# tar zxvf hadoop-1.1.1.tar.gz
# mv hadoop-1.1.1 /usr/local/
# chown hadoop:hadoop -R /usr/local/hadoop-1.1.1/

javaがインストールされたディレクトリを確認
2段上の親ディレクトリがJAVA_HOMEに指定するディレクトリです
# readlink -e $(which javac)
/usr/lib/jvm/java-1.6.0-openjdk-1.6.0.0.x86_64/bin/javac

.bashrcに環境変数を追記
# cd
# vi .bashrc
export JAVA_HOME=/usr/lib/jvm/java-1.6.0-openjdk-1.6.0.0.x86_64
export HADOOP_INSTALL=/usr/local/hadoop-1.1.1
export PATH=$PATH:$HADOOP_INSTALL/bin:$JAVA_HOME/bin:$PATH

ホスト名を/etc/hostsに追記
# hostname
my.kyoto.local
# vi /etc/hosts
127.0.0.1   localhost localhost.localdomain localhost4 localhost4.localdomain4 my.kyoto.local

Hadoop動作テスト

スタンドアロンモードで動作テストをします
同じ文字を数えてみましょう
ファイルを用意します
# mkdir input
# mkdir output
# vi input/a
a b c
# vi input/b
a a b c c c

hadoop実行
# hadoop jar /usr/local/hadoop-1.1.1/hadoop-examples-1.1.1.jar wordcount input output

出力結果確認
# cat output/part-r-00000
a       3
b       2
c       4

簡単ですね!