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

milvus-logo
LFAI
Beranda
  • Panduan Administrasi
  • Home
  • Docs
  • Panduan Administrasi

  • Penyebaran

  • Di Atas Awan

  • Penyeimbangan Beban Lapisan-7

  • AWS

Menyiapkan Load Balancer Layer-7 untuk Milvus di AWS

Jika dibandingkan dengan penyeimbang beban Layer-4, penyeimbang beban Layer-7 menawarkan kemampuan penyeimbangan beban dan caching yang cerdas dan merupakan pilihan yang tepat untuk layanan cloud-native.

Panduan ini memandu Anda dalam menyiapkan penyeimbang beban Layer-7 untuk cluster Milvus yang sudah berjalan di belakang penyeimbang beban Layer-4.

Sebelum memulai

Mengubah konfigurasi Milvus

Panduan ini mengasumsikan bahwa Anda telah menggunakan cluster Milvus di belakang penyeimbang beban Layer-4 di AWS.

Sebelum menyiapkan penyeimbang beban Layer-7 untuk klaster Milvus ini, jalankan perintah berikut untuk menghapus penyeimbang beban Layer-4.

helm upgrade milvus-demo milvus/milvus -n milvus --set service.type=ClusterIP

Siapkan sertifikat TLS

TLS membutuhkan sertifikat agar dapat berfungsi. Kami menggunakan ACM untuk mengelola sertifikat dan perlu mengimpor sertifikat yang sudah ada ke ACM. Lihat Mengimpor Sertifikat. Berikut ini adalah contohnya.

# If the import-certificate command is successful, it returns the arn of the imported certificate.
aws acm import-certificate --certificate fileb://Certificate.pem \
      --certificate-chain fileb://CertificateChain.pem \
      --private-key fileb://PrivateKey.pem  

Membuat Ingress untuk menghasilkan Load Balancer Layer-7

Siapkan berkas ingress sebagai berikut dan beri nama ingress.yaml. Ganti arn sertifikat dan host dengan milik Anda sendiri.

apiVersion: networking.k8s.io/v1
kind: Ingress
metadata:
  namespace: milvus
  name: milvus-demo
  annotations:
    alb.ingress.kubernetes.io/scheme: internet-facing
    alb.ingress.kubernetes.io/backend-protocol-version: GRPC
    alb.ingress.kubernetes.io/target-type: ip
    alb.ingress.kubernetes.io/listen-ports: '[{"HTTPS":443}]'
    alb.ingress.kubernetes.io/certificate-arn: "arn:aws:acm:region:account-id:certificate/certificate-id"

spec:
  ingressClassName: alb
  rules:
    - host: milvus-demo.milvus.io
      http:
        paths:
        - path: /
          pathType: Prefix
          backend:
            service:
              name: milvus-demo
              port:
                number: 19530

Kemudian Anda dapat membuat Ingress dengan menerapkan file tersebut ke cluster EKS Anda.

kubectl apply -f ingress.yaml

Sekarang, tunggu AWS menyiapkan penyeimbang beban Layer-7. Anda dapat memeriksa kemajuannya dengan menjalankan

kubectl -f ingress.yaml get -w

Keluarannya akan serupa dengan yang berikut ini:

NAME          CLASS   HOSTS                   ADDRESS                                                                PORTS   AGE
milvus-demo   alb     milvus-demo.milvus.io   k8s-milvus-milvusde-2f72215c02-778371620.us-east-2.elb.amazonaws.com   80      10m

Setelah alamat ditampilkan pada bidang ADDRESS, penyeimbang beban Layer-7 siap digunakan.

Verifikasi koneksi melalui penyeimbang beban Layer-7

Panduan ini menggunakan PyMilvus untuk memverifikasi koneksi ke layanan Milvus di belakang penyeimbang beban Layer-7 yang baru saja kita buat. Untuk langkah-langkah terperinci, baca ini.

from pymilvus import (
    connections,
    utility,
    FieldSchema,
    CollectionSchema,
    DataType,
    Collection,
)

connections.connect("default", host="k8s-milvus-milvusde-2f72215c02-778371620.us-east-2.elb.amazonaws.com", port="443", secure=True, server_name="milvus-demo.milvus.io")
  • Host dan nama_server harus diganti dengan nama Anda sendiri.
  • Jika Anda telah menyiapkan catatan DNS untuk memetakan nama domain ke alb, ganti host dengan nama domain dan hilangkan nama_server.

Coba Milvus yang Dikelola secara Gratis

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

Mulai
Umpan balik

Apakah halaman ini bermanfaat?