2

我刚刚从http://zeppelin-project.org/docs/tutorial/tutorial.html(“流数据教程”部分)将示例项目添加到我的 Zeppelin Notebook 中。我现在遇到的问题是该应用程序似乎只能在本地工作。如果我将 Spark 解释器设置“master”从“local[*]”更改为“spark://master:7077”,当我执行相同的 SQL 语句时,应用程序将不再带来任何结果。我做错什么了吗?我已经重新启动了 Zeppelin 解释器、整个 Zeppelin 守护进程和 Spark 集群,但没有解决问题!有人可以帮忙吗。

我使用以下安装:

  • Spark 1.5.1(为 Hadoop 2.6+ 预构建),Master + 2x Slaves
  • Zeppelin 0.5.5(安装在 Spark 的主节点上)

编辑 以下安装也不适合我:

  • Spark 1.5.0(为 Hadoop 2.6+ 预构建),Master + 2x Slaves
  • Zeppelin 0.5.5(安装在 Spark 的主节点上)

屏幕截图:本地设置(有效!) 在此处输入图像描述

屏幕截图:集群设置(不起作用!) 在此处输入图像描述

该作业似乎在集群模式下正确运行: 在此处输入图像描述

4

1 回答 1

3

经过2天的尝试,我得到了它!

本地 Zeppelin Spark 解释器和 Spark Cluster 之间的区别似乎是,本地解释器包含了执行 Twitter Streaming 示例所需的 Twitter Utils,而 Spark Cluster 默认没有这个库。

因此,在以 Spark 集群作为 master 启动应用程序之前,您必须在 Zeppelin Notebook 中手动添加依赖项。所以 Notebook 的第一段必须是:

%dep
z.reset
z.load("org.apache.spark:spark-streaming-twitter_2.10:1.5.1")

如果运行本段出现错误,只需尝试通过 ./bin/zeppelin-daemon.sh stop (& start) 重新启动 Zeppelin 服务器!

于 2015-12-16T19:26:51.250 回答