Wichtige Highlights
- JupyterHub ist ein kostenloses Tool, mit dem Sie Jupyter Notebook gleichzeitig mit anderen nutzen können.
- Die Zusammenarbeit an Data-Science-Projekten wird dadurch vereinfacht und Sie können diese Projekte mühelos skalieren.
- Für die Installation müssen Sie eine Art virtuelle Computerumgebung einrichten und JupyterHub nach Ihren Wünschen anpassen.
- Es gibt mehrere Installationsmethoden für JupyterHub, darunter Docker, Conda oder Pip.
- Bei der Nutzung von JupyterHub werden häufig GPUs benötigt, um die Leistung zu verbessern.
Einführung
JupyterHub ist ein nützliches Werkzeug für Data Scientists und Machine-Learning-Enthusiasten. Es erleichtert die kollaborative Arbeit an Jupyter Notebooks über das Internet, sodass über einen Webbrowser auf gemeinsame Notebooks zugegriffen werden kann, ohne dass lokale Installationen erforderlich sind. Diese zentralisierte Plattform ermöglicht es Teams, durch das Teilen von Code und Tools effizient an Data-Science-Projekten zusammenzuarbeiten. Außerdem vereinfacht JupyterHub die Skalierung von Projekten, indem es nahtlos mehr Benutzer und höhere Rechenanforderungen bewältigt. Unsere Anleitung bietet eine Schritt-für-Schritt-Anleitung zur Einrichtung von JupyterHub auf Ihrem lokalen Rechner, einschließlich Installation, Konfiguration und Optimierung für verschiedene Benutzerebenen – von Anfängern bis zu Experten im Bereich Data Science. Darüber hinaus können Sie mit Novita AI GPU Pods das Jupyter-Framework ausführen, um eine höhere Leistung zu erzielen.
JupyterHub verstehen
Bevor wir mit der Einrichtung von JupyterHub beginnen, wollen wir seine Funktionsweise verstehen. JupyterHub ist ein kostenloses Tool, das einen gemeinsamen Raum für Jupyter Notebooks schafft. Es fungiert als zentraler Hub, der individuelle Notebook-Server für mehrere Benutzer verwaltet. Es funktioniert als webbasierte Anwendung, die über einen Webbrowser oder die Befehlszeile zugänglich ist, und kümmert sich um Benutzeranmeldungen, Server-Setup und die Kommunikation zwischen Benutzern und ihren Notebooks.
Wenn sich ein Benutzer über seinen Browser bei JupyterHub anmeldet, überprüft der Hub-Server ihn und richtet einen persönlichen Notebook-Server ein. So können Benutzer Python-Skripte ausführen oder Daten in einer vertrauten Oberfläche analysieren, was eine nahtlose Fortsetzung der Arbeit ermöglicht – als würden sie Jupyter lokal ausführen.

Die Komponenten von JupyterHub erkunden
Um JupyterHub zu verstehen, werfen wir einen Blick auf seine wichtigsten Komponenten. Der Hub-Server verwaltet Benutzeranmeldungen, individuelle Server-Setups und den Datentransfer zwischen Benutzern und ihren Notebooks nahtlos.
Für mehr Sicherheit und Privatsphäre führt JupyterHub Benutzerserver in Docker-Containern aus. Dieses Setup stellt sicher, dass der Arbeitsbereich jedes Benutzers organisiert und isoliert bleibt, was eine reibungslose Zusammenarbeit an Big-Data-Projekten erleichtert.
Das Jupyter Notebook ist der Ort, an dem die Magie geschieht. Es bietet einen Online-Raum zum Codieren, Erstellen von Visualisierungen und Dokumentieren von Datenanalyseschritten. Benutzer können ihre Arbeit ganz einfach als interaktive Dokumente teilen, die Code, Erklärungen und visuelle Elemente kombinieren.

