0

「高速な」概念実証のために、 Yahooで擬似分散モードで構成されていることがわかった 2 つの仮想マシンを接続して、ミニ Hadoop 0.18 クラスターをセットアップしたいと考えました。

私のhadoop-vm-1で、そのマシン上にマスター ノードとスレーブ DataNode および TaskTracker を備えた完全なクラスターを開始します。次に、2 番目の VM をhadoop-vm-2として、 hadoop-vm-1に接続してこのクラスターに追加する2 番目の DataNode と TaskTracker をホストするようにしました。

残念ながら、ローカル IPC サーバーに接続する必要があるため、2 番目の DataNode を開始できません。これは、 hadoop-vm-1に接続すると予想される場所です。ログには次のように書かれています。

2013-02-07 19:55:29,954 INFO org.apache.hadoop.ipc.Client: サーバーへの接続を再試行しています: /192.168.17.135:9000。すでに 9 回試行しました。
2013-02-07 19:55:29,958 エラー org.apache.hadoop.dfs.DataNode: java.io.IOException: ローカル例外で呼び出しが失敗しました
..
原因: java.net.ConnectException: 接続が拒否されました

IP 192.168.17.135 ( hadoop-vm-2 )の代わりに、 hadoop-vm-1 の192.168.17.134 を使用する必要がありました。

スレーブの hadoop-site.xxml を正しく構成したと思います。

<configuration>
<property>
  <name>fs.default.name</name>
  <value>hdfs://hadoop-vm-1/</value>
  <description>The name of the default file system.  A URI whose
  scheme and authority determine the FileSystem implementation.  The
  uri's scheme determines the config property (fs.SCHEME.impl) naming
  the FileSystem implementation class.  The uri's authority is used to
  determine the host, port, etc. for a filesystem.</description>
</property>

<property>
  <name>mapred.job.tracker</name>
  <value>hadoop-vm-1:9001</value>
  <description>The host and port that the MapReduce job tracker runs
  at.  If "local", then jobs are run in-process as a single map
  and reduce task.
  </description>
</property>

</configuration>

そしてもちろん、hosts ファイルを構成しました。

127.0.0.1   localhost
127.0.1.1   hadoop-vm-2.localdomain hadoop-vm-2
192.168.17.134 hadoop-vm-1

何か案は?前もって感謝します :-)

4

2 に答える 2

0

/etc/hosts ファイルの内容は次のようになります。

127.0.0.1   localhost
#127.0.1.1  hadoop-vm-1
192.168.0.101 hadoop-vm-1
192.168.0.100 hadoop-vm-2

詳細については、このブログとそのコメントを確認してください。また、疑似分散モードでは、すべてのデーモンが独自の JVM および単一ノードで実行されます。1 つ以上のノードの場合、完全分散モードです。さまざまなモードの詳細については、こちらを参照してください。

また、Hadoop クラスターをセットアップする方法は複数あります。

1) 関連するすべてのフレームワークを Apache からダウンロードし、手動でセットアップします。ここ ( 12 ) は、同じことに関するいくつかの優れたチュートリアルです。このアプローチには多少の努力が必要ですが、学ぶべきことはたくさんあります。

2) Cloudera Managerを使用して、Hadoop およびその他の関連フレームワーク (Hive、HBase、ZooKeeper など) のインストール プロセスを自動化します。HortonWorksのHDPなどの自動インストールを提供する会社は他にもいくつかあります。ほとんどのことは自動化されており、UI の背後に隠されています。

于 2013-02-08T15:49:12.857 に答える
0

私は自分の問題の解決策を見つけました。実際、私の直感は正しく、構成は実際に無視されました。

YAHOO から事前構成された VMには、わかりにくい追加の構成ディレクトリがあります。これにより、クラスタを手動で起動し、提供されたチュートリアル起動スクリプトを使用しない場合でも、「conf」ディレクトリからすべての構成が上書きされます。

そのため、ディレクトリを削除し、conf ディレクトリを指す同じ名前のシンボル リンクを配置しました。今では期待どおりに動作します。ふぅ:-)

于 2013-02-15T12:00:26.897 に答える