Topik ini menjelaskan cara memigrasikan trafik dari gateway ingress Istio yang dikelola sendiri ke gateway ingress Service Mesh (ASM).
Alur trafik solusi migrasi

Langkah 1: Ubah instance CLB yang dibuat oleh gateway ingress Istio agar dapat digunakan kembali
Instance CLB yang secara otomatis dibuat oleh sumber daya layanan dari gateway ingress Istio tidak dapat digunakan kembali secara default. Untuk mendistribusikan trafik ke gateway ingress Istio dan ASM melalui instance CLB selama migrasi, Anda harus mengubah instance CLB menjadi status yang dapat digunakan kembali.
Masuk ke konsol CLB, temukan instance CLB yang diinginkan, dan klik ID instance untuk masuk ke halaman konfigurasi.
Nonaktifkan mode baca-saja konfigurasi untuk instance tersebut.
Hapus dua tag khusus berikut dari instance CLB:
kubernetes.do.not.deletedanack.aliyun.com.Tambahkan anotasi berikut ke sumber daya layanan dari gateway ingress Istio:
service.beta.kubernetes.io/alibaba-cloud-loadbalancer-force-override-listeners: "false"
service.beta.kubernetes.io/alibaba-cloud-loadbalancer-id: ${ID CLB yang sesuai}
service.beta.kubernetes.io/alibaba-cloud-loadbalancer-vgroup-port: ${ID grup vServer}:${port},${ID grup vServer}:${port}...
service.beta.kubernetes.io/alibaba-cloud-loadbalancer-weight: "100"Contoh kode:
service.beta.kubernetes.io/alibaba-cloud-loadbalancer-force-override-listeners: "false"
service.beta.kubernetes.io/alibaba-cloud-loadbalancer-id: lb-bp1onpskfeceg********
# Detail grup vServer dapat diperoleh melalui konsol CLB. Di halaman manajemen instance, klik tab "Grup vServer".
# Anda perlu mencantumkan semua grup vServer dari instance SLB dalam anotasi di bawah ini. Formatnya harus ${ID grup vServer}:${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 gateway ingress Istio adalah 100, menunjukkan bahwa semua trafik diarahkan ke gateway ingress Istio.
service.beta.kubernetes.io/alibaba-cloud-loadbalancer-weight: "100"Langkah 2: Buat gateway ingress untuk instance ASM
Untuk informasi lebih lanjut, lihat Buat Gateway Ingress.
Saat membuat gateway ingress ASM, perhatikan poin-poin berikut:
Buat gateway ingress ASM menggunakan file YAML. Untuk informasi lebih lanjut, lihat Bidang CRD untuk Gateway ASM.
Nama gateway ingress ASM harus berbeda dari gateway ingress Istio yang ada. Anda dapat menambahkan akhiran -asm pada nama gateway ingress ASM untuk kemudahan identifikasi. Misalnya, Anda dapat menamai gateway ingress ASM sebagai ingressgateway-asm.
Daftar port dan targetPort dari gateway ingress ASM harus sama dengan gateway ingress Istio.
Referensi (4) dalam Langkah 1, atur anotasi yang sama untuk gateway ingress ASM dengan mengonfigurasi bidang serviceAnnotation di CRD gateway (lihat Bidang CRD), tetapi tetapkan nilai bobot 0 untuk
service.beta.kubernetes.io/alibaba-cloud-loadbalancer-weightdi gateway ingress ASM.
Verifikasi apakah instance CLB dapat digunakan kembali. Masuk ke konsol CLB, pilih grup vServer, dan klik nama grup untuk melihat layanan backend-nya. Penggunaan ulang yang berhasil ditandai dengan keberadaan alamat pod gateway Istio dan alamat pod gateway ASM.
Langkah 3: Migrasikan konfigurasi terkait gateway ingress Istio ke gateway ASM
Untuk memastikan bahwa gateway ingress ASM berfungsi identik dengan gateway ingress Istio, terapkan konfigurasi gateway ingress Istio ke gateway ingress ASM.
Karena gateway ingress ASM harus memiliki nama yang berbeda dari gateway ingress Istio, ubah nilai spec.selector.istio di Gateway CR menjadi nama gateway ingress ASM Anda di file YAML:
spec: selector: istio: ingressgateway-asmKonfigurasi seperti konfigurasi VirtualService CR dan DestinationRule CR langsung dimigrasikan ke gateway ASM tanpa modifikasi.
Langkah 4: Secara bertahap migrasikan trafik dari gateway Istio ke gateway ASM
Modifikasi serviceAnnotations untuk gateway ingress Istio dan ASM untuk menyesuaikan bobot trafik mereka. Untuk melakukan migrasi bertahap, Anda perlu secara bertahap meningkatkan rasio trafik gateway ASM dan mengurangi rasio trafik gateway Istio hingga semua trafik diarahkan ke gateway ingress ASM.
Kontrol distribusi trafik CLB dengan memodifikasi anotasi layanan untuk kedua gateway:
Untuk menyesuaikan bobot gateway ingress Istio sumber, edit anotasi
service.beta.kubernetes.io/alibaba-cloud-loadbalancer-weight: "90"untuk layanan yang sesuai.Untuk menyesuaikan bobot gateway ingress ASM, edit anotasi layanan
service.beta.kubernetes.io/alibaba-cloud-loadbalancer-weight: "10"untuk gateway ingress ASM.