JupyterHub vs. JupyterLab vs. Jupyter Notebook
Während JupyterHub eine Plattform zum Hosten und Verwalten von Jupyter Notebook-Servern bereitstellt, ist es wichtig, die Unterschiede zwischen JupyterHub, JupyterLab und Jupyter Notebook zu verstehen.
Jupyter Notebook ist die ursprüngliche Oberfläche, die von JupyterHub bereitgestellt wird und es Benutzern ermöglicht, Notebooks zu erstellen und auszuführen. Es bietet eine benutzerfreundliche Oberfläche zum Schreiben von Code, Erstellen von Visualisierungen und Dokumentieren von Datenanalyse-Workflows. JupyterLab hingegen ist eine erweiterte Version von Jupyter Notebook, die eine leistungsfähigere und flexiblere Benutzeroberfläche bietet. Es bietet eine modulare und erweiterbare Umgebung für Data-Science-Aufgaben, in der Benutzer mehrere Notebooks, Code-Editoren und andere Tools in einem einzigen Arbeitsbereich anordnen können.
Hier eine Vergleichstabelle, die die Unterschiede zwischen JupyterHub, JupyterLab und Jupyter Notebook hervorhebt:
| Funktion | JupyterHub | JupyterLab | Jupyter Notebook |
|---|---|---|---|
| Hauptzweck | Multi-User-Server für Notebooks | Erweiterte IDE für Notebooks | Einzel-User-Notebook-Interface |
| Benutzerverwaltung | Ja (Authentifizierung, Spawning) | Nein | Nein |
| Oberfläche | Standard-Notebook-Interface (oder JupyterLab) | Modulare, erweiterbare Oberfläche | Einfaches, dateibasiertes Interface |
| Kollaboration | Ja (zentralisierter Server) | Eingeschränkt (über Erweiterungen) | Nein |
| Skalierung | Hoch (mit Kubernetes, Docker) | Nicht vorgesehen | Nicht vorgesehen |
Während JupyterHub die Infrastruktur und Verwaltungsfähigkeiten für mehrere Benutzer bereitstellt, sind JupyterLab und Jupyter Notebook die Oberflächen, mit denen Benutzer interagieren, um Code zu schreiben und auszuführen.
Warum JupyterHub verwenden?
JupyterHub bietet viele Vorteile für Teams, die an Data-Science- oder Machine-Learning-Projekten zusammenarbeiten, insbesondere wenn es um die Skalierung ihrer Operationen geht. Hier sind Gründe, warum Sie die Verwendung von JupyterHub in Betracht ziehen sollten:
Vereinfachte kollaborative Data-Science-Workflows
Die Zusammenarbeit an Data-Science-Projekten ist extrem wichtig, und JupyterHub erleichtert dies erheblich, indem es allen die Nutzung desselben Hub-Servers ermöglicht. Auf diese Weise kann sich jedes Teammitglied, das sich über seinen Webbrowser anmeldet, an seinem eigenen Teil des Projekts mit Hilfe von Jupyter Notebook arbeiten.
Mit diesem Setup können Teammitglieder ihre Arbeit problemlos mit anderen teilen und bei der Datenanalyse oder Code-Fehlerbehebung helfen, ohne warten zu müssen. Da JupyterHub verwaltet, wer auf welche Inhalte zugreifen kann und wie die Ressourcen auf die Benutzer verteilt werden, bleibt die Arbeit aller sicher und läuft reibungslos.
Ein großer Vorteil ist, dass Sie nicht für jede Person Jupyter Notebook separat einrichten müssen. Stattdessen kann jeder von überall aus direkt in seine Projekte einsteigen, indem er sich mit ein paar Klicks am Hub-Server anmeldet – unabhängig von der Art des Computers oder Betriebssystems.
Skalierung Ihrer Data-Science-Projekte
Das Wachsen Ihrer Data-Science-Projekte kann knifflig werden, besonders wenn Sie mit großen Datensätzen oder komplexen Aufgaben jonglieren, die viel Rechenleistung benötigen. Mit JupyterHub wird dieser Prozess viel reibungsloser, da es als zentraler Hub-Server fungiert, der mehrere Benutzer und deren hohe Rechenanforderungen unterstützt.
Für wirklich große Projekte arbeitet JupyterHub mit Kubernetes zusammen. Diese Partnerschaft ermöglicht eine bessere Zuweisung und Überwachung der Ressourcen, die für Ihre Data-Science-Vorhaben benötigt werden. Dank Kubernetes hilft die Verwendung von Containern dabei, die Umgebung jedes Benutzers getrennt zu halten, sodass alles effizienter läuft.

