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

时间:2020-08-10 07:28:08

标签: apache-spark kubernetes apache-zeppelin

在k8s集群中。您如何配置齐柏林飞艇来在现有的火花集群中运行火花作业,而不是旋转一个新的吊舱?

我已经建立并运行了一个k8s集群,我想在其中使用Zeppelin运行Spark。

使用官方的Bitnami / Spark舵表(v 3.0.0)部署Spark。我有一个Master和两个Worker Pod运行良好,一切都很好。

Zeppelin与来自官方apache-zeppelin github的zeppelin-server.yaml一起部署。

我已经构建了自己的齐柏林飞艇容器,而无需对apache / zeppelin:0.9.0进行太多修改。

短伪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的无头服务DNS)

现在,我希望我的齐柏林飞艇作业在现有的Spark集群上运行---没有成功。

当我提交齐柏林飞艇工作(用于火花解释器)时,齐柏林飞艇会发射一个新的火花吊舱,并且只能与此火花吊舱配合使用。 Spark解释器设置就像应该的一样。设置了spark主网址(spark://\<master-url\>:\<master-port\>),也设置了主目录。

虽然这是一种甜蜜的行为,但这不是我想要的。

我想要的(以及我的问题是)是:我希望我的齐柏林飞艇吊舱将Spark作业提交到现有集群-而不启动新的吊舱。我很确定必须设置一些config/env/whatever,但我根本找不到。

所以,我想问:有没有人知道如何在现有的火花群集上运行齐柏林飞艇的火花作业?我以为设置火花大师应该做...

亲切的问候 鲍勃

1 个答案:

答案 0 :(得分:1)

已经有一段时间了.........

对于遇到相同问题的任何人:

  1. 进入Spark解释器设置

  2. (可选,如果尚未获得该属性),请按“编辑”,向下滚动并添加属性SPARK_SUBMIT_OPTIONS

  3. 编辑SPARK_SUBMIT_OPTIONS值并添加“ --master spark:// <您的SPARK MASTER的ENDPOINT>”

  4. 保存设置并完成...

这使我大吃一惊,因为已经有一个选项可以自行设置spark master。

两次解决了进入Spark Master的问题的解决方法。

  1. 在密钥“主”下
  2. 上述对SPARK_SUBMIT_OPTIONS的编辑。
相关问题