背景信息:
Spark两个节点,主机名分别为master和slave,$SPARK_HOMR/conf/slaves配置了两条记录:两行分别为master和slave。
先使用./sbin/start-master.sh命令启动master节点,然后使用./sbin/start-slaves.sh命令启动slaves。
错误描述:
在Spark UI查看slave节点信息,发现只能看到在master节点上启动的slave,但是看不到slave节点启动的slave。
查看slave的启动日志信息,如下所示:
17/07/18 01:34:08 WARN Worker: Failed to connect to master master:7077
org.apache.spark.SparkException: Exception thrown in awaitResult:
at org.apache.spark.util.ThreadUtils$.awaitResult(ThreadUtils.scala:205)
at org.apache.spark.rpc.RpcTimeout.awaitResult(RpcTimeout.scala:75)
解决方法:
在启动master的时候,通过-h参数指定master IP,此时在Spark UI显示的URL也为spark://IP:7077,然后再启动worker即可。
启动master:
/sbin/start-master.sh -h master_ip
启动worker
/sbin/start-slave.sh spark://master_ip:7077
上述方法参考了:http://blog.csdn.net/ybdesire/article/details/70666544,感谢这位博主的分享,侵删。