Skip to content

JupyterHub authentifié et personnalisable

Deux instances publiques sont disponibles :

Cette instance est disponible dans une configuration complète :

Vous pouvez aussi déployer votre propre instance de JupyterHub adaptée à vos besoins en suivant les instructions ci-dessous. Elle utilisera l'opérateur OpendataHub adapté à la PLM qui intègre les mécanismes d'authentification via PLMshift ou via la Fédération RENATER, ainsi que la gestion d'un stockage persistant par utilisateur.

Créer une instance de jupyterhub via la console Web

Cette instance utilisera une authentification des utilisateurs via PLMshift. Pour avoir une instance authentifié sur la Fédération RENATER, contactez le support de la PLM afin de demander les autorisations (voir OIDC_CLIENT et OIDC_SECRET plus loin).

  • Créez un projet
  • Choisissez le template JupyterHub on PLMshift dans le Catalog
  • Donnez un nom d'hôte complet pour JUPYTERHUB_HOST (comme par exemple mon-jupyter.apps.math.cnrs.fr). Si vous souhaiter ne pas être dans le domaine mon-jupyter.apps.math.cnrs.fr, contactez le support de la PLM afin d'obtenir le routage de votre domaine vers PLMshift
  • Listez les emails des administrateur de jupyterhub dans le champ JUPYTERHUB_ADMINS (au moins le votre, mais c'est facultatif)
  • Si vous ne souhaitez pas ouvrir largement votre instance jupyterhub, laissez vide OIDC_CLIENT et OIDC_SECRET

En ligne de commandes

Pour afficher les paramètre disponibles :

oc process --parameters  jupyterhub-odh -n openshift

Pour instancier JupyterHub :

oc new-app jupyterhub-odh \
  -p APPLICATION_NAME=monjupyterhub \
  -p JUPYTERHUB_HOST=mon-jupyter.apps.math.cnrs.fr

Customisation de la configuration

En ligne de commande

oc edit kfdef

Via la console PLMshift

Allez dans Home puis Search et sur Resources tapez Kfdef dans le formulaire de recherche, vous pourrez alors éditer les paramètres de votre instance.

Exploiter les GPU

PLMshift accueille 2 serveurs équipés chacun de 2 cartes Nividia A100, segmentées en 7 cartes virtuelles (pour un total de 28 cartes GPU).

Pour activer la selection du nombre de Gpu utilisables dans le notebook GPU, fixer la valeur gpu_enabled à 'true' dans votre kfdef comme ci-dessous :

  • Dans la rubrique jupyterhub/jupyterhub :
    - kustomizeConfig:
        overlays:
          - storage-class
          - plm
        parameters:
          ...
          - name: gpu_enabled
            value: 'true'
        repoRef:
          name: manifests
          path: jupyterhub/jupyterhub

Des noyaux de Notebooks GPU sont disponibles, pour les faire apparaître sur votre instance JupyterHub, éditez votre kfdef de la façon suivante :

  • Dans la rubrique jupyterhub/notebook-images :
    - kustomizeConfig:
        overlays:
          ...
          - cuda-plmshift
        repoRef:
          name: manifests
          path: jupyterhub/notebook-images
      name: notebook-images

Utiliser une authentification basée sur la Fédération RENATER

Il est possible d'utiliser la Fédération RENATER comme source d'authentification, pour cela vous devrez renseigner deux variables d'environnement (OIDC_CLIENT et OIDC_SECRET) dans la configuration du déploiement de JupyterHub (en allant sur l'onglet Environment).

Pour obtenir les valeurs de ces variables, merci de contacter le support de la PLM.

Restreindre l'accès à certains utilisateurs

La restriction d'accès à une liste d'utilisateur n'est pas encore disponible.


  1. JupyterHub vient avec des extensions permettant de s'authentifier via différentes sources