ec2でhadoopしてみたよ
というかhttp://codezine.jp/article/detail/2841をまんまコピペしただけなんですけどね。
ec2のアカウント持ってるし使いまくってるよー、という前提で。
- 飛ばしながら読んで実行したらこけて気づいたんだけど、
ec2-add-keypair gsg-keypair
はgsg-keypairという名前決め打ちなのでちゃんとやりましょう。EC2_KEYDIR=`dirname "$EC2_PRIVATE_KEY"`
ってなってるのでそこにid_rsa-gsg-keypair
という名前で保存
./hadoop-ec2 launch-cluster test-cluster 2
とするとちゃんと立ち上がった./hadoop-ec2 login test-cluster
でログイン。- おれjava詳しくないんでよくわかんなかったんだけど
- 記事に書いてある
jar hadoop-*-examples.jar pi 10 10000000
ではなんかオプションがおかしいと言われるので - なおやんの記事を参考に
hadoop jar hadoop-0.17.0-examples.jar pi 10 1000000
としたら動いた。- 追記。訂正。ちゃんと
bin/hadoop jar ...
って書いてあったね。失礼しました。
- 追記。訂正。ちゃんと
- 記事に書いてある
[root@domU-**-**-**-**-**-** hadoop-0.17.0]# hadoop jar hadoop-0.17.0-examples.jar pi 10 1000000 08/08/31 07:42:39 WARN fs.FileSystem: "domU-**-**-**-**-**-**.compute-1.internal:50001" is a deprecated filesystem name. Use "hdfs://domU-**-**-**-**-**-**.compute-1.internal:50001/" instead. Number of Maps = 10 Samples per Map = 1000000 08/08/31 07:42:39 WARN fs.FileSystem: "domU-**-**-**-**-**-**.compute-1.internal:50001" is a deprecated filesystem name. Use "hdfs://domU-**-**-**-**-**-**.compute-1.internal:50001/" instead. 08/08/31 07:42:39 WARN fs.FileSystem: "domU-**-**-**-**-**-**.compute-1.internal:50001" is a deprecated filesystem name. Use "hdfs://domU-**-**-**-**-**-**.compute-1.internal:50001/" instead. 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 08/08/31 07:42:42 WARN fs.FileSystem: "domU-**-**-**-**-**-**.compute-1.internal:50001" is a deprecated filesystem name. Use "hdfs://domU-**-**-**-**-**-**.compute-1.internal:50001/" instead. 08/08/31 07:42:42 INFO mapred.FileInputFormat: Total input paths to process : 10 08/08/31 07:42:43 INFO mapred.JobClient: Running job: job_200808310735_0001 08/08/31 07:42:44 INFO mapred.JobClient: map 0% reduce 0% 08/08/31 07:42:53 INFO mapred.JobClient: map 20% reduce 0% 08/08/31 07:42:54 INFO mapred.JobClient: map 40% reduce 0% 08/08/31 07:42:59 INFO mapred.JobClient: map 50% reduce 0% 08/08/31 07:43:00 INFO mapred.JobClient: map 80% reduce 0% 08/08/31 07:43:05 INFO mapred.JobClient: map 90% reduce 3% 08/08/31 07:43:06 INFO mapred.JobClient: map 100% reduce 13% 08/08/31 07:43:10 INFO mapred.JobClient: map 100% reduce 23% 08/08/31 07:43:12 INFO mapred.JobClient: map 100% reduce 100% 08/08/31 07:43:13 INFO mapred.JobClient: Job complete: job_200808310735_0001 08/08/31 07:43:13 INFO mapred.JobClient: Counters: 16 08/08/31 07:43:13 INFO mapred.JobClient: File Systems 08/08/31 07:43:13 INFO mapred.JobClient: Local bytes read=610 08/08/31 07:43:13 INFO mapred.JobClient: Local bytes written=2430 08/08/31 07:43:13 INFO mapred.JobClient: HDFS bytes read=1180 08/08/31 07:43:13 INFO mapred.JobClient: HDFS bytes written=255 08/08/31 07:43:13 INFO mapred.JobClient: Job Counters 08/08/31 07:43:13 INFO mapred.JobClient: Launched map tasks=10 08/08/31 07:43:13 INFO mapred.JobClient: Launched reduce tasks=1 08/08/31 07:43:13 INFO mapred.JobClient: Data-local map tasks=10 08/08/31 07:43:13 INFO mapred.JobClient: Map-Reduce Framework 08/08/31 07:43:13 INFO mapred.JobClient: Map input records=10 08/08/31 07:43:13 INFO mapred.JobClient: Map output records=20 08/08/31 07:43:13 INFO mapred.JobClient: Map input bytes=240 08/08/31 07:43:13 INFO mapred.JobClient: Map output bytes=320 08/08/31 07:43:13 INFO mapred.JobClient: Combine input records=0 08/08/31 07:43:13 INFO mapred.JobClient: Combine output records=0 08/08/31 07:43:13 INFO mapred.JobClient: Reduce input groups=2 08/08/31 07:43:13 INFO mapred.JobClient: Reduce input records=20 08/08/31 07:43:13 INFO mapred.JobClient: Reduce output records=0 Job Finished in 31.607 seconds Estimated value of PI is 3.1414068
[danjou@luisa] $ ./hadoop-ec2 Usage: hadoop-ec2 COMMAND where COMMAND is one of: list list all running Hadoop EC2 clusters launch-cluster <group> <num slaves> launch a cluster of Hadoop EC2 instances - launch-master then launch-slaves launch-master <group> launch or find a cluster master launch-slaves <group> <num slaves> launch the cluster slaves terminate-cluster terminate all Hadoop EC2 instances login <group|instance id> login to the master node of the Hadoop EC2 cluster screen <group|instance id> start or attach 'screen' on the master node of the Hadoop EC2 cluster proxy <group|instance id> start a socks proxy on localhost:6666 (use w/foxyproxy) push <group> <file> scp a file to the master node of the Hadoop EC2 cluster <shell cmd> <group|instance id> execute any command remotely on the master create-image create a Hadoop AMI
./hadoop-ec2 terminate-cluster test-cluster
でばいにゃん。
最後の肝心な所が会員登録しないと読めないあたりがうんぬん。こういう情報を出し惜しみする意味が分からんけど。まあいいや。ほんとに使えるようになるためにはいろいろもっとやらないとだめだとは思うけど、とりあえず一度使ってみるって大事よね。よっしゃー。次はhadoop-streamingでログ解析やー。
やっぱり今晩も雨ですなー
昼間っから気にしてたけどちゃんと洗濯干せてよかったわ。→あー。遠雷を聞いてるとオネアミスが見たくなるのはおっさんですよね。
今の雷はひどい
虫も泣き止むわ。