kubeflow / website

Kubeflow's public website
Creative Commons Attribution 4.0 International
145 stars 753 forks source link

Document how to spin up a web application on a Kubeflow cluster #2044

Closed jlewi closed 3 years ago

jlewi commented 3 years ago

One of the things that's really useful about Kubeflow is that the Kubeflow deployments will take care of setting up secured ingress behind which you can easily setup and deploy web applications like TensorBoard, Tektkon, a custom flask app, etc...

We should document this process.

The process basically consists of 3 steps

  1. Create a K8s resource (Deployment, Statefulset, etc...) to deploy your service
  2. Create a K8s service pointing at your service
  3. Create a virtual service to add a reverse proxy route to your service.

The mnist E2E example does this. https://github.com/kubeflow/examples/blob/master/mnist/mnist_gcp.ipynb

If you look at the section "Deploy the UI for the mnist app" it contains K8s resources for all 3 of the above.

issue-label-bot[bot] commented 3 years ago

Issue-Label Bot is automatically applying the labels:

Label Probability
platform/gcp 0.62
kind/feature 0.88
area/docs 0.88

Please mark this comment with :thumbsup: or :thumbsdown: to give our bot feedback! Links: app homepage, dashboard and code for this bot.

MarcSkovMadsen commented 3 years ago

I am really interested in knowing how to do this for panel apps (see https://github.com/kubeflow/kubeflow/issues/5194) as well as dash, Streamlit and voila apps.

I believe this is a killer feature if it could be done easily.

davidspek commented 3 years ago

I would be very interested in this as well. I am looking into adding CephFS support to Kale and it would be nice to be able to route the Dashboard with secured ingress through Kubeflow. I am also looking at setting up https://www.metaboanalyst.ca/home.xhtml, which might benefit from this as well.

omrishiv commented 3 years ago

@jlewi, I'm interested in potentially taking this on. What exactly are you looking to deploy? Just an arbitrary webapp? Is there a reason we would want to encourage deploying arbitrary apps into a kubeflow environment?

It seems that this issue may be more describing how to use a Kubernetes/istio environment; from the issue description, I'm not sure how it relates specifically to Kubeflow.

jlewi commented 3 years ago

I'm closing this issue because while I think this is very useful information I no longer think it belongs in Kubeflow because

Per #2293 we are moving in the direction of having separate docs focused on each application; so its unclear where this type of generic documentation would live.

This type of information seems like it might better suited for a blog post (not necessarily on the Kubeflow blog).