Hadoopスタンドアロンモード設定

日経Linux 2011.5月号 最新クラウド技術 Pig/Hiveを自宅で体感
Hadoopの設定補足内容

検証環境にはAmazon EC2を使います。
Basic 32-bit Amazon Linux AMI(Root Device Size: 8 GB) + EBS Volume 50GiB をマウントしてインスタンスを作成しました。

検証ソフトウェアのバージョンは、hadoop-0.20.2.tar.gz、pig-0.7.0.tar.gz です。hadoop-0.21、pig-0.8が最新版としてありましたが、pigの連携が出来なかったので、この時点での最新を使えませんでした。動作的にはこれでも問題なさそうです。

1.スタンドアロンモード設定

{HADOOP_HOME}/conf/core-site.xml(主要設定ファイル)HDFS実行ポート 8020に設定します。
よく見るサンプルでhdfsプロトコル識別子が無かったりしますが、この書き方がいいようです。「hdfs://localhost:8020」。
/tmp以下にデータが展開されるのが気持ち悪いので、hadoop.tmp.dirも定義しておきました。


 
  fs.default.name
   hdfs://localhost:8020
  プライマリNameNodeを設定
 
 
  hadoop.tmp.dir
   /ebs/tmp
 


${HADOOP_HOME}/conf/hdfs-site.xml分散ファイルシステムの設定ファイル)


  
  dfs.replication
   1
  DataNodeはlocalhostのみなので、レプリケーション数は1
 

${HADOOP_HOME}/conf/mapred-site.xmlMapReduce実行環境の設定ファイル)


 
  mapred.job.tracker
   localhost:8021
   JobTrackerを設定
 

hadoop環境変数を設定します(${HADOOP_HOME}/conf/hadoop-env.sh)

export JAVA_HOME=/usr/lib/jvm/jre

.bash_profileの設定

export JAVA_HOME=/usr/lib/jvm/jre
export HADOOP_INSTALL=/opt/hadoop
export PATH=$HADOOP_INSTALL/bin:$PATH

2.新規ファイルシステムのフォーマット

$ bin/hadoop namenode -format

3.Hadoop デーモンの起動

$ bin/start-all.sh

4.Safe Mode をOffにしてディレクトリを作ります。
ファイルをコピーする前にセーフモードをオフにします。

$ hadoop dfsadmin -safemode leave
Safe mode is OFF
$ hadoop dfs -mkdir amazon
$ hadoop dfs -copyFromLocal ./reviewsNew.txt amazon