Spyder
(→Conectar sesión de Spyder local a un núcleo remoto en servidor:) |
(→Conectar sesión de Spyder local a un núcleo remoto en servidor:) |
||
Línea 1: | Línea 1: | ||
== Conectar sesión de Spyder local a un núcleo remoto en servidor: == |
== Conectar sesión de Spyder local a un núcleo remoto en servidor: == |
||
− | Spyder trae la funcionalidad de poder conectar una sesión corriendo en una máquina local con un núcleo de cálculo que está corriendo en una máquina remota. De esta forma se pueden aprovechar los datos y capacidad de cálculo de un servidor evitando el "lag" o retraso de la interfaz gráfica. Es necesario tener instalado el paquete spyder_kernels. Los pasos para conectar Spyder son: |
+ | Spyder trae la funcionalidad de poder conectar una sesión corriendo en una máquina local con un núcleo de cálculo que está corriendo en una máquina remota. De esta forma se pueden aprovechar los datos y capacidad de cálculo de un servidor evitando el "lag" o retraso de la interfaz gráfica. Es necesario tener instalado Spyder en el servidor remoto. Los pasos para conectar Spyder son: |
1) Entrar al servidor vía terminal e iniciar un kernel con el siguiente comando: |
1) Entrar al servidor vía terminal e iniciar un kernel con el siguiente comando: |
Revisión de 15:14 14 mayo 2021
Conectar sesión de Spyder local a un núcleo remoto en servidor:
Spyder trae la funcionalidad de poder conectar una sesión corriendo en una máquina local con un núcleo de cálculo que está corriendo en una máquina remota. De esta forma se pueden aprovechar los datos y capacidad de cálculo de un servidor evitando el "lag" o retraso de la interfaz gráfica. Es necesario tener instalado Spyder en el servidor remoto. Los pasos para conectar Spyder son:
1) Entrar al servidor vía terminal e iniciar un kernel con el siguiente comando:
nohup python -m spyder_kernels.console -matplotlib='inline' -f=./remotemachine.json &
La opción "-f" indica dónde guardar este archivo que vamos a necesitar. En este ejemplo se guarda en la carpeta actual, usted puede modificarlo y guardarlo donde desee.
2) Copiar el archivo remotemachine.json a su computadora local.
3) Abrir una terminal y correr el comando:
ssh -L 6000:SERVIDOR:22 USUARIO@portal.cima.fcen.uba.ar
Cambiar SERVIDOR por el nombre del servidor al que desea conectarse y USUARIO por su usuario de la redCIMA. Se puede poner cualquier puerto en lugar de 6000 si ya está ocupado en otra cosa.
4) Abrir otra terminal de bash y correr el comando:
ssh -p 6000 USUARIO@localhost
Nuevamente, reemplazar USUARIO por su usuario de la redCIMA.
5) Abrir Spyder en su máquina local e ir a las opciones arriba a la derecha de la terminal IPython (menú desplegable ícono ≡ o engranaje), clic en “conectarse a un núcleo existente”. En “archivo de conexión” seleccionar el archivo .json que trajimos del servidor. Tildar “este es un núcleo remoto” y completar estas opciones:
servidor: localhost
puerto: 6000
Completar su nombre de usuario y contraseña de la redCIMA.
Aceptar y ya estará conectado al núcleo remoto. Recuerde no cerrar las terminales o se cortará la conexión.
Una vez que finalice de trabajar cierre Spyder y cierre el núcleo remoto desde otra terminal, no desde la misma en la que está corriendo, por ejemplo con los comandos kill o killall o desde htop.
Si su máquina local corre en Windows 10 usted puede descargarse de la tienda de aplicaciones de Windows la app "Ubuntu" y de esta forma tener una terminal de bash como si estuviera en Linux.
Autor: Julián Giles julian.giles@cima.fcen.uba.ar