![](/img/trans.png)
[英]spark-submit,Client cannot authenticate via:[TOKEN, KERBEROS];
[英]Spark not locating client program via spark-submit
我正在尝试将spark作业部署到spark集群中,并且面临着我相信的类加载问题。
错误详情如下:
java.lang.ClassNotFoundException: org.examples.datasets.FlightDataProcessor
at java.net.URLClassLoader.findClass(URLClassLoader.java:381)
at java.lang.ClassLoader.loadClass(ClassLoader.java:424)
at java.lang.ClassLoader.loadClass(ClassLoader.java:357)
at java.lang.Class.forName0(Native Method)
at java.lang.Class.forName(Class.java:348)
at org.apache.spark.util.Utils$.classForName(Utils.scala:238)
at org.apache.spark.deploy.SparkSubmit.org$apache$spark$deploy$SparkSubmit$$runMain(SparkSubmit.scala:810)
at org.apache.spark.deploy.SparkSubmit.doRunMain$1(SparkSubmit.scala:167)
at org.apache.spark.deploy.SparkSubmit.submit(SparkSubmit.scala:195)
at org.apache.spark.deploy.SparkSubmit.doSubmit(SparkSubmit.scala:86)
at org.apache.spark.deploy.SparkSubmit$$anon$2.doSubmit(SparkSubmit.scala:924)
at org.apache.spark.deploy.SparkSubmit$.main(SparkSubmit.scala:933)
at org.apache.spark.deploy.SparkSubmit.main(SparkSubmit.scala)
19/06/02 06:26:11 INFO ShutdownHookManager: Shutdown hook called
目前,我必须将应用程序jar复制到spark jars
文件夹,作为部署脚本的一部分来解决此问题。
但是我相信spark-submit
驱动程序应该智能地完成这个事情,因为每次我想要部署一些火花工作我需要将所有客户端程序复制到jars
它根本不方便
环境信息:
Spark版本: 2.11-2.4.3
Scala版本: 2.11.8
这是我的源代码的链接:
部署脚本
https://github.com/anhtv08/spark-cassandra-example/blob/master/scripts/submit_spark_flight_job.sh
Spark职位代码
感谢任何帮助。
由于代码可用是jar的一部分,我们可以将jar上传到hdfs或maven repo并使用以下任一选项。
* --jars / spark.jars - 我们可以指定上传到HDFS的jar的路径。
* --packages / spark.jars.packages - 我们可以指定maven坐标,如果我们能够将jar上传到maven repo(我们还需要指定Spark关于maven repo的凭据)
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.