Posts

Showing posts from April, 2023

Kubeflow in K3D with GPU Support

Image
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