🚀 JupyterHub @ EURECOM - User Guide

Welcome to the JupyterHub platform hosted at EURECOM. This guide reflects the latest configuration, including the new environment profiles and the live resource availability indicators.

🌐 Accessing the Platform

  1. Open your web browser (preferably Firefox or Chrome).
  2. Navigate to: https://jupyterhub.slices.cs.eurecom.fr/

🔐 Authentication

You will be redirected to the Keycloak login portal.

Supported login methods

Your authentication method is used to determine the storage backend automatically.

🧬 Cluster architecture

The Kubernetes cluster is heterogeneous and includes both ARM64 and AMD64 worker nodes.

What this means for you

🎯 Choosing your environment

After authentication, you will see an interactive environment selection page with cards grouped by resource type and framework.

The interface now includes:

Available profiles

1) CPU-only profiles

CPU Xeon (x86_64, bare-metal)

CPU Standard (x86_64, virtual machines)

CPU ARM64

Each CPU profile is available with the following frameworks:


2) GPU profiles - MIG slices on GH200

GPU Small (MIG 1g.18gb)

GPU Medium (MIG 2g.36gb)

GPU Large (MIG 7g.144gb)

Each GPU MIG profile is available with:


3) Full GPU profiles

GH200 Full GPU (96GB)

A100 x86_64 (40GB)

These profiles are also available with PyTorch, OAI or TensorFlow images.


4) Specialized profiles

BF3 DPU

Only one DPU session can run at a time.

AMD GPU

💾 Storage and persistence

Storage is automatically selected according to the authentication context.

Login method Storage backend Notes
SLICES RI JuiceFS S3-backed distributed storage
GitLab NFS Traditional shared filesystem

Your home directory at /home/jovyan/ is persistent across sessions and environments.

✅ Starting your session

  1. Select an environment card.
  2. Review the live availability indicator for the selected resource.
  3. Click Start.
  4. Wait for the server to initialize (typically 1-3 minutes).
  5. You will be redirected to JupyterLab.

🛠️ Working in JupyterLab

Pre-installed tools

All environments include:

Installing additional packages

Python packages:

pip install package-name

System packages:

sudo apt update
sudo apt install package-name

🔌 Network capabilities

Your environment includes:

🔑 SSH access for OAI environments

OAI containers can expose SSH on the oai0 interface. Direct SSH access from your laptop is not possible unless you first connect through a jump host.

Procedure

  1. Open JupyterLab and download your private key from the .ssh directory.
  2. Connect to the jump host:
ssh <your_login>@lilix.slices.cs.eurecom.fr
  1. From the jump host, connect to your container using the private key:
ssh -i ~/.ssh/jupyter_id_ed25519 jovyan@<IP_from_connect_info.txt>

First-time setup

  1. In JupyterLab, open the file browser.
  2. Enable hidden files.
  3. Go to .ssh and download jupyter_id_ed25519.
  4. Restrict its permissions:
chmod 600 ~/.ssh/jupyter_id_ed25519

The key is generated automatically on first start and stored in your persistent home directory.

🌍 Accessing web applications through the JupyterHub proxy

Services running locally in your environment can be exposed through the JupyterHub proxy.

Example:

https://jupyterhub.slices.cs.eurecom.fr/user/<username>/proxy/<port>/

📊 Managing multiple sessions

You can run up to 3 named servers simultaneously:

  1. Click your username in the top-right corner.
  2. Open the Hub Control Panel.
  3. Click Add New Server.
  4. Choose a different environment for each server.

💤 Resource management and session lifecycle

Idle behavior

Scenario What happens
Browser open and kernel running Session stays alive indefinitely
Browser open and kernel idle Kernel is stopped after 2h on GPU profiles and 4h on CPU profiles
Browser closed but workload running Session stays alive thanks to activity detection
Browser closed and nothing running Session is reclaimed after 4h
Running notebooks, GPU workloads and CPU jobs keep the session alive even if the browser is closed.

Stopping your server

Always stop your server when you are done to free resources.

  1. Click your username.
  2. Open the Hub Control Panel.
  3. Click Stop My Server.

📋 Best practices

🆘 Troubleshooting

Server does not start

Out of memory

Lost work

👥 Support and contact

For issues or requests:

🔧 Platform architecture summary

📚 Additional resources