2017-08-02 3 views
2

スタンドアローンモードでデータクラスタとしてcassandraを使用してスパーククラスタをセットアップしました。一方、私はIntelliJ IDEAを使用して、作業者が実行するスパーククラスタに送信されるドライバコードを記述しています。クラスタをスパークさせるジョブを送信する

私のローカルマシンのintellijからリモートクラスタにコードを実行することが可能かどうか、または.jarファイルを作成してsopark-submit?を使用してワーカーに展開する必要がありますか。

私はすべての設定を行う上で問題があり、可能性を減らす必要があるため、確認を探しています。

ありがとうございます。

+0

AFAIKこれはできません、または少なくとも私は成功した人を見たことがありません(私は成功していない糸で試してみました) –

+0

私はこれが少し苦痛であることを確認します。私は、スパークを使用して、ニューロンネットワークにフィードするためのcassandraからのレポートを生成したかったのです。私はfastinの実行と使いやすさが必要です。レポートのコードでjarファイルを作成しなければならない場合は、マスターサーバーにアップロードし、spark-submitを実行し、作成したcsvなどの結果を取得してください。これが唯一の方法であることを確認できますか? – Notbad

答えて

1

あなたは、それによってあなたがのIntelliJでコードを書いて、スパークがそれを実行するリモートクラスタにあなたのコードを展開することができ、私は申請書を提出についてspecを読んですることをお勧めいたしますSpark-cluster上でコードを実行し、あなたのSparkContextにこのクラスタの構成を設定する必要がありますクラスタ上でアプリを起動するための の構成は次のことができます:

./bin/spark-submit \ 
    --class org.apache.spark.examples.SparkPi \ 
    --master spark://${yourip}:7077 \ 
    --executor-memory 5G \ 
    /path/to/examples.jar \ 
    1000 

あなたがjarファイルを作成し、​​を経由して接続せずに、クラスタにデプロイすることができ、直接クラスタにrconnectしたくない場合 - このvideo-tutorialはそれを作る方法を示しています。 HTH

+0

スパークマスタと2つのノードを正しく設定した後(私はそれらが提供するウェブフロントエンドで見ることができます)、私はいつもspark submitをしなければなりませんか?私はあなたが意味することを理解していない "それによってintellijでコードを書くことができ、あなたのコードをリモートクラスタに委譲することができます"。これは、私がintellijからjarファイルを作成し、それをサーバーにアップロードしてspark-submitを行う必要があることを意味しますか?私はローカルでコードを書くことはできませんし、他の言語のように(実行を押すことによって)クラスタに対してideから直接実行することはできません。前もって感謝します。 – Notbad

+0

@Notbad Spark-clusterでコードを実行してIDEから何かを起動する場合は、SparkConfでクラスタの設定を行う必要があります。もちろん、リモートマシン上のクラスタでip住所。 –

1

IntelliJを使用してドライバプログラムをデバッグしようとしているようです。

アプリケーションをクライアントモードでspakr-submitし、IntelliJ IDEを使用してドライバに接続することができます。