Todos los productos
Search
Centro de documentos

Container Service for Kubernetes:Configure the MLflow model registry

Última actualización: Sep 17, 2026

MLflow es una plataforma de código abierto para el ciclo de vida del aprendizaje automático. Permite dar seguimiento a las ejecuciones de entrenamiento, gestionar modelos y desplegarlos. Este tema explica cómo configurar el registro de modelos de MLflow para la gestión de modelos en un clúster ACK Pro con un backend RDS PostgreSQL.

Introducción al registro de modelos de MLflow

Consulte MLflow Model Registry — documentación de MLflow.

Requisitos previos

  • Se creó un ACK Pro cluster con Kubernetes 1.20 o una versión posterior.

  • Se creó un RDS PostgreSQL instance.

    Se recomienda seleccionar la misma VPC que su clúster ACK y agregar su bloque CIDR al whitelist para el acceso interno. Si la instancia RDS y el clúster ACK están en distintas VPC, habilite el acceso por red pública y agregue el bloque CIDR de la VPC del clúster ACK a la lista blanca.

  • Se creó un account estándar llamado mlflow en la instancia RDS PostgreSQL.

  • Se creó un database llamado mlflow_store en la instancia RDS PostgreSQL para los metadatos de los modelos. Establezca Authorized Account en la cuenta mlflow.

  • (Opcional) Se creó un database llamado mlflow_basic_auth en la instancia RDS PostgreSQL para los datos de autenticación de MLflow. Establezca Authorized Account en la cuenta mlflow.

  • Se configuró el Arena client (versión 0.9.14 o posterior).

Paso 1: Desplegar MLflow en un clúster ACK

  1. Inicie sesión en la consola de ACK. En el panel de navegación izquierdo, haga clic en Clusters.

  2. En la página Clusters, haga clic en el nombre de su clúster. En el panel de navegación izquierdo, haga clic en Applications > Helm.

  3. Haga clic en Deploy. En la página Deploy, establezca Application Name como mlflow y Namespace como kube-ai. En Chart, busque y seleccione mlflow. Haga clic en Next. Confirme si desea usar mlflow como namespace predeterminado para el Chart.

    • Para usar la consola de AI Suite, despliegue en el namespace kube-ai con el nombre de versión predeterminado mlflow.

    • Para usar Arena, despliegue en cualquier namespace con el nombre de versión predeterminado mlflow.

  4. En la página Create, configure los parámetros del Chart.

    1. Configure defaultArtifactRoot y 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

      Reemplace backendStore.backendStoreUri con el endpoint de su base de datos mlflow_store.

      Importante

      Si la instancia RDS y el clúster ACK están en la misma VPC, use el endpoint interno. De lo contrario, utilice el endpoint público y asegúrese de que el clúster ACK pueda acceder a él.

      Inicie sesión en la consola de RDS PostgreSQL. Haga clic en Instance ID > Database Connection > Internal/External Endpoint para obtener el endpoint, por ejemplo, pgm-xxxxxxxxxxxxxx.pg.rds.aliyuncs.com.

      Consulte Connect to a database.

    2. (Opcional) Para habilitar 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
      • Reemplace trackingServer.basicAuth.databaseUri con el endpoint de su base de datos mlflow_basic_auth.

      • Establezca trackingServer.basicAuth.adminUsername y trackingServer.basicAuth.adminPassword con las credenciales de administrador de MLflow. Solo se crea una cuenta de administrador nueva si aún no existe una.

    Todos los parámetros del Chart se listan en MLflow.

Paso 2: Acceder a la interfaz web de MLflow desplegada en Kubernetes

  1. Redirija el servicio de la interfaz web de MLflow al puerto local 5000:

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

    Resultado esperado:

    Forwarding from 127.0.0.1:5000 -> 5000
    Forwarding from [::1]:5000 -> 5000
    Handling connection for 5000
    Handling connection for 5000
    ...
  2. Vaya a http://127.0.0.1:5000 para consultar la interfaz web de MLflow.

    Aparece la página del experimento Default con el mensaje "No runs logged", lo cual confirma que MLflow se desplegó y se está ejecutando.

Qué hacer a continuación: gestión de modelos

Gestione los modelos en el registro de MLflow mediante la consola de AI Suite o Arena. Consulte Manage MLflow registry models using Arena.