2015-07-31 2 views
2

Я начинаю с кода MRAppMaster.java. Я хочу отлаживать его, чтобы увидеть принцип применения пряжи.Как отлаживать приложение Yarn на Eclipse?

Я импортирую весь скомпилированный код hadoop в своем Eclipse.

Я запускаю hadoop все в моей локальной Linux.

4504 ResourceManager 
4066 DataNode 
4761 NodeManager 
5068 JobHistoryServer 
4357 SecondaryNameNode 
3833 NameNode 
5127 Jps 

В hadoop-env.sh:

HADOOP_OPTS="$HADOOP_OPTS -Xdebug -Xrunjdwp:transport=dt_socket,server=y,address=9000" 

А потом я бегу:

bin/hadoop jar path/to/hadoop-mapreduce-examples-2.2.0.jar wordcount /wordcount /output 

Тогда я поставил точку останова в MRAppMaster.java и RunJar.java. Затем запустите debug в Eclipse.

Это только остановить на:

Thread [main] (Suspended (breakpoint at line 342 in JobSubmitter)) 
JobSubmitter.submitJobInternal(Job, Cluster) line: 342 
... 
RunJar.main(String[]) line: 212 

Как я могу отлаживать в MRAppMaster.java?

ответ

0

Его довольно поздно для вас, но я тоже застрял в той же проблеме и понял решение, поэтому разместил его здесь. Прежде всего, если вы ищете отладочную работу MR, есть сообщение here, которое объясняет это. , и если вы ищете отладочную работу TEZ, то вы должны добавить следующее в свой tez-site.xml

<property> 
    <name>tez.am.launch.cmd-opts</name> 
    <value>-agentlib:jdwp=transport=dt_socket,server=y,suspend=y,address=7070</value> 
</property>