-
Couldn't load subscription status.
- Fork 21
load balanced spawner #213
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
base: master
Are you sure you want to change the base?
load balanced spawner #213
Conversation
|
Will rebase after #230 at which point this should work, |
| return { | ||
| **Spawner.get_env(self), | ||
| 'CYLC_VERSION': CYLC_VERSION, | ||
| 'JUPYTERHUB_SERVICE_PREFIX': '/user/osanders/' |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Having a brief glance at this with #230, and not marked ready for review but this line will need changing.
Nice looking pr though, happy to review when it is ready.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Yeah this was hacked a bit, should be much nicer with Jupyter Server 🤞.
0c68cbb to
53f5b05
Compare
53f5b05 to
f77fa5b
Compare
|
Rebased this now we are using Jupyter Server. The spawner works, the server is started on the remote host and the polling works correctly, but, from the hub's URL I get a 503 error and from the servers URL, a 404 so it's still not useable. I think it's missing some of the config/initialisation required to work with the hub's remote API? More investigation required. |
closes #137
Turned out that having a spawner as a plugin to a spawner was a little tricky as there's all sorts of setup Jupyterhub does.
We could also use the existing SSH spawner plugin by subclassing and overriding the
choose_remote_hostmethod and bolting on some bits. This plugin is a little over the top for us as it does file transfers etc.Simple solution, runs the command through an SSH connection, similar to how
cylc playdoes it.Here's the configuration to use it:
Unfortunately the UIS doesn't like being spawned onto other hosts, I think we need to patch the handlers with the location of the Hub. I've tried patching the
MainHandlerbut that leaves me with the following error (Hub stdout):So ATM this can't be used to spawn UIS on other hosts which makes it a bit of a chocolate teapot.
Been looking at the JupyterHub
single-userthinggy trying to figure out how to fix it. They configure their handlers quite differently (redirect rather than render) and seem to providehub-hostandhub-prefixCLI opts?https://github.com/jupyterhub/jupyterhub/blob/3fec19d191119e4203c243f44c43e74c8fe62f04/jupyterhub/singleuser/mixins.py#L141-L155
Requirements check-list
CONTRIBUTING.mdand added my name as a Code Contributor.setup.py, seerecipe/meta.yaml).