🚀 Coba Zilliz Cloud, Milvus yang sepenuhnya terkelola, secara gratis—rasakan performa 10x lebih cepat! Coba Sekarang>>

milvus-logo
LFAI
Beranda
  • Memulai
  • Home
  • Docs
  • Memulai

  • Instal Milvus

  • Jalankan Milvus Didistribusikan

  • Bagan Helm

Menjalankan Milvus di Kubernetes dengan Helm

Halaman ini mengilustrasikan cara memulai instans Milvus di Kubernetes menggunakan bagan Helm Milvus.

Gambaran umum

Helm menggunakan format pengemasan yang disebut bagan. Bagan adalah kumpulan berkas yang mendeskripsikan sekumpulan sumber daya Kubernetes terkait. Milvus menyediakan sekumpulan bagan untuk membantu Anda menerapkan dependensi dan komponen Milvus.

Prasyarat

  • Instal Helm CLI.

  • Buat kluster K8s.

  • Instal StorageClass. Anda dapat memeriksa StorageClass yang terinstal sebagai berikut.

    $ kubectl get sc
    
    NAME                  PROVISIONER                  RECLAIMPOLICY    VOLUMEBIINDINGMODE    ALLOWVOLUMEEXPANSION     AGE
    standard (default)    k8s.io/minikube-hostpath     Delete           Immediate             false 
    
  • Periksa persyaratan perangkat keras dan perangkat lunak sebelum instalasi.

  • Sebelum menginstal Milvus, disarankan untuk menggunakan Milvus Sizing Tool untuk memperkirakan kebutuhan perangkat keras berdasarkan ukuran data Anda. Hal ini membantu memastikan kinerja dan alokasi sumber daya yang optimal untuk instalasi Milvus Anda.

Jika Anda mengalami masalah dalam menarik gambar, hubungi kami di community@zilliz.com dengan rincian tentang masalahnya, dan kami akan memberikan dukungan yang diperlukan.

Menginstal Milvus Helm Chart

Sebelum menginstal Milvus Helm Charts, Anda harus menambahkan repositori Milvus Helm.

$ helm repo add milvus https://zilliztech.github.io/milvus-helm/

Repositori Milvus Helm Charts di https://github.com/milvus-io/milvus-helm telah diarsipkan dan Anda dapat memperoleh pembaruan lebih lanjut dari https://github.com/zilliztech/milvus-helm sebagai berikut:

helm repo add zilliztech https://zilliztech.github.io/milvus-helm/
helm repo update
# upgrade existing helm release
helm upgrade my-release zilliztech/milvus

Repo yang diarsipkan masih tersedia untuk grafik hingga versi 4.0.31. Untuk rilis yang lebih baru, gunakan repo yang baru.

Kemudian ambil grafik Milvus dari repositori sebagai berikut:

$ helm repo update

Anda selalu dapat menjalankan perintah ini untuk mengambil grafik Milvus Helm terbaru.

Instalasi online

1. Menerapkan sebuah cluster Milvus

Setelah Anda menginstal bagan Helm, Anda dapat memulai Milvus di Kubernetes. Bagian ini akan memandu Anda melalui langkah-langkah untuk memulai Milvus.

$ helm install my-release milvus/milvus

Pada perintah di atas, my-release adalah nama rilis, dan milvus/milvus adalah repositori bagan yang terinstal secara lokal. Untuk menggunakan nama yang berbeda, ganti my-release dengan nama yang Anda inginkan.

Perintah di atas men-deploy sebuah cluster Milvus dengan komponen dan dependensinya menggunakan konfigurasi default. Untuk menyesuaikan pengaturan ini, kami sarankan Anda menggunakan Milvus Sizing Tool untuk menyesuaikan konfigurasi berdasarkan ukuran data Anda yang sebenarnya, lalu mengunduh berkas YAML yang sesuai. Untuk mempelajari lebih lanjut tentang parameter konfigurasi, lihat Daftar Periksa Konfigurasi Sistem Milvus.

  • Nama rilis hanya boleh terdiri dari huruf, angka, dan tanda hubung. Titik tidak diperbolehkan dalam nama rilis.
  • Baris perintah default menginstal versi cluster Milvus saat menginstal Milvus dengan Helm. Pengaturan lebih lanjut diperlukan saat menginstal Milvus secara mandiri.
  • Menurut panduan migrasi API yang sudah tidak digunakan lagi dari Kubernetes, versi API policy/v1beta1 dari PodDisruptionBudget tidak lagi dilayani pada v1.25. Anda disarankan untuk memigrasi manifes dan klien API untuk menggunakan versi API policy/v1 sebagai gantinya.
    Sebagai solusi untuk pengguna yang masih menggunakan versi API policy/v1beta1 dari PodDisruptionBudget di Kubernetes v1.25 dan yang lebih baru, Anda dapat menjalankan perintah berikut ini untuk menginstal Milvus:
    helm install my-release milvus/milvus --set pulsar.bookkeeper.pdb.usePolicy=false,pulsar.broker.pdb.usePolicy=false,pulsar.proxy.pdb.usePolicy=false,pulsar.zookeeper.pdb.usePolicy=false
  • Lihat Bagan dan Helm Milvus untuk informasi lebih lanjut.

2. Memeriksa status klaster Milvus

Jalankan perintah berikut untuk memeriksa status semua pod dalam cluster Milvus Anda.

$ kubectl get pods

Setelah semua pod berjalan, keluaran dari perintah di atas akan serupa dengan yang berikut ini:

NAME                                             READY  STATUS   RESTARTS  AGE
my-release-etcd-0                                1/1    Running   0        3m23s
my-release-etcd-1                                1/1    Running   0        3m23s
my-release-etcd-2                                1/1    Running   0        3m23s
my-release-milvus-datanode-68cb87dcbd-4khpm      1/1    Running   0        3m23s
my-release-milvus-indexnode-5c5f7b5bd9-l8hjg     1/1    Running   0        3m24s
my-release-milvus-mixcoord-7fb9488465-dmbbj      1/1    Running   0        3m23s
my-release-milvus-proxy-6bd7f5587-ds2xv          1/1    Running   0        3m24s
my-release-milvus-querynode-5cd8fff495-k6gtg     1/1    Running   0        3m24s
my-release-minio-0                               1/1    Running   0        3m23s
my-release-minio-1                               1/1    Running   0        3m23s
my-release-minio-2                               1/1    Running   0        3m23s
my-release-minio-3                               1/1    Running   0        3m23s
my-release-pulsar-autorecovery-86f5dbdf77-lchpc  1/1    Running   0        3m24s
my-release-pulsar-bookkeeper-0                   1/1    Running   0        3m23s
my-release-pulsar-bookkeeper-1                   1/1    Running   0        98s
my-release-pulsar-broker-556ff89d4c-2m29m        1/1    Running   0        3m23s
my-release-pulsar-proxy-6fbd75db75-nhg4v         1/1    Running   0        3m23s
my-release-pulsar-zookeeper-0                    1/1    Running   0        3m23s
my-release-pulsar-zookeeper-metadata-98zbr       0/1   Completed  0        3m24s

Anda juga dapat mengakses Milvus WebUI di http://127.0.0.1:9091/webui/ untuk mempelajari lebih lanjut tentang instans Milvus Anda. Untuk detailnya, lihat Milvus WebUI.

3. Meneruskan port lokal ke Milvus

Jalankan perintah berikut untuk mendapatkan port di mana kluster Milvus Anda melayani.

$ kubectl get pod my-release-milvus-proxy-6bd7f5587-ds2xv --template
='{{(index (index .spec.containers 0).ports 0).containerPort}}{{"\n"}}'
19530

Keluarannya menunjukkan bahwa instans Milvus melayani pada port default 19530.

Jika Anda telah menggunakan Milvus dalam mode mandiri, ubah nama pod dari my-release-milvus-proxy-xxxxxxxxxx-xxxxx menjadi my-release-milvus-xxxxxxxxxx-xxxxx.

Kemudian, jalankan perintah berikut untuk meneruskan porta lokal ke porta tempat Milvus melayani.

$ kubectl port-forward service/my-release-milvus 27017:19530
Forwarding from 127.0.0.1:27017 -> 19530

Secara opsional, Anda dapat menggunakan :19530 dan bukan 27017:19530 pada perintah di atas untuk membiarkan kubectl mengalokasikan porta lokal untuk Anda sehingga Anda tidak perlu mengelola konflik porta.

Secara default, penerusan porta kubectl hanya mendengarkan localhost. Gunakan flag address jika Anda ingin Milvus mendengarkan pada alamat IP yang dipilih atau semua alamat IP. Perintah berikut ini membuat port-forward mendengarkan semua alamat IP pada mesin host.

Mengakses Milvus WebUI

Milvus dilengkapi dengan alat GUI bawaan yang disebut Milvus WebUI yang dapat Anda akses melalui peramban. Milvus Web UI meningkatkan kemampuan pengamatan sistem dengan antarmuka yang sederhana dan intuitif. Anda dapat menggunakan Milvus Web UI untuk mengamati statistik dan metrik komponen dan ketergantungan Milvus, memeriksa detail basis data dan koleksi, dan membuat daftar konfigurasi Milvus yang terperinci. Untuk detail tentang Milvus Web UI, lihat Milvus WebUI

Untuk mengaktifkan akses ke Milvus Web UI, anda perlu melakukan port-forward proxy pod ke port lokal.

$ kubectl port-forward --address 0.0.0.0 service/my-release-milvus 27018:9091
Forwarding from 0.0.0.0:27018 -> 9091

Sekarang, Anda dapat mengakses Milvus Web UI di http://localhost:27018.

Instalasi offline

Jika Anda berada di lingkungan yang dibatasi jaringan, ikuti prosedur di bagian ini untuk memulai cluster Milvus.

1. Dapatkan manifes Milvus

Jalankan perintah berikut untuk mendapatkan manifes Milvus.

$ helm template my-release milvus/milvus > milvus_manifest.yaml

Perintah di atas membuat templat bagan untuk klaster Milvus dan menyimpan hasilnya ke berkas manifes bernama milvus_manifest.yaml. Dengan menggunakan manifes ini, Anda dapat menginstal klaster Milvus dengan komponen dan dependensinya dalam pod yang terpisah.

  • Untuk menginstal instans Milvus dalam mode mandiri di mana semua komponen Milvus berada dalam satu pod, Anda harus menjalankan helm template my-release --set cluster.enabled=false --set etcd.replicaCount=1 --set minio.mode=standalone --set pulsar.enabled=false milvus/milvus > milvus_manifest.yaml sebagai gantinya untuk merender templat bagan untuk instans Milvus dalam mode mandiri.
  • Untuk mengubah konfigurasi Milvus, unduh template value.yaml template, letakkan pengaturan yang Anda inginkan di dalamnya, dan gunakan helm template -f values.yaml my-release milvus/milvus > milvus_manifest.yaml untuk merender manifes yang sesuai.

2. Unduh skrip penarik gambar

Skrip penarik gambar dikembangkan dalam bahasa Python. Anda harus mengunduh skrip bersama dengan dependensinya di file requirement.txt.

$ wget https://raw.githubusercontent.com/milvus-io/milvus/master/deployments/offline/requirements.txt
$ wget https://raw.githubusercontent.com/milvus-io/milvus/master/deployments/offline/save_image.py

3. Menarik dan menyimpan gambar

Jalankan perintah berikut untuk menarik dan menyimpan gambar yang diperlukan.

$ pip3 install -r requirements.txt
$ python3 save_image.py --manifest milvus_manifest.yaml

Gambar-gambar tersebut akan ditarik ke dalam sub-folder bernama images di direktori saat ini.

4. Memuat gambar

Anda sekarang dapat memuat gambar ke host di lingkungan yang dibatasi jaringan sebagai berikut:

$ for image in $(find . -type f -name "*.tar.gz") ; do gunzip -c $image | docker load; done

5. Menyebarkan Milvus

$ kubectl apply -f milvus_manifest.yaml

Hingga saat ini, Anda dapat mengikuti langkah 2 dan 3 dari penginstalan online untuk memeriksa status klaster dan meneruskan porta lokal ke Milvus.

Memutakhirkan cluster Milvus yang sedang berjalan

Jalankan perintah berikut untuk meng-upgrade cluster Milvus yang sedang berjalan ke versi terbaru:

$ helm repo update
$ helm upgrade my-release zilliztech/milvus

Copot pemasangan Milvus

Jalankan perintah berikut untuk menghapus instalan Milvus.

$ helm uninstall my-release

Apa selanjutnya

Setelah menginstal Milvus di Docker, Anda dapat:

Coba Milvus yang Dikelola secara Gratis

Zilliz Cloud bebas masalah, didukung oleh Milvus dan 10x lebih cepat.

Mulai
Umpan balik

Apakah halaman ini bermanfaat?