需求:

  • 平台上提供 jupyter 环境给用户进行开发测试,并将环境生成镜像提供给跑训练任务时使用。
  • jupyter资源自动回收
#把前面的#去掉
c.NotebookApp.ip = '*'    #允许所有ip访问  补充:报错 No address associated with hostname可设置为:'0.0.0.0'
c.NotebookApp.open_browser = False    #不打开浏览器
c.NotebookApp.port = 8888             #端口为8888
c.NotebookApp.token = ''              #免密
#c.NotebookApp.base_url = '{base_url}'
#c.NotebookApp.shutdown_no_activity_timeout = 60 #1个小时 自动关闭jupyter
c.MappingKernelManager.cull_idle_timeout = 3600  #kernel超时关闭时间
c.TerminalManager.cull_inactive_timeout = 3600   #终端超时关闭时间
  • 快照

利用k8s api ,找到对应notebook pod 所在机器的 docker 镜像id, (参考
https://www.cnblogs.com/huhyoung/p/13652644.html)
通过dokcer tcp ,完成commit 及push操作

  • 自动快照

通过判断 notebook 是否活动 (终端活动状态,kernel活动状态),进行主动进行资源回收操作

  • 权限管理

利用 istio envoy fitler 拦截所有请求,进行用户身份认证,及鉴权操作。

Logo

K8S/Kubernetes社区为您提供最前沿的新闻资讯和知识内容

更多推荐