Binding 无法绑定到:spark master,使用具有两个工作进程的远程群集

Binding 无法绑定到:spark master,使用具有两个工作进程的远程群集,binding,apache-spark,runtime-error,Binding,Apache Spark,Runtime Error,我正设法让所有东西都与当地的主人和两个远程工人一起工作。现在,我想连接到具有相同远程工作者的远程主机。我尝试了不同的设置组合,包括/etc/hosts和Internet上的其他RecComendation,但都不起作用 主要类别为: public static void main(String[] args) { ScalaInterface sInterface = new ScalaInterface(CHUNK_SIZE, "awsAccessKeyId",

我正设法让所有东西都与当地的主人和两个远程工人一起工作。现在,我想连接到具有相同远程工作者的远程主机。我尝试了不同的设置组合,包括/etc/hosts和Internet上的其他RecComendation,但都不起作用

主要类别为:

public static void main(String[] args) {
    ScalaInterface sInterface = new ScalaInterface(CHUNK_SIZE,
            "awsAccessKeyId",
            "awsSecretAccessKey");

    SparkConf conf = new SparkConf().setAppName("POC_JAVA_AND_SPARK")
            .setMaster("spark://spark-master:7077");

    org.apache.spark.SparkContext sc = new org.apache.spark.SparkContext(
            conf);

    sInterface.enableS3Connection(sc);
    org.apache.spark.rdd.RDD<Tuple2<Path, Text>> fileAndLine = (RDD<Tuple2<Path, Text>>) sInterface.getMappedRDD(sc, "s3n://somebucket/");

    org.apache.spark.rdd.RDD<String> pInfo = (RDD<String>) sInterface.mapPartitionsWithIndex(fileAndLine);

    JavaRDD<String> pInfoJ = pInfo.toJavaRDD();

    List<String> result = pInfoJ.collect();

    String miscInfo = sInterface.getMiscInfo(sc, pInfo);

    System.out.println(miscInfo);

}

谢谢你的帮助

您的主机可能正在非默认端口上运行。你能发布你的提交命令吗?
查看

当我的
/etc/hosts
文件将错误的IP地址映射到本地主机名时,我遇到了这个问题


日志中的
BindException
抱怨IP地址
192.168.0.191
。我假设解析为您机器的主机名,而不是您网络接口使用的实际IP地址。一旦您解决了这个问题,它应该可以正常工作。

设置环境变量SPARK\u LOCAL\u IP=127.0.0.1为我解决了这个问题。

我让SPARK在我的EC2实例中工作。我启动了一个新的web服务器,为了满足它的要求,我不得不将主机名更改为ec2公共DNS名称,即

hostname ec2-54-xxx-xxx-xxx.compute-1.amazonaws.com
之后,我的spark无法工作,出现如下错误:

export SPARK_LOCAL_IP="localhost"
$SPARK_HOME/bin/spark-shell
16/09/20 21:02:22警告Utils:服务“sparkDriver”无法在端口0上绑定。正在尝试端口1。 16/09/20 21:02:22错误SparkContext:初始化SparkContext时出错

我通过将SPARK_LOCAL_IP设置为如下方式解决此问题:

export SPARK_LOCAL_IP="localhost"
$SPARK_HOME/bin/spark-shell
然后刚刚发布了sparkling shell,如下所示:

export SPARK_LOCAL_IP="localhost"
$SPARK_HOME/bin/spark-shell

我没有使用提交,我想用IDE实现它。提交作品罚款,大师设置为spark://spark-master:7077The 我在IDE中的做法是创建一个conf对象,并通过setMaster方法设置master。然后,我使用conf对象创建spark上下文。我相信spark上下文是应用程序和Cluster之间的链接。这正是我做这件事的方式,也正是我得到上述错误的原因。不是因为许可。然而,我可以发布主要课程。很久以前我就发布了这个问题,我想在此期间,一些事情发生了变化,以制定简单的解决方案。这里的答案对我都没有帮助,但令我惊讶的是,关闭wifi连接确实解决了我的问题。这实际上是一个恼人的变通方法!这也解决了我的问题。但这是因为笔记本电脑上的ipv6