2015-05-06 4 views
12

Esiste la possibilità di eseguire il cluster autonomo Spark su una sola macchina (che è sostanzialmente diversa dallo sviluppo di processi localmente (ad esempio, local[*]) ?.Spark - Come eseguire localmente un cluster autonomo

Finora sto eseguendo 2 VM diverse per creare un cluster, e se potessi eseguire un cluster autonomo sullo stesso computer, avendo per esempio tre JVM diverse in esecuzione?

Potrebbe piacere avere più indirizzi di loopback?

risposta

17

sì, si può fare, lanciare un master e un operaio nodo e vi sono buone per andare

padrone del lancio

./sbin/start-master.sh 

lavoratore lancio

./bin/spark-class org.apache.spark.deploy.worker.Worker spark://localhost:7077 -c 1 -m 512M 

esempio run SparkPi

./bin/spark-submit --class org.apache.spark.examples.SparkPi --master spark://localhost:7077 lib/spark-examples-1.2.1-hadoop2.4.0.jar 

Apache Spark Standalone Mode Documentation

+1

Grazie, ma cosa succede se ho bisogno di 2 o più lavoratori che lavorano in parallelo? Potrebbe essere possibile? – luke

+1

@luke è possibile eseguire più worker utilizzando il comando launch worker in diverse schede della shell – banjara

+0

Grazie, farò un tentativo! :) – luke

1

Un piccolo aggiornamento come per l'ultima versione (la 2.1.0), il valore predefinito è quello di legare il master per il nome host, in modo da quando si inizia un operaio localmente utilizzare l'output di hostname:

./bin/spark-class org.apache.spark.deploy.worker.Worker spark://`hostname`:7077 -c 1 -m 512M 

E per eseguire un esempio, è sufficiente eseguire il seguente comando:

bin/run-example SparkPi 
+0

Grazie, non si ottiene più: worker non può connettersi al master –

0

Se non è possibile trovare il file ./sbin/start-master.sh sulla vostra macchina, è possibile avviare il Master a lso con

./bin/spark-class org.apache.spark.deploy.master.Master