JupyterHub ist ein Open-Source-Tool, mit dem Studierende, Lehrende und Forschende interaktive Jupyter Notebooks auf einer leistungsstarken Umgebung der HU ohne weitere Installationen für Prototyping, Datenanalyse und -Visualisierung im Browser ausführen können.
JupyterHub ist eine Plattform, die es ermöglicht, Jupyter Notebooks auszuführen.
Ein Jupyter Notebook ist eine Art interaktives Tagebuch, in dem Code, Texte, Bilder und andere Medien zusammengestellt werden können. Wie in einer klassischen Entwicklungsumgebung auch, sind hierdurch Datenanalysen oder auch das Prototyping von Anwendungen möglich. JupyterHub stellt dazu eine umfassende Palette an Tools für Analysen und Programmierung zur Verfügung, die für Studierende und Lehrende leicht zugänglich sind. Auch für die Forschung bietet ein JupyterHub Vorteile, denn es können interaktive Notebooks erstellt werden, die alle Schritte einer Analyse dokumentieren. Durch die zentrale Bereitstellung stehen auch größere und flexiblere Rechenkapazitäten zur Verfügung, wie z. B. GPGPUs für Aufgaben im Bereich Machine Learning.
Die Nutzung von JupyterHub erfordert zu Beginn etwas Einarbeitung. Die Vorteile der einheitlichen Plattform für viele Nutzungsszenarien spart jedoch schon nach kurzer Eingewöhnung Zeit ein, etwa im Vergleich zur Pflege von Versionen und Arbeitsständen auf unterschiedlichen Systemen oder auch bei einer verteilten Datenhaltung.
Studierende können auch ihren Kommiliton:innen ermöglichen, die Ergebnisse ihrer Analysen nachzuvollziehen und zu kommentieren. Dabei kann von jedem Ort auf die geteilten Ressourcen zugegriffen werden. Auch für Lehrende bietet JupyterHub mehrere Vorteile. Materialien und interaktive Notebooks können einfacher bereitgestellt und weitergegeben, kommentiert und geprüft werden.
Darüber hinaus können auch Forschungsdaten über JupyterHub gespeichert, geteilt und analysiert werden. Hierdurch sind interaktive Datenanalysen und die Visualisierung und Bearbeitung von Daten in Echtzeit möglich. Auch die Arbeitsabläufe und Methoden sind dabei dokumentierbar. JupyterHub integriert auch HPC-Ressourcen, um unkomplizierten Zugang zu leistungsstärkeren Rechenkapazitäten zu ermöglichen, wie z. B. für Machine Learning.
Grundlage für einen JupyterHub sind Jupyter Notebooks bzw. Jupyter Labs, in denen Laufzeitumgebungen, sog. Kernels, in einer Weboberfläche zusammengeführt werden. Dabei stehen eine große Anzahl an Kerneln zur Verfügung, wie bspw. Python, Spark, R, Tensorflow, Keras oder auch PyTorch.
Wie funktioniert der JupyterHub aus Sicht der User? Im Prinzip funktioniert JupyterHub wie eine normale Webanwendung. Nach der Anmeldung auf der JupyterHub-Startseite im Browser können die bereitstehenden Notebooks geöffnet oder ein neues Notebook erstellt werden.
Der JupyterHub der HU wird durch den CMS aufgebaut. Der Plan für dieses Jahr ist, die ersten Funktionen einem breiteren Kreis von Anwendenden bereitzustellen. Dafür wird derzeit eine Openstack-Umgebung mit über 3.000 virtuellen CPU-Kernen, 12 GPU A100-Kernen und mehr als 13TB RAM in Betrieb genommen. Eine erste Testumgebung für JupyterHub, die im Rahmen des AI-SKILLS-Projektes entstanden ist und innerhalb eines Kubernetes-Clusters läuft, existiert seit dem Wintersemester 22/23, und kann bereits erprobt werden. Sie erreichen diese Seite – aus dem HU-Netz bzw. via VPN – über die folgende URL: https://jupyterhub.cms.hu-berlin.de. Die Anmeldung erfolgt mittels HU-Account. Nach der Anmeldung besteht aktuell die Möglichkeit, zwischen sechs verschiedenen Jupyter Labs mit unterschiedlicher Ausstattung zu wählen.
Für Fragen zu JupyterHub wenden Sie sich bitte an Michael Wuttke
1 GPGPUs – General Purpose Computation on Graphics Processing Units. Sie dienen für Berechnungen unter Verwendung von Grafikprozessoren.
2 https://www.projekte.hu-berlin.de/de/ai-skills