无法在Cloudera Quickstart VM 5.3.0中使用Cloudera Manager添加新服务

Jul*_*rre 5 cloudera cloudera-manager apache-spark cloudera-quickstart-vm

我正在使用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(#155由jenkins在20141216-1458上建立git:e9aae1d1d1ce2982d812b22bd1c29ff7af355226)

org.springframework.web.bind.MissingServletRequestParameterException:org.springframework.web.servlet.mvc.annotation.AnnotationMethodHandlerAdapter中的AnnotationMethodHandlerAdapter.java第738行不存在必需的长参数'serviceId'$ ServletHandlerMethodInvoker raiseMissingParameterException()

我不知道是否需要互联网连接,但我确切地说我无法通过VM连接到互联网.(编辑:即使有互联网连接我也得到同样的错误)

我不知道如何添加此服务,我尝试使用或不使用网关,许多网络选项,但它从来没有工作过.我检查了已知的问题; 没有...

有人知道如何解决这个错误或我如何解决?谢谢你的帮助.

Myl*_*ker 2

朱利安,

在回答您的问题之前,我想对 Cloudera Distribution of Hadoop 5 (CDH5) 中的 Spark 做一些一般性说明:

  1. Spark 以三种不同的格式运行:(1) 本地,(2) Spark 自己的独立管理器,以及 (3) 其他集群资源管理器,例如 Hadoop YARN、Apache Mesos 和 Amazon EC2。
  2. 对于 (1) 和 (2),Spark 可以与 CHD 5 开箱即用。您可以 使用命令在 Scala 中启动本地spark-shell交互式 Spark 会话,或者pyspark在 Python 中启动本地交互式 Spark 会话,而无需传递任何参数。我发现交互式 Scala 和 Python 解释器有助于学习使用弹性分布式数据集 (RDD) 进行编程。

我能够在我的 CDH 5.3.x 发行版上重现您的错误。我无意将您发现的错误归功于我,但我在 Cloudera 开发者社区发布了帖子以寻求反馈。

为了在 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]
Run Code Online (Sandbox Code Playgroud)

我已手动停止所有独立 Spark 服务,以便我们可以尝试在 Yarn 中提交 Spark 作业。

为了在快速启动集群上的 Yarn 容器内运行 Spark,我们必须执行以下操作:

  1. 将 设为HADOOP_CONF_DIR包含配置文件的目录的根目录yarn-site.xml。这通常/etc/hadoop/conf为 CHD5。您可以使用命令设置此变量export HADOOP_CONF_DIR="/etc/hadoop/conf"
  2. 使用 Hadoop YARN 提交作业spark-submit并指定您正在使用 Hadoop YARN。

    Spark-submit --class CLASS_PATH --master 纱线 JAR_DIR ARGS

  3. 检查 Hue 中的作业状态并与 Spark 历史记录服务器进行比较。Hue 应显示放置在通用 Yarn 容器中的作业,并且 Spark 历史记录不应包含已提交作业的记录。
使用的参考资料: