Apache spark AWS上DC/OS群集上的Spark作业
我试图在AWS上的DC/OS上运行Spark中的批处理过程。对于每个批处理,我在spark提交时都会发送一些特定的参数(例如,执行批处理的用户) 我在DC/OS上有一个Spark群集,有一个主节点和3个私有节点 我已经创建了一个Apache spark AWS上DC/OS群集上的Spark作业,apache-spark,mesos,mesosphere,dcos,Apache Spark,Mesos,Mesosphere,Dcos,我试图在AWS上的DC/OS上运行Spark中的批处理过程。对于每个批处理,我在spark提交时都会发送一些特定的参数(例如,执行批处理的用户) 我在DC/OS上有一个Spark群集,有一个主节点和3个私有节点 我已经创建了一个application.conf文件并将其上载到S3,并启用了访问该文件的权限 我的spark submit命令如下所示: dcos spark运行--submit args='-Dspark.mesos.rough=true--driver类路径--conf spark
application.conf
文件并将其上载到S3,并启用了访问该文件的权限
我的spark submit命令如下所示:
dcos spark运行--submit args='-Dspark.mesos.rough=true--driver类路径--conf spark.driver.extraJavaOptions=-Dconfig.file=application.conf--conf spark.executor.extraJavaOptions=-Dconfig.file=application.conf--class_name jar_location_on_S3'
我得到的错误是找不到job.properties文件:
线程“main”com.typesafe.config.ConfigException$中缺少异常:找不到键“wattio batch”的配置设置
在com.typesafe.config.impl.SimpleConfig.findKey(SimpleConfig.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(Method.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.scala:123)
位于org.apache.spark.deploy.SparkSubmit.main(SparkSubmit.scala)
如何正确设置?尽管其中一个私有从机执行驱动程序,但它是否可以访问Internet(是否能够转到S3并下载conf文件)
谢谢我没有成功地从spark submit命令发送conf文件,但我所做的是在程序开始时使用以下代码硬编码application.conf文件的位置:
System.setProperty(“config.url”https://s3_location/application.conf")
ConfigFactory.invalidateCaches()
这样,程序每次启动时都可以读取application.conf文件。我没有成功地从spark submit命令发送conf文件,但我所做的是在程序开始时使用以下命令硬编码application.conf文件的位置:
System.setProperty(“config.url”https://s3_location/application.conf")
ConfigFactory.invalidateCaches()
这样,程序就能够在每次启动时读取application.conf文件