aws上dc/os集群上的spark作业

mbjcgjjk  于 2021-06-26  发布在  Mesos
关注(0)|答案(1)|浏览(311)

我试图在aws上的dc/os上运行spark批处理。对于每个批处理过程,我在spark提交时都会发送一些特定的参数(例如执行批处理过程的用户)。
我在dc/os上有一个spark集群,有一个主节点和3个私有节点。
我创造了一个 application.conf 文件并将其上载到s3,并启用访问该文件的权限。
我的spark submit命令如下所示:
dcos spark run--submit args='-dspark.mesos.rough=true--驱动程序类路径https://path_to_the_folder_root_where_is_the_file --conf spark.driver.extrajavaoptions=-dconfig.file=application.conf--conf spark.executor.extrajavaoptions=-dconfig.file=application.conf--class\u name jar\u location\u on \u s3'
我得到的错误是找不到job.properties文件:
线程“main”com.typesafe.config.configexception$中出现异常:在com.typesafe.config.impl.simpleconfig.findkey(simpleconfig)中找不到键“wattio batch”的配置设置。java:124)在com.typesafe.config.impl.simpleconfig.find(simpleconfig。java:145)在com.typesafe.config.impl.simpleconfig.find(simpleconfig。java:159)在com.typesafe.config.impl.simpleconfig.find(simpleconfig。java:164)在com.typesafe.config.impl.simpleconfig.getobject(simpleconfig。java:218)在com.typesafe.config.impl.simpleconfig.getconfig(simpleconfig。java:224)在com.typesafe.config.impl.simpleconfig.getconfig(simpleconfig。java:33)在com.enerbyte.spark.jobs.wattiobatch.wattiobatchjob$.main(wattiobatchjob。scala:31)位于com.enerbyte.spark.jobs.wattiobatch.wattiobatchjob.main(wattiobatchjob.scala),位于sun.reflect.nativemethodaccessorimpl.invoke0(本机方法),位于sun.reflect.nativemethodaccessorimpl.invoke(nativemethodaccessorimpl)。java:62)在sun.reflect.delegatingmethodaccessorimpl.invoke(delegatingmethodaccessorimpl。java:43)在java.lang.reflect.method.invoke(方法。java:498)在org.apache.spark.deploy.sparksubmit$.org$apache$spark$deploy$sparksubmit$$runmain(sparksubmit)。scala:786)在org.apache.spark.deploy.sparksubmit$.dorunmain$1(sparksubmit。scala:183)在org.apache.spark.deploy.sparksubmit$.submit(sparksubmit。scala:208)位于org.apache.spark.deploy.sparksubmit$.main(sparksubmit.com)。scala:123)位于org.apache.spark.deploy.sparksubmit.main(sparksubmit.scala)
如何正确设置?虽然其中一个私有从机执行驱动程序,但它是否可以访问internet(它是否能够转到s3并下载conf文件)?
谢谢您

jhiyze9q

jhiyze9q1#

我没有成功地从spark submit命令发送conf文件,但我所做的是在程序开始时使用以下命令硬编码application.conf文件的位置: System.setProperty("config.url", "https://s3_location/application.conf") ConfigFactory.invalidateCaches() 这样,程序就能够在每次启动时读取application.conf文件。

相关问题