通过ssh隧道将spyder连接到远程内核

时间:2019-05-28 23:50:31

标签: spyder remote-server ssh-tunnel

我正在尝试将在local_machine(macOS)上运行的spyder连接到在compute_server(集群的计算节点)上运行的远程内核。无法通过Internet直接访问计算节点,我只能通过login_server访问群集。

我尝试以下操作:

  1. 在compute_server上,我这样做:
      

    python -m spyder_kernels.console

要将另一个客户端连接到此内核,请使用:     --existing kernel-20351.json

我将此json文件复制到local_machine的适当位置。它包含以下文本:  “ shell_port”:46540,   “ iopub_port”:39268,   “ stdin_port”:40704,   “ control_port”:42637,   “ hb_port”:46887,

  1. 我通过login_server创建ssh隧道。在local_machine上,我这样做:

ssh -L46540:compute_server:46540 -L39268:compute_server:39268 -L40704:compute_server:40704 -L42637:compute_server:42637 -L46887:compute_server:46887 me @ login_server

  1. 我在local_machine上启动spyder,要求它连接到现有内核,输入json文件的名称,选中“这是一个远程内核”框,输入me @ login_server作为主机名。我已经设置了用于登录login_server的ssh密钥。

连接挂起。如果我在login_server上启动spyder内核并省略步骤2,那么它可以正常工作,但是我无法在login_server上进行大量计算,因此我必须在compute_server上工作。

有什么想法吗?

0 个答案:

没有答案