【问题标题】:spark-submit on local Hadoop-Yarn setup, fails with Stdout path must be absolute error本地 Hadoop-Yarn 设置上的 spark-submit,失败,Stdout 路径必须是绝对错误
【发布时间】:2021-04-29 03:37:38
【问题描述】:

我已经在我的 Windows 机器上安装了最新的 Hadoop 和 Spark 版本。 我正在尝试启动提供的示例之一,但它失败了,我不知道诊断意味着什么。它似乎与标准输出有关,但我无法找出根本原因。

我启动以下命令:

spark-submit --master yarn --class org.apache.spark.examples.JavaSparkPi C:\spark-3.0.1-bin-hadoop3.2\examples\jars\spark-examples_2.12-3.0.1.jar 100

我的例外是:

21/01/25 10:53:53 WARN MetricsSystem:停止未运行的 MetricsSystem 21/01/25 10:53:53 信息 OutputCommitCoordinator$OutputCommitCoordinatorEndpoint:OutputCommitCoordinator 已停止! 21/01/25 10:53:53 INFO SparkContext: 成功停止 SparkContext 线程“主”org.apache.spark.SparkException 中的异常:应用程序 application_1611568137841_0002 失败 2 次,原因是用于 appattempt_1611568137841_0002_000002 的 AM 容器以 exitCode 退出:-1 这次尝试失败。诊断: [2021-01-25 10:53:53.381] 标准输出路径必须是绝对路径

如需更详细的输出,请查看应用程序跟踪页面:http://xxxx-PC:8088/cluster/app/application_1611568137841_0002 然后单击指向每次尝试日志的链接。 .申请失败。 在 org.apache.spark.scheduler.cluster.YarnClientSchedulerBackend.waitForApplication(YarnClientSchedulerBack end.scala:95) 在 org.apache.spark.scheduler.cluster.YarnClientSchedulerBackend.start(YarnClientSchedulerBackend.scala:62) 在 org.apache.spark.scheduler.TaskSchedulerImpl.start(TaskSchedulerImpl.scala:201) 在 org.apache.spark.SparkContext.(SparkContext.scala:555) 在 org.apache.spark.SparkContext$.getOrCreate(SparkContext.scala:2574) 在 org.apache.spark.sql.SparkSession$Builder.$anonfun$getOrCreate$2(SparkSession.scala:934) 在 scala.Option.getOrElse(Option.scala:189) 在 org.apache.spark.sql.SparkSession$Builder.getOrCreate(SparkSession.scala:928) 在 org.apache.spark.examples.JavaSparkPi.main(JavaSparkPi.java:37) 在 sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) 在 sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) 在 sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) 在 java.lang.reflect.Method.invoke(Method.java:498) 在 org.apache.spark.deploy.JavaMainApplication.start(SparkApplication.scala:52) 在 org.apache.spark.deploy.SparkSubmit.org$apache$spark$deploy$SparkSubmit$$runMain(SparkSubmit.scala:928) 在 org.apache.spark.deploy.SparkSubmit.doRunMain$1(SparkSubmit.scala:180) 在 org.apache.spark.deploy.SparkSubmit.submit(SparkSubmit.scala:203) 在 org.apache.spark.deploy.SparkSubmit.doSubmit(SparkSubmit.scala:90) 在 org.apache.spark.deploy.SparkSubmit$$anon$2.doSubmit(SparkSubmit.scala:1007) 在 org.apache.spark.deploy.SparkSubmit$.main(SparkSubmit.scala:1016) 在 org.apache.spark.deploy.SparkSubmit.main(SparkSubmit.scala) 21/01/25 10:53:53 信息 ShutdownHookManager:已调用关闭挂钩 21/01/25 10:53:53 INFO ShutdownHookManager: 删除目录 C:\Users\xxx\AppData\Local\Temp\spark-b28ecb32-5e3f-4d6a-973a-c03a7aae0da9 21/01/25 10:53:53 INFO ShutdownHookManager: 删除目录 C:\Users/xxx\AppData\Local\Temp\spark-3665ba77-d2aa-424a-9f75-e772bb5b9104

关于诊断:

诊断:
应用程序 application_1611562870926_0004 失败 2 次,原因是用于 appattempt_1611562870926_0004_000002 的 AM 容器以 exitCode 退出:-1 这次尝试失败。诊断:[2021-01-25 10:29:19.734]标准输出路径必须是绝对的 有关更详细的输出,请查看应用程序跟踪页面:http://****-PC:8088/cluster/app/application_1611562870926_0004 然后单击指向每次尝试日志的链接。 .申请失败。

谢谢!

【问题讨论】:

    标签: apache-spark hadoop hadoop-yarn spark-submit


    【解决方案1】:

    所以我还不确定根本原因,这可能是因为我在 windows 下运行并且 Yarn 的某些默认属性是错误的。 当我在 yarn-site.xml 上添加以下 2 个属性时,它运行良好:

    
       <property>
        <name>yarn.nodemanager.log-dirs</name>
        <value>/tmp</value>
       </property>
       <property>
        <name>yarn.log.dir</name>
        <value>/tmp</value>
       </property>
    

    希望它对未来的人有所帮助!

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2013-09-24
      • 1970-01-01
      • 2016-03-16
      • 1970-01-01
      • 2016-09-29
      • 1970-01-01
      • 2022-12-15
      • 1970-01-01
      相关资源
      最近更新 更多