CDH-5.4.0, spark-on-yarn, cluster-mode and Java



我有一个 CDH-5.4.0,带有spark-on-yarn的4点群集。
我有一个环境变量YARN_CONF_DIR指向该目录,该目录包含从一个群集成员中获取的配置文件的副本(YARN Resource Manager的地址)。
我想从Java运行Spark Jobs:

SparkConf sparkConf = new SparkConf().
            setMaster("yarn-cluster").// "yarn-cluster" or "yarn-client"
            setAppName("SparX");
JavaSparkContext sc = new JavaSparkContext(sparkConf);
String path = "hdfs://virtual-machine-12.local:8020/mockRecords.csv";
JavaRDD<String> textFile = sc.textFile(path);
System.out.println(textFile.count());

如果我以yarn-cluster模式运行程序,则获得NullPointerException

at org.apache.spark.deploy.yarn.ApplicationMaster$.sparkContextInitialized(ApplicationMaster.scala:580)

如果我在yarn-client中运行该程序,则代码在new JavaSparkContext(sparkConf)

之后悬挂

任何想法我想念什么?
谢谢!

确保hadoop_conf_dir或yarn_conf_dir指向包含Hadoop群集的(客户端)配置文件的目录。

对于您的CDH-5.4.0群集,您可以从Cluster/yarn/Actions/Download Client Configuration下载配置,解开它并将HADOOP_CONF_DIRYARN_CONF_DIR点设置为此目录。

相关内容

  • 没有找到相关文章

最新更新