MilvusOperator, Helm, DockerCompose

Memperbarui Milvus Standalone dengan Milvus Operator

Panduan ini menjelaskan cara meng-upgrade deployment Milvus 2.6.x standalone ke v3.0.2 menggunakan Milvus Operator.

Prosedur ini telah diverifikasi dari Milvus 2.6.20 hingga Milvus v3.0.2 dengan Milvus Operator 1.3.0, Woodpecker, etcd dalam kluster, dan MinIO dalam kluster. Jika Anda menggunakan rilis patch Milvus 2.6.x lain, versi Operator, antrian pesan, atau konfigurasi dependensi yang berbeda, uji coba pembaruan ini terlebih dahulu di lingkungan non-produksi.

Prasyarat

  • Sebuah kluster Kubernetes dengan deployment Milvus 2.6.x standalone yang dikelola oleh Milvus Operator
  • kubectl akses ke kluster
  • Manifest sumber daya khusus (CR) Milvus lengkap yang digunakan untuk penyebaran yang ada
  • Metode instalasi dan manifest yang digunakan untuk Milvus Operator yang sudah ada
  • Cadangan terbaru dari metadata Milvus dan data persisten

Batasan antrian pesan: Saat melakukan upgrade ke Milvus v3.0.2, Anda harus mempertahankan pilihan antrian pesan saat ini. Beralih antara sistem antrian pesan yang berbeda selama proses upgrade tidak didukung. Dukungan untuk mengganti sistem antrian pesan akan tersedia pada versi mendatang.

Prosedur ini tidak memvalidasi penurunan versi atau rollback dengan mengubah gambar Milvus kembali ke 2.6.x. Setelah v3.0.2 menulis data, rollback yang hanya melibatkan gambar dapat gagal membaca status yang telah diperbarui. Jika peningkatan gagal, hentikan penulisan dan gunakan rencana pemulihan yang mengembalikan cadangan metadata dan data persisten sebelum peningkatan. Validasi rencana pemulihan di lingkungan non-produksi terlebih dahulu.

Proses peningkatan versi

Langkah 1: Cadangkan CR Milvus saat ini

Simpan CR saat ini sebelum mengubah penyebaran:

kubectl get milvus <instance-name> \
  --namespace <namespace> \
  --output yaml > milvus-before-upgrade.yaml

Gunakan manifest sumber untuk penyebaran yang ada sebagai manifest peningkatan versi. Jangan menerapkan file cadangan yang diekspor secara langsung tanpa terlebih dahulu menghapus metadata yang dikelola server dan bidang status.

Langkah 2: Konfirmasi versi Milvus Operator

Periksa gambar yang digunakan oleh Milvus Operator yang terinstal:

kubectl get deployments --all-namespaces \
  -o jsonpath='{range .items[*]}{.metadata.namespace}{"\t"}{.metadata.name}{"\t"}{range .spec.template.spec.containers[*]}{.image}{" "}{end}{"\n"}{end}' \
  | grep milvus-operator

Peningkatan yang telah divalidasi mempertahankan Milvus Operator pada versi 1.3.0. Pertahankan versi Operator yang saat ini mengelola penyebaran Milvus 2.6.x Anda, kecuali jika kebijakan dukungan Anda mengharuskan peningkatan Operator terpisah. Jangan menurunkan versi Operator yang lebih baru ke versi yang telah diuji. Jika Anda perlu mengubah versi Operator, gunakan metode instalasi Helm atau kubectl yang sama serta nama rilis dan ruang nama yang sama dengan instalasi yang ada, lalu validasi perubahan Operator sebelum memperbarui Milvus CR.

Langkah 3: Perbarui gambar Milvus

Dalam manifest CR Milvus yang lengkap, ubah hanya spec.components.image. Pertahankan pengaturan mode, komponen, antrian pesan, etcd, penyimpanan, dan pengaturan ketergantungan lainnya yang sudah ada. Kutipan berikut menunjukkan bidang yang perlu diubah; jangan mengganti CR lengkap Anda dengan kutipan ini.

apiVersion: milvus.io/v1beta1
kind: Milvus
metadata:
  name: <instance-name>
  namespace: <namespace>
spec:
  components:
    image: milvusdb/milvus:v3.0.2

Terapkan manifest CR lengkap:

kubectl apply --filename milvus.yaml

Verifikasi peningkatan

Periksa status CR, status Pod, dan gambar kontainer:

kubectl get milvus <instance-name> \
  --namespace <namespace> \
  --output jsonpath='{.status.status}{"\t"}{.status.currentImage}{"\n"}'

kubectl get pods --namespace <namespace>

kubectl get pods --namespace <namespace> \
  -o jsonpath='{range .items[*]}{.metadata.name}{"\t"}{range .spec.containers[*]}{.image}{" "}{end}{"\n"}{end}'

Pastikan bahwa CR Milvus melaporkan ` Healthy`, gambar saat ini adalah ` milvusdb/milvus:v3.0.2`, dan koleksi yang ada tetap dapat di-query dan dicari. Selesaikan pemeriksaan ini sebelum Anda mengaktifkan fitur apa pun yang spesifik untuk v3.0.2.

Diterjemahkan olehDeepL

Coba Milvus yang Dikelola secara Gratis

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

Mulai
Umpan balik

Apakah halaman ini bermanfaat?