来自官方火花文档(http://spark.apache.org/docs/1.2.0/running-on-yarn.html):
在 yarn-cluster 模式下,Spark 驱动程序在由群集上的 YARN 管理的应用程序主进程中运行,客户端可以在启动应用程序后离开。
是否有办法让客户端在以后的某个时间点重新连接回驱动程序以收集结果?
我知道没有简单的方法。
从广义上讲,yarn-cluster 模式对生产作业有意义,而 yarn-client 模式对于您希望立即查看应用程序输出的交互式和调试用途有意义。
在生产作业中,最简单的方法可能是让您的驱动程序在获得结果后将结果发送到某个地方(例如,将它们写入 HDFS、记录......
通常您可以使用以下命令检查日志
yarn logs -applicationId <app ID>
检查 https://spark.apache.org/docs/2.2.0/running-on-yarn.html
如果日志聚合已打开(启用 yarn.log聚合 config),容器日志被复制到 HDFS 并在本地删除 机器。可以从群集上的任何位置查看这些日志 "纱线日志"命令。
yarn logs -applicationId <app ID>
将从所有容器中打印出所有日志文件的内容 给定的应用程序