从python代码连接到远程python内核

2024-04-25 09:00:54 发布

您现在位置:Python中文网/ 问答频道 /正文

我一直在使用PaperMill定期执行我的python笔记本。要执行计算密集型笔记本,我需要连接到EMR集群中运行的远程内核

对于Jupyter笔记本,我可以通过使用jupyter notebook --gateway-url=http://my-gateway-server:8888启动Jupyter服务器来实现这一点,并且我能够在远程内核上执行我的代码。但是如何让本地python代码(通过造纸机)使用远程内核呢?在内核管理器中进行哪些更改以连接到远程内核

我能找到的一个相关答案是here。这建议将端口转发到远程服务器,并使用来自服务器的连接文件初始化KernelManager。我无法做到这一点,因为blockingkernelmanager不再在Ipython.zmp中,我也希望像jupyter那样使用HTTP连接


Tags: 代码服务器httpurl远程集群笔记本jupyter
1条回答
网友
1楼 · 发布于 2024-04-25 09:00:54

黑客方法-设置shell脚本以执行以下操作:

  1. 使用hadoop用户在EMR主节点上创建python环境
  2. 在您的环境中安装sparkmagic,并按照sparkmagic的README.md文件中所述配置所有内核
  3. 将笔记本复制到主节点/直接从s3位置使用它
  4. 与造纸厂合作:

    造纸机s3://path/to/notebook/input.ipynb s3://path/to/notebook/output.ipynb-p param=1

如果集群主节点每次都相同,则步骤1和2是一次性要求

稍微好一点的方法:

  1. 在Jupyter本身中设置远程内核:REMOTE KERNEL
  2. 通过选择此远程内核,将造纸机作为普通笔记本执行

我在不同的用例中使用了这两种方法,目前它们似乎工作得很好

相关问题 更多 >

    热门问题