2016-05-19 13 views
1

AWSのDC/OSのSparkでバッチ処理を実行しようとしています。各バッチ処理では、送信する際に送信する特定のパラメータ(バッチ処理を実行するユーザーなど)があります。AWSのDC/OSクラスタのスパークジョブ

私はDC/OS上に1つのマスターノードと3つのプライベートノードを持つSparkクラスタを持っています。

application.confファイルを作成してS3にアップロードし、そのファイルにアクセスするためのアクセス許可を有効にしました。

マイスパークsubmitコマンドは次のようになります。

DCOSスパークラン--submit-引数= ' - Dspark.mesos.coarse =真--driverクラスパス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 CLASS_NAME jar_location_on_S3'

そして私は、ファイルをjob.propertiesエラーが出ます見つからない:

スレッド "main"の例外com.typesafe.config.ConfigException $ Missing:キー 'wattio-batch'のコンフィグレーション設定が見つかりません com.typesafe.config.impl.SimpleConfig.findKey(SimpleConfig.java:124) com.typesafe.config.impl.SimpleConfig.find(SimpleConfig.java:145) at com.typesafe.config.impl.SimpleConfig.find(SimpleConfig.java:159) at com.typesafe.config.impl.SimpleConfig .find(SimpleConfig.java:164) at com.typesafe.config.impl.SimpleConfig.getObject(SimpleConfig.java:218) at com.typesafe.config.impl.SimpleConfig.getConfig(SimpleConfig.java:224) com.typesafe.config.impl.SimpleConfig.getConfig(SimpleConfig.java:33) at com.enerbyte.spark.jobs.wattiobatch.WattioBatchJob $ .main(WattioBa tchJob.scala:31) com.enerbyte.spark.jobs.wattiobatch.WattioBatchJob.main(WattioBatchJob.scala) でsun.reflect.NativeMethodAccessorImpl.invoke0(ネイティブメソッドで) sun.reflect.NativeMethodAccessorImpl.invokeで(NativeMethodAccessorImpl .java:62) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) at java.lang.reflect.Method.invoke(Method.java:498) at org.apache.spark.deploy.SparkSubmit $ .org $ apache $ spark $ deploy $ SparkSubmit $$ runMain(SparkSubmit.scala:786) at org.apache.spark.deploy.SparkSubmit $ .doRunMain $ 1(SparkSubmit.scala:183) at org.apache.spark .deploy.SparkSubmit $ .submit(SparkSubmit.scala:208) at org.apache.spark.deploy.SparkSubmit $ .main(SparkSubmit.scala:123)

org.apache.spark.deploy.SparkSubmit.main(SparkSubmit.scala)でどのようにこれを適切に設定するには?プライベートスレーブのうちの1つがドライバを実行しますが、インターネットにアクセスできますか(S3にアクセスしてconfファイルをダウンロードできますか?)

はありがとう

答えて

0

私は、コマンドを発行スパークからconfファイルを送信するには成功しますが、私がやったことは使用して私のプログラムの最初にハードコードするapplication.confファイルの場所をでませんでした。

System.setProperty("config.url", "https://s3_location/application.conf") ConfigFactory.invalidateCaches()

このようにして、プログラムは起動時に毎回application.confファイルを読み取ることができました。

関連する問題