我正在使用Cloudera Quickstart VM 5.3.0(在Windows 7上的Virtual Box 4.3中运行),我想学习Spark(在YARN上)。
我创办了Cloudera Manager。在侧边栏中我可以看到所有服务,有Spark但是在独立模式下。所以我点击"添加新服务",选择" Spark"。然后我必须为这个服务选择一组依赖项,我没有选择我必须选择HDFS / YARN / zookeeper。 下一步我必须选择历史服务器和网关,我在本地模式下运行VM,所以我只能选择localhost。
我点击"继续"并且发生此错误(+ 69个跟踪):
发生服务器错误。发送以下信息 Cloudera的。
路径:http://localhost:7180/cmf/clusters/1/add-service/reviewConfig
版本:Cloudera Express 5.3.0(由jenkins建造的#155 20141216-1458 git:e9aae1d1d1ce2982d812b22bd1c29ff7af355226)
org.springframework.web.bind.MissingServletRequestParameterException:必需 长参数' serviceId'不在场 AnnotationMethodHandlerAdapter.java第738行 org.springframework.web.servlet.mvc.annotation.AnnotationMethodHandlerAdapter $ ServletHandlerMethodInvoker raiseMissingParameterException()
我不知道是否需要互联网连接,但我确切地说我无法通过虚拟机连接到互联网。 (编辑:即使有互联网连接我也得到同样的错误)
我不知道如何添加此服务,我尝试使用或不使用网关,许多网络选项,但它从未工作过。我检查了已知的问题;没什么...
有人知道如何解决这个错误或我如何解决这个问题?谢谢你的帮助。
答案 0 :(得分:2)
在回答您的问题之前,我想在Hadoop 5(CDH5)的Cloudera Distribution中做一些关于Spark的一般性说明:
spark-shell
命令在Scala中进行交互式spark会话
或pyspark
for Python而不传递任何参数。我找到了交互式Scala和Python
口译员帮助学习使用Resilient Distributed进行编程
数据集(RDD)。我能够在CDH 5.3.x发行版上重新创建错误。对于您发现的错误,我并不意味着要归功于I posted to the Cloudera developer community for feedback.
为了在QuickStart伪分布式环境中使用Spark,请使用以下命令查看是否所有Spark守护程序都在运行(您可以在Cloudera Manager(CM)UI中执行此操作):
[cloudera@quickstart simplesparkapp]$ sudo service --status-all | grep -i spark
Spark history-server is not running [FAILED]
Spark master is not running [FAILED]
Spark worker is not running [FAILED]
我手动停止了所有独立的Spark服务,因此我们可以尝试在Yarn中提交Spark作业。
为了在快速启动集群上的Yarn容器中运行Spark,我们必须执行以下操作:
HADOOP_CONF_DIR
设置为包含yarn-site.xml
配置文件的目录的根目录。这通常是CHD5中的/etc/hadoop/conf
。您可以使用命令export HADOOP_CONF_DIR="/etc/hadoop/conf"
设置此变量。 spark-submit
提交作业,并指明您使用的是Hadoop YARN。
spark-submit --class CLASS_PATH --master yarn JAR_DIR ARGS