Kubeflow is community driven open source mega project to make the deployment of AI/ML stacks on cloud native platforms, such as Kubernetes and OpenShift Container Platform. Read the document to learn more about Kubeflow. For anyone who is interested in the Kubeflow project and would like to contribute, browsing through the community
project is a good start. You will get the info of the community behind the Kubeflow, study the architecture and design and involve in the community discussion.
This Kubeflow live and recorded dojo will help you understand the project deeper by presenting the architecture design and code walkthrough of major components of the Kubeflow project. You will also participate in several handson sessions to get a head start messing with the project.
However, before anyone comes to the dojo materials and thinks to contribute, he should also prepare himself with a list of things.
- Kubernetes: A broad knowledge of cloud computing and Kubernetes is must. To help this, you may watch the dojo for Kubernetes project with the IBM internal link or external link.
Most importantly, for anyone interesting in Kubeflow project the access to a Kuberenetes cluster is a must. The minimal cluster configuration for running most applications of Kubeflow is 8 vcpu, 16gb memory and at least 50gb of disk for docker registry.
We recommend run Kubeflow on Kubernetes 1.21 release. Currently, Kubeflow is not compatible with Kubernetes 1.22.
Note that during the live session for this dojo, few IBM Cloud Kubernetes clusters will be provided for hands on workshops. But the amount of the clusters is very limited and the clusters will be deleted once the workshop ends.
Alternatively, just for the purpose of this dojo, a one-node minikube
cluster running on a laptop is enough. If you need to create a minikube cluster before attending the dojo presentation, follow the minikube-setup.md to set up a minikube
cluster.
-
git and github: The Kubeflow project source code is hosted on github. Code delivery is through
git
command. You may watch the presentation with the IBM internal link or external link for git and external link for pull requests. -
golang: The main source codes are either in
golang
orpython
for the Kubeflow project. To learn more on the language, go to IBM internal link or external link. -
(Optional) Istio and KNative:Istio is a service mesh. In Kubeflow project, istio provides ingress and egress gateways. Follow IBM internal link or external link to learn more about istio. KNative is cloud native platform to deploy and manage modern serverless workloads. Together with kfserving in Kubeflow, the serverless inferencing becomes simple. Follow the IBM internal link and external link to learn more about knative.
There are dozens of projects around Kubeflow, including some of the most active. Please browse through them.
- kubeflow the main anchor project
- pipelines the ML pipelines
- manifests the manifest repoository for Kubeflow applications
- kfp-tekton the pipeline compiler to transform a Kubeflow Pipeline DSL to Tekton yaml manifest
- katib the repository for hyperparameter tuning
- kfserving the serverless inferencing on Kubernetes
- kustomize (version 3.2.0) + kubectl to Kubeflow
- website the document
- and more