You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何通过VS Code维护并版本控制Zeppelin Notebooks?

可以用VS Code维护Zeppelin Notebook并实现版本控制,以下是具体配置步骤

一、打通本地到Zeppelin服务的访问通道(结合Kubernetes环境)

由于你的Zeppelin运行在K8s Pod中且需通过SSH隧道访问,分两步建立本地映射:

  1. K8s端口转发:先将Zeppelin Pod的端口映射到集群节点或本地(若能直接访问K8s集群):
    kubectl port-forward <zeppelin-pod-name> 8080:8080 --namespace <your-namespace>
    
    执行后,集群内的localhost:8080将对应Zeppelin服务端口。
  2. SSH隧道转发:若需通过公司跳板机访问K8s集群,再建立SSH隧道把本地端口映射到K8s端口转发地址:
    ssh -L 8080:<k8s-node-ip>:8080 <jump-host-username>@<jump-host-ip>
    
    完成后,本地http://localhost:8080即可直接访问Zeppelin服务。

二、VS Code配置Zeppelin插件

  1. 在VS Code扩展市场搜索并安装Apache Zeppelin插件(社区维护的官方兼容插件)。
  2. 配置插件连接:
    • 打开VS Code设置(快捷键Ctrl+,),搜索Zeppelin。
    • 设置Zeppelin: Url为http://localhost:8080。
    • 若Zeppelin开启认证,填写Zeppelin: Username和Zeppelin: Password,或在Zeppelin页面个人设置中生成API Token后,设置Zeppelin: Token。

三、代码维护与版本控制实现

1. 同步Notebook到本地

  • 插件操作:在插件侧边栏找到目标Notebook,右键选择Export Notebook,保存到本地Git仓库目录(建议单独创建目录存放Notebook文件)。
  • 批量导出可选API方式:替换<note-id>为你的Notebook ID(从Zeppelin浏览器地址栏获取),执行:
    curl -X GET http://localhost:8080/api/notebook/<note-id>/export > my-notebook.json
    

2. 本地修改与版本控制

  • 在VS Code中打开导出的JSON格式Notebook文件,直接修改代码单元格内容(注意不要误改元数据字段)。
  • 利用VS Code自带Git功能:初始化本地仓库、提交修改、推送到远程仓库,完成版本控制。
  • 优化建议:若不想将Zeppelin元数据(如执行结果、单元格状态)纳入版本控制,可编写简单脚本提取JSON中paragraphs[].text字段,保存为.py/.sql等纯代码文件,仅提交这些文件到Git。

3. 同步修改回Zeppelin

  • 插件操作:在插件侧边栏右键选择Import Notebook,选择本地修改后的JSON文件,覆盖原Notebook或创建新Notebook。
  • API方式同步:
    curl -X POST http://localhost:8080/api/notebook/import -d @my-notebook.json -H "Content-Type: application/json"
    

四、注意事项

  • 确认Zeppelin的REST API处于启用状态(默认启用,可在zeppelin-site.xml配置文件中检查zeppelin.server.addr和zeppelin.server.port配置)。
  • 若公司有严格网络策略,需确认SSH隧道和K8s端口转发的权限是否允许。
  • 定期同步本地文件与Zeppelin服务,避免多人编辑导致冲突。

内容的提问来源于stack exchange,提问作者Joana Salvado

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.26 07:16:16