3

Windows 7のcygwinでhadoop 1.1.1をセットアップしました。dfsコンポーネントは正常に起動しています(start-dfs.shまたはstart-all.shの両方)ので、jobtracker(mapred.shを起動)も正常に起動していますが、タスクトラッカーは起動に失敗してシャットダウンしますtaskTracker へのパスのアクセス許可に関連するエラーでダウンします (0755 の設定に失敗します)。Windows の Hadoop で tasktracker を起動する際の問題で報告された同様の問題を見たことがありますが、解決方法や解決方法に関するガイダンスは見つかりませんでした。解決策についても多くのWebサイトを試しましたが、すべて無駄でした.

ここにログ出力があります

     2013-01-02 15:51:31,836 INFO org.apache.hadoop.mapred.TaskTracker: Starting tasktracker with owner as 120173
     2013-01-02 15:51:31,836 INFO org.apache.hadoop.mapred.TaskTracker: Good mapred local directories are: /tmp/hadoop-120173/mapred/local
     2013-01-02 15:51:31,852 ERROR org.apache.hadoop.mapred.TaskTracker: Can not start task tracker because java.io.IOException: Failed to set permissions of path: \tmp\hadoop-120173\mapred\local\taskTracker to 0755
at org.apache.hadoop.fs.FileUtil.checkReturnValue(FileUtil.java:689)
at org.apache.hadoop.fs.FileUtil.setPermission(FileUtil.java:670)
at org.apache.hadoop.fs.RawLocalFileSystem.setPermission(RawLocalFileSystem.java:509)
at org.apache.hadoop.fs.RawLocalFileSystem.mkdirs(RawLocalFileSystem.java:344)
at org.apache.hadoop.fs.FilterFileSystem.mkdirs(FilterFileSystem.java:189)
at org.apache.hadoop.mapred.TaskTracker.initialize(TaskTracker.java:810)
at org.apache.hadoop.mapred.TaskTracker.<init>(TaskTracker.java:1557)
at org.apache.hadoop.mapred.TaskTracker.main(TaskTracker.java:3893)

    2013-01-02 15:51:31,852 INFO org.apache.hadoop.mapred.TaskTracker: SHUTDOWN_MSG: 

このディレクトリに手動でアクセス許可を設定してから tasktracker を実行しようとしましたが、それでも失敗します。

4

2 に答える 2

0

これは hadoop-7682 バグが原因であり、この問題を解決するには jar パッチを適用する必要があります。ここでパッチと手順を見つけることができます

https://github.com/congainc/patch-hadoop_7682-1.0.x-win

于 2013-04-02T13:22:03.250 に答える
-1

hdfs-site.xmlHadoop が作成するディレクトリdfsが cygwin ディレクトリのサブディレクトリになるように、デフォルト ディレクトリを変更してみてください。hdfs-site.xml次のように変更します。

<configuration>
 <property>
    <name>dfs.name.dir</name>
    <value>c:/cygwin/usr/somedir/dfs/name</value>
 </property>
 <property>
    <name>dfs.data.dir</name>
    <value>c:/cygwin/usr/somedir/dfs/data</value>
 </property>
</configuration>
于 2013-01-02T18:55:09.570 に答える