2017-09-27 1 views
0

Ich habe Probleme beim Absenden einer Spark-Submit Remote-Job von einem Computer außerhalb der Spark Cluster auf YARN ausgeführt.Spark Remote-Ausführung zu Cluster fehlgeschlagen - HDFS-Verbindung bei 8020 abgelehnt

Exception in thread "main" java.net.ConnectionException: Call from remote.dev.local/192.168.10.65 to target.dev.local:8020 failed on connection exception: java.net.ConnectionException: Connection Refused 

In meinem Kern-site.xml:

<property> 
    <name>fs.defaultFS</name> 
    <value>hdfs://target.dev.local:8020</value> 
<property> 

Auch an meinem hdfs-site.xml im Cluster I Berechtigungen für HDFS Überprüfung haben disbled:

<property> 
    <name>dfs.permissions.enabled</name> 
    <value>false</value> 
<property> 

Auch wenn ich von der Maschine außerhalb des Clusters telnet:

telnet target.dev.local 8020 

Ich erhalte

telnet: connect to address 192.168.10.186: Connection Refused 

Aber, wenn ich

telnet target.dev.local 9000 

es sagt Verbunden.

Auch wenn ich ping target.dev.local es funktioniert.

Mein Funken einreichen Skript von der entfernten Maschine ist: hier

export HADOOP_CONF_DIR=/<path_to_conf_dir_copied_from_cluster>/ 

spark-submit --class org.apache.spark.examples.SparkPi \ 
--master yarn \ 
--deploy-mode cluster \ 
--driver-memory 5g \ 
--executor-memory 50g \ 
--executor-cores 5 \ 
--queue default \ 
<path to jar>.jar \ 
10 

Was bin ich?

Antwort

0

Es stellte sich heraus, dass ich

<property> 
    <name>fs.defaultFS</name> 
    <value>hdfs://target.dev.local:8020</value> 
<property> 

zu

<property> 
    <name>fs.defaultFS</name> 
    <value>hdfs://0.0.0.0:8020</value> 
<property> 

ändern musste die Außenseite zu ermöglichen Verbindungen bilden, da target.dev.local in einem privaten Netzwerk-Switch sitzt.

Verwandte Themen