Diferencias
Muestra las diferencias entre dos versiones de la página.
| Ambos lados, revisión anterior Revisión previa | |||
| knowhow:slurm:ejemplo_workflow_jupyternb [2026/05/20 15:35] – borrado - editor externo (Fecha desconocida) 127.0.0.1 | knowhow:slurm:ejemplo_workflow_jupyternb [2026/05/20 15:35] (actual) – ↷ Página movida de servicios:slurm:ejemplo_workflow_jupyternb a knowhow:slurm:ejemplo_workflow_jupyternb lbernal | ||
|---|---|---|---|
| Línea 1: | Línea 1: | ||
| + | <WRAP center round important 60%> 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. | ||
| + | |||
| + | ===== 1) Enviar el job y localizar los archivos de salida ===== | ||
| + | |||
| + | Envía el script sbatch: | ||
| + | |||
| + | <code bash> sbatch jupyter.sbatch </ | ||
| + | |||
| + | Comprueba el identificador del job: | ||
| + | |||
| + | <code bash> squeue -u $USER </ | ||
| + | |||
| + | El job creará un directorio persistente similar a: | ||
| + | |||
| + | < | ||
| + | |||
| + | 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: | ||
| + | |||
| + | <code bash> cat / | ||
| + | |||
| + | Consultar instrucciones de conexión: | ||
| + | |||
| + | <code bash> cat / | ||
| + | |||
| + | Consultar directamente el log del servidor: | ||
| + | |||
| + | <code bash> cat / | ||
| + | |||
| + | La salida contendrá una línea similar a: | ||
| + | |||
| + | < | ||
| + | |||
| + | {{: | ||
| + | |||
| + | ===== 2) Abrir desde VS Code usando servidor Jupyter existente ===== | ||
| + | |||
| + | Abrir el notebook en VS Code | ||
| + | |||
| + | Seleccionar el kernel | ||
| + | |||
| + | {{: | ||
| + | |||
| + | Elegir '' | ||
| + | |||
| + | {{: | ||
| + | |||
| + | Seleccionar '' | ||
| + | |||
| + | {{: | ||
| + | |||
| + | Pegar la URL completa obtenida anteriormente | ||
| + | |||
| + | {{: | ||
| + | |||
| + | Ejemplo: | ||
| + | |||
| + | < | ||
| + | |||
| + | VS Code quedará conectado al servidor Jupyter que corre dentro del job de Slurm. | ||
| + | |||
| + | {{: | ||
| + | |||
| + | ===== 3) Usar el kernel registrado del entorno virtual del job ===== | ||
| + | |||
| + | El job crea un entorno virtual dentro del scratch del nodo: | ||
| + | |||
| + | < | ||
| + | |||
| + | 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. | ||
| + | |||
| + | ===== 4) Verificar que el notebook usa el entorno correcto ===== | ||
| + | |||
| + | 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: | ||
| + | |||
| + | < | ||
| + | |||
| + | Si aparece ese mensaje, el notebook está ejecutándose dentro del entorno creado por el job de Slurm. | ||
| + | |||
| + | ===== 5) Workflow esperado ===== | ||
| + | |||
| + | En una primera etapa de desarrollo utilizamos Jupyter Notebook comenzando con la plantilla dada en gitlab como se ha representado anteriormente, | ||