Zeppelin+Spark+Kubernetes:让 Zeppelin Job 运行 on existing Spark Cluster
Zeppelin+Spark+Kubernetes: Let Zeppelin Job run on existing Spark Cluster
在k8s集群中。如何将 zeppelin 配置为 运行 现有 spark 集群中的 spark 作业而不是启动新的 pod?
我有一个 k8s 集群,运行我想在其中 运行 Spark with Zeppelin。
Spark 是使用官方 bitnami/spark helm chart (v 3.0.0) 部署的。我有一个 Master 和两个 Worker pods 运行ning 很好,一切都很好。
Zeppelin 使用来自官方 apache-zeppelin github 的 zeppelin-server.yaml
部署。
我在 apache/zeppelin:0.9.0..
的基础上没有做太多修改就构建了自己的 zeppelin 容器
短伪 Dockerfile:
FROM bitnami/spark:3.0.0 AS spark
FROM apache/zeppelin:0.9-0 AS Zeppelin
COPY --from spark /opt/btinami/spark/ /opt/bitnami/spark
RUN Install kubectl
END
我稍微修改了zeppelin-server.yaml
。 (Image,imagePullSecret,设置spark master为spark master的headless Service DNS)
现在我想让我的 zeppelin 作业 运行 在我现有的 spark 集群上 --- 但没有成功。
当我提交 zeppelin 作业(用于 spark 解释器)时,zeppelin 启动了一个新的 spark pod,并且只与这个一起工作。 Spark 解释器设置就像它们应该的那样。 spark master url 已设置 (spark://\<master-url\>:\<master-port\>
),spark home 也已设置。
虽然这是一种甜蜜的行为,但这不是我想要的。
我想要的(也是我的问题)是:我希望我的 zeppelin pod 将 spark 作业提交到现有集群 - 而不是启动新的 pod。我很确定必须设置一些 config/env/whatever
,但我就是找不到它。
所以,我想问:有没有人知道如何在现有的 spark 集群上 运行 zeppelin spark 作业?我认为设置 spark master 应该可以完成工作...
亲切的问候
鲍勃
过了一段时间才回答自己...
对于 运行 遇到同样问题的任何人:
进入 spark 解释器设置
(可选,如果您还没有 属性)按“编辑”,向下滚动并添加 属性 SPARK_SUBMIT_OPTIONS
编辑 SPARK_SUBMIT_OPTIONS 值并添加“--master spark://<您的 SPARK MASTER 的端点>”
保存设置并完成...
这让我非常失望,因为已经有一个选项可以设置 spark master 本身。
什么解决了两次进入spark master的问题
- 在键“master”下
- 上述 SPARK_SUBMIT_OPTIONS 的编辑。
在k8s集群中。如何将 zeppelin 配置为 运行 现有 spark 集群中的 spark 作业而不是启动新的 pod?
我有一个 k8s 集群,运行我想在其中 运行 Spark with Zeppelin。
Spark 是使用官方 bitnami/spark helm chart (v 3.0.0) 部署的。我有一个 Master 和两个 Worker pods 运行ning 很好,一切都很好。
Zeppelin 使用来自官方 apache-zeppelin github 的 zeppelin-server.yaml
部署。
我在 apache/zeppelin:0.9.0..
的基础上没有做太多修改就构建了自己的 zeppelin 容器短伪 Dockerfile:
FROM bitnami/spark:3.0.0 AS spark
FROM apache/zeppelin:0.9-0 AS Zeppelin
COPY --from spark /opt/btinami/spark/ /opt/bitnami/spark
RUN Install kubectl
END
我稍微修改了zeppelin-server.yaml
。 (Image,imagePullSecret,设置spark master为spark master的headless Service DNS)
现在我想让我的 zeppelin 作业 运行 在我现有的 spark 集群上 --- 但没有成功。
当我提交 zeppelin 作业(用于 spark 解释器)时,zeppelin 启动了一个新的 spark pod,并且只与这个一起工作。 Spark 解释器设置就像它们应该的那样。 spark master url 已设置 (spark://\<master-url\>:\<master-port\>
),spark home 也已设置。
虽然这是一种甜蜜的行为,但这不是我想要的。
我想要的(也是我的问题)是:我希望我的 zeppelin pod 将 spark 作业提交到现有集群 - 而不是启动新的 pod。我很确定必须设置一些 config/env/whatever
,但我就是找不到它。
所以,我想问:有没有人知道如何在现有的 spark 集群上 运行 zeppelin spark 作业?我认为设置 spark master 应该可以完成工作...
亲切的问候 鲍勃
过了一段时间才回答自己...
对于 运行 遇到同样问题的任何人:
进入 spark 解释器设置
(可选,如果您还没有 属性)按“编辑”,向下滚动并添加 属性 SPARK_SUBMIT_OPTIONS
编辑 SPARK_SUBMIT_OPTIONS 值并添加“--master spark://<您的 SPARK MASTER 的端点>”
保存设置并完成...
这让我非常失望,因为已经有一个选项可以设置 spark master 本身。
什么解决了两次进入spark master的问题
- 在键“master”下
- 上述 SPARK_SUBMIT_OPTIONS 的编辑。