Spark worker连接不上Master

笔者最近在测试Spark的内存模型,测到ExecutionMemory的使用时,老是没发现分配任何ExecutionMemory。怀疑由于是在同一台主机上开启的多个Worker instance导致的,于是在虚拟机上部署了一个Spark。

但是,部署过去以后,启动Worker时,老是不成功。telnet host port,发现Unable to connect to remote host: Connection refused

背景

本机主机名为alstonwilliams,然后alstonwilliams会被解析成localhost

spark-env.sh中,仅仅配置了SPARK_MASTER_WEBUI_PORT以及SPARK_WORKER_WEBUI_PORT

解决过程

查看Master日志,发现它提示的Master URL是spark://alstonwilliams:7077。然后telnet localhost 7077,没任何问题。

telnet host_ip 7077,则会提示Unable to connect to remote host: Connection refused

于是,修改spark-env.conf,添加SPARK_MASTER_HOST=host_ip,然后Master的URL是spark://host_ip:7077,现在再启动Worker就能连上Master了。

原因

由于开始master是localhost,所以7077这个端口也只能被localhost可见。通过其它的网络接口地址是不可见的。

©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容