Mit der Kombination von JupyterHub und Kubernetes auf Ihrer Seite wird die Skalierung entsprechend den Anforderungen Ihres Projekts unkompliziert. Egal, ob Ihr Team wächst oder Sie mit größeren Datenmengen arbeiten – diese Tools bieten Ihnen die Flexibilität und Leistung, die Sie benötigen, um alle Aspekte Ihrer Data-Science-Arbeit reibungslos zu verwalten.
Vorbereitung für die JupyterHub-Installation
Bevor Sie mit der Einrichtung von JupyterHub beginnen, ist es wichtig zu prüfen, ob Ihr Computer bereit ist. Hier ist, was Sie wissen müssen, um Ihr System vorzubereiten:
Systemanforderungen und Voraussetzungen
Bevor Sie mit der Einrichtung von JupyterHub beginnen, muss Ihr Computer einige Dinge erfüllen. Lassen Sie uns durchgehen, was Sie brauchen:
- Betriebssystem: Sie benötigen ein Linux- oder Unix-basiertes System, da JupyterHub am besten darauf läuft. Überprüfen Sie zuerst, ob Ihr Betriebssystem für dieses Setup geeignet ist.
- Kommandozeile: Die Einrichtung von JupyterHub erfordert die Nutzung der Kommandozeile. Wenn Sie damit noch nicht vertraut sind, ist jetzt der richtige Zeitpunkt, sich einzuarbeiten, da alle Installationsschritte hier stattfinden.
- Version von JupyterHub: Es ist wichtig, vor dem Start die neueste Version von JupyterHub herunterzuladen. So verpassen Sie keine neuen Funktionen und vermeiden bekannte Probleme, die in neueren Versionen behoben wurden.
- Lokaler Rechner: Ob Sie JupyterHub nur für sich selbst auf Ihrem eigenen Computer oder auf einem Server für mehrere Benutzer installieren, hängt ganz davon ab, was für Ihre Situation besser geeignet ist. Stellen Sie einfach sicher, dass das von Ihnen gewählte Gerät alle Anforderungen für einen reibungslosen Betrieb von JupyterHub erfüllt.
Die richtige Installationsmethode wählen
Je nach Ihren Vorlieben und den Fähigkeiten Ihres Computers gibt es drei Hauptwege, JupyterHub zum Laufen zu bringen:
- Mit Docker haben Sie ein cooles Tool, das JupyterHub in seinem eigenen Bereich laufen lässt. Die Einrichtung ist ziemlich unkompliziert und perfekt, wenn Sie verschiedene Jupyter Notebook-Projekte voneinander getrennt halten müssen.
- Über Conda, das sich darauf konzentriert, die Softwarebereitstellung zu vereinfachen. Sie verwenden es, um einen speziellen Bereich für JupyterHub auf Ihrem Computer zu schaffen, in dem alles, was es braucht, zu finden ist, ohne dass andere Programme gestört werden.
- Mit Pip installieren Sie JupyterHub direkt auf Ihrem System auf die traditionelle Art. Wenn Sie Ihre Python-Pakete gerne über Pip verwalten, könnte dies der richtige Weg für Sie sein.
Anfängerleitfaden zur Installation von JupyterHub
Um loszulegen, erstellen Sie zuerst eine virtuelle Umgebung auf Ihrem lokalen Rechner. Installieren Sie als Nächstes innerhalb dieser Umgebung JupyterHub und alle benötigten Komponenten mit pip oder conda. Danach tauchen Sie in die Anpassung von JupyterHub ein, indem Sie Optionen in der Konfigurationsdatei ändern. Starten Sie dann Ihren JupyterHub-Server, indem Sie einige Befehle in die Kommandozeile eingeben. Zuletzt können Sie über die Administratoroberfläche neue Benutzer hinzufügen und festlegen, wer was tun darf.
Diese leicht verständliche Methode stellt sicher, dass die Einrichtung von JupyterHub für Ihre Data-Science-Projekte ein Kinderspiel ist.
Schritt 1: Einrichten einer virtuellen Umgebung
Bevor Sie mit JupyterHub beginnen, ist es eine gute Idee, eine virtuelle Umgebung zu erstellen. So bleibt alles ordentlich und Sie vermeiden, bereits vorhandene Python-Installationen auf Ihrem Computer zu durcheinanderzubringen. Stellen Sie sich eine virtuelle Umgebung als Ihren eigenen kleinen Bereich vor, in dem JupyterHub leben kann, ohne mit anderen Komponenten in Konflikt zu geraten.
Für die Erstellung dieses speziellen Bereichs werden meistens Tools wie Conda oder virtualenv verwendet. Mit Conda ist die Einrichtung recht einfach – es hilft, diese Umgebungen leicht zu verwalten. Wenn Sie hingegen etwas bevorzugen, das schon länger existiert und von vielen genutzt wird, erledigt virtualenv die Erstellung dieser isolierten Bereiche zuverlässig.
Wenn der Weg über Conda für Sie richtig klingt, starten Sie die Einrichtung von der Kommandozeile wie folgt:
conda create --name myenv
Ersetzen Sie „myenv“ einfach durch einen beliebigen Namen, der für Ihre neue Basis passend erscheint. Nach der Erstellung aktivieren Sie sie mit:
conda activate myenv
Wenn Ihnen virtualenv jedoch mehr zusagt, kein Problem! Starten Sie mit der Eingabe von:
python -m venv myenv
Ersetzen Sie auch hier „myenv“ durch einen Namen Ihrer Wahl. Um nach der Einrichtung die Umgebung zu aktivieren, verwenden Sie:
source myenv/bin/activate
Indem Sie diese Schritte vor der Installation von JupyterHub befolgen, stellen Sie sicher, dass alles in seiner eigenen sauberen Ecke reibungslos läuft.
Schritt 2: Installieren von JupyterHub und notwendigen Abhängigkeiten
Sobald Ihre virtuelle Umgebung bereit ist, besteht der nächste Schritt darin, JupyterHub und alle benötigten Komponenten zu installieren. Sie können dies mit Tools wie Pip oder Conda erledigen.
Mit Pip geben Sie einfach Folgendes in Ihrer virtuellen Umgebung ein:
pip install jupyterhub
Dieser Befehl installiert die neueste Version von JupyterHub zusammen mit allem, was es zum Funktionieren braucht.
Wenn Sie sich mit Conda wohler fühlen, verwenden Sie stattdessen diesen Befehl:
conda install -c conda-forge jupyterhub
Dies tut im Wesentlichen dasselbe, bezieht JupyterHub jedoch aus dem sogenannten conda-forge-Kanal.
Neben der Installation von JupyterHub selbst benötigen Sie auch einige zusätzliche Komponenten wie npm und Node.js. Diese sind wichtig, da sie den konfigurierbaren HTTP-Proxy ausführen, der ein Teil der Funktionsweise von JupyterHub ist. npm hilft bei der Verwaltung von JavaScript-Paketen, während Node.js die Ausführung dieser Pakete ermöglicht.
Um npm und Node.js auf Ihrem System zu installieren, befolgen Sie die Anweisungen auf deren offiziellen Websites.
Nachdem Sie alles eingerichtet haben, einschließlich dieser zusätzlichen Abhängigkeiten, ist jetzt der richtige Zeitpunkt, mit der Konfiguration von JupyterHub zu beginnen – genau so, wie Sie es möchten.
Schritt 3: Konfigurieren von JupyterHub
Das Einrichten von JupyterHub ermöglicht es Ihnen, die Funktionsweise an Ihre Bedürfnisse anzupassen. Es gibt eine Konfigurationsdatei für JupyterHub, mit der Sie verschiedene Optionen auswählen und einstellen können.
Um zu beginnen, erstellen Sie eine Konfigurationsdatei namens jupyterhub_config.py. Sie sollten diese Datei an einem Ort ablegen, an dem JupyterHub sie finden kann, z. B. im Arbeitsverzeichnis oder in einem speziellen Ordner für Konfigurationen.
Diese Konfigurationsdatei verwendet die Python-Sprache. So können Sie mit Python-Methoden Dinge festlegen wie die Benutzeranmeldung, Ressourcengrenzen, Zugriffssteuerung und die Umgebung für die Ausführung von Jupyter Notebook-Servern.
Nachdem Ihre Konfigurationsdatei fertig ist, führen Sie den folgenden Befehl im Terminal aus:
jupyterhub --config jupyterhub_config.py
Dies startet JupyterHub mit allen Einstellungen, die Sie in Ihrer Konfigurationsdatei festgelegt haben. Gehen Sie dann zu Ihrem Webbrowser; Sie können sich jetzt bei JupyterHub anmelden, indem Sie die von Ihnen gewählte Anmeldemethode verwenden.
Indem Sie JupyterHub nach Ihren Wünschen konfigurieren, können Sie es genau so einrichten, wie Sie es für Ihre Zwecke benötigen.
Schritt 4: Starten Ihres JupyterHub-Servers
Sobald Sie alles eingerichtet haben, ist es Zeit, Ihren JupyterHub-Server zu starten. Gehen Sie dazu zu einem Terminal oder einer Kommandozeile und geben Sie den erforderlichen Befehl ein, der den Server startet. Sie müssen entweder die IP-Adresse oder den Hostnamen angeben, unter dem JupyterHub in Ihrem Netzwerk erreichbar ist. Nachdem Sie den Server gestartet haben, öffnen Sie einen Webbrowser und geben Sie entweder diese IP-Adresse oder den Hostnamen zusammen mit der zugewiesenen Portnummer ein. Diese Aktion führt Sie zum Anmeldebildschirm von JupyterHub. Hier geben Sie Ihren Benutzernamen und Ihr Passwort ein, und schon können Sie in die Angebote von JupyterHub eintauchen.
Schritt 5: Hinzufügen von Benutzern und Verwalten von Berechtigungen
Um Ihren JupyterHub-Server so einzurichten, dass Sie Personen hinzufügen und deren Berechtigungen festlegen können, müssen Sie mit einem sogenannten Authenticator arbeiten. Der mitgelieferte Standard-Authenticator heißt PAM (Pluggable Authentication Module). Mit diesem Modul werden die Konten verwendet, die bereits auf dem Server vorhanden sind, auf dem JupyterHub läuft. Das bedeutet, dass jede Person ihren eigenen Benutzernamen und ihr eigenes Passwort hat, um auf den JupyterHub-Server zuzugreifen. Es gibt auch andere Anmeldemethoden, die ohne mehrere Passwörter auskommen, wie OAuth und GitHub, die es Benutzern ermöglichen, sich nur einmal anzumelden, um auf verschiedene Dienste zuzugreifen. Indem Sie die Berechtigungsstufen verwalten, legen Sie im Wesentlichen fest, wer was auf Ihrem JupyterHub-Server tun darf und welche Funktionen er nutzen kann.
JupyterHub in der GPU-Cloud ausführen
Das Ausführen von JupyterHub auf einem GPU-Cloud-Server wie Novita AI GPU Pods kann die Fähigkeiten von Data-Science- und Machine-Learning-Workflows erheblich verbessern. Mit Novita AI GPU Pods erhalten Benutzer Zugriff auf leistungsstarke GPU-Ressourcen in der Cloud, die zur Ausführung von JupyterHub-Instanzen für gemeinsame Projekte genutzt werden können. Die kosteneffiziente und flexible Natur dieser GPU-Cloud-Dienste ermöglicht es Teams, ihre KI-Innovationen zu skalieren, ohne hohe Anfangskosten zu verursachen.
Durch die Nutzung von Novita AI GPU Pods zahlen Sie nur für das, was Sie nutzen, mit einem Stundensatz ab nur 0,35 $, was es zu einer erschwinglichen Wahl für verschiedene Budgets macht. Die Plattform bietet sofortigen Zugriff auf Jupyter, das mit gängigen Machine-Learning-Frameworks vorinstalliert ist, sodass Benutzer mit minimaler Einrichtungszeit direkt in ihre Arbeit einsteigen können. Darüber hinaus bietet Novita AI GPU Pods kostenlosen, großen Speicherplatz ohne Transfergebühren, sodass erhebliche Datenmengen und Modelle, wie die Llama-3-13b-Modelle, gespeichert werden können.

Der Dienst bietet auch schnelles Anhängen und Skalieren von Volumes, von 5 GB bis zu Petabytes, was nahtlose Übergänge zwischen Containern und VMs ermöglicht. Mit globalen Bereitstellungsoptionen und der Möglichkeit, Ressourcen über einfach zu bedienende APIs zu verwalten, macht Novita AI GPU Pods es unkompliziert, Instanzen zu starten, zu beenden und neu zu starten, und bietet eine zuverlässige und entwicklerfreundliche GPU-Cloud-Lösung für die Ausführung von JupyterHub.
Treten Sie der Community bei, um die neuesten Änderungen des Produkts zu sehen!
Fazit
Zusammenfassend ist JupyterHub ein großartiges Werkzeug für die Zusammenarbeit an Data-Science-Projekten und die Steigerung der Workflow-Kapazitäten. Das Verständnis seiner Funktionsweise und der korrekten Einrichtung ist entscheidend für eine effektive Nutzung. Sie können die Dinge noch verbessern, indem Sie die Benutzerbereiche genau nach Ihren Wünschen einrichten und andere Tools in den Mix integrieren. Die Behebung typischer Probleme trägt zu einem reibungslosen Ablauf bei. Tauchen Sie jetzt ein in die Möglichkeiten, die JupyterHub für Ihre Data-Science-Arbeit bietet!
Novita AI, die One-Stop-Plattform für grenzenlose Kreativität, die Ihnen Zugang zu über 100 APIs bietet. Von Bildgenerierung und Sprachverarbeitung bis hin zu Audioverbesserung und Videobearbeitung, günstiges Pay-as-you-go-Modell befreit Sie von GPU-Wartungsproblemen, während Sie Ihre eigenen Produkte entwickeln. Testen Sie es kostenlos.
Empfohlene Lektüre:
