Tous les produits
Search
Centre de documentation

Container Service for Kubernetes:Configure the MLflow model registry

Dernière mise à jour :Sep 16, 2026

MLflow est une plateforme open source de cycle de vie du machine learning permettant de suivre les exécutions d'entraînement, de gérer les modèles et de les déployer. Cette rubrique explique comment configurer le registre de modèles MLflow pour la gestion des modèles dans un cluster ACK Pro avec un backend RDS PostgreSQL.

Présentation du registre de modèles MLflow

Consultez la documentation Registre de modèles MLflow — Documentation MLflow.

Prérequis

  • Un cluster ACK Pro est créé avec Kubernetes 1.20 ou une version ultérieure.

  • Une instance RDS PostgreSQL est créée.

    Nous vous recommandons de sélectionner le même VPC que votre cluster ACK et d'ajouter son bloc CIDR à la liste d'autorisation pour un accès interne. Si l'instance RDS et le cluster ACK se trouvent dans des VPC différents, activez l'accès au réseau public et ajoutez le bloc CIDR du VPC du cluster ACK à la liste d'autorisation.

  • Un compte standard nommé mlflow est créé dans l'instance RDS PostgreSQL.

  • Une base de données nommée mlflow_store est créée dans l'instance RDS PostgreSQL pour les métadonnées des modèles. Définissez Authorized Account sur le compte mlflow.

  • (Facultatif) Une base de données nommée mlflow_basic_auth est créée dans l'instance RDS PostgreSQL pour les données d'authentification MLflow. Définissez Authorized Account sur le compte mlflow.

  • Le client Arena est configuré (version 0.9.14 ou ultérieure).

Étape 1 : Déployer MLflow dans un cluster ACK

  1. Connectez-vous à la console ACK. Dans le volet de navigation de gauche, cliquez sur Clusters.

  2. Sur la page Clusters, cliquez sur le nom de votre cluster. Dans le volet de navigation de gauche, cliquez sur Applications > Helm.

  3. Cliquez sur Deploy. Sur la page Deploy, définissez Application Name sur mlflow et Namespace sur kube-ai. Dans Chart, recherchez et sélectionnez mlflow. Cliquez sur Next. Confirmez si vous souhaitez utiliser mlflow comme namespace par défaut pour le Chart.

    • Pour utiliser la console AI Suite, déployez dans le namespace kube-ai avec le nom de release par défaut mlflow.

    • Pour utiliser Arena, déployez dans n'importe quel namespace avec le nom de release par défaut mlflow.

  4. Sur la page Create, configurez les paramètres du Chart.

    1. Configurez defaultArtifactRoot et backendStore :

      trackingServer:
        # -- Specifies which mode mlflow tracking server run with, available options are `serve-artifacts`, `no-serve-artifacts` and `artifacts-only`
        mode: no-serve-artifacts
        # -- Specifies a default artifact location for logging, data will be logged to `mlflow-artifacts/:` if artifact serving is enabled, otherwise `./mlruns`
        defaultArtifactRoot: "./mlruns"
      # For more information about how to configure backend store, please visit https://mlflow.org/docs/latest/tracking/backend-stores.html
      backendStore:
        # -- Backend store uri e.g. `<dialect>+<driver>://<username>:<password>@<host>:<port>/<database>`
        backendStoreUri: postgresql+psycopg2://mlflow:<password>@pgm-xxxxxxxxxxxxxx.pg.rds.aliyuncs.com/mlflow_store

      Remplacez backendStore.backendStoreUri par l'endpoint de votre base de données mlflow_store.

      Important

      Si l'instance RDS et le cluster ACK se trouvent dans le même VPC, utilisez l'endpoint interne. Sinon, utilisez l'endpoint public et assurez-vous que le cluster ACK peut y accéder.

      Connectez-vous à la console RDS PostgreSQL. Cliquez sur Instance ID > Database Connection > Internal/External Endpoint pour obtenir l'endpoint, par exemple pgm-xxxxxxxxxxxxxx.pg.rds.aliyuncs.com.

      Consultez la rubrique Se connecter à une base de données.

    2. (Facultatif) Pour activer BasicAuth :

      trackingServer:
        # -- Specifies which mode mlflow tracking server run with, available options are `serve-artifacts`, `no-serve-artifacts` and `artifacts-only`
        mode: no-serve-artifacts
        # -- Specifies a default artifact location for logging, data will be logged to `mlflow-artifacts/:` if artifact serving is enabled, otherwise `./mlruns`
        defaultArtifactRoot: "./mlruns"
        # Basic authentication configuration,
        # for more information, please visit https://mlflow.org/docs/latest/auth/index.html#configuration
        basicAuth:
          # -- Specifies whether to enable basic authentication
          enabled: true
          # -- Default permission on all resources, available options are `READ`, `EDIT`, `MANAGE` and `NO_PERMISSIONS`
          defaultPermission: NO_PERMISSIONS
          # -- Database location to store permissions and user data e.g. `<dialect>+<driver>://<username>:<password>@<host>:<port>/<database>`
          databaseUri: postgresql+psycopg2://<username>:<password>@pgm-xxxxxxxxxxxxxx.pg.rds.aliyuncs.com/mlflow_basic_auth
          # -- Default admin username if the admin is not already created
          adminUsername: admin
          # -- Default admin password if the admin is not already created
          adminPassword: password
          # -- Function to authenticate requests
          authorizationFunction: mlflow.server.auth:authenticate_request_basic_auth
      # For more information about how to configure backend store, please visit https://mlflow.org/docs/latest/tracking/backend-stores.html
      backendStore:
        # -- Backend store uri e.g. `<dialect>+<driver>://<username>:<password>@<host>:<port>/<database>`
        backendStoreUri: postgresql+psycopg2://mlflow:<password>@pgm-xxxxxxxxxxxxxx.pg.rds.aliyuncs.com/mlflow_store
      • Remplacez trackingServer.basicAuth.databaseUri par l'endpoint de votre base de données mlflow_basic_auth.

      • Définissez trackingServer.basicAuth.adminUsername et trackingServer.basicAuth.adminPassword sur les identifiants de l'administrateur MLflow. Un nouveau compte administrateur est créé uniquement s'il n'existe pas déjà.

    Tous les paramètres du Chart sont répertoriés dans MLflow.

Étape 2 : Accéder à l'interface Web MLflow déployée sur Kubernetes

  1. Redirigez le service de l'interface Web MLflow vers le port local 5000 :

    kubectl port-forward -n kube-ai services/mlflow 5000

    Résultat attendu :

    Forwarding from 127.0.0.1:5000 -> 5000
    Forwarding from [::1]:5000 -> 5000
    Handling connection for 5000
    Handling connection for 5000
    ...
  2. Accédez à http://127.0.0.1:5000 pour afficher l'interface Web MLflow.

    La page d'expérience Default apparaît avec « No runs logged », ce qui confirme que MLflow est déployé et en cours d'exécution.

Étapes suivantes : Gestion des modèles

Gérez les modèles dans le registre MLflow avec la console AI Suite ou Arena. Consultez la rubrique Gérer les modèles du registre MLflow à l'aide d'Arena.