spark集群与spark客户端

huwehgph  于 2021-06-03  发布在  Hadoop
关注(0)|答案(6)|浏览(565)

我是新来的。我觉得我的问题和spark的架构有关。一个应用程序(用java开发)可以使用yarn客户机模式在yarn上运行。命令是 ./bin/spark-submit --verbose --class path.to.Class --master yarn-client --files lib.so --conf spark.yarn.jar=hdfs://master:8020/spark/spark-assembly-1.3.1-hadoop2.6.0.jar --num-executors 30 --driver-memory 512m --executor-memory 512m --executor-cores 3 myJarFile.jar 但是,如果我把模式改成“Yarn簇”,我会收到这个错误。
线程“main”org.apache.spark.sparkexception中出现异常:应用程序\u 1440071752950 \u 0001在org.apache.spark.deploy.yarn.client.run(client)处以失败状态完成。scala:841)在org.apache.spark.deploy.yarn.client$.main(client。scala:867)位于org.apache.spark.deploy.yarn.client.main(client.scala)sun.reflect.nativemethodaccessorimpl.invoke0(本机方法)位于sun.reflect.nativemethodaccessorimpl.invoke(nativemethodaccessorimpl)。java:57)在sun.reflect.delegatingmethodaccessorimpl.invoke(delegatingmethodaccessorimpl。java:43)在java.lang.reflect.method.invoke(方法。java:606)在org.apache.spark.deploy.sparksubmit$.org$apache$spark$deploy$sparksubmit$$runmain(sparksubmit)。scala:664)在org.apache.spark.deploy.sparksubmit$.dorunmain$1(sparksubmit。scala:169)在org.apache.spark.deploy.sparksubmit$.submit(sparksubmit。scala:192)位于org.apache.spark.deploy.sparksubmit$.main(sparksubmit.com)。scala:111)在org.apache.spark.deploy.sparksubmit.main(sparksubmit.scala)
任何帮助都将不胜感激!
非常感谢!

dxpyg8gm

dxpyg8gm1#

在yarn客户机模式下,驱动程序在yarn集群外部运行。在Yarn集群模式下,驱动程序在app master中运行。

z4iuyo4d

z4iuyo4d2#

只有在从工作机发送spark submit时才能使用客户端模式,否则应使用群集模式发送。

smtd7mpg

smtd7mpg3#

你要检查三个主要的东西。
检查是否在main方法中创建spark上下文。i、 在司机里面。我见过有人在主流之外创造它,认为它将被视为一个全局变量。
您不必引用程序集jar。它将被自动调用。检查是否缺少应用程序中使用的任何其他jar。
在客户机模式下,驱动程序将在一台机器上运行,执行程序将共享群集资源。在你的一个回答中,我看到你提到你正在使用平面文件。请检查该文件是否在群集中的公共目录中。在程序中,确保您从hdfs而不是sc.textfile(“file://...")

fcwjkofz

fcwjkofz4#

yarn客户端是网关机器上的驱动程序(从这里提交作业)。它只要求遗嘱执行人。但如果你想跑的话,那你就跑Yarn团。在集群模式下,驱动程序可以去任何节点,这样Yarn就会很小心。
在上面的示例中,缺少一些参数。

2ul0zpep

2ul0zpep5#

我认为您应该交叉检查在Yarn集群模式下运行spark作业的命令。您可以参考spark文档

tkclm6bt

tkclm6bt6#

在您提供的命令中缺少--jars选项。
引用spark docu的话:“--jars选项允许sparkcontext.addjar函数在本地文件中使用并且在集群模式下运行。”

相关问题