FreeBSD 7.2でHadoopのサンプルを動かしてみた
とりあえず、hadoop用のアカウントを作ってみた。
## __GooglePrettify__ % sudo adduser hadoop
このユーザー用に、パスワード無しのSSH鍵を作って、ログインできるようにしておく。
予めtarballを手動で/usr/ports/distfilesに入れておいて、
## __GooglePrettify__ % cd /usr/ports/java/diablo-jdk16 % sudo make config # TZUPDATEは無効にしておく(手抜き)
で、JDKのインストール
## __GooglePrettify__ % sudo portinstall java/diablo-jdk16 % sudo portinstall shells/bash
JDKが入ったら、次はhadoopのインストール。http://hadoop.apache.org/common/releases.html#Downloadらへんからダウンロード。
## __GooglePrettify__ % tar zxvf hadoop-0.20.1.tar.gz % cd hadoop-0.20.1/conf
hadoop-env.shのJAVA_HOMEを設定しておく。
## __GooglePrettify__ export JAVA_HOME=/usr/local/diablo-jdk1.6.0
docs/quickstart.htmlを見ながら
conf/core-site.xml
<!-- __GooglePrettify__ -->
<configuration>
<property>
<name>fs.default.name</name>
<value>hdfs://localhost:9000</value>
</property>
</configuration>
conf/hdfs-site.xml
<!-- __GooglePrettify__ -->
<configuration>
<property>
<name>dfs.replication</name>
<value>1</value>
</property>
</configuration>
conf/mapred-site.xml
<!-- __GooglePrettify__ -->
<configuration>
<property>
<name>mapred.job.tracker</name>
<value>localhost:9001</value>
</property>
</configuration>
起動してみる。
## __GooglePrettify__ % cd ../bin % ./hadoop namenode -format # HDFSの初期化 % ./start-all.sh
エラーが出なければ成功。jpsで動作してるか確認できる。
## __GooglePrettify__ % mkdir ~/inputs % cp CHANGES.txt ~/inputs # 適当なファイルを入れて % hadoop dfs -put ~/inputs inputs # HDFSにコピー % hadoop dfs -ls inputs # コピーできたか確認
いよいよ、map, reduceを実行してみる。
## __GooglePrettify__ % hadoop jar hadoop-0.20.1-examples.jar wordcount inputs outputs
ほっとくと、なにやら出力が出て終了。
## __GooglePrettify__ % hadoop dfs -ls outputs Found 2 items drwxr-xr-x - hadoop supergroup 0 2009-09-19 22:58 /user/hadoop/outputs/_logs -rw-r--r-- 1 hadoop supergroup 126351 2009-09-19 22:59 /user/hadoop/outputs/part-r-00000 % hadoop dfs -cat outputs/part-r-00000 # に、単語をカウントした結果が出力される
FreeBSD 7.2でHadoopのサンプルを動かしてみた





