public static void main(String[] args) {
// TODO Auto-generated method stub
SparkConf conf= new SparkConf().setAppName("AirPollution").setMaster("yarn");
SparkContext context=new SparkContext(conf);
我该如何修复此错误?
Exception in thread "main" org.apache.spark.SparkException: Could not parse Master URL: 'yarn'
答案 0 :(得分:6)
我找到了灵魂。任何有这个问题的机构都应该将spark-yarn.jar添加到构建路径中。重要的问题是,如果您使用SPARK 2+,它应该是最后一个版本。例如spark-yarn2.11为我工作
答案 1 :(得分:5)
根据master中最近的Spark代码,这应该可行。默认情况下,如果未设置spark.submit.deployMode
配置参数,Spark将使用客户端部署模式。
但是,这在Spark 1.6.x中不起作用。如果您使用Spark 1.6.x,则必须明确指定主URL作为" yarn-cluster"或"纱线客户"。
还要考虑使用spark-submit
,因为它可以帮助您避免在代码中设置一些配置参数(例如主URL)。因此,您将能够使用其他集群管理器而无需重新编译程序。
答案 2 :(得分:2)
我可以通过在Spark Scala项目中包含以下Spark项目Yarn依赖关系来解决此问题。
我的VM Spark版本是2.3.0。 Scala-2.11.0
.Where(p =>
p.IsClass &&
!p.IsAbstract &&
type.IsAssignableFrom(p));
在下面的链接中引用 https://community.hortonworks.com/questions/36354/eclipse-to-sandbox-1.html