2016-05-23 12 views
0

私はLinuxの仮想ボックス上で実行されているスパーククラスタに接続するWindowsマシンから実行するには、この非常に基本的なコードを持っている:Mobius:LinuxでSpark Clusterと通信するためのCSharpBackendPortNumberの設定方法

 string sparkMaster = "spark://192.168.1.193:7077"; 
     string hdfsURI = "hdfs://192.168.1.193:8020"; 

     var sparkContext = new SparkContext(new SparkConf().SetAppName("MobiusWordCount").SetMaster(sparkMaster)); 

は、「ページを入門」のように指示に従っ(インストール火花窓ゲートウェイにマシンおよびその他の前提条件):

D:¥SparkCLR¥runtime> scripts¥sparkclr-submit.cmd - master spark://192.168.1.193:7077 - total-executor-core 2 --exe Spar kCLR .exe "C:¥Users¥aaa¥Documents¥Visual Studio 2015¥Projects¥SparkCLR¥SparkCLR¥bin¥Debug"

SPARKCLR_JAR =火花clr_2.10-1.6.100.jar 例外スレッドの "メイン" org.apache.spark.launcher.SparkCLRSubmitArguments.concatCmdOptions(SparkCLRSubmitArgumentsでjava.lang.NullPointerExceptionが :210はこのエラーを得ました。スカラ:389)org.apache.spark.launcher.SparkCLRSubmitArguments.buildCmdOptions(SparkCLRSubmitArguments.scalaで :492) org.apache.spark.launcher.SparkCLRSubmitArguments $ .mainで(SparkCLRSubmitArguments.scala:30) org.apacheで.spark.launcher.SparkCLRSubmitArguments.main(SparkCLRSubmitArguments.scala) D:\ SparkCLR \ runtime> scripts \ sparkclr-submit.cmd --verbose - master spark://192.168.1.193:7077 - total-executor-core 2 --exe SparkCLR.exe "C:¥Users¥aaa¥Documents¥Visual Studio 2015¥Projects¥SparkCLR¥SparkCLR¥bin¥Debug" SPARKCLR_JAR = spark-clr_2.10-1.6.100.jar スレッド "main"の例外java.lang.NullPointerException org.apache.spark.launcherで :org.apache.spark.launcher.SparkCLRSubmitArguments.buildCmdOptions(492 SparkCLRSubmitArguments.scala)で :org.apache.spark.launcher.SparkCLRSubmitArguments.concatCmdOptionsで (389 SparkCLRSubmitArguments.scala)。 SparkCLRSubmitArguments $ .main(SparkCLRSubmitArguments.scala:30) org.apache.spark.launcher.SparkCLRSubmitArguments.mainで(SparkCLRSubmitArguments.scala)

任意の考え?

答えて

1

Linuxで使用するためにMobiusコードをコンパイルする必要はありません。公式Mobius releaseを入手して使用するか、またはGitHubリポジトリからMobiusバイナリ(jarファイルとdll)をあらかじめ構築しておけば、それらがビルドされたプラットフォームに関係なく、WindowsまたはLinuxで使用できます。 MonoはLinuxでMobiusを実行するための要件です。 LinuxでMobiusをビルドすることを選択した場合は、Monoも必要です。

ドライバ設定ファイルでCSharpBackendPortNumberとCSharpWorkerPathをdebugging Mobius driver app in local modeにのみ指定する必要があります。これにより、C#ドライバプロセスをVisual StudioからIDE(IntelliJまたはEclipse)で個別に起動するJVMプロセス(CSharpRunner)に接続するか、sparkclr-submitスクリプトで "debug"パラメータを使用してC#Sparkアプリケーションをデバッグできます。

Mobiusを使用して実装されたApache Spark C#アプリケーションの通常(非デバッグ)実行では、ドライバ設定ファイルでデバッグスイッチ(CSharpBackendPortNumberおよびCSharpWorkerPath)を有効にしないでsparkclr-submitスクリプトを実行するだけです。にMobiusアプリケーションを実行する手順があります。この手順では、WindowsおよびLinuxのスタンドアロンおよびYARNクラスタでMobiusを実行する方法について説明します。

+0

エラーの詳細を含む元の投稿を編集しました – user2608613

+1

%TEMP%と%TMP%環境変数が指すディレクトリに書き込む権限がありますか? Mobiusはjava.ioを使用します。tmpdirは、Mobiusドライバアプリケーションを実行するのに必要なアーティファクトを含む一時的なzipファイルを作成します。 java.io.tmpdir(上記の環境変数)への書き込み権限がない場合は、あなたが観察したエラーが出る可能性があります – skaarthik

関連する問題