Jupyter et Notebooks
Vous pouvez connecter un notebook jupyter (julia, python, R…) ou jupyterlab entre votre machine personnelle et un nœud de calcul. À titre de test, un environnement basique de jupyter (jupyter, python3.10, matplotlib, pandas, numpy) a été mis en place pour tous .
L’usage de notebook jupyter sur la plateforme est à envisager avec parcimonie (tests «raisonnables», en tout cas après avoir observé la charge de la plateforme de calcul). En tant que session interactive, il s’agit en effet d’une mobilisation non optimale de ressources qui attend vos actions de clavier: éditions, exécution de cellules etc. Toutefois, il est possible de lancer des notebooks «conséquents» en mode batch (cf. la fin de ce tutoriel).
1. procédure courte
Lancer un notebook se fait en deux étapes:
- lancer un jupyter notebook/jupyter-lab sur un nœuds de calcul,
- ouvrir un tunnel ssh entre votre PC local et entrer le lien du notebook sur votre navigateur.
Depuis ritchie:
Sur votre PC personnel (Mac, Linux), activer le transfert du port du notebook comme suit:
ou plus simplement et sans mot de passe si vous avez suivi les méthodes (clés & .ssh/config) indiquées: ici
copier/ coller l’URL obtenue à l’étape un dans votre navigateur : c’est fini! (…bon calculs!)
Note (Windows) : à partir de windows v>10, vous pouvez utiliser le client ssh interne , ou WSL ou encore, quelque soit la version de windows: bitvise.
2. configuration de jupyterlab (facultatif)
Quelques simplifications/astuces sont possibles en utilisant le(s) fichier(s) de configuration de jupyter. Une fois connecté sur un nœud de calcul et l’environnement jupyter chargé:
Cette commande crée votre fichier personnel ~/.jupyter/jupyter_server_config.py.
Éditer ce fichier ou taper les 3 commandes suivantes:
Facultatif: changer le port par défaut (8888)
Avec cette configuration, le lancement du notebook se réduit à:
Se connecter par mot de passe:
Pour s’affranchir du copier/coller du token, une fois jupyter-lab lancé sur votre PC personnel: se déconnecter du notebook via le menu ‘File > Log out’ et suivre les instructions de la nouvelle page qui s’affiche, à savoir:
- renseigner comme indiqué (une dernière fois!) le token et le mot de passe de votre choix.
À partir de là:
- le mot de passe crypté est placé dans le (nouveau) fichier ~/.jupyter/jupyter_server_config.json, fichier qu’il suffit de supprimer en cas de perte de mot de passe.
- ce fichier est détecté au lancement de jupty-lab et l’URL de connexion devient simplement:[ http://127.0.0.1:8888/lab]
3. Usage de Jupyter-Lab sur la plateforme
3.1. installations, remarques:
- Jupyter: de nombreux langages (kernels) sont installables dans une jupyterLab (julia, R, Ruby, bash, …)
- quota (attention): ces environnements sont conséquents en terme d’espace disque, pensez à partager vos environnements virtuels (équipes, laboratoires…) comme indiqué ici
- pour information, l’environnement jupyter de ce tutoriel a été crée comme suit:
3.2. mode batch
Lancer un notebook en mode batch :
Le fichier résultat «notebook exécuté» se nomme tests.nbconvert.ipynb à récupérer sur votre PC personnel…ce qui sous-entend que vous installez également un environnement JupiterLab sur votre PC pour le «développement».
Au final un script OAR de lancement du job pourrait être :