Deploying Charmed MLflow v2 to EKS

Welcome to the guide on How to deploy Charmed MLflow on AWS Elastic Kubernetes Service (EKS). In this guide we will create AWS EKS cluster, we will connect Juju to it and we will deploy MLflow bundle.

Prerequisites: We are assuming that you are running this tutorial on a local machine with the following specs:

Contents:

Deploy EKS cluster

See here for a complete guide on how to do exactly that.

Setup juju

Now setup your local juju to talk to remote kubernetes cloud. First install juju with:
sudo snap install juju --classic

Now connect it to the kubernetes (we chose the name kubeflow, but you can choose any other name).

juju add-k8s kubeflow 

Now create controller (we chose the name kubeflow-controller, but you can choose any other name).

juju bootstrap --no-gui kubeflow kubeflow-controller

Don’t forget to add juju model (we chose the name kubeflow, but you can choose any other name).

juju add-model kubeflow

Deploy MLflow bundle

Now deploy MLflow bundle with the following command:

juju deploy mlflow --channel=2.1/edge --trust

Wait until all charms are in active state. You can check the state of the charms with command:

juju status --watch 5s --relations