github jupyterhub/zero-to-jupyterhub-k8s v0.5
v0.5: "Hamid Hassan"

latest releases: 4.0.0, 4.0.0-beta.4, 4.0.0-beta.3...
pre-release6 years ago

JupyterHub 0.8, HTTPS & scalability.

Upgrading from 0.4

See the upgrade documentation for upgrade steps.

New Features

JupyterHub 0.8

JupyterHub 0.8 is full of new features - see CHANGELOG
for more details. Specific features made to benefit this chart are:

  1. No more 'too many redirects' errors at scale.
  2. Lots of performance improvements, we now know we can handle up to 4k active users
  3. Concurrent spawn limits (set via hub.concurrentSpawnLimit) can be used to limit the concurrent
    number of users who can try to launch on the hub at any given time. This can be
    tuned to avoid crashes when hundreds of users try to launch at the same time. It gives
    them a friendly error message + asks them to try later, rather than spinning forever.
  4. Active Server limit (set via hub.activeServerLimit) can be used to limit the
    total number of active users that can be using the hub at any given time. This allows
    admins to control the size of their clusters.
  5. Memory limits & guarantees (set via singleuser.memory) can now contain fractional
    units. So you can say 0.5G instead of having to use 512M.

And lots more!

Much easier HTTPS

It is our responsibility as software authors to make it very easy for admins to set up
HTTPS for their users. v0.5 makes this much easier than v0.4. You can find the new
instructions here and
they are much simpler!

You can also now use your own HTTPS certificates & keys rather than using Let's Encrypt.

More authenticators supported

The following new authentication providers have been added:

  1. GitLab
  2. CILogon
  3. Globus

You can also set up a whitelist of users by adding to the list in auth.whitelist.users.

Easier customization of jupyterhub_config.py

You can always put extra snippets of jupyterhub_config.py configuration in
hub.extraConfig. Now you can also add extra environment variables to the hub
in hub.extraEnv and extra configmap items via hub.extraConfigMap. ConfigMap
items can be arbitrary YAML, and you can read them via the get_config function in
your hub.extraConfig. This makes it cleaner to customize the hub's config in
ways that's not yet possible with config.yaml.

Hub Services support

You can also add external JupyterHub Services
by adding them to hub.services. Note that you are still responsible for actually
running the service somewhere (perhaps as a deployment object).

More customization options for user server environments

More options have been added under singleuser to help you customize the environment
that the user is spawned in. You can change the uid / gid of the user with singleuser.uid
and singleuser.fsGid, mount extra volumes with singleuser.storage.extraVolumes &
singleuser.storage.extraVolumeMounts and provide extra environment variables with
singleuser.extraEnv.

Hamid Hassan

Hamid Hassan is a fast bowler who currently plays for the Afghanistan National
Cricket Team. With nicknames ranging from
"Afghanistan's David Beckham" to
"Rambo",
he is considered by many to be Afghanistan's first Cricket Superhero. Currently
known for fast (145km/h+) deliveries, cartwheeling celebrations, war painted
face and having had to flee Afghanistan as a child to escape from war. He says
he plays because "We are ambassadors for our country and we want to show the
world that Afghanistan is not like people recognise it by terrorists and these
things. We want them to know that we have a lot of talent as well"

Contributors

This release wouldn't have been possible without the wonderful contributors
to the zero-to-jupyterhub,
JupyterHub, KubeSpawner
and OAuthenticator repos.
We'd like to thank everyone who contributed in any form - Issues, commenting
on issues, PRs and reviews since the last Zero to JupyterHub release.

In alphabetical order,

Don't miss a new zero-to-jupyterhub-k8s release

NewReleases is sending notifications on new releases.