すべてのプロダクト
Search
ドキュメントセンター

Container Service for Kubernetes:MLflow モデルレジストリの設定

最終更新日:Sep 17, 2026

MLflow は、トレーニング実行の追跡、モデルの管理、およびデプロイを行うためのオープンソースの機械学習ライフサイクルプラットフォームです。このトピックでは、RDS PostgreSQL をバックエンドとして使用する ACK Pro クラスターでモデル管理を行うために、MLflow モデルレジストリを設定する方法について説明します。

MLflow モデルレジストリの概要

MLflow Model Registry — MLflow documentation をご参照ください。

前提条件

  • Kubernetes 1.20 以降でACK Pro クラスターが作成されている必要があります。

  • RDS PostgreSQL インスタンスが作成されている必要があります。

    ACK クラスターと同じ VPC を選択し、内部からアクセスできるようにその CIDR ブロックをホワイトリストに追加することを推奨します。RDS インスタンスと ACK クラスターが異なる VPC にある場合は、パブリックネットワークアクセスを有効にし、ACK クラスターの VPC CIDR ブロックをホワイトリストに追加します。

  • RDS PostgreSQL インスタンスに mlflow という名前の標準アカウントが作成されている必要があります。

  • RDS PostgreSQL インスタンスに、モデルメタデータ用の mlflow_store という名前の データベース が作成されます。アカウントの権限付与mlflow アカウントに設定します。

  • (オプション) データベース mlflow_basic_auth は、MLflow 認証データ用に RDS PostgreSQL インスタンスに作成されます。アカウントの権限付与mlflow アカウントに設定します。

  • Arena クライアント (バージョン 0.9.14 以降) が設定されている必要があります。

手順 1:ACK クラスターへの MLflow のデプロイ

  1. ACKコンソールにログインします。 左側のナビゲーションウィンドウで、[クラスター] をクリックします。

  2. [クラスター] ページで、管理するクラスターの名前をクリックします。 左側のナビゲーションウィンドウで、[アプリケーション] > [ヘルム] を選択します。

  3. デプロイ をクリックします。デプロイ ページで、アプリケーション名mlflow に、名前空間kube-ai に設定します。グラフmlflow を検索して選択し、次へ をクリックします。

    • AI Suite コンソールを使用するには、デフォルトのリリース名 mlflow を使用して kube-ai Namespace にデプロイします。

    • Arena を使用するには、デフォルトのリリース名 mlflow を使用して任意の Namespace にデプロイします。

  4. デプロイ ページで、Chart のパラメーターを設定します。

    1. defaultArtifactRootbackendStore を設定します。

      trackingServer:
        # -- mlflow トラッキングサーバーの実行モードを指定します。指定可能なオプションは `serve-artifacts`、`no-serve-artifacts`、`artifacts-only` です
        mode: no-serve-artifacts
        # -- ログ記録用のデフォルトのアーティファクトの場所を指定します。アーティファクトサービングが有効な場合、データは `mlflow-artifacts/:` に記録され、それ以外の場合は `./mlruns` に記録されます
        defaultArtifactRoot: "./mlruns"
      # バックエンドストアの設定方法の詳細については、https://mlflow.org/docs/latest/tracking/backend-stores.html を参照してください
      backendStore:
        # -- バックエンドストアの URI (例: `+://:@:/`)
        backendStoreUri: postgresql+psycopg2://mlflow:<password>@pgm-xxxxxxxxxxxxxx.pg.rds.aliyuncs.com/mlflow_store

      backendStore.backendStoreUri を、実際の mlflow_store データベースのエンドポイントに置き換えます。

      重要

      RDS インスタンスと ACK クラスターが同じ VPC 内にある場合は、内部エンドポイントを使用します。そうでない場合は、パブリックエンドポイントを使用し、ACK クラスターからアクセスできることを確認してください。

      RDS PostgreSQL コンソールにログインします。[インスタンスID] > [データベース接続] > [内部/外部エンドポイント] の順にクリックして、pgm-xxxxxxxxxxxxxx.pg.rds.aliyuncs.com などのエンドポイントを取得します。

      データベースへの接続をご参照ください。

    2. (任意) Basic 認証を有効にするには、次のように設定します。

      trackingServer:
        # -- mlflow トラッキングサーバーの実行モードを指定します。指定可能なオプションは `serve-artifacts`、`no-serve-artifacts`、`artifacts-only` です
        mode: no-serve-artifacts
        # -- ログ記録用のデフォルトのアーティファクトの場所を指定します。アーティファクトサービングが有効な場合、データは `mlflow-artifacts/:` に記録され、それ以外の場合は `./mlruns` に記録されます
        defaultArtifactRoot: "./mlruns"
        # Basic 認証の設定。詳細については、https://mlflow.org/docs/latest/auth/index.html#configuration を参照してください
        basicAuth:
          # -- Basic 認証を有効にするかどうかを指定します
          enabled: true
          # -- すべてのリソースに対するデフォルトの権限です。指定可能なオプションは `READ`、`EDIT`、`MANAGE`、`NO_PERMISSIONS` です
          defaultPermission: NO_PERMISSIONS
          # -- 権限とユーザーデータを格納するデータベースの場所 (例: `+://:@:/`)
          databaseUri: postgresql+psycopg2://<username>:<password>@pgm-xxxxxxxxxxxxxx.pg.rds.aliyuncs.com/mlflow_basic_auth
          # -- 管理者がまだ作成されていない場合のデフォルトの管理者ユーザー名
          adminUsername: admin
          # -- 管理者がまだ作成されていない場合のデフォルトの管理者パスワード
          adminPassword: password
          # -- リクエストを認証する関数
          authorizationFunction: mlflow.server.auth:authenticate_request_basic_auth
      # バックエンドストアの設定方法の詳細については、https://mlflow.org/docs/latest/tracking/backend-stores.html を参照してください
      backendStore:
        # -- バックエンドストアのURI (例: `+://:@:/`)
        backendStoreUri: postgresql+psycopg2://mlflow:<password>@pgm-xxxxxxxxxxxxxx.pg.rds.aliyuncs.com/mlflow_store
      • trackingServer.basicAuth.databaseUri を、実際の mlflow_basic_auth データベースのエンドポイントに置き換えます。

      • trackingServer.basicAuth.adminUsernametrackingServer.basicAuth.adminPassword を MLflow の管理者認証情報として設定します。新しい管理者アカウントは、まだ存在しない場合にのみ作成されます。

    すべての Chart パラメーターは MLflow に記載されています。

手順 2:Kubernetes にデプロイされた MLflow Web UI へのアクセス

  1. MLflow Web UI Service をローカルポート 5000 にポートフォワードします。

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

    期待される出力:

    Forwarding from 127.0.0.1:5000 -> 5000
    Forwarding from [::1]:5000 -> 5000
    Handling connection for 5000
    Handling connection for 5000
    ...
  2. http://127.0.0.1:5000 にアクセスして、MLflow Web UI を表示します。

    "No runs logged" と表示された [Default] エクスペリメントページが表示され、MLflow がデプロイされ実行中であることが確認できます。

次のステップ:モデル管理

AI Suite コンソールまたは Arena を使用して、MLflow モデルレジストリでモデルを管理します。詳細については、「Arena を使用した MLflow モデルレジストリでのモデル管理」をご参照ください。