JupyterHub/Deployment: Difference between revisions

From E-Learning Challenge
Jump to navigation Jump to search
m formatting
m formatting
Line 5: Line 5:
=== Docker ===
=== Docker ===
1 Container enthält sowohl JupyterHub als auch die einzelnen Notebooks der Anwender enthält. Jeder Anwender hat einen Account innerhalb des Containers.  Skaliert bis zu 100 Anwender (https://jupyterhub.readthedocs.io/en/stable/index.html).
1 Container enthält sowohl JupyterHub als auch die einzelnen Notebooks der Anwender enthält. Jeder Anwender hat einen Account innerhalb des Containers.  Skaliert bis zu 100 Anwender (https://jupyterhub.readthedocs.io/en/stable/index.html).
* <nowiki>https://jupyterhub.readthedocs.io/en/stable/quickstart.html</nowiki>
* https://jupyterhub.readthedocs.io/en/stable/quickstart.html
* Mögliche Anbieter
* Mögliche Anbieter
** Microsoft Azure (<nowiki>https://azure.microsoft.com/en-us/services/container-instances/</nowiki>)
** Microsoft Azure (https://azure.microsoft.com/en-us/services/container-instances/)
** Virtuelle Maschine (Docker for Windows, Linux)
** Virtuelle Maschine (Docker for Windows, Linux)
=== Docker Compose ===
=== Docker Compose ===
Speichert im Gegensatz zur 1-Container Lösung jedes Anwender-Note in einem einzelnen Docker container. Die Notebooks sind standardmäßig nicht permanent, können aber so konfiguriert werden. (<nowiki>https://github.com/jupyterhub/dockerspawner/#data-persistence-and-dockerspawner</nowiki>)
Speichert im Gegensatz zur 1-Container Lösung jedes Anwender-Note in einem einzelnen Docker container. Die Notebooks sind standardmäßig nicht permanent, können aber so konfiguriert werden. (https://github.com/jupyterhub/dockerspawner/#data-persistence-and-dockerspawner)


Skaliert nach Angaben von https://opendreamkit.org/2018/10/17/jupyterhub-docker/ auf "mehrere hundert Anwender".
Skaliert nach Angaben von https://opendreamkit.org/2018/10/17/jupyterhub-docker/ auf "mehrere hundert Anwender".
* <nowiki>https://github.com/jupyterhub/jupyterhub-deploy-docker</nowiki>
* https://github.com/jupyterhub/jupyterhub-deploy-docker
* Mögliche Anbieter
* Mögliche Anbieter
** Microsoft Azure (<nowiki>https://docs.microsoft.com/en-us/azure/cognitive-services/containers/docker-compose-recipe</nowiki>)
** Microsoft Azure (https://docs.microsoft.com/en-us/azure/cognitive-services/containers/docker-compose-recipe)
** Virtuelle Maschine (Docker for Windows, Linux)
** Virtuelle Maschine (Docker for Windows, Linux)


Line 21: Line 21:
Non-plus-ultra Variante mit deutlich komplizierterer Aufsetzung bzw. Konfiguration.
Non-plus-ultra Variante mit deutlich komplizierterer Aufsetzung bzw. Konfiguration.


Skaliert bis zu 10.000 Anwender. (<nowiki>https://jupyterhub.readthedocs.io/en/stable/getting-started/institutional-faq.html</nowiki>)
Skaliert bis zu 10.000 Anwender. (https://jupyterhub.readthedocs.io/en/stable/getting-started/institutional-faq.html)
* Mögliche Anbieter
* Mögliche Anbieter
** Google Kubernetes Engine (<nowiki>https://cloud.google.com/kubernetes-engine</nowiki>)
** Google Kubernetes Engine (https://cloud.google.com/kubernetes-engine)
** Azure Kubernetes Service (<nowiki>https://docs.microsoft.com/en-us/azure/aks/intro-kubernetes</nowiki>)
** Azure Kubernetes Service (https://docs.microsoft.com/en-us/azure/aks/intro-kubernetes)


=== Virtuelle Maschine ===
=== Virtuelle Maschine ===

Revision as of 16:02, 1 April 2020

Diese Seite beschreibt die Implementierung von JupyterHub für die Abschlusspräsentation von Team Hertz. Möglichkeiten für eine allgemeinere Implementation sind auch aufgenommen, z.B. für self-hosting durch die Uni Heidelberg.

Infrastruktur

Docker

1 Container enthält sowohl JupyterHub als auch die einzelnen Notebooks der Anwender enthält. Jeder Anwender hat einen Account innerhalb des Containers. Skaliert bis zu 100 Anwender (https://jupyterhub.readthedocs.io/en/stable/index.html).

Docker Compose

Speichert im Gegensatz zur 1-Container Lösung jedes Anwender-Note in einem einzelnen Docker container. Die Notebooks sind standardmäßig nicht permanent, können aber so konfiguriert werden. (https://github.com/jupyterhub/dockerspawner/#data-persistence-and-dockerspawner)

Skaliert nach Angaben von https://opendreamkit.org/2018/10/17/jupyterhub-docker/ auf "mehrere hundert Anwender".

Kubernetes

Non-plus-ultra Variante mit deutlich komplizierterer Aufsetzung bzw. Konfiguration.

Skaliert bis zu 10.000 Anwender. (https://jupyterhub.readthedocs.io/en/stable/getting-started/institutional-faq.html)

Virtuelle Maschine

Jupyterhub kann entweder direkt installiert werden (vgl. Docker, 1 Container) oder als Basis für Docker bzw. Kubernetes verwendet werden.

Wichtig: Bei direkter Installation soll die virtuelle Maschine Linux verwenden, da JupyterHub Windows nicht unterstützt.

  • Mögliche Anbieter
    • digitalocean - Bietet bis zu $1000 Kredit für COVID-19 Projekte (digitalocean.com/community/pages/covid-19)
    • netcup.de
    • Microsoft Azure - Bietet bis zu $100 Kredit für Studenten (Azure for Students)
    • URZ (self-hosted, Uni HD) - Nach Angaben von Dr. Koethe würde das URZ einen Server zur Verfügung stellen, falls JupyterHub gut ankommt.

Installation