2016-10-10 82 views
0

我在沒有公有DNS的機器集羣上安裝了spark(只是在雲上創建的機器)。 Hadoop看起來可以正常安裝並正常工作,但Sparks會在7077和6066上監聽127.0.0.1而不是公共IP,因此工作節點無法連接到它。Spark在localhost上偵聽

出了什麼問題?在主節點上

我的/ etc/hosts如下所示:

127.0.1.1 namenode namenode 
127.0.0.1 localhost 
XX.XX.XX.XX namenode-public 
YY.YY.YY.YY hadoop-2 
ZZ.ZZ.ZZ.ZZ hadoop-1 

我的$ SPARK_HOME/conf目錄/ spark-env.sh樣子:

export JAVA_HOME=/usr/lib/jvm/java-8-oracle 
export SPARK_PUBLIC_DNS=namenode-public 
export SPARK_WORKER_CORES=6 
export SPARK_LOCAL_IP=XX.XX.XX.XX 

須藤netstat的-pan | grep的7077

tcp  0  0 127.0.1.1:7077   0.0.0.0:*    LISTEN  6670/java 

回答

1

應指定在spark-env.shSPARK_MASTER_HOST(必須是你的機器T的地址帽子對從節點可見)。此外,您可能需要在iptables中爲端口7077和6066添加規則。