Hadoopに入門

最近Hadoopが気になってるので動かしてみる。
知らずに動かすのもなんなので色々調べて、なんとなく分散ファイルシステムについて理解した気になってから・・・

自宅のCentOSにインストールをトライ。
すでに色々入ってるので、細かいものははしょって、今回いれたのは以下のもの

jdk-6u23-linux-x64
hadoop-0.21.0

jdkは展開と実行だけという簡単仕様なので省略。
で、以下が起動までの流れ。

Hadoop実行用ユーザの作成

# useradd -u 1030 hadoop

Hadoopの展開と設置

hadoop$ tar xfz hadoop-0.21.0.tar.gz
# mv hadoop-0.21.0 /usr/local
# ln -s /usr/local/hadoop-0.21.0 /usr/local/hadoop

core-site.xmlの編集

hadoop$ vi /usr/local/hadoop/conf/core-site.xml



fs.default.name
hdfs://localhost:9000

hdfs-site.xmlの編集

hadoop$ vi /usr/local/hadoop/conf/hdfs-site.xml



dfs.replication
1

mapred-site.xmlの編集

hadoop$ vi /usr/local/hadoop/conf/mapred-site.xml



mapred.job.tracker
localhost:9001

hadoop-env.shの編集

hadoop$ vi /usr/local/hadoop/conf/hadoop-env.sh

コメントを外して、パスの修正を実施

# The java implementation to use. Required.
export JAVA_HOME=/usr/java/default

Hadoopは通信にSSHを使用するそうなので、証明書の作成

hadoop$ mkdir ~/.ssh
hadoop$ ssh-keygen -t dsa -P "" -f ~/.ssh/id_dsa
hadoop$ cp -p ~/.ssh/id_dsa.pub ~/.ssh/authorized_keys
hadoop$ chmod 700 ~/.ssh
hadoop$ chmod 611 ~/.ssh/authorized_keys
hadoop$ chmod 600 ~/.ssh/id_dsa

で、1回ログインしておく

hadoop$ ssh localhost

最後に、HDFS領域の初期化。
デフォルトで、/tmp/hadoop-hadoopを使用するようなので、変更方法を今度調べよう。

hadoop$ /usr/local/hadoop/bin/hadoop namenode -format

とりあえず擬似分散モードで起動

hadoop$ /usr/local/hadoop/bin/start-all.sh

色々動いている風なので、"top"、"netstat -na"で確認してみる。
動いてる(・∀・)

あとは、WEBベースの管理画面へレッツアクセスヽ(´ー`)ノ

http://your.host.name:50070/dfshealth.jsp
http://your.host.name:50030/jobtracker.jsp

仕様の勉強に時間がかかったので、今日はここまで!