Jupyter Notebook
Instalación de Jupyter mediante Anaconda
El siguiente script genera una instalación limpia de Miniconda3 y Jupyter Notebook. Copiar y pegar el siguiente script sbatch en un archivo llamado instalajupyter.sbatch en su directorio home.
#!/bin/bash
#SBATCH --job-name=instalajupyter
#SBATCH --ntasks=1
#SBATCH --cpus-per-task=1
#SBATCH --mem=8G
#SBATCH --time=1:00:00
#SBATCH --partition=normal
#SBATCH --qos=normal
#SBATCH --output=install_jupyter.out
wget https://repo.anaconda.com/miniconda/Miniconda3-latest-Linux-x86_64.sh
#instala miniconda
sh Miniconda3-latest-Linux-x86_64.sh -b -u
#carga el env
source /clusteruy/home/$USER/miniconda3/bin/activate
#instala jupyter
pip install jupyter
echo "Finalizó la instalación de Jupyter"
ejecutar el script con:
sbatch instalajupyter.sbatch
Esperar que concluya la instalación, puede demorar cierto tiempo.
Para saber cuándo concluye se puede ejecutar:
watch tail install_jupyter.out
Iniciar servidor Jupyter y creación del túnel ssh.
Conectarse a cluster.uy normalmente
ssh cluster.uy
Crear un archivo llamado servidorjupyter.sh ubicado en su home de cluster. Puede hacerlo utilizando vim.
vim servidorjupyter.sh
y pegar el siguiente script en él.
#!/bin/bash
source /clusteruy/home/$USER/miniconda3/bin/activate
echo "COPIE PEGUE Y EJECUTE LO SIGUIENTE EN SU CONSOLA BASH LOCAL, SE GENERARÁ EL TUNEL SSH PARA REALIZAR LA CONEXIÓN CON EL SERVIDOR JUPYTER"
echo "------------------------------------------------------------"
echo "ssh -L 8000:$SLURM_NODELIST.datos.cluster.uy:8000 $USER@cluster.uy"
echo "------------------------------------------------------------"
echo "Luego abra link que aparece a continuación (el que empieza con la IP 127.0.0.1) con el navegador web de su preferencia."
jupyter-notebook --no-browser --port=8000 --ip=0.0.0.0
Solicitar un trabajo interactivo con los parámetros que uno quiera. Por ejemplo:
srun -p normal -c 1 --time=01:00:00 --ntasks=1 --pty bash -c "sh servidorjupyter.sh; exec bash"
para solicitar un procesador solo, el parámetro --time= indica que el trabajo durará una hora, por eso el usuario debe considerar cuánto tiempo utilizará la notebook al solicitar el trabajo. Luego debe seguir los pasos que se indican em consola para generar el tunel ssh.
si quiere solicitar un trabajo con una gpu
srun -p normal -c 1 --time=01:00:00 --ntasks=1 --qos=gpu --gres=gpu:1 --pty bash -c "sh servidorjupyter.sh; exec bash"
Luego de que se asigne el trabajo, siga las instrucciones que aparecen en pantalla para generar el tunel ssh. Recuerde que puede abrir una consola desde la notebook de jupyter en el botón “New”-> “Terminal” y utilizarla para instalar algún paquete de python faltante.