解决服务器不能直连GPU节点,运行jupyter文件的问题
问题描述:我是在VScode中通过ssh连接到我的服务器中,服务器有mu02和c01n04两个节点,默认ssh连接到mu02节点,因为c01n04不能联网,只能通过本地连接ssh mu02节点,然后在这个节点中,使用ssh c01n04跳转到有GPU的节点
我希望在VS Code中通过SSH连接到mu02节点后,跳转到c01n04节点,并在VS Code中使用c01n04节点的环境运行Jupyter Notebook文件
你可以使用不同的本地端口进行转发。例如,可以尝试使用本地端口8889来进行转发:
更改端口转发命令:
在mu02节点上执行以下命令,将c01n04节点的Jupyter端口转发到本地的8889端口:1
ssh -L 8889:localhost:8888 c01n04
在c01n04节点上启动Jupyter Notebook:
确保在c01n04节点上启动Jupyter Notebook,并记下启动后的URL(包含token):1
jupyter notebook --no-browser --port=8888
在VS Code中配置Jupyter Server:
在VS Code中打开命令面板(Ctrl+Shift+P或Cmd+Shift+P),搜索并选择“Jupyter: Specify Jupyter server for Connections”,中文表示:指定本地或远程jupyter服务器的连接。然后输入以下URL(假设Jupyter Notebook在8889端口启动,并且token为your_token):1
http://localhost:8889/?token=your_token
选择c01n04节点上的Jupyter Kernel:
在VS Code中打开你的.ipynb文件,并选择使用c01n04节点上的Jupyter Kernel:- 点击.ipynb文件中的内核选择器(通常显示为“Python 3”或当前内核名称)。
- 选择“Python (GPU)”内核(或你配置的其他带有GPU支持的内核)。
如果本地的8889端口仍然被占用,可以尝试其他未被占用的端口(例如,8890、8891等),直到找到可用的端口为止。