2017-02-01 5 views
0

​​を使用して、マルチノードシステムで自分のコードをテストしました。 (もちろん、マルチノード環境を実現するためにマスターサーバーアドレスとしてマスターオプションを指定しました)。 しかし、​​を使用する代わりに、spark-shellを使用してクラスタシステムで自分のコードをテストしたいと思います。しかし、spark-shellでマルチノードクラスタ設定を構成する方法がわかりません。spark-shellでマルチノードを実行するには?

セットアップを変更せずにspark-shellを使うだけで、ローカルモードになると思います。

私は情報を検索しようとし、以下のコマンドに従った。

scala> sc.stop() 
... 

scala> import org.apache.spark.{SparkContext, SparkConf} 
import org.apache.spark.{SparkContext, SparkConf} 

scala> val sc = new SparkContext(new SparkConf().setAppName("shell").setMaster("my server address")) 
... 

scala> import org.apache.spark.sql.SQLContext 
import org.apache.spark.sql.SQLContext 

scala> val sqlContext = new SQLContext(sc) 
sqlContext: org.apache.spark.sql.SQLContext = [email protected] 

ただし、spark-shellを使用したマルチノードクラスタセットアップで正しい動作をしていることは間違いありません。

答えて

2

--masterのパラメータはspark-shellでしたか?スパークスタンドアロンの場合:YARNについては

./spark-shell --master yarn 
を使用します。

./spark-shell --master spark://master-ip:7077 

スパークシェルがちょうどドライバーである、それはあなたがマスターパラメータ

編集に書き込みます任意のクラスタに接続します

1

setMaster("my server address"))を使用し、「マイサーバアドレス」が"local"でない場合は、ローカルでは実行されませんモード。

コード内のマスタアドレスを設定するには罰金ですが、本番では、あなたはまた、別の.scalaファイルを書き込み、にそれを渡すことができますspark-shellまたは​​

にCLIに--masterパラメータを設定したいですspark-shell -i <filename>.scala

関連する問題