yuvipanda / kubessh

SSH into a kubernetes pod per user
Apache License 2.0
48 stars 11 forks source link

Using existing load balancer in helm chart #30

Open costrouc opened 4 years ago

costrouc commented 4 years ago

Not sure if this is possible but currently for qhub all resources are using nginx-ingress which shares the load balancer for all http/https traffic. Load balancers on the cloud providers are somewhat expensive and was wondering if we could reuse an existing one. Additionally this would allow for reusing the same cname/ip address for dns entries.

costrouc commented 4 years ago

Looking at https://kubernetes.github.io/ingress-nginx/user-guide/exposing-tcp-udp-services/ it looks like I can use nginx to be a tcp proxy to the kubessh service. Allowing me to set the service type for kubessh as the default ClusterIP. Going to try this out and see if this works for the use case.

yuvipanda commented 4 years ago

@costrouc ooo, this will be pretty cool since you can then use the same DNS address for jupyterhub and ssh! LMK how that goes.

dipen-epi commented 4 years ago

@costrouc were you able to reuse the ingress-nginx controller for both kubessh and ztjh. Have the same architecture and I was looking for solutions to manage ssh access to user pods launched by ztjh when I came across this!

costrouc commented 4 years ago

@dipen-epi I did not. I have actually started to move towards traefik as a reverse proxy and tcp forwarding. It looks like this is the direction that jupyterhub and dask-gateway are taking as well. I will share in this issue once I get this working though with traefik