zoukankan      html  css  js  c++  java
  • Spark离线日志分析,连接Spark出现报错

    首先,我的代码是这样的

    import org.apache.spark.rdd.RDD
    import org.apache.spark.{SparkConf, SparkContext}
    
    object PvCount {
      def main(args: Array[String]): Unit = {
    
        //获取SparkConf
        val sparkConf = new SparkConf().setMaster("local[2]").setAppName("PV-Count")
        //创建SparkContext
        val sparkContext = new SparkContext(sparkConf)
        //读取文件
        val fileRDD: RDD[String] = sparkContext.textFile("file:////Users/zhaozhuang/Desktop/4、Spark/Spark第二天/第二天教案/资料/运营商日志/access.log")
        //统计数量
        val count = fileRDD.count()
    
        println("一共有"+count+"行数据")
    
        sparkContext.stop()
      }
    }
    

    我的Spark是装在虚拟机上的,然后运行就报错

    java.net.BindException: Can’t assign requested address: Service ‘sparkDriver’ failed after 16 retries (on a random free port)! Consider explicitly setting the appropriate binding address for the service ‘sparkDriver’ (for example spark.driver.bindAddress for SparkDriver) to the correct binding address.
     
    大概翻译一哈:
    java.net.BindException:无法分配请求的地址:'sparkDriver’服务在16次重试后(在一个随机自由的端口上)失败了!考虑显式地适当的将’sparkDriver’服务(比如 SparkDriver的spark.driver.bindAddress)绑定到正确的绑定地址
     
    虽然翻译了出来,但我还是没完全明白,就知道是地址错误之类的
    在这里插入图片描述

    然后查阅了各种方法,都没用,看到了一个和我的报错并不相同的解决办法,我还是决定试试

    val sparkConf = new SparkConf().setMaster("local[2]").setAppName("PV-Count").set("spark.driver.host", "localhost")
    

    在sparkConf中添加了一个设置,就奇迹般地成功了
    在这里插入图片描述
    但是我的Spark是安装在虚拟机的,为啥?
    所以我又把localhost改成了node01(我虚拟机的主机名),结果又报同样的错
    为什么?还是没搞懂原因,不过有解决办法了,所以先记录一下,找到原因再来解决吧

  • 相关阅读:
    经验1
    Caffe和MatConvNet安装
    Matconvet的学习笔记
    CNN数据准备
    深度学习之卷积和池化
    深度学习之CNN的推导
    深度学习八(总结)
    深度学习七(卷积神经网络)
    深度学习六
    深度学习五
  • 原文地址:https://www.cnblogs.com/zzzsw0412/p/12772394.html
Copyright © 2011-2022 走看看