【问题标题】:Springboot with Spark in Yarn mode在纱线模式下使用 Spark 的 Spring Boot
【发布时间】:2020-05-10 08:31:36
【问题描述】:

我正在尝试使用 spring boot 运行 live spark session。我的目标是使用 springboot 在 Yarn 模式下运行 spark。

  1. 我希望只有一个 jar 文件作为工件,并且不想分离 spark 依赖项
  2. 除了下面的代码我还需要添加任何配置吗?当我尝试时,它总是尝试连接到本地主机而不是实际主机。 (RMProxy:在 /0.0.0.0:8032 连接到 ResourceManager 20/01/23 20:14:14 INFO 客户端:重试连接到服务器:0.0.0.0/0.0.0.0:8032)
  3. 是否需要任何单独的配置来记录工作程序日志和驱动程序日志?
SparkConf conf = new SparkConf().
 set("spark.driver.extraJavaOptions", "Dlog4j.configuration=file://src/main/resources/log4j.properties").
 set("spark.executor.extraJavaOptions","Dlog4j.configuration=file://src/main/resources/log4j.properties").
 set("yarn.resoursemanager.address","http://my-yarn-host").
 set("spark.yarn.jars","BOOT-INF/lib/spark-*.jar").
 setAppName("NG-Workbench").setMaster("yarn");

JavaSparkContext sc = new JavaSparkContext(conf);
List<String> word = new ArrayList<>();
word.add("Sidd");
JavaRDD<String> words = sc.parallelize(Arrays.asList("Michel", "Steve"));
Map<String, Long> wordCounts = words.countByValue();
wordCounts.forEach((k, v) -> System.out.println(k + " " + v));
sc.close();

【问题讨论】:

  • 您的问题解决了吗?

标签: java spring-boot apache-spark hadoop-yarn


【解决方案1】:

我建议您将一些配置文件添加到您的工件中:

  • yarn-site.xml
  • core-site.xml
  • hdfs-site.xml
  • mapred-site.xml

否则,您可以在 spark-conf 中添加这两个属性:

  • spark.hadoop.yarn.resourcemanager.address : "XXXX:8050"
  • spark.hadoop.yarn.resourcemanager.hostname: "XXXX"

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2015-10-22
    • 2018-06-24
    • 2016-04-09
    • 1970-01-01
    • 2023-04-08
    • 2017-06-24
    • 2017-01-03
    • 2020-10-14
    相关资源
    最近更新 更多