Apache Zeppelin 是一个支持 20 多种语言 Notebook 的后端,可以用于数据摄入、发现、转换及分析,也能够实现数据的可视化,如饼图、柱状图、折线图等。典型使用场景是通过开发 Zeppelin 的代码片段或者 SQL,通过提交到后端实现实时交互,并通过编写 Notebook 的 Paragraph 集合,借助调度系统实现定时调度任务。参考文档:火山引擎基于 Zeppelin 的 Flink/Spark 云原生实践。
serverless.spark.region=cn-beijing serverless.spark.endpoint=https://open.volcengineapi.com serverless.spark.service=emr_serverless serverless.cross.vpc.driver.only.enabled=true las.cross.vpc.access.enabled=true spark.kubernetes.container.image=emr-serverless-online-cn-beijing.cr.volces.com/emr-serverless-spark/spark:3.5.1-py3.12-ubuntu20.04-325-zeppelin-614 spark.kubernetes.driverEnv.ZEPPELIN_HOME=/opt/zeppelin spark.executorEnv.ZEPPELIN_HOME=/opt/zeppelin serverless.spark.access.key=您的AK serverless.spark.secret.key=您的SK serverless.spark.tos.bucket=您的bucket las.cross.vpc.vpc.id=您的VPC id las.cross.vpc.subnet.id=您的子网id las.cross.vpc.security.group.id=您的ECS安全组Id
参数 | 简介 | 备注 |
---|---|---|
serverless.spark.access.key | 您的账号 Access Key | — |
serverless.spark.secret.key | 您的账号 Secret Key | — |
serverless.spark.tos.bucket | 您的火山tos桶名称,提交作业时,会将您本地的一些jar包,传到您的tos桶中,用于Spark任务执行 | — |
las.cross.vpc.vpc.id | 您的ECS 所在的VPC id,例如vpc-rrhkcgcixu68v0x590w4a5i | 火山EMR Serverless Spark会基于您的vpc和子网,自动在Spark任务里挂载一块辅助网卡,用于Zeppelin Server 和 Spark Driver间网络互相访问 |
las.cross.vpc.subnet.id | ECS 所在VPC 下的的子网id,例如subnet-rr7f617f7w1sv0x593r2cu7 | — |
las.cross.vpc.security.group.id | ECS 所在VPC下的安全组id,例如sg-rrhkcm9ma03kv0x58p8ssnj,一般与您ECS的安全组一致即可 | — |
# 下载 wget https://downloads.apache.org/zeppelin/zeppelin-0.12.0/zeppelin-0.12.0-bin-all.tgz tar -zxvf zeppelin-0.12.0-bin-all.tgz # 设置环境变量 vim /etc/profile # 在文件末尾添加以下内容(路径需与实际安装目录一致) export ZEPPELIN_HOME=/usr/local/zeppelin-0.12.0-bin-all export PATH=$PATH:$ZEPPELIN_HOME/bin # 使配置生效 source /etc/profile
vim ${ZEPPELIN_HOME}/bin/interpreter.sh # 在174行,if [[ -n "${SPARK_HOME}" ]]; then 左右添加一段代码: if [[ -n "${SPARK_HOME}" ]]; then export SPARK_SUBMIT="${SPARK_HOME}/bin/spark-submit" export SPARK_SUBMIT_OPTIONS="--jars tos://emr-serverless-spark/spark/shared-lib/zeppelin/zeppelin-interpreter-shaded-0.11.1.jar,tos://emr-serverless-spark/spark/shared-lib/zeppelin/spark-scala-2.12-0.11.1.jar" export SPARK_CONF_DIR="${SPARK_HOME}/conf" SPARK_APP_JAR="tos://emr-serverless-spark/spark/shared-lib/zeppelin/spark-interpreter-0.11.1.jar"
cp ${ZEPPELIN_HOME}/conf/zeppelin-site.xml.template ${ZEPPELIN_HOME}/conf/zeppelin-site.xml vim ${ZEPPELIN_HOME}/conf/zeppelin-site.xml # zeppelin.server.addr 改成 0.0.0.0;开放访问zeppelin ui
sh ${ZEPPELIN_HOME}/bin/zeppelin-daemon.sh restart
配置项 | 修改点 |
---|---|
| 值设置为 |
| 该配置项存在则删除,如无则忽略 |
| 该配置项存在则删除,如无则忽略 |
| 提交的队列,默认是公共队列 |
读本地文件。
读tos文件。
说明
需要镜像里安装:numpy、pandas、bokeh。
线性回归正常。
正常
pyspark 安装。
!pip3 install scipy
Python 安装。
pip3 install scipy
示例