试图连接到Spark Master时,无法在随机的自由端口错误上绑定



我有一个在亚马逊EC2上运行的Spark Master。我尝试使用Pyspark与另一个EC2实例的Pyspark连接到它:

spark = SparkSession.builder.appName("MyApp") 
                            .master("spark_url_as_obtained_in_web_ui") 
                            .getOrCreate()

以下是错误:

调整记录级别使用SC.SETLOGLEVEL(NEWLEVEL(。对于SparkR,使用setLoglevel(newlevel(。

2018-04-04 20:03:04警告utils:66-服务'Sparkdriver'无法在随机的免费端口上绑定。您可以检查是否配置适当的绑定地址。

..............

java.net.bindexception:无法分配请求的地址:16次重试后(在随机免费端口上(失败!考虑将服务" SparkDriver"(例如Spark.Driver.BindadDress for Sparkdriver(明确设置适当的绑定地址为正确的绑定地址。

我尝试了这里所述的所有解决方案,但无济于事:

  1. 连接到远程火花主-Java/scala

  2. 所有大师都没有反应!?Spark Master没有使用DataStax Architecture

    响应
  3. 火花独立群集 - 从无法连接到主人

  4. 火花主机:7077无法到达

  5. spark提交"驱动程序"无法在端口上绑定。错误

  6. https://community.hortonworks.com/questions/8257/how-can-i-resolve-it.html

可能出了什么问题?

spark.driver.bindAddress设置为您的本地IP,例如127.0.0.1

pyspark -c spark.driver.bindAddress=127.0.0.1

创建Spark Session设置以下配置

spark =SparkSession.builder.appName(str(name))
      .master("local[*]").config("spark.driver.memory","5g")
      .config("spark.driver.host","10.51.4.110") #Machine ip
      .config("spark.driver.bindAddress","10.51.4.110") #Machine ip
      .getOrCreate()

有时除了绑定地址外,我们还需要设置主机地址。在我的情况下,系统主机地址更改为系统名称。Spark显示超时错误。然后,设置主机并绑定地址一样。它可以正常工作

*10.51.4.110-本地机器IP

我最近在Windows 10上也有类似的问题。

通过以下步骤来解决它:

  • 通过设置用户环境变量spark_local_ip = 127.0.0.1
  • 修复了它
  • 重新命令行作为admin

在macOS上,带有独立的火花群集,将 SPARK_MASTER_HOST设置为'localhost',而不是'127.0.0.0.1'求解为我的问题。

export SPARK_MASTER_HOST='localhost'

最新更新