Kubernetes 上的 Zeppelin Spark Master 设置

Posted

技术标签:

【中文标题】Kubernetes 上的 Zeppelin Spark Master 设置【英文标题】:Zeppelin Spark Master Settings on Kubernetes 【发布时间】:2020-12-29 05:34:53 【问题描述】:

我正在将 Zeppelin 0.8 配置为在 Kubernetes 上与我的 spark 集群在同一命名空间中运行。

问题是,当我在 spark 解释器设置中提到 spark master 时,我的代码停止工作并出现错误,

java.lang.RuntimeException: SPARK_HOME is not specified in interpreter-setting for non-local mode, if you specify it in zeppelin-env.sh, please move that into  interpreter setting

是否有人在 Kubernetes 上积极使用 Zeppelin 来运行 Spark 应用程序?

任何线索将不胜感激!

【问题讨论】:

【参考方案1】:

这很简单。所需要做的就是在 Zeppelin 的 spark 解释器设置中添加 SPARK_HOME。

SPARK_HOME 需要定向到下载的 spark 版本。就我而言,我使用的是从这里下载的 spark 2.4:https://archive.apache.org/dist/spark/spark-2.4.0/

我将该版本与 Hadoop 2.7 一起使用,并将文件安装在我正在运行的容器上。

要连接到在 Kubernetes 中运行的 spark master,Zeppelin 需要版本中的二进制文件。

还要在解释器设置中提及主 url 作为 spark://spark-master:7077

这使设置工作顺利进行,尽管我目前正在解决一些阻碍内部连接的 DNS 问题。

【讨论】:

以上是关于Kubernetes 上的 Zeppelin Spark Master 设置的主要内容,如果未能解决你的问题,请参考以下文章

在 kubernetes 上使用 zeppelin 公开 spark-ui

使用 zeppelin 在 kubernetes 上运行 Spark

Zeppelin+Spark+Kubernetes:让 Zeppelin Job 在现有的 Spark 集群上运行

为啥 Zeppelin-Spark 解释器没有挂载 Kubernetes 服务帐户

Kubernetes Ingress 背后缺少 Zeppelin 笔记本和解释器

Zeppelin 错误:部署到 Kubernetes 集群后出现“解释器进程未运行”