0

stderrmap-reduce ジョブの実行中に、次のログが記録されます。

root@dbpc42:/tmp/mesos/slaves/20141201-225046-698725789-5050-19765-S24/frameworks/20141201-225046-698725789-5050-19765-0016/executors/executor_Task_Tracker_2/runs/latest# ls
hadoop-2.5.0-cdh5.2.0  hadoop-2.5.0-cdh5.2.0.tgz  stderr  stdout

の内容stderr:

警告: InitGoogleLogging() が STDERR に書き込まれる前のログ I1202 19:41:40.323521 7223 fetcher.cpp:76] URI 'hdfs://dbpc41:9000/hadoop-2.5.0-cdh5.2.0.tgz' をフェッチしています I1202 19: 41:40.323685 7223 fetcher.cpp:105] リソースを「hdfs://dbpc41:9000/hadoop-2.5.0-cdh5.2.0.tgz」から「/tmp/mesos/slaves/20141201-225046-698725789-5050」にダウンロードしています-19765-S24/frameworks/20141201-225046-698725789-5050-19765-0016/executors/executor_Task_Tracker_0/runs/59c9a5ac-c376-4e9e-b9b7-63a24ae84dcd/hadoop-2.5.0-cdh5.g.2.

I1202 19:41:48.779220 7223 fetcher.cpp:64] 抽出されたリソース '/tmp/mesos/slaves/20141201-225046-698725789-5050-19765-S24/frameworks/20141201-225046-698725789-cut0/exers1/56050 /executor_Task_Tracker_0/runs/59c9a5ac-c376-4e9e-b9b7-63a24ae84dcd/hadoop-2.5.0-cdh5.2.0.tgz」を「/tmp/mesos/slaves/20141201-225046-69872frame789-5050-19765-s/s24/s24」に20141201-225046-698725789-5050-19765-0016/executors/executor_Task_Tracker_0/runs/59c9a5ac-c376-4e9e-b9b7-63a24ae84dcd'

sh: 1: cd: hadoop-2.5.0-cdh5.2.0 に cd できません

sh: 1: ./bin/hadoop: 見つかりません

stdout空です。

興味深いのは、マスターが実行されているのと同じノードでスレーブを実行すると、問題が発生せず、タスクが正常に終了することです。リモート スレーブのみがこの問題を引き起こします。何が問題なのですか?

4

2 に答える 2

0

あなたがする必要があるのは、あなたの mesos-work-dir がどこにあるかに +x アクセスを与えることです。再帰的に 777 は必要ありません。

于 2015-10-08T02:02:11.997 に答える
0

JobTracker によって配置され、executor によって実行されたスクリプトは、ディレクトリにアクセスできませんでした。ディレクトリのアクセス許可を再帰的に/tmp「すべて無料」の777に変更することで、問題を解決しました。

于 2014-12-03T15:39:05.190 に答える