All Products
Search
Document Center

Microservices Engine:Migrasi data layanan dari Consul ke MSE Nacos

Last Updated:Mar 01, 2026

Panduan ini menjelaskan cara menggunakan MSE Sync untuk menyinkronkan seluruh data layanan dari instans Consul yang dikelola sendiri ke instans Microservices Engine (MSE) Nacos, mengganti dependensi klien, memperbarui konfigurasi aplikasi, dan memverifikasi migrasi.

Tahapan migrasi

TahapDeskripsi
1. Konfigurasikan MSE SyncJalankan MSE Sync dan konfigurasikan dengan instans Consul sumber serta instans MSE Nacos tujuan untuk menyinkronkan data layanan.
2. Ganti dependensi klienGanti SDK Consul dengan SDK Nacos di proyek aplikasi.
3. Perbarui konfigurasi aplikasiArahkan aplikasi ke instans MSE Nacos, bukan ke instans Consul.
4. Bangun ulang, terapkan, dan verifikasiBangun ulang aplikasi dan pastikan layanan terdaftar dengan benar di MSE Nacos.

Prasyarat

Sebelum memulai, pastikan Anda telah memiliki:

Langkah 1: Jalankan MSE Sync dan impor konfigurasi

Jalankan MSE Sync dan impor konfigurasi instans sumber dan tujuan menggunakan file konfigurasi YAML.

Buat file konfigurasi

Buat file YAML dengan konten berikut:

clusters:
  - clusterName: dst
    connectKeyList:
      - {nacos.endpoint}:8848
    clusterType: NACOS
  - clusterName: src
    connectKeyList:
      - {consul.endpoint}:8500
    clusterType: CONSUL
tasks:
  - source: src
    destination: dst

Ganti nilai placeholder berikut:

PlaceholderGanti denganContoh
{nacos.endpoint}Titik akhir instans MSE Nacosmse-zzzzz-.nacos-ans.mse.aliyuncs.com
{consul.endpoint}Alamat IP instans Consul10.0.0.1

Impor file konfigurasi

Jalankan MSE Sync dan impor file konfigurasi tersebut. Setelah impor, MSE Sync secara berkala memindai layanan baru di kedua instans (sumber dan tujuan) dan secara otomatis membuat tugas sinkronisasi.

Catatan

MSE Sync secara berkala memindai instans Consul dan menyinkronkan pembaruan. Untuk menyesuaikan interval pemindaian, atur parameter consul.refresh.interval. Nilai default-nya adalah 5 detik.

Verifikasi sinkronisasi

Lihat jumlah tugas sinkronisasi yang telah selesai di MSE Sync. Pastikan seluruh data layanan telah tersinkronisasi dari Consul ke instans MSE Nacos.

Langkah 2: Ganti dependensi klien

Ganti SDK Consul dengan SDK Nacos di proyek aplikasi.

Untuk aplikasi Spring Cloud, perbarui dependensi Maven sebagai berikut:

groupIdartifactId
Sebelum (Consul)org.springframework.cloudspring-cloud-starter-consul-discovery
Sesudah (Nacos)com.alibaba.cloudspring-cloud-starter-alibaba-nacos-discovery

Hapus dependensi Consul:

<dependency>
    <groupId>org.springframework.cloud</groupId>
    <artifactId>spring-cloud-starter-consul-discovery</artifactId>
</dependency>

Tambahkan dependensi Nacos:

<dependency>
    <groupId>com.alibaba.cloud</groupId>
    <artifactId>spring-cloud-starter-alibaba-nacos-discovery</artifactId>
</dependency>

Gunakan versi spring-cloud-starter-alibaba-nacos-discovery yang kompatibel dengan versi Spring Cloud dalam proyek.

Langkah 3: Perbarui konfigurasi aplikasi

Ganti blok konfigurasi Consul dalam file konfigurasi aplikasi dengan blok konfigurasi Nacos untuk menetapkan instans MSE Nacos sebagai registrasi layanan.

Contoh konfigurasi (application.yml):

server:
  port: 9999

spring:
  application:
    name: sp-provider
  cloud:
    nacos:
      discovery:
        server-addr: mse-xxxxx-nacos-ans.mse.aliyuncs.com:8848

Blok yang dikomentari berikut menunjukkan konfigurasi Consul asli sebagai referensi:

#    consul:
#      host: 11.164.x.x
#      port: 8500
#      config:
#        enabled: false
#      discovery:
#        health-check-path: /health

Langkah 4: Bungkus ulang dan terapkan aplikasi

Bangun ulang paket aplikasi dengan dependensi dan konfigurasi yang telah diperbarui. Terapkan paket baru tersebut ke lingkungan.

Langkah 5: Verifikasi migrasi

Setelah penerapan, lakukan pemeriksaan berikut:

  1. Pastikan semua aplikasi berjalan tanpa error.

  2. Uji panggilan antarlayanan untuk memverifikasi bahwa penemuan layanan berfungsi dengan benar.

  3. Buka Konsol MSE dan periksa apakah semua aplikasi terdaftar di instans MSE Nacos.

FAQ

Data layanan di Consul tidak tersinkronisasi ke MSE Nacos

Periksa apakah layanan di Consul lulus pemeriksaan kesehatan. MSE Sync hanya menyinkronkan data dari instans yang sehat. Layanan yang tidak sehat atau gagal akan dikecualikan dari proses sinkronisasi.

Referensi

Untuk informasi lebih lanjut tentang MSE Sync dan jenis instans lain yang didukung, lihat Solusi migrasi berbasis MSE Sync.