Kubeflow in K3D with GPU Support
![Image](https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgi721z0VxFKh0MYSkNgc20jtbxXlJtTWjnZtY6nu4eRuTNnsKHyQeF97tro_ws_12Sq-PgvxsyAI0jeRP2fes3ShkQO4d2nY-cmYz9SFjeliYhjsiUd0__QttXyjFuN34bIxFTsLiPd1DdK59BdoC9c5slIaJslJ-eR4nuNZVMXOHsk-EvrSu96gFi/w73-h72/Pipeline.png)
It's easy to install Kubeflow with K3D. To have GPU support, it's needed to first build a K3S image with CUDA support. This article shows how to setup Kubeflow 1.7.0, K3D v5.4.9 and K3S 1.25.6. But what do those names mean? Kubeflow is a Kubernetes based MLOps tool. It allows to manage the lifecycle of ML models. K3S is a lightweight Kubernetes distribution. And K3D runs K3S clusters in Docker, which is neat. If GPU support is needed, you have to build a K3S image with CUDA support. There is a K3D manual page to help build this image. But the manual isn't currently updated, and this Github issue nailed the process. In the end you'll have a local K3S imagem with CUDA support. After having the image built, you just need to create a K3D cluster and install Kubeflow. First, install the k3d cli . The command below creates a k8s cluster with 3 worker nodes (-a 3), with the load balancer listening on port 8080 (-p 8080:80@loadbalancer), and one gpu (--gpus=1). The --i