【发布时间】:2018-07-14 10:22:34
【问题描述】:
如何在 docker 中使用 Spark 2.2 运行 Zeppelin?
如果我在 docker 中启动 zeppelin,它是从 spark 2.1 开始的。
docker run -p 8080:8080 --rm --name zeppelin apache/zeppelin:0.7.3
我想用 2.2
我试过这个配置,它在 Windows 笔记本电脑上启动,但是当我在 Zeppeling Notebook 中运行命令 spark 时出错
master:
image: gettyimages/spark
command: bin/spark-class org.apache.spark.deploy.master.Master -h master
hostname: master
environment:
MASTER: spark://master:7077
SPARK_CONF_DIR: /conf
SPARK_PUBLIC_DNS: localhost
expose:
- 7001
- 7002
- 7003
- 7004
- 7005
- 7006
- 7077
- 6066
ports:
- 4040:4040
- 6066:6066
- 7077:7077
- 8080:8080
volumes:
- ./conf/master:/conf
- ./data:/tmp/data
zeppelin:
image: apache/zeppelin:0.7.3
environment:
ZEPPELIN_PORT: 8090
ZEPPELIN_JAVA_OPTS: >-
-Dspark.driver.memory=1g
-Dspark.executor.memory=2g
MASTER: local[*]
SPARK_MASTER: spark://master:7077
SPARK_HOME: master
ports:
- 8090:8090
volumes:
- ./data:/usr/zeppelin/data
- ./notebooks:/usr/zeppelin/notebook
但我得到错误
org.apache.zeppelin.interpreter.InterpreterException: /zeppelin/bin/interpreter.sh: line 211: master/bin/spark-submit: No such file or directory
【问题讨论】:
-
首先,尝试从配置中删除所有卷并再次运行它。它可能会有所帮助
-
我相当肯定你的
docker-compose.yml的最后两行是愚蠢的。会是哪一个?本地 Spark 或远程 Spark 集群。一行这样说,另一行这样说。除此之外,该 zeppelin 容器仅支持本地模式。您必须给它另一个 Spark 主页,才能使用远程 Spark 集群,请参阅its manual
标签: apache-spark docker docker-compose apache-zeppelin