2015-03-13 4 views

ответ

4

IPython использовать ядро ​​представляет собой файл в ~/.ipython/kernel/<name>, которые описывают, как запустить ядро. Если вы создаете свое собственное ядро ​​(удаленное или другое), вам нужно, чтобы программа запускала удаленное ядро ​​и привязывалась локально к порту, ожидаемому от ноутбука.

+0

Есть ли фундаментальная причина, по которой ядро ​​должно связываться локально, или возможно, что мы когда-нибудь увидим поддержку ядра для удаленных ядер, которые привязаны к удаленным портам? –

+0

Существующие ядра ограничены тем, что может сделать ZMQ. ZMQ уже может делать remo host, хотя это не рекомендуется; по соображениям безопасности вы, вероятно, должны переносить соединение в другой протокол, если сети не доверяют. – Matt

17

Ноутбук IPython разговаривает с ядрами по предопределенным портам. Чтобы поговорить с удаленным ядром, вам просто нужно перенаправить порты на удаленный компьютер в качестве части инициализации ядра, ноутбуку все равно, где ядро ​​до тех пор, пока оно может поговорить с ним.

Вы можете либо создать сценарий оболочки, который вызывается в файле ядра спецификации (https://ipython.org/ipython-doc/dev/development/kernels.html#kernel-specs) или использовать модуль, который может помочь вам настроить и управлять различными видами удаленных ядер: (pip install remote_ikernel; https://bitbucket.org/tdaff/remote_ikernel).

Если вы используете remote_ikernel, и есть SSH доступ к машине, следующая команда будет создана запись в раскрывающемся списке:

remote_ikernel manage --add \ 
    --kernel_cmd="ipython kernel -f {connection_file}" \ 
    --name="Remote Python" --interface=ssh \ 
    --host=my_remote_machine 
+0

Что такое 'connection_file', который должен быть здесь? Файл kernel-XXXX.json, который создается на удаленном компьютере с соответствующей информацией о порте? А что такое 'my_remote_machine'? – user5359531

+0

@ user5359531 вам не нужно менять 'connection_file', то есть часть команды, запускающей ядро. Замените 'my_remote_machine' имя хоста машины, на которое вы отправили ssh. – tdaff

+0

Очень хороший инструмент! Спасибо! – marscher

3

Дистанционное jupyter ядро ​​/ ядра администрирования утилита (гк) : https://github.com/korniichuk/rk

  1. Install the rk from GitHub:

    $ Sudo пип установить GIT + GIT: // ГИ thub.com/korniichuk/rk#egg=rk

  2. Setup SSH for auto login without a password:

    $ гк SSH

  3. Install a template of a remote jupyter kernel:

    $ гк установить-шаблон

  4. kernel.json Изменение файла :

    $ sudo gedit/usr/local/share/jupyter/ядра /template/kernel.json

, например, от [email protected]_host к [email protected].

Нажмите: Quickstart and YouTube video (less than 3 min).

+0

Это не работает для меня :( – theotheo