All Products
Search
Document Center

Container Service for Kubernetes:Konfigurasikan registri model MLflow

Last Updated:Sep 17, 2026

MLflow adalah platform open-source untuk siklus hidup pembelajaran mesin yang digunakan untuk melacak pelatihan, mengelola model, dan menerapkannya. Topik ini menjelaskan cara mengonfigurasi registri model MLflow untuk manajemen model dalam kluster ACK Pro dengan backend RDS PostgreSQL.

Pengenalan registri model MLflow

Lihat MLflow Model Registry — MLflow documentation.

Prasyarat

  • Kluster ACK Pro telah dibuat dengan Kubernetes 1.20 atau versi yang lebih baru.

  • Instans RDS PostgreSQL telah dibuat.

    Disarankan untuk memilih VPC yang sama dengan kluster ACK Anda dan menambahkan blok CIDR-nya ke daftar putih untuk akses internal. Jika instans RDS dan kluster ACK berada di VPC yang berbeda, aktifkan akses jaringan publik dan tambahkan blok CIDR VPC kluster ACK ke daftar putih.

  • Akun standar account bernama mlflow telah dibuat di instans RDS PostgreSQL.

  • Database bernama mlflow_store telah dibuat di instans RDS PostgreSQL untuk metadata model. Atur Authorized Account ke akun mlflow.

  • (Opsional) Database bernama mlflow_basic_auth telah dibuat di instans RDS PostgreSQL untuk data otentikasi MLflow. Atur Authorized Account ke akun mlflow.

  • Klien Arena telah dikonfigurasi (versi 0.9.14 atau lebih baru).

Langkah 1: Deploy MLflow di kluster ACK

  1. Masuk ke ACK console. Di panel navigasi kiri, klik Clusters.

  2. Pada halaman Clusters, klik nama kluster Anda. Di panel navigasi kiri, klik Applications > Helm.

  3. Klik Deploy. Pada halaman Deploy, atur Application Name menjadi mlflow dan Namespace menjadi kube-ai. Di bagian Chart, cari dan pilih mlflow. Klik Next. Konfirmasi apakah akan menggunakan mlflow sebagai namespace default untuk Chart tersebut.

    • Untuk menggunakan konsol AI Suite, deploy di namespace kube-ai dengan nama rilis default mlflow.

    • Untuk menggunakan Arena, deploy di namespace apa pun dengan nama rilis default mlflow.

  4. Pada halaman Create, konfigurasikan parameter Chart.

    1. Konfigurasikan defaultArtifactRoot dan backendStore:

      trackingServer:
        # -- Menentukan mode jalannya server pelacakan mlflow, opsi yang tersedia adalah `serve-artifacts`, `no-serve-artifacts`, dan `artifacts-only`
        mode: no-serve-artifacts
        # -- Menentukan lokasi artefak default untuk pencatatan log; data akan dicatat ke `mlflow-artifacts/:` jika penyajian artefak diaktifkan, selain itu ke `./mlruns`
        defaultArtifactRoot: "./mlruns"
      # Untuk informasi lebih lanjut tentang cara mengonfigurasi backend store, kunjungi https://mlflow.org/docs/latest/tracking/backend-stores.html
      backendStore:
        # -- URI backend store, contoh: `<dialect>+<driver>://<username>:<password>@<host>:<port>/<database>`
        backendStoreUri: postgresql+psycopg2://mlflow:<password>@pgm-xxxxxxxxxxxxxx.pg.rds.aliyuncs.com/mlflow_store

      Ganti backendStore.backendStoreUri dengan titik akhir database mlflow_store Anda.

      Penting

      Jika instans RDS dan kluster ACK berada di VPC yang sama, gunakan titik akhir internal. Jika tidak, gunakan titik akhir publik dan pastikan kluster ACK dapat mengaksesnya.

      Masuk ke Konsol RDS PostgreSQL. Klik Instance ID > Database Connection > Internal/External Endpoint untuk mendapatkan titik akhir, seperti pgm-xxxxxxxxxxxxxx.pg.rds.aliyuncs.com.

      Lihat Hubungkan ke database.

    2. (Opsional) Untuk mengaktifkan BasicAuth:

      trackingServer:
        # -- Menentukan mode jalannya server pelacakan mlflow, opsi yang tersedia adalah `serve-artifacts`, `no-serve-artifacts`, dan `artifacts-only`
        mode: no-serve-artifacts
        # -- Menentukan lokasi artefak default untuk pencatatan log; data akan dicatat ke `mlflow-artifacts/:` jika penyajian artefak diaktifkan, selain itu ke `./mlruns`
        defaultArtifactRoot: "./mlruns"
        # Konfigurasi autentikasi dasar,
        # untuk informasi lebih lanjut, kunjungi https://mlflow.org/docs/latest/auth/index.html#configuration
        basicAuth:
          # -- Menentukan apakah autentikasi dasar diaktifkan
          enabled: true
          # -- Izin default pada semua sumber daya, opsi yang tersedia adalah `READ`, `EDIT`, `MANAGE`, dan `NO_PERMISSIONS`
          defaultPermission: NO_PERMISSIONS
          # -- Lokasi database untuk menyimpan izin dan data pengguna, contoh: `<dialect>+<driver>://<username>:<password>@<host>:<port>/<database>`
          databaseUri: postgresql+psycopg2://<username>:<password>@pgm-xxxxxxxxxxxxxx.pg.rds.aliyuncs.com/mlflow_basic_auth
          # -- Username admin default jika admin belum dibuat
          adminUsername: admin
          # -- Password admin default jika admin belum dibuat
          adminPassword: password
          # -- Fungsi untuk mengotentikasi permintaan
          authorizationFunction: mlflow.server.auth:authenticate_request_basic_auth
      # Untuk informasi lebih lanjut tentang cara mengonfigurasi backend store, kunjungi https://mlflow.org/docs/latest/tracking/backend-stores.html
      backendStore:
        # -- URI backend store, contoh: `<dialect>+<driver>://<username>:<password>@<host>:<port>/<database>`
        backendStoreUri: postgresql+psycopg2://mlflow:<password>@pgm-xxxxxxxxxxxxxx.pg.rds.aliyuncs.com/mlflow_store
      • Ganti trackingServer.basicAuth.databaseUri dengan titik akhir database mlflow_basic_auth Anda.

      • Atur trackingServer.basicAuth.adminUsername dan trackingServer.basicAuth.adminPassword ke kredensial admin MLflow. Akun admin baru hanya akan dibuat jika belum ada sebelumnya.

    Semua parameter Chart tercantum di MLflow.

Langkah 2: Akses UI Web MLflow yang dideploy di Kubernetes

  1. Teruskan layanan UI Web MLflow ke port lokal 5000:

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

    Output yang diharapkan:

    Forwarding from 127.0.0.1:5000 -> 5000
    Forwarding from [::1]:5000 -> 5000
    Handling connection for 5000
    Handling connection for 5000
    ...
  2. Buka http://127.0.0.1:5000 untuk melihat UI Web MLflow.

    Halaman eksperimen Default muncul dengan tulisan "No runs logged", yang mengonfirmasi bahwa MLflow telah dideploy dan sedang berjalan.

Langkah selanjutnya: Manajemen model

Kelola model di registri MLflow menggunakan konsol AI Suite atau Arena. Lihat Kelola model registri MLflow menggunakan Arena.