knowhow:slurm:ejemplo_workflow_jupyternb

Página visible a externos sin autenticación

Tutorial — Ejecutar Jupyter en Slurm mediante sbatch

Este documento describe paso a paso cómo lanzar un servidor Jupyter en un nodo de cómputo usando Slurm, obtener la URL de conexión, conectarse desde navegador o VS Code hasta comprobar que el kernel utiliza el entorno virtual correcto.

Envía el script sbatch:

 sbatch jupyter.sbatch 

Comprueba el identificador del job:

 squeue -u $USER 

El job creará un directorio persistente similar a:

 /slurm/home/<usuario>/output/<JOBID>/Output 

Dentro encontrarás los archivos importantes:

CONNECT.txt → instrucciones de conexión

JUPYTER_URL.txt → URL con token (si ya fue detectada)

jupyter.log → salida completa del servidor Jupyter

Consultar URL automáticamente detectada:

 cat /slurm/home/$USER/output/<JOBID>/Output/JUPYTER_URL.txt 

Consultar instrucciones de conexión:

 cat /slurm/home/$USER/output/<JOBID>/Output/CONNECT.txt 

Consultar directamente el log del servidor:

 cat /slurm/home/$USER/output/<JOBID>/Output/jupyter.log 

La salida contendrá una línea similar a:

 http://slurm-cpu01:9593/?token=<TOKEN> 

Abrir el notebook en VS Code

Seleccionar el kernel

Elegir Select Another Kernel…

Seleccionar Existing Jupyter Server…

Pegar la URL completa obtenida anteriormente

Ejemplo:

 http://<ip_nodo>:<PORT>/?token=<TOKEN> 

VS Code quedará conectado al servidor Jupyter que corre dentro del job de Slurm.

El job crea un entorno virtual dentro del scratch del nodo:

 /scratch/slurm/<usuario>/<JOBID>/tmp/jupyter-<JOBID>/.venv 

Además registra un kernel de Jupyter asociado a ese entorno.

Una vez conectado al servidor Jupyter:

Abrir el selector de kernel del notebook

Elegir el kernel registrado por el job

Esto hace que las celdas se ejecuten dentro del entorno virtual creado en el nodo y no en el Python local.

Dentro del notebook ejecuta la celda de comprobación incluida en la plantilla.

El resultado esperado debe confirmar que el kernel utiliza el entorno virtual:

 Venv check: OK (kernel is using the selected venv). 

Si aparece ese mensaje, el notebook está ejecutándose dentro del entorno creado por el job de Slurm.

En una primera etapa de desarrollo utilizamos Jupyter Notebook comenzando con la plantilla dada en gitlab como se ha representado anteriormente, añades celdas y generas tus .py en caso de necesitar cómputo con output, una vez hecho esto se utilizará otra plantilla también alojada en gitlab para de forma efectiva se cree otro sbatch de quizá duración ampliada o recursos ampliados.

  • knowhow/slurm/ejemplo_workflow_jupyternb.txt
  • Última modificación: 2026/05/20 15:35
  • por lbernal