2012-04-08 8 views
8

Windows-Cygwinを使用してhadoopで簡単なプログラムを実行しようとしました。hadoopジョブトラッカーを起動する際のエラー

私は名前ノードを開始することができます。 jobtrackerが開始

しかし例外で失敗します

FATAL mapred.JobTracker: java.lang.IllegalArgumentException: Does not contain a valid host:port authority: local 
     at org.apache.hadoop.net.NetUtils.createSocketAddr(NetUtils.java:162) 
     at org.apache.hadoop.net.NetUtils.createSocketAddr(NetUtils.java:128) 
     at org.apache.hadoop.mapred.JobTracker.getAddress(JobTracker.java:2560) 
     at org.apache.hadoop.mapred.JobTracker.<init>(JobTracker.java:2200) 
     at org.apache.hadoop.mapred.JobTracker.<init>(JobTracker.java:2192) 
     at org.apache.hadoop.mapred.JobTracker.<init>(JobTracker.java:2186) 
     at org.apache.hadoop.mapred.JobTracker.startTracker(JobTracker.java:300) 
     at org.apache.hadoop.mapred.JobTracker.startTracker(JobTracker.java:291) 
     at org.apache.hadoop.mapred.JobTracker.main(JobTracker.java:4978) 

私はこの問題を解決するために、すべての可能な方法を試してみましたが、無駄に。どんなポインタでも私を大きく助けます。

HDFS-site.xmlの設定:

<configuration><br> 
    <property> 
    <name>fs.default.name< /name> 
    <value>hdfs://localhost:9100</value> 
    </property> 
    <property> 
    <name>mapred.job.tracker< /name> 
    <value>localhost:9101< /value> 
    </property> 
    <property> 
    <name>dfs.replication< /name> 
    <value>1</value> 
    </property> 
</configuration> 

答えて

13

問題である次の行すべきでmapred-site.xmlのとNOT HDFS-site.xmlの中へ

<property> 
<name>mapred.job.tracker</name> 
<value>localhost:9101</value> 
</property> 

ところで、WindowsでHadoopを実行しようとしているのはなぜですか?開発のために?あなたはLinuxマシンを持っていないか、Linuxマシンをインストールするのを嫌っていますか?この時点の「疑似分散」の例で作業するとき

もう一つは、あなたは通常、コア-site.xmlのないHDFS-site.xmlで

<property> 
<name>fs.default.name</name> 
<value>hdfs://localhost:9100</value> 
</property> 
+7

なぜそれがこれだけ存在することを示唆している世界ののHadoopコミュニティの継続的なblinkeredビューに対して1つの実行を行う以外の、Windows上でのHadoopを実行するためには無理があります1つの受け入れ可能なオペレーティングシステム? –

+0

通常、Hadoopの人々はWindowsマシンを子供のビデオゲームと考えています。深刻なことではない。私は彼らが仕事に疲れたら、Windowsマシンの壁紙のものを使うと思います。 –

+6

Windows上でHadoopを実行することは可能ですが、コードはLinux環境で完全に開発されているため、Windows上で実行すると、予想外の変数が導入され、既に複雑な問題がさらに複雑になります。 Hadoopは多くのファイル操作を実行しますが、JavaはWindows上で動作しますが、すべてのネイティブ操作がまったく同じように動作するわけではありません。特にファイルシステム操作です。まるで窓の上を走るというのは、奇跡のようなものです。なぜあなたはWindows上でそれを実行したいのですか?という質問はありません、なぜあなたは未知数の不幸を望んでいるのでしょうか? – AaronM

0

をこのプロパティを入れて、私は同じ問題に直面しましたページ:http://hadoop.apache.org/docs/r1.1.2/single_node_setup.html#PseudoDistributed

hadoopが私のconfファイルを取得していないことが判明しました。上記のリンクの例は、あなたがhadoopのインストールで実行していると仮定しています(つまり、/Usr/jane/hadoop-1.1.2)。私は別のディレクトリでサンプルを実行しようとしていました。私はあなたが他の 'conf'ディレクトリを認識するようにhadoopを設定できると確信していますが、簡単なルートを使い、hadoopディレクトリで実行を開始しました。

このスレッドは私がそれを把握する助け:https://issues.apache.org/jira/browse/HDFS-2515

+0

Btw、私はこのページをhadoop設定ページに役立ちました:http://www.javacodegeeks.com/2012/01/hadoop-modes-explained-standalone.html このページはかなり同じ例を示していますが、予想される出力に関する追加情報。 – fahrradler

関連する問題