All Products
Search
Document Center

Alibaba Cloud Service Mesh:Migrasi traffic dari gerbang masuk Istio yang dikelola sendiri ke gerbang masuk ASM

Last Updated:Aug 25, 2026

Topik ini menjelaskan cara melakukan migrasi dari gerbang masuk Istio yang dikelola sendiri ke gerbang masuk ASM.

Solusi migrasi

Migration solution

Langkah 1: Jadikan instans CLB yang dibuat oleh gerbang masuk Istio dapat digunakan kembali

Jika instans CLB yang digunakan oleh gerbang masuk Istio dibuat secara otomatis oleh sebuah Service, instans tersebut tidak dapat digunakan kembali secara default. Untuk mendistribusikan traffic antara gerbang masuk Istio dan gerbang masuk ASM dalam rasio tertentu melalui instans CLB selama proses migrasi, Anda harus menjadikan instans CLB tersebut dapat digunakan kembali.

  1. Masuk ke Konsol CLB dan temukan instans CLB target. Klik ID instans untuk membuka halaman konfigurasi instans.

  2. Nonaktifkan perlindungan modifikasi untuk instans tersebut.

  3. Hapus dua tag berikut dari instans CLB: kubernetes.do.not.delete dan ack.aliyun.com.

  4. Tambahkan anotasi berikut ke Service gerbang masuk Istio:

# Jika anotasi ini diatur ke false, perubahan port pada Service tidak memengaruhi listener pada instans CLB.
service.beta.kubernetes.io/alibaba-cloud-loadbalancer-force-override-listeners: "false"
service.beta.kubernetes.io/alibaba-cloud-loadbalancer-id: <CLB_INSTANCE_ID>
service.beta.kubernetes.io/alibaba-cloud-loadbalancer-vgroup-port: <VSERVER_GROUP_ID>:<PORT>,<VSERVER_GROUP_ID>:<PORT>...
service.beta.kubernetes.io/alibaba-cloud-loadbalancer-weight: "100"

Contoh:

service.beta.kubernetes.io/alibaba-cloud-loadbalancer-force-override-listeners: "false"
service.beta.kubernetes.io/alibaba-cloud-loadbalancer-id: lb-bp1onpskfeceg********
# Anda dapat memperoleh informasi kelompok vServer dari Konsol CLB. Masukkan instans dan klik tab Kelompok vServer.
# Anda harus mencantumkan semua kelompok vServer dari instans CLB dalam anotasi berikut, dalam format <VSERVER_GROUP_ID>:<PORT>.
# Pisahkan beberapa nilai dengan koma (,).
service.beta.kubernetes.io/alibaba-cloud-loadbalancer-vgroup-port: rsp-bp1r4xk******:15021,rsp-bp1kaqd******:80,rsp-bp1jyz0******:443
# Sebelum migrasi dimulai, bobot gerbang masuk Istio adalah 100, dan seluruh traffic melewati gerbang masuk Istio.
service.beta.kubernetes.io/alibaba-cloud-loadbalancer-weight: "100"

Langkah 2: Buat gerbang masuk di instans ASM

Untuk informasi lebih lanjut tentang cara membuat gerbang masuk, lihat Create an ingress gateway.

Saat membuat gerbang masuk, perhatikan poin-poin berikut:

  • Buat gerbang ASM menggunakan file YAML. Untuk informasi lebih lanjut, lihat CRD fields for an ASM gateway.

    • Saat memberi nama gerbang ASM, pastikan nama tersebut tidak duplikat dengan gerbang yang sudah ada. Anda dapat menambahkan sufiks -asm pada nama untuk membedakannya dari gerbang yang sudah ada, misalnya ingressgateway-asm.

    • Pastikan daftar port dan targetPort pada gerbang ASM sama dengan gerbang masuk Istio.

    • Merujuk pada butir (4) dalam Langkah 1: Jadikan instans CLB yang dibuat oleh gerbang masuk Istio dapat digunakan kembali, buat gerbang ASM menggunakan CRD. Untuk informasi lebih lanjut, lihat CRD fields. Untuk menggunakan kembali instans CLB dari gerbang masuk Istio dan menerapkan pengalihan traffic berbasis CLB, konfigurasikan serviceAnnotation pada gerbang ASM sebagai berikut:

      # Jika anotasi ini diatur ke true, ACK menggunakan port dari Service gerbang ASM untuk memperbarui listener pada instans CLB.
      # Untuk memastikan kontinuitas layanan, pastikan port yang diekspos oleh gerbang ASM sama dengan port pada gerbang masuk Istio.
      # Jika terjadi pengecualian lalu lintas setelah gerbang ASM dibuat, ubah anotasi ini pada gerbang ASM menjadi false dan ubah anotasi ini pada gerbang masuk Istio menjadi true untuk memulihkan konfigurasi listener.
      service.beta.kubernetes.io/alibaba-cloud-loadbalancer-force-override-listeners: "true"
      service.beta.kubernetes.io/alibaba-cloud-loadbalancer-id: lb-bp1onpskfeceg********
      # Anda dapat memperoleh informasi kelompok vServer dari Konsol CLB. Masukkan instans dan klik tab Kelompok vServer.
      # Anda harus mencantumkan semua kelompok vServer dari instans CLB dalam anotasi berikut, dalam format <VSERVER_GROUP_ID>:<PORT>.
      # Pisahkan beberapa nilai dengan koma (,).
      service.beta.kubernetes.io/alibaba-cloud-loadbalancer-vgroup-port: rsp-bp1r4xk******:15021,rsp-bp1kaqd******:80,rsp-bp1jyz0******:443
      # Sebelum migrasi dimulai, bobot gerbang masuk Istio adalah 100, dan seluruh traffic melewati gerbang masuk Istio. Bobot gerbang ASM adalah 0.
      service.beta.kubernetes.io/alibaba-cloud-loadbalancer-weight: "0"
  • Verifikasi penggunaan kembali CLB: Masuk ke Konsol CLB, pilih kelompok vServer, lalu klik nama kelompok vServer tersebut untuk melihat server backend-nya. Jika alamat IP pod dari gerbang masuk Istio dan alamat IP pod dari gerbang ASM sama-sama muncul dalam daftar, langkah ini berhasil.

Langkah 3: Migrasikan konfigurasi terkait gerbang ke ASM

Agar gerbang ASM berperilaku sama seperti gerbang masuk Istio, Anda harus menerapkan konfigurasi terkait gerbang di Istio ke ASM.

  • Gerbang ASM tidak boleh memiliki nama yang sama dengan gerbang masuk Istio. Saat melakukan migrasi CR Gateway, Anda harus mengubah bidang spec.selector.istio pada CR Gateway menjadi nama aktual gerbang ASM. Contoh YAML-nya sebagai berikut:

    spec:
      selector:
        istio: ingressgateway-asm
  • CR VirtualService dan CR DestinationRule tidak perlu diubah. Lakukan migrasi secara langsung.

Langkah 4: Lakukan migrasi traffic secara bertahap ke gerbang ASM

Dengan memodifikasi serviceAnnotations pada gerbang masuk Istio dan gerbang masuk ASM secara terpisah, Anda dapat mengalihkan bobot kedua gerbang tersebut. Anda dapat meningkatkan rasio traffic ke gerbang ASM secara bertahap sekaligus mengurangi rasio traffic ke gerbang masuk Istio hingga seluruh traffic dialihkan ke gerbang ASM. Dengan demikian, migrasi selesai.

Anda dapat memodifikasi anotasi Service pada gerbang masuk Istio dan gerbang ASM untuk mengontrol rasio traffic yang diteruskan oleh instans CLB:

  • Ubah bobot gerbang masuk Istio asli: Tambahkan anotasi ke Service yang sesuai, misalnya service.beta.kubernetes.io/alibaba-cloud-loadbalancer-weight: "90".

  • Ubah bobot instans gerbang ASM: Tambahkan serviceAnnotations ke resource IstioGateway yang sesuai, misalnya service.beta.kubernetes.io/alibaba-cloud-loadbalancer-weight: "10".