spark任务提交端口占用异常

错误提示:

7/05/05 15:51:07 WARN AbstractLifeCycle: FAILED org.spark-project.jetty.server.Server@3c8bdd5b: java.net.BindException: Address already in use
java.net.BindException: Address already in use
    at sun.nio.ch.Net.bind0(Native Method)
    at sun.nio.ch.Net.bind(Net.java:433)
原因:
Spark任务都会绑定一个端口来显示WebUI,默认端口为4040,如果被占用则依次递增+1端口重试,重试次数由参数spark.port.maxRetries=16控制,默认重试16次后就放弃执行,即超过16次程序停止。

解决:

1. 程序代码中初始化SparkConf时,设置conf.set(“spark.port.maxRetries”,“128”)(亲测
2. 使用spark-submit提交任务时,--conf spark.port.maxRetries=128
3. 在全局的spark-defaults.conf中添加spark.port.maxRetries 128 , 对所有的application起作用
 

 

你可能感兴趣的:(spark任务提交端口占用异常)