All Projects → jupyterhub → Kubespawner

jupyterhub / Kubespawner

Licence: bsd-3-clause
Kubernetes spawner for JupyterHub

Programming Languages

python
139335 projects - #7 most used programming language

Projects that are alternatives of or similar to Kubespawner

Zero To Jupyterhub K8s
Helm Chart & Documentation for deploying JupyterHub on Kubernetes
Stars: ✭ 888 (+151.56%)
Mutual labels:  jupyter, jupyterhub, kubernetes-cluster
Primehub
A toil-free multi-tenancy machine learning platform in your Kubernetes cluster
Stars: ✭ 160 (-54.67%)
Mutual labels:  jupyter, jupyterhub, kubernetes-cluster
Oauthenticator
OAuth + JupyterHub Authenticator = OAuthenticator
Stars: ✭ 299 (-15.3%)
Mutual labels:  jupyter, jupyterhub
Configurable Http Proxy
node-http-proxy plus a REST API
Stars: ✭ 166 (-52.97%)
Mutual labels:  jupyter, jupyterhub
Jupyterhub Deploy Teaching
Reference deployment of JupyterHub and nbgrader on a single server
Stars: ✭ 194 (-45.04%)
Mutual labels:  jupyter, jupyterhub
Jupyter Server Proxy
Jupyter notebook server extension to proxy web services.
Stars: ✭ 153 (-56.66%)
Mutual labels:  jupyter, jupyterhub
Jupyterhub Tutorial
Tutorial materials for deploying JupyterHub
Stars: ✭ 161 (-54.39%)
Mutual labels:  jupyter, jupyterhub
Awesome Jupyter
A curated list of awesome Jupyter projects, libraries and resources
Stars: ✭ 2,523 (+614.73%)
Mutual labels:  jupyter, jupyterhub
Repo2docker
Turn repositories into Jupyter-enabled Docker images
Stars: ✭ 1,177 (+233.43%)
Mutual labels:  jupyter, jupyterhub
jupyterhub-deploy-hpc
Documented examples of Jupyterhub deployment in HPC settings
Stars: ✭ 30 (-91.5%)
Mutual labels:  jupyter, jupyterhub
systemdspawner
Spawn JupyterHub single-user notebook servers with systemd
Stars: ✭ 79 (-77.62%)
Mutual labels:  jupyter, jupyterhub
hubshare
A directory sharing service for JupyterHub
Stars: ✭ 57 (-83.85%)
Mutual labels:  jupyter, jupyterhub
Ml Hub
🧰 Multi-user development platform for machine learning teams. Simple to setup within minutes.
Stars: ✭ 148 (-58.07%)
Mutual labels:  jupyter, jupyterhub
Ldapauthenticator
LDAP Authenticator Plugin for Jupyter
Stars: ✭ 145 (-58.92%)
Mutual labels:  jupyter, jupyterhub
Helm Chart
A store of Helm chart tarballs for deploying JupyterHub and BinderHub on a Kubernetes cluster
Stars: ✭ 123 (-65.16%)
Mutual labels:  jupyter, jupyterhub
Jupyterlab Hub
Deprecated: JupyterLab extension for running JupyterLab with JupyterHub
Stars: ✭ 181 (-48.73%)
Mutual labels:  jupyter, jupyterhub
jupyter-remote-desktop-proxy
Run a Linux Desktop on a JupyterHub
Stars: ✭ 46 (-86.97%)
Mutual labels:  jupyter, jupyterhub
Ansible Jupyterhub
Ansible role to setup jupyterhub server (deprecated)
Stars: ✭ 14 (-96.03%)
Mutual labels:  jupyter, jupyterhub
Nbgrader
A system for assigning and grading notebooks
Stars: ✭ 1,000 (+183.29%)
Mutual labels:  jupyter, jupyterhub
Best Of Jupyter
🏆 A ranked list of awesome Jupyter Notebook, Hub and Lab projects (extensions, kernels, tools). Updated weekly.
Stars: ✭ 200 (-43.34%)
Mutual labels:  jupyter, jupyterhub

kubespawner (jupyterhub-kubespawner @ PyPI)

Documentation status GitHub Workflow Status Code coverage

The kubespawner (also known as JupyterHub Kubernetes Spawner) enables JupyterHub to spawn single-user notebook servers on a Kubernetes cluster.

See the KubeSpawner documentation for more information about features and usage. In particular, here is a list of all the spawner options.

Features

Kubernetes is an open-source system for automating deployment, scaling, and management of containerized applications. If you want to run a JupyterHub setup that needs to scale across multiple nodes (anything with over ~50 simultaneous users), Kubernetes is a wonderful way to do it. Features include:

  • Easily and elasticly run anywhere between 2 and thousands of nodes with the same set of powerful abstractions. Scale up and down as required by simply adding or removing nodes.

  • Run JupyterHub itself inside Kubernetes easily. This allows you to manage many JupyterHub deployments with only Kubernetes, without requiring an extra layer of Ansible / Puppet / Bash scripts. This also provides easy integrated monitoring and failover for the hub process itself.

  • Spawn multiple hubs in the same kubernetes cluster, with support for namespaces. You can limit the amount of resources each namespace can use, effectively limiting the amount of resources a single JupyterHub (and its users) can use. This allows organizations to easily maintain multiple JupyterHubs with just one kubernetes cluster, allowing for easy maintenance & high resource utilization.

  • Provide guarantees and limits on the amount of resources (CPU / RAM) that single-user notebooks can use. Kubernetes has comprehensive resource control that can be used from the spawner.

  • Mount various types of persistent volumes onto the single-user notebook's container.

  • Control various security parameters (such as userid/groupid, SELinux, etc) via flexible Pod Security Policies.

  • Run easily in multiple clouds (or on your own machines). Helps avoid vendor lock-in. You can even spread out your cluster across multiple clouds at the same time.

In general, Kubernetes provides a ton of well thought out, useful features - and you can use all of them along with this spawner.

Requirements

Kubernetes

Everything should work from Kubernetes v1.6+.

The Kube DNS addon is not strictly required - the spawner uses environment variable based discovery instead. Your kubernetes cluster will need to be configured to support the types of volumes you want to use.

If you are just getting started and want a kubernetes cluster to play with, Google Container Engine is probably the nicest option. For AWS/Azure, kops is probably the way to go.

Getting help

We encourage you to ask questions on the Jupyter mailing list. You can also participate in development discussions or get live help on Gitter.

License

We use a shared copyright model that enables all contributors to maintain the copyright on their contributions.

All code is licensed under the terms of the revised BSD license.

Resources

JupyterHub and kubespawner

Jupyter

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].