I would like to make it possible for users to set the --max-age
seconds. I already provide a c.Spawner.options_form and my issue is I can’t see how it’s possible to get the user_options set in c.Spawner.options_form into c.JupyterHub.services for the idle-culler-service to consume.
Is there any way I can achieve this?
Many thanks
manics
September 13, 2023, 12:15pm
2
The idle culler runs as a central privileged service (as opposed to one service per user pod), so it’s not possible to pass user options.
However Jupyter Server has the ability to shut itself down, see ServerApp.shutdown_no_activity_timeout
in
https://jupyter-server.readthedocs.io/en/latest/other/full-config.html
This post is a good explanation of the difference between the two, though some of the information is out of date:
While the two aim in general to solve the same category of problem (wasted resources), they have different metrics available and different levels of action to take.
The notebook-environment configuration should in general produce better, more fine-grained results because it can do things like cull unused kernels and be aware of things like idle/busy or connected status. This lets the notebook server make more intelligent choices like “shutdown a kernel if it’s been idle for 5 minutes BUT not if…