使用登陆节点在GPU服务器中搭建Jupyter Notebook
之前获得了一些计算资源,本来是一直用的slurm节点上的卡,只能用提交作业的方式直接运行.py
文件,很难用notebook。一直想试着在上面开个jupyter但是好像并不行。主要原因还是在于不能ssh登录。
最近偶然发现原来还有GPU服务器资源,虽然不多而且很多人用,但还是试着给开了个JupyterLab。
同时因为一些原因下面我都额外指定了用zsh作为shell而不用bash(好吧是因为我不想被记录历史指令,正好zsh没开历史指令)
首先在登录节点上使用tmux
,不然ssh连接会因为一些原因断掉而让服务器中的Jupyter进程直接断掉
1 | tmux new-session /bin/zsh \; set default-shell /bin/zsh |
然后登上服务器
1 | ssh -t [your gpuserver name] "zsh" |
切换conda
环境并打开jupyter
--no-browser
是不使用浏览器,--port
是你选的对外的端口,选个没在用的就好,--ContentsManager.allow_hidden=True
用来设置
1 | jupyter notebook --no-browser --port=63750 --ContentsManager.allow_hidden=True |
这时在窗口上应该会显示开启了jupyter的显示,和在本机开启时一样。
然后在本地开个shell,输入
1 | ssh -t -t [login node address] "zsh" -L 63750:localhost:63750 ssh [gpu server address] "zsh" -L 63750:localhost:63750 |
其中每个63750都是自己设置的转发端口,第一个转发是登录节点到本机的转发,后一个是GPU服务器到登录节点的转发