CyVerse-Ansible.jupyterhub
ansible jupyterhub
Diese Rolle installiert zero-to-jupyterhub.
Aktuell wurde es auf Ubuntu 20 und 18 getestet und funktioniert. Es funktioniert derzeit nicht richtig auf Red Hat-Systemen, daran arbeiten wir.
Voraussetzungen
Dies erfordert Docker und k3s.
Rollenvariablen
JH_AUTH_CLASS kann auf
github,dummygesetzt werden oder leer bleiben, was PAM-Authentifizierung verwendet.JH_DUMMY_PASS ist ein Passwort für die Verwendung der Dummy-Klasse. Wenn nicht gesetzt, kann die Dummy-Authentifizierung nicht verwendet werden.
JH_OAUTH2_CLIENT_ID ist eine Client-ID für die folgenden Authentifizierungen: GitHub.
JH_OAUTH2_CLIENT_SECRET ist ein Client-Geheimnis, das für die folgenden Authentifizierungen verwendet wird: GitHub.
JH_OAUTH2_CALLBACK_URL ist eine Callback-URL für die folgenden Authentifizierungen: GitHub.
JH_SINGLEUSER_EXCLUDE_MASTER, wenn wahr, wird verhindert, dass Einbenutzer-Notebooks auf dem Master-Knoten ausgeführt werden.
JH_SINGLEUSER_IMAGE ist das Bild, das für Jupyter verwendet wird; Standard ist jupyter/datascience-notebook.
JH_SINGLEUSER_IMAGE_TAG ist das Bildtag, das für Jupyter verwendet wird; Standard ist latest.
JH_SINGLEUSER_DEFAULT_URL ist die Standard-URL für Jupyter; Standard ist "/lab".
JH_SINGLEUSER_GPU_ENABLE, Standard ist keine GPU.
JH_SINGLEUSER_START_TIMEOUT ist die Timeout-Einstellung, um auf das Starten der Einbenutzer-Container zu warten; Standard ist 600.
JH_SINGLEUSER_HTTP_TIMEOUT ist die Timeout-Einstellung, um auf die Kommunikation zwischen Einbenutzer-Container und Hub zu warten; Standard 600.
JH_SINGLEUSER_MEMORY_GUARANTEE ist der Mindestspeicher für Einbenutzer-Container; Standard 1G.
JH_SINGLEUSER_MEMORY_LIMIT ist der maximale Speicher für Einbenutzer-Container; kein Standard (unbegrenzt).
JH_SINGLEUSER_CPU_GUARANTEE ist die Mindest-CPU für Einbenutzer-Container; Standard 0.5.
JH_SINGLEUSER_CPU_LIMIT ist die maximale CPU für Einbenutzer-Container; kein Standard (1 CPU?).
JH_ALLOWED_USERS ist eine Liste von Benutzern, die sich in die Anwendung einloggen dürfen.
JH_ADMINS ist eine Liste von Administrationsbenutzern.
JH_SHARED_STORAGE_ENABLE, auf true setzen, wenn Speicher aktiviert wird.
JH_SHARED_STORAGE_PV_NAME, auf den Namen des persistenten Volumes setzen.
JH_SHARED_STORAGE_PVC_NAME, auf den Namen des Persistent Volume Claims setzen.
JH_SHARED_STORAGE_MOUNT_DIR, auf das Verzeichnis im Container setzen, Standard = /home/jovyan/shared.
JH_RESOURCES_REQUEST_CPU, wenn gesetzt, ist dies die CPU-Einstellung für den Hub-Container, 0m - 1000m.
JH_RESOURCES_REQUEST_MEMORY, wenn gesetzt, ist dies die Speicher-Einstellung für den Hub-Container, 200Mi - 4Gi.
JH_INGRESS_ENABLED, wenn gesetzt, wird dies den Ingress aktivieren.
JH_INGRESS_CLASS, Standard ist
nginx.JH_INGRESS_BODY_SIZE setzt die maximale Proxy-Körpergröße. Standard ist "4096m".
JH_INGRESS_HOSTNAME, wenn gesetzt, wird dies den Hostnamen für den Ingress setzen.
JH_DB_PVC_STORAGE_CLASS_NAME, wenn gesetzt, wird dies der Name der Storage-Class sein.
JH_PREPULL_IMAGES, wenn gesetzt, wird der Hub Images auf alle Knoten vorladen, bevor sie verfügbar sind. Auf false setzen, wenn die Images zu groß sind oder zu viele Knoten vorhanden sind. Standard ist true.
Abhängigkeiten
- Diese Rolle erfordert Kubernetes, normalerweise installiert mit k3s. Wenn Helm nicht installiert ist, wird es installiert.
Beispiel Playbook
Es ist immer nützlich für die Benutzer, ein Beispiel dafür zu haben, wie man die Rolle verwendet (z. B. mit Variablen, die als Parameter übergeben werden):
- name: Dieses Playbook wird JupyterHub installieren
hosts: jupyterhub
roles:
- ansible-docker
- ansible-jupyterhub
Lizenz
BSD
Autor-Informationen
Für weitere Informationen kontaktieren Sie bitte Edwin Skidmore (edwin@cyverse.org).
This role will install jupyterhub with CyVerse auth integration. Jupyterhub is configured to use dockerspawner
ansible-galaxy install CyVerse-Ansible.jupyterhub