全部产品
Search
文档中心

Container Service for Kubernetes:Konfigurasi MLflow Model Registry

更新时间:Jul 06, 2025

MLflow adalah platform manajemen siklus hidup pembelajaran mesin open source yang digunakan untuk melacak informasi pelatihan model, mengelola model pembelajaran mesin, dan menerapkan model. Topik ini menjelaskan cara mengonfigurasi MLflow Model Registry untuk fitur manajemen model.

Pengenalan MLflow Model Registry

Untuk informasi lebih lanjut tentang MLflow Model Registry, lihat MLflow Model Registry - Dokumentasi MLflow.

Prasyarat

  • Sebuah kluster Container Service for Kubernetes (ACK) Pro yang menjalankan Kubernetes 1.20 atau versi lebih baru telah dibuat. Untuk informasi lebih lanjut, lihat Buat kluster ACK Pro.

  • Sebuah instans ApsaraDB RDS for PostgreSQL telah dibuat. Untuk informasi lebih lanjut, lihat Buat instans ApsaraDB RDS for PostgreSQL.

    Disarankan untuk memilih virtual private cloud (VPC) dari kluster ACK saat membuat instans ApsaraDB RDS for PostgreSQL dan menambahkan blok CIDR VPC ke daftar putih instans agar dapat diakses menggunakan alamat IP pribadi. Jika instans ApsaraDB RDS for PostgreSQL dan kluster ACK berada di VPC yang berbeda, pastikan akses Internet diaktifkan untuk instans ApsaraDB RDS for PostgreSQL dan tambahkan blok CIDR VPC dari kluster ACK ke daftar putih instans. Untuk informasi lebih lanjut, lihat Konfigurasikan daftar putih alamat IP.

  • Akun pengguna biasa bernama mlflow telah dibuat pada instans ApsaraDB RDS for PostgreSQL. Untuk informasi lebih lanjut, lihat Buat akun.

  • Sebuah database bernama mlflow_store telah dibuat pada instans ApsaraDB RDS for PostgreSQL untuk menyimpan metadata model. Authorized By disetel ke mlflow. Untuk informasi lebih lanjut, lihat Buat database.

  • (Opsional) Sebuah database bernama mlflow_basic_auth telah dibuat pada instans ApsaraDB RDS for PostgreSQL untuk menyimpan informasi autentikasi pengguna MLflow. Authorized By disetel ke mlflow. Untuk informasi lebih lanjut, lihat Buat database.

  • Klien Arena dikonfigurasi untuk mengelola model. Versi Arena adalah 0.9.14 atau lebih baru. Untuk informasi lebih lanjut, lihat Konfigurasikan klien Arena.

Langkah 1: Terapkan MLflow di kluster ACK

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

  2. Di halaman Clusters, temukan kluster yang diinginkan dan klik namanya. Di panel navigasi sebelah kiri, pilih Applications > Helm.

  3. Klik Deploy. Di panel Deploy, atur Application Name menjadi mlflow dan Namespace menjadi kube-ai. Di bagian Chart, cari dan klik mlflow, lalu klik Next. Dalam pesan yang muncul, konfirmasikan apakah akan menggunakan mlflow sebagai namespace default untuk chart.

    • Untuk menggunakan Konsol Pengembang AI untuk mengelola model, terapkan MLflow di namespace kube-ai dan gunakan nama rilis default mlflow.

    • Untuk menggunakan Arena untuk mengelola model, terapkan MLflow di namespace apa pun dan gunakan nama rilis default mlflow.

  4. Di panel Deploy, konfigurasikan parameter chart.

    1. Konfigurasikan parameter defaultArtifactRoot dan backendStore seperti yang ditunjukkan dalam contoh berikut:

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

      Ganti backendStore.backendStoreUri dengan alamat database bernama mlflow_store di bagian Prasyarat. Contoh: postgresql+psycopg2://mlflow:<password>@pgm-xxxxxxxxxxxxxx.pg.rds.aliyuncs.com/mlflow_store.

      Penting

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

      Masuk ke Konsol RDS PostgreSQL, klik ID Instans > Masuk ke Database > Titik Akhir Internal/Publik untuk mendapatkan titik akhir database pgm-xxxxxxxxxxxxxx.pg.rds.aliyuncs.com.

      Untuk informasi lebih lanjut, lihat Koneksi database.

    2. (Opsional) Untuk mengaktifkan BasicAuth, konfigurasikan parameter berikut.

      trackingServer:
        # -- Menentukan mode server pelacakan mlflow berjalan, opsi yang tersedia adalah `serve-artifacts`, `no-serve-artifacts` dan `artifacts-only`
        mode: no-serve-artifacts
        # -- Menentukan lokasi artefak default untuk pencatatan, data akan dicatat ke `mlflow-artifacts/:` jika penyajian artefak diaktifkan, jika tidak `./mlruns`
        defaultArtifactRoot: "./mlruns"
        
        # Konfigurasi otentikasi dasar,
        # untuk informasi lebih lanjut, kunjungi https://mlflow.org/docs/latest/auth/index.html#configuration
        basicAuth:
          # -- Menentukan apakah akan mengaktifkan otentikasi dasar
          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 misalnya `<dialect>+<driver>://<username>:<password>@<host>:<port>/<database>`
          databaseUri: postgresql+psycopg2://<username>:<password>@pgm-xxxxxxxxxxxxxx.pg.rds.aliyuncs.com/mlflow_basic_auth
          # -- Nama pengguna admin default jika admin belum dibuat
          adminUsername: admin
          # -- Kata sandi 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:
        # -- Backend store uri misalnya `<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 alamat database bernama mlflow_basic_auth di bagian Prasyarat. Contoh: postgresql+psycopg2://<username>:<password>@pgm-xxxxxxxxxxxxxx.pg.rds.aliyuncs.com/mlflow_basic_auth.

      • Konfigurasikan parameter trackingServer.basicAuth.adminUsername dan trackingServer.basicAuth.adminPassword untuk menetapkan nama pengguna dan kata sandi awal administrator MLflow. Anda hanya perlu membuat administrator jika tidak ada administrator yang ada.

    Untuk informasi lebih lanjut tentang parameter MLflow, lihat MLflow.

Langkah 2: Akses antarmuka web MLflow yang diterapkan di kluster ACK

  1. Jalankan perintah berikut untuk meneruskan lalu lintas dari port lokal 5000 ke pod layanan antarmuka web MLflow:

    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. Masukkan http://127.0.0.1:5000 ke bilah alamat browser untuk mengakses antarmuka web MLflow.

    image

Apa yang harus dilakukan selanjutnya: kelola model

Gunakan suite AI cloud-native untuk mengelola model di MLflow Model Registry. Untuk informasi lebih lanjut tentang cara menggunakan Konsol Pengembang AI dan CLI Arena untuk mengelola model, lihat Kelola model di MLflow Model Registry melalui Arena.