ho Spark e Hadoop installato su OS X. Ho lavorato con successo attraverso un esempio in cui Hadoop corse a livello locale, aveva i file memorizzati in HDFS e mi sono imbattuto scintilla conApache Spark eseguito localmente Dare Refused Errore di connessione
spark-shell --master yarn-client
e dall'interno della shell ha lavorato con HDFS. Sto avendo problemi, tuttavia, cercando di far funzionare Spark senza HDFS, solo localmente sulla mia macchina. Ho guardato this answer ma non mi sembra giusto nei guai con le variabili di ambiente quando il Spark documentation dice
E 'facile da eseguire in locale su una macchina - tutto ciò che serve è avere Java installato sul vostro PATH del sistema, o la variabile di ambiente JAVA_HOME che punta a un'installazione Java.
Se eseguo l'esempio base SparkPi
, ottengo l'output corretto.
Se provo eseguire l'applicazione di esempio Java they provide, ancora una volta, ottengo in uscita, ma questa volta con connessione rifiutata errori relativi al porta 9000, che suona come si sta cercando di connettersi a Hadoop, ma io non so perché, perché non sto specificando che
$SPARK_HOME/bin/spark-submit --class "SimpleApp" --master local[4] ~/study/scala/sampleJavaApp/target/simple-project-1.0.jar
Exception in thread "main" java.net.ConnectException: Call From 37-2-37-10.tssg.org/10.37.2.37 to localhost:9000 failed on connection exception: java.net.ConnectException: Connection refused; For more details see: http://wiki.apache.org/hadoop/ConnectionRefused
at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
at sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:62)
...
...
...
org.apache.hadoop.ipc.Client$Connection.setupConnection(Client.java:604)
at org.apache.hadoop.ipc.Client$Connection.setupIOstreams(Client.java:699)
at org.apache.hadoop.ipc.Client$Connection.access(Client.java:367)
at org.apache.hadoop.ipc.Client.getConnection(Client.java:1462)
at org.apache.hadoop.ipc.Client.call(Client.java:1381)
... 51 more
15/07/31 11:05:06 INFO spark.SparkContext: Invoking stop() from shutdown hook
15/07/31 11:05:06 INFO handler.ContextHandler: stopped o.s.j.s.ServletContextHandler{/metrics/json,null}
...
...
...
15/07/31 11:05:06 INFO ui.SparkUI: Stopped Spark web UI at http://10.37.2.37:4040
15/07/31 11:05:06 INFO scheduler.DAGScheduler: Stopping DAGScheduler
15/07/31 11:05:06 INFO spark.MapOutputTrackerMasterEndpoint: MapOutputTrackerMasterEndpoint stopped!
15/07/31 11:05:06 INFO util.Utils: path = /private/var/folders/cg/vkq1ghks37lbflpdg0grq7f80000gn/T/spark-c6ba18f5-17a5-4da9-864c-509ec855cadf/blockmgr-b66cc31e-7371-472f-9886-4cd33d5ba4b1, already present as root for deletion.
15/07/31 11:05:06 INFO storage.MemoryStore: MemoryStore cleared
15/07/31 11:05:06 INFO storage.BlockManager: BlockManager stopped
15/07/31 11:05:06 INFO storage.BlockManagerMaster: BlockManagerMaster stopped
15/07/31 11:05:06 INFO scheduler.OutputCommitCoordinator$OutputCommitCoordinatorEndpoint: OutputCommitCoordinator stopped!
15/07/31 11:05:06 INFO spark.SparkContext: Successfully stopped SparkContext
15/07/31 11:05:06 INFO util.Utils: Shutdown hook called
15/07/31 11:05:06 INFO util.Utils: Deleting directory /private/var/folders/cg/vkq1ghks37lbflpdg0grq7f80000gn/T/spark-c6ba18f5-17a5-4da9-864c-509ec855cadf
Tutti gli indicatori/spiegazioni su dove sto andando male sarebbe molto apprezzato!
UPDATE
Sembra che il fatto che ho la variabile d'ambiente HADOOP_CONF_DIR
set sta causando alcuni problemi. In base a tale directory, ho core-site.xml
che contiene il seguente
<property>
<name>fs.default.name</name>
<value>hdfs://localhost:9000</value>
</property>
Se cambio il valore per esempio <value>hdfs://localhost:9100</value>
poi quando si tenta di eseguire il processo di accensione, il collegamento rifiutato errore si riferisce a questo mutato porta
Exception in thread "main" java.net.ConnectException: Call From 37-2-37-10.tssg.org/10.37.2.37 to localhost:9100 failed on connection exception: java.net.ConnectException: Connection refused; For more details see: http://wiki.apache.org/hadoop/ConnectionRefused
Così, per qualche motivo, nonostante istruendo l'esecuzione a livello locale, si sta tentando di connettersi a HDFS. Se rimuovo la variabile di ambiente HADOOP_CONF_DIR
, il lavoro funziona correttamente.
stai configurando la configurazione principale anche all'interno del tuo lavoro? – eliasah
Non so esattamente cosa intendi (potrebbe essere un segno del perché non funziona!). Sto solo eseguendo il comando '$ SPARK_HOME/bin/spark-submit --class" SimpleApp "--master local [4] ~/study/scala/sampleJavaApp/target/simple-project-1.0.jar' –
come stai configurare il tuo SparkContext nel tuo progetto Java? – eliasah