Binderhub with existing Jupyterhub


I already have a Jupyterhub deployed on EKS and I was wondering if there’s a way to just deploy Binderhub and connect it with my current instance?
It’ll help since some of the configuration is already set for the JupyterHub.


1 Like

Not at the moment, the JupyterHub Helm chart is an unconditional dependency of the BinderHub Helm chart:

You could make it a conditional dependency, but you’d still need to make changes to the JupyterHub deployment:

1 Like

If I want to service 20-30 users, which EKS instance type should I use?
Can I use smaller instances and make it scale once the CPU is all taken? (I tried it with t2, but the instance doesn’t really cross the bar of CPU to deploy a new pod)

You’ll need to monitor the resource consumption of your users, and adjust the instance type in response. It should autoscale if you’ve configured your cluster to do so. Probably the only limitation is that a singleuser pod can’t use more resources than that of a single node, so e.g. if a user requires 32GB memory for a computation your instance type needs to be bigger than that.

Right, so that’s exactly the challenge I’m hitting, right now I’m using a t3 instance with 2 VCPUs, if I allocate 1 VCPU per user, that means I can service up to 2 users from that instance. In addition, let’s say the users are just running sample non-heavy CPU POC, the autoscaling group won’t launch a new instance since the CPUs are underutilized (ignoring the fact they’re taken). Of course I can bring a compute heavy instance, but that still doesn’t allow scaling horizontally.

Is there a built in solution for that in Binder/Jupyterhub?

Z2JH includes a cluster autoscaler, but it might take some experimentation to get the results you want: