实战之通过Zeppelin部署在K8S上使用FlinkSQL(已在生产环境跑通版)

下载zeppelin-0.9.0-preview2-bin-all.tgz

截止到目前止,zeppelin官方并没有提供zeppelin-0.9.0-preview2的官方镜像,因此我们下载tar包
http://www-eu.apache.org/dist/zeppelin/zeppelin-0.9.0-preview2/zeppelin-0.9.0-preview2-bin-all.tgz

使用docker构建自定义Zeppelin镜像

为什么要自定义镜像呢?因为Zeppelin需要配置本地Flink Client,而官方Zeppelin镜像中是没有Flink Client的。从Flink官方镜像中拉去Flink

Dockerfile

FROM flink:1.11.1-scala_2.11 as flink

# base image
FROM 'JDK镜像,请用自己的替代,这个镜像必须设置好JAVA_HOME'

# 创建/data以及相关子目录 并赋予权限
RUN sudo mkdir -p /data/flink/          && \
    sudo mkdir -p /data/dependency/          && \
    sudo chown -R ${AppUser}:${AppGroup} /data

USER root

# copy binary
COPY --from=flink /opt/flink/ /data/flink
COPY ./zeppelin.tgz /data
RUN tar -zxvf /data/zeppelin.tgz && \
    mv /data/zeppelin-0.9.0-preview2-bin-all /data/zeppelin

# 将Zeppelin自定义的配置文件拷贝,覆盖tar包中的文件
COPY ./zeppelin/* /data/zeppelin/conf/
# 将Flink需要使用的第三方依赖拷贝到pod中
COPY ./lib/* /data/dependency/

RUN chown -R ${AppUser}:${AppGroup} .

USER 'XXX' 比如USER zhangsan
# copy dependency lib
RUN cp /data/flink/opt/flink-s3-fs-hadoop-*.jar /data/flink/lib/ && \
    cp /data/flink/plugins/metrics-prometheus/flink-metrics-prometheus-*.jar /data/flink/lib/ && \
    rm -rf /data/zeppelin/conf/*.template

RUN sudo chown -R ${AppUser}:${AppGroup} /data

# set workdir
WORKDIR /data
# 启动Zeppelin
CMD ["/bin/bash","-c","bash /data/zeppelin/bin/zeppelin-daemon.sh start"]

更多本文内容可以查看公众号:BeBetter4Me
在这里插入图片描述

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
<h3>回答1:</h3><br/>Zeppelin是一个开源的数据分析和可视化工具,可以连接多种数据源,包括Spark。要连接Spark,需要进行以下配置和使用步骤: 1. 在Zeppelin的主页上,点击“Create new note”创建一个新的笔记本。 2. 在笔记本中,点击“Interpreter binding”按钮,选择“spark”作为解释器。 3. 在“Interpreter setting”页面中,配置Spark的相关参数,包括Spark的主机名、端口号、应用名称等。 4. 点击“Save”保存配置,然后点击“Run”运行解释器。 5. 在笔记本中输入Spark的代码,例如: ``` val data = Seq(1, 2, 3, 4, 5) val rdd = sc.parallelize(data) rdd.collect() ``` 6. 点击“Run”运行代码,可以看到Spark的输出结果。 通过以上步骤,就可以在Zeppelin中连接和使用Spark了。需要注意的是,Zeppelin的版本和Spark的版本需要匹配,否则可能会出现兼容性问题。 <h3>回答2:</h3><br/>Zeppelin是一种使用方便的笔记本工具,它可以支持多语言,包括Scala、Python等,而且对于连接Spark来说非常友好。在Zeppelin与Spark之间,有两个连接选项可以使用使用本地模式连接或者使用远程模式连接。本地模式连接意味着Zeppelin与Spark运行在同一台机器上,而远程模式连接意味着Zeppelin与Spark运行在不同的机器上。 下面是使用Zeppelin连接Spark的步骤: 1. 首先,在Zeppelin中创建一个新的笔记本。 2. 接着,创建一个新的Spark interpreter。在Zeppelin首页的设置菜单中选择“Interpreter”,然后选择“Create”按钮。在弹出的界面中,填写相关信息(interpreter名称、Spark master URL等)后,选择“保存”按钮。 3. 启动interpreter。在Zeppelin中选择“Notebook”按钮,然后选择“Interpreters”按钮,接着在“Spark Interpreter”下面选择“start”按钮即可启动interpreter。 4. 配置Spark连接。如果使用本地模式连接,那么不需要其他操作。如果使用远程模式连接,需要在Zeppelin的配置文件中添加Spark的master URL。在Zeppelin的安装目录下找到conf目录中的zeppelin-site.xml文件,接着在其中添加: <property> <name>spark.master</name> <value>spark://your-spark-master-url:7077</value> </property> 上面的your-spark-master-url应该替换为实际的Spark master URL。 5. 测试Spark连接。在Zeppelin的笔记本中输入Spark相关的代码,例如: val data = Array(1, 2, 3, 4, 5) val distData = sc.parallelize(data) distData.map(x => x * x).collect().foreach(println) 接着执行代码,如果能够得到正确的结果,那么就说明Zeppelin与Spark已经连接成功了。 总之,Zeppelin与Spark的连接非常简单,只需要按照上面的步骤进行配置即可。使用Zeppelin可以方便地进行Spark相关的编程任务,而且支持多种语言,非常实用。 <h3>回答3:</h3><br/>Zeppelin 是一个开源的数据分析和可视化工具,提供了丰富的组件。其中,连接 Spark 可以让用户更加方便地利用 Zeppelin 的交互式笔记本功能来进行 Spark 的数据分析和处理。 一、配置 1. 安装 Spark 首先需要安装 Spark 并设置好环境变量,确保命令行中可以调用 Spark 相关命令。同时,需要设置 Spark 依赖的 Hadoop 和 Hive 环境。 2. 配置 Zeppelin Interpreter 进入 Zeppelin 配置页面,点击 Interpreter 选项卡。找到 spark 相关的 Interpreter,设置为以下参数: - master:设置为本地或集群的 Spark 主节点 URL; - deploy.mode:设置为 client 或 cluster,表示在本地还是在集群环境中运行; - executor.memory:设置每个 executor 的内存大小; - Num executors:设置 executor 的数量。 保存设置,重新启动 Zeppelin。 二、使用 1. 创建 Notebook 在 Zeppelin 主界面中创建一个新的 Notebook,选择与 Spark 相关的 Interpreter。创建 Notebook 后,会自动在页面中显示 Spark 的版本和相关信息,说明连接 Spark 成功。 2. 编写代码 在 Notebook 中,可以使用 Scala、Python 或 SQL 等语言编写 Spark 相关代码。Zeppelin 会自动将代码解析并显示在界面中,供用户查看和交互。用户可以在代码中使用 Spark 相关的 API,完成数据分析和处理任务,并将结果显示在界面中进行可视化。 3. 运行代码和查看结果 用户可以使用 Shift+Enter 快捷键或点击运行按钮来运行代码。运行结束后,可以在页面下方查看代码执行的结果和输出。如果有可视化图表,会自动显示在页面中。用户还可以进行进一步的分析和操作,以及保存 Notebook 和结果。 总之,连接 Spark 可以让 Zeppelin 更加方便地进行数据分析和可视化。用户可以利用 Zeppelin 提供的丰富功能和灵活性,快速完成数据分析任务并生成可视化报告。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Better~Me

谢谢小可爱,希望你每天都开心~

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值