我已经安装了clouderavm(单节点),在这个vm中,我有运行在yarn之上的spark。我想使用eclipseide(带有scala插件)来测试/学习spark。
如果我像下面那样示例化sparkcontext,那么一切都如我所期望的那样工作
import org.apache.spark.SparkConf
import org.apache.spark.SparkContext._
val sparkConf = new SparkConf().setAppName("TwitterPopularTags").setMaster("local[2]")
但是,如果我现在想通过将主服务器更改为'yarn client'来连接到本地服务器,那么它将不起作用:
val master = "yarn-client"
val sparkConf = new SparkConf().setAppName("TwitterPopularTags").setMaster(master)
具体来说,我得到以下错误:
eclipse控制台中显示的错误详细信息:
nodemanager日志中的错误详细信息:
以下是我迄今为止尝试过的方法:1。依赖项我通过maven repository添加了所有依赖项cloudera版本是5.5,对应的hadoop版本是2.6.0,spark版本是1.5.0。
2配置我在eclipse类路径中添加了3个路径变量:
spark\u conf\u dir=/etc/spark/conf/
hadoop\u conf\u dir=/usr/lib/hadoop/
yarn\u conf\u dir=/etc/hadoop/conf.cloudera.yarn/
有人能告诉我这里的问题是什么以及解决的方法吗?
1条答案
按热度按时间w6lpcovy1#
我已经解决了!我仍然不知道确切的问题是什么,但是我在hadoop中用我的用户名创建了一个文件夹,即/user/myusername目录,并且它工作了。无论如何,现在我切换到hortonworks发行版,我发现它比cloudera发行版更容易上手。