1.添加配置
jps查看进程的时候,得到的进程名称就是类的名称,这个类并且有main方法
需要在$HADOOP_HOME/etc/hadoop/hadoop-env.sh文件的最后添加你想debug的进程
#远程调试namenode
exportHADOOP_NAMENODE_OPTS="-agentlib:jdwp=transport=dt_socket,address=8888,server=y,suspend=y"
#远程调试datanode
exportHADOOP_DATANODE_OPTS="-agentlib:jdwp=transport=dt_socket,address=9888,server=y,suspend=y"
想debug哪个类,就可以添加对应的远程调试配置
2.远程机IDE工具下添加debugconfigrations
配置主机名端口,这里端口为8888(namenode的端口地址设置)
这样就可以开启对远程机的程序debug模式
在远程机上关联源码,就可以debug程序,当跑完namenode时,jps就会多出一个namenode进程