Hadoopをセットアップ の変更点
Top / Hadoopをセットアップ
- 追加された行はこの色です。
- 削除された行はこの色です。
- Hadoopをセットアップ へ行く。
- Hadoopをセットアップ の差分を削除
*Hadoopをセットアップ(疑似分散モード) [#z64153e4] クリーンインストールしたCentOSにHadoopをセットアップし、疑似分散モードとして動作させるまでの記録です。 セットアップ対象環境は以下の通り。 |CPU|Core2 Duo 3G| |メモリ|3GB| |HDD|80G| |OS|CentOS5.4| |Javaバージョン|Sun JDK 1.6u22| |Hadoopバージョン|0.20.2| 大きく、手順は以下の通り。 #contents まあ、こんな感じですわ。 **javaのインストール(rootユーザ) [#t31cfcda] ※この作業はrootユーザで実施します。 今回は、SunのJDK1.6u22を使いました。資材は普通にSunのサイトからDLし、インストール。 **sshのパスワードなしログインの設定 [#m42e84be] ※この作業はrootユーザで実施します。 sshをパスワードなしでログインするための設定をします。 編集対象のファイルは以下の通り。 -/etc/ssh/sshd_config 以下の3行のコメントを外します。 RSAAuthentication yes PubkeyAuthentication yes AuthorizedKeysFile .ssh/authorized_keys 設定を変更したらsshdを再起動します。 service sshd restart ちなみに、sshでログインにsshd再起動してもコネクションは切れないんだね~優秀笑 **hadoopユーザ作成(rootユーザ) [#t4d8ef9a] ※この作業もrootユーザで実施します。 まあ、単純にuseraddします。 useradd hadoop -p hadoop 造作もないですね。 **hadoopユーザのssh認証鍵生成、配置(hadoopユーザ) [#sea97eb9] ※この作業はhadoopユーザで実施します! パスワードなしログイン用のRSA鍵の生成+公開鍵をauthorized_keysに流し込みます。 ssh-keygen -t rsa -P "" cat .ssh/id_rsa.pub >> .ssh/authorized_keys 次に、生成された鍵ファイルの権限の確認します。 確認ポイントは以下の2点です。 -.sshが700となっていること -「.ssh/authorized_keys」が600となっていること なってなかったら、さくっと権限変更してください。 chmod 600 authorized_keys 実は、小生ここではまりました笑 小生の環境では、hadoopユーザでオペレーションしたときに、「.ssh/authorized_keys」の権限が644になっていたため、NGでした。 sshのパスワードなしログインについては結構はまりどころみたいなので、参考にしたサイトのリンクを残します。 -http://www.geocities.jp/turtle_wide/tools/sshpass.html &br;このサイトはほんとに参考になります。 -http://blog.livedoor.jp/yoko_net/archives/51789794.html **hadoopのファイルを配置、設定ファイルの変(hadoopユーザ) [#oa22740c] まず、hadoopのバイナリをhadoopのサイトからDLします。 -http://hadoop.apache.org/ 次に、好みの場所に展開します。 書生は -/opt に展開しました。 して、展開後に、設定ファイルを編集します。 編集対象の設定ファイルは以下の4つです。それぞれ「/{hadoop-home}/conf」配下にあります。 +hadoop-env.sh +core-site.xml +hdfs-site.xml +mapred-site.xml それぞれの編集内容は以下の通り。 ***hadoop-env.sh [#p3843a6e] 以下の3行を編集した。 export JAVA_HOME=/usr/java/latest/ ←インストールしたjavaのパスを指定 export HADOOP_HEAPSIZE=512 ← デフォルトでは1Gとなっているが、インストールするのがただのPCのため、512Mに変更 export HADOOP_OPTS=-server ← コメントアウトを外す。 ***core-site.xml [#mdd5b871] デフォルトで配置されているファイルはほぼ空なので、編集後のファイルの内容をそのまま掲載 <?xml version="1.0"?> <?xml-stylesheet type="text/xsl" href="configuration.xsl"?> <!-- Put site-specific property overrides in this file. --> <configuration> <property> <name>fs.default.name</name> <value>hdfs://XXX.XXX.XXX.XXX:8020/</value> </property> <property> <name>hadoop.tmp.dir</name> <value>/var/hadoop</value> </property> </configuration> ***hdfs-site.xml [#i278aff6] デフォルトで配置されているファイルはほぼ空なので、編集後のファイルの内容をそのまま掲載 <?xml version="1.0"?> <?xml-stylesheet type="text/xsl" href="configuration.xsl"?> <!-- Put site-specific property overrides in this file. --> <configuration> <property> <name>dfs.replication</name> <value>1</value> </property> </configuration> ***mapred-site.xml [#rc356380] デフォルトで配置されているファイルはほぼ空なので、編集後のファイルの内容をそのまま掲載 <?xml version="1.0"?> <?xml-stylesheet type="text/xsl" href="configuration.xsl"?> <!-- Put site-specific property overrides in this file. --> <configuration> <property> <name>mapred.job.tracker</name> <value>10.68.225.115:8021</value> </property> </configuration> **hdfsのフォーマット [#x58d7482] 設定が完了したら、hdfsをフォーマットします。 /{HADOOP_HOME}/bin/hadoop namenode -format **Hadoopの起動、停止、WEB管理ツール [#ief4ecc1] 起動、停止は以下のコマンドからできます。 :起動|/{HADOOP_HOME}/bin/start-all.sh :停止|/{HADOOP_HOME}/bin/stop-all.sh 正常に起動した場合、以下のURLよりWEB管理ツールにアクセスできるはずです。 :NameNode|http://localhost:50070/ :JobTracker|http://localhost:50030/ **動作確認 [#kd82eefe] 以下のコマンドを実行すると、hadoopに最初から入っているπを計算するサンプルプログラムを動作させることが出来ます。 cd /{HADOOP_HOME} bin/hadoop jar hadoop-0.20.2-examples.jar pi 10 100000 以下のような出力が出れば成功! Number of Maps = 10 Samples per Map = 100000 Wrote input for Map #0 Wrote input for Map #1 Wrote input for Map #2 Wrote input for Map #3 Wrote input for Map #4 Wrote input for Map #5 Wrote input for Map #6 Wrote input for Map #7 Wrote input for Map #8 Wrote input for Map #9 Starting Job 10/12/03 11:44:17 INFO mapred.FileInputFormat: Total input paths to process : 10 10/12/03 11:44:17 INFO mapred.JobClient: Running job: job_201012031126_0001 10/12/03 11:44:18 INFO mapred.JobClient: map 0% reduce 0% 10/12/03 11:44:25 INFO mapred.JobClient: map 20% reduce 0% 10/12/03 11:44:28 INFO mapred.JobClient: map 40% reduce 0% 10/12/03 11:44:31 INFO mapred.JobClient: map 60% reduce 0% 10/12/03 11:44:35 INFO mapred.JobClient: map 80% reduce 13% 10/12/03 11:44:38 INFO mapred.JobClient: map 100% reduce 13% 10/12/03 11:44:47 INFO mapred.JobClient: map 100% reduce 100% 10/12/03 11:44:49 INFO mapred.JobClient: Job complete: job_201012031126_0001 10/12/03 11:44:49 INFO mapred.JobClient: Counters: 18 10/12/03 11:44:49 INFO mapred.JobClient: Job Counters 10/12/03 11:44:49 INFO mapred.JobClient: Launched reduce tasks=1 10/12/03 11:44:49 INFO mapred.JobClient: Launched map tasks=10 10/12/03 11:44:49 INFO mapred.JobClient: Data-local map tasks=10 10/12/03 11:44:49 INFO mapred.JobClient: FileSystemCounters 10/12/03 11:44:49 INFO mapred.JobClient: FILE_BYTES_READ=226 10/12/03 11:44:49 INFO mapred.JobClient: HDFS_BYTES_READ=1180 10/12/03 11:44:49 INFO mapred.JobClient: FILE_BYTES_WRITTEN=826 10/12/03 11:44:49 INFO mapred.JobClient: HDFS_BYTES_WRITTEN=215 10/12/03 11:44:49 INFO mapred.JobClient: Map-Reduce Framework 10/12/03 11:44:49 INFO mapred.JobClient: Reduce input groups=20 10/12/03 11:44:49 INFO mapred.JobClient: Combine output records=0 10/12/03 11:44:49 INFO mapred.JobClient: Map input records=10 10/12/03 11:44:49 INFO mapred.JobClient: Reduce shuffle bytes=280 10/12/03 11:44:49 INFO mapred.JobClient: Reduce output records=0 10/12/03 11:44:49 INFO mapred.JobClient: Spilled Records=40 10/12/03 11:44:49 INFO mapred.JobClient: Map output bytes=180 10/12/03 11:44:49 INFO mapred.JobClient: Map input bytes=240 10/12/03 11:44:49 INFO mapred.JobClient: Combine input records=0 10/12/03 11:44:49 INFO mapred.JobClient: Map output records=20 10/12/03 11:44:49 INFO mapred.JobClient: Reduce input records=20 Job Finished in 31.708 seconds Estimated value of Pi is 3.14155200000000000000 あと、jobtrackerでもジョブの実行状態が見えるはずです。 :JobTracker|http://localhost:50030/ &ref(WS000001.PNG); &ref(WS000002.PNG); *リンク [#lb09c450] 参考にしたサイトは以下の通り。 -http://metasearch.sourceforge.jp/wiki/index.php?Hadoop%A5%BB%A5%C3%A5%C8%A5%A2%A5%C3%A5%D7 -http://codezine.jp/article/detail/2485 -http://d.hatena.ne.jp/suu-g/20100508/1273323020 - -http://infra-engineer.com/hadoop/hadoop%E8%B1%A1%E6%9C%AC%E7%AC%AC2%E7%89%88-9%E7%AB%A0-%E3%80%8Chadoop%E3%82%AF%E3%83%A9%E3%82%B9%E3%82%BF%E6%A7%8B%E7%AF%89%E3%80%8D%E3%81%AE%E3%81%BE%E3%81%A8%E3%82%81/ -http://oss.infoscience.co.jp/hadoop/common/docs/current/cluster_setup.html