Skip to main content
NetApp artificial intelligence solutions
La version française est une traduction automatique. La version anglaise prévaut sur la française en cas de divergence.

Déploiement de MLflow

Cette section décrit les tâches que vous devez effectuer pour déployer MLflow dans votre cluster Kubernetes.

Remarque Il est possible de déployer MLflow sur d’autres plateformes que Kubernetes. Le déploiement de MLflow sur des plateformes autres que Kubernetes n’entre pas dans le cadre de cette solution.

Prérequis

Avant d’effectuer l’exercice de déploiement décrit dans cette section, nous supposons que vous avez déjà effectué les tâches suivantes :

  1. Vous disposez déjà d’un cluster Kubernetes fonctionnel.

  2. Vous avez déjà installé et configuré NetApp Trident dans votre cluster Kubernetes. Pour plus de détails sur Trident, reportez-vous au"Documentation Trident" .

Installer Helm

MLflow est déployé à l'aide de Helm, un gestionnaire de packages populaire pour Kubernetes. Avant de déployer MLflow, vous devez installer Helm sur votre nœud de contrôle Kubernetes. Pour installer Helm, suivez les instructions "instructions d'installation" dans la documentation officielle de Helm.

Définir la classe de stockage Kubernetes par défaut

Avant de déployer MLflow, vous devez désigner une StorageClass par défaut dans votre cluster Kubernetes. Pour désigner une StorageClass par défaut au sein de votre cluster, suivez les instructions décrites dans le"Déploiement de Kubeflow" section. Si vous avez déjà désigné une StorageClass par défaut au sein de votre cluster, vous pouvez ignorer cette étape.

Déployer MLflow

Une fois les prérequis remplis, vous pouvez commencer le déploiement de MLflow à l'aide du graphique Helm.

Configurer le déploiement du graphique Helm MLflow.

Avant de déployer MLflow à l'aide du graphique Helm, nous pouvons configurer le déploiement pour utiliser la classe de stockage NetApp Trident et modifier d'autres paramètres en fonction de nos besoins à l'aide d'un fichier config.yaml. Un exemple de fichier config.yaml peut être trouvé à l'adresse : https://github.com/bitnami/charts/blob/main/bitnami/mlflow/values.yaml

Remarque Vous pouvez définir la classe de stockage Trident sous le paramètre global.defaultStorageClass dans le fichier config.yaml (par exemple storageClass : « ontap-flexvol »).

Installation du Helm Chart

Le graphique Helm peut être installé avec le fichier config.yaml personnalisé pour MLflow à l'aide de la commande suivante :

helm install oci://registry-1.docker.io/bitnamicharts/mlflow -f config.yaml --generate-name --namespace jupyterhub
Remarque La commande déploie MLflow sur le cluster Kubernetes dans la configuration personnalisée via le fichier config.yaml fourni. MLflow est déployé dans l'espace de noms donné et un nom de version aléatoire est donné via Kubernetes pour la version.

Vérifier le déploiement

Une fois le déploiement du graphique Helm terminé, vous pouvez vérifier si le service est accessible en utilisant :

kubectl get service -n jupyterhub
Remarque Remplacez jupyterhub par l'espace de noms que vous avez utilisé lors du déploiement.

Vous devriez voir les services suivants :

NAME                              TYPE        CLUSTER-IP      EXTERNAL-IP   PORT(S)           AGE
mlflow-1719843029-minio           ClusterIP   10.233.22.4     <none>        80/TCP,9001/TCP   25d
mlflow-1719843029-postgresql      ClusterIP   10.233.5.141    <none>        5432/TCP          25d
mlflow-1719843029-postgresql-hl   ClusterIP   None            <none>        5432/TCP          25d
mlflow-1719843029-tracking        NodePort    10.233.2.158    <none>        30002:30002/TCP   25d
Remarque Nous avons modifié le fichier config.yaml pour utiliser le service NodePort pour accéder à MLflow sur le port 30002.

Accéder à MLflow

Une fois que tous les services liés à MLflow sont opérationnels, vous pouvez y accéder en utilisant l'adresse IP NodePort ou LoadBalancer donnée (par exemple http://10.61.181.109:30002 )