Topik ini menjelaskan cara memigrasikan aplikasi layanan mikro dari registri Eureka yang dikelola sendiri ke registri Nacos Microservices Engine (MSE) dengan downtime minimal. Migrasi ini menggunakan tool MSE Sync untuk melakukan sinkronisasi layanan dua arah, sehingga aplikasi tetap tersedia selama proses berlangsung.
Cara kerja
MSE Sync menghubungkan instans Eureka yang dikelola sendiri dan instans Nacos MSE dengan melakukan sinkronisasi pendaftaran layanan secara real time. Selama migrasi, kedua registri tetap tersinkronisasi:
Aplikasi yang masih terhubung ke Eureka dapat menemukan layanan yang telah dipindahkan ke Nacos.
Aplikasi yang sudah berada di Nacos dapat menemukan layanan yang masih terdaftar di Eureka.
Setelah semua aplikasi beralih ke Nacos, Anda dapat mendekomisioning instans Eureka dan menghentikan MSE Sync.
Prasyarat
Sebelum memulai, pastikan Anda telah memiliki:
Konektivitas jaringan antara instans Eureka yang dikelola sendiri, tool MSE Sync, dan instans Nacos MSE
Batasan
Jika tool MSE Sync mati, sinkronisasi akan berhenti. Deploy MSE Sync pada minimal dua node untuk ketersediaan tinggi.
Selesaikan migrasi secepat mungkin setelah dimulai. Jembatan sinkronisasi ini merupakan keadaan transisi, bukan arsitektur jangka panjang.
Langkah 1: Buat tugas migrasi
Tambahkan kluster Eureka sumber
Pada panel navigasi kiri tool MSE Sync, klik Cluster Configuration.
Klik Add Cluster.
Pada kotak dialog Add Cluster, konfigurasikan parameter berikut dan klik OK.
Parameter Description Cluster Name Masukkan nama untuk instans sumber. Cluster Type Pilih EUREKA. Cluster IP Address List Masukkan alamat IP dan port instans Eureka sumber, satu entri per baris. Port default adalah 8761. Jika instans sumber menggunakan instans Server Load Balancer (SLB), masukkan alamat IP dan port SLB tersebut.
Tambahkan kluster Nacos tujuan
Pada halaman Cluster Configuration, klik Add Cluster lagi.
Pada kotak dialog Add Cluster, konfigurasikan parameter berikut dan klik OK.
Parameter Description Cluster Name Masukkan nama untuk instans tujuan. Cluster Type Pilih Nacos. Namespace Namespace default adalah public. Username / Password Diperlukan hanya jika autentikasi Nacos diaktifkan. Cluster IP Address List Masukkan titik akhir dan port instans Nacos MSE. Port default adalah 8848. Contoh: mse-xxxxxxx-p.nacos-ans.mse.aliyuncs.com:8848.
Buat tugas sinkronisasi
Pada panel navigasi kiri, klik Service Synchronization.
Klik New Sync.
Pada kotak dialog New Sync, konfigurasikan tugas sinkronisasi:
Sync Mode: Pilih Bidirection. Dalam mode ini, pendaftaran layanan disinkronkan dua arah—perubahan di salah satu sisi akan disebarkan ke sisi lainnya.
Sync Type: Pilih Service Information. MSE Sync secara otomatis mencantumkan semua aplikasi yang terdaftar pada instans Eureka sumber. Pilih aplikasi yang akan dimigrasikan sesuai kebutuhan Anda.
Klik OK.
Nama aplikasi yang telah disinkronkan akan muncul pada halaman Service Synchronization.
Langkah 2: Verifikasi hasil sinkronisasi
Login ke Konsol MSE dan pilih wilayah pada bilah navigasi atas.
Pada panel navigasi kiri, pilih Microservices Registry > Instances.
Pada halaman Instances, klik nama instans Nacos MSE.
Pada panel navigasi kiri, pilih Service Management > Services.
Verifikasi bahwa aplikasi yang Anda pilih pada Langkah 1 muncul dalam daftar layanan dengan jumlah instans yang diharapkan.
Langkah 3: Migrasi client
Ganti titik akhir instans Eureka yang dikelola sendiri dengan titik akhir instans Nacos MSE.
Restart client agar terhubung ke instans Nacos MSE.
PentingRestart aplikasi secara bertahap untuk menjaga kelangsungan bisnis. Setelah setiap batch, verifikasi bahwa aplikasi yang telah direstart muncul sebagai instans sehat di konsol Nacos MSE sebelum melanjutkan ke batch berikutnya.
Setelah semua aplikasi direstart, pastikan setiap aplikasi telah terdaftar di instans Nacos MSE dengan memeriksa halaman Services di Konsol MSE.
Langkah 4: Dekomisioning registri lama
Setelah semua aplikasi terhubung ke Nacos MSE:
Matikan instans Eureka yang dikelola sendiri.
Hentikan tool MSE Sync.