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

Vertex AI用户托管Notebook启动时重新暴露已有环境内核

解决方案与问题解答

问题(1):持久化内核图标的核心策略

你的推测正确——Vertex AI用户托管Notebook的启动盘是临时的,实例重启后会重置,而内核配置默认存储在启动盘的用户目录(如~/.local/share/jupyter/kernels)中,所以重启后消失。有两种可靠解决思路:

思路1:将内核配置目录迁移到数据盘

修改Jupyter配置,让它从数据盘读取内核配置,内核注册一次即可永久生效:

  1. 在数据盘创建持久化内核目录:
    mkdir -p /home/jupyter/envs/jupyter_kernels
    chown jupyter:jupyter /home/jupyter/envs/jupyter_kernels
    
  2. 生成Jupyter配置文件(若不存在):
    su - jupyter -c "jupyter lab --generate-config"
    
  3. 编辑/home/jupyter/.jupyter/jupyter_lab_config.py,添加配置:
    c.KernelSpecManager.kernel_spec_dirs = ['/home/jupyter/envs/jupyter_kernels']
    
  4. 后续注册内核时指定该目录:
    /home/jupyter/envs/${envName}/bin/python3 -m ipykernel install --prefix=/home/jupyter/envs/jupyter_kernels --name $envName
    

思路2:每次启动自动重新注册内核到Jupyter用户目录

若不想修改Jupyter配置,需确保启动脚本将内核注册到jupyter用户的内核目录(而非root)——因为Vertex AI的Jupyter服务以jupyter用户运行,无法读取root目录下的内核配置:

  • 修改exposeKernel.sh中的ipykernel命令:
    /home/jupyter/envs/${envName}/bin/python3 -m ipykernel install --prefix=/home/jupyter/.local --name $envName
    
  • 启动脚本中用jupyter用户执行脚本:
    su - jupyter -c '/home/jupyter/logs/exposeKernel.sh'
    
    (之前jupyter用户执行失败大概率是权限问题,先确保目录权限正确:chown -R jupyter:jupyter /home/jupyter/envs /home/jupyter/logs)

问题(2):启动脚本执行无效的原因

核心原因有三点:

  1. 内核注册路径错误:之前用root用户注册到/root/.local,但Jupyter服务以jupyter用户运行,无法访问root的个人目录,所以即使日志显示成功,Jupyter看不到这些内核。
  2. 执行时机与服务状态:启动脚本可能在Jupyter服务启动后执行,此时Jupyter已加载内核列表,不会自动刷新。需在注册内核后重启服务:
    在exposeKernel.sh末尾添加:
    su - jupyter -c "systemctl restart jupyter-server"
    
    (不同镜像服务名可能不同,可用systemctl list-units | grep jupyter确认)
  3. 环境变量差异:系统启动时执行的脚本环境变量与手动终端执行不同,su - jupyter会加载jupyter用户的完整环境变量,确保ipykernel命令能正确找到依赖。

问题(3):启动脚本执行时机的理解

你的理解完全正确:

  • post-startup-script仅在Notebook实例首次创建时执行一次,适合初始化配置(如安装基础依赖)。
  • startup-script或startup-script-url在**每次实例启动(包括重启)**时执行,适合每次启动都需要运行的操作(如重新注册内核、同步配置)。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.07 11:20:34