Microservices Engine (MSE) menyediakan registri Nacos, ZooKeeper, dan Eureka yang dikelola untuk aplikasi Spring Cloud dan Dubbo. Topik ini menjelaskan persyaratan pembuatan instans, konfigurasi aplikasi untuk setiap jenis registri, serta langkah-langkah pemecahan masalah.
Prasyarat
Sebelum memulai, pastikan Anda telah memiliki:
Akun Alibaba Cloud dengan MSE yang telah diaktifkan
Instance Elastic Compute Service (ECS) tempat aplikasi Anda berjalan
Informasi Virtual Private Cloud (VPC) dan wilayah dari instance ECS Anda
Buat instans
Saat membuat instans MSE, konfigurasikan pengaturan berikut:
| Pengaturan | Persyaratan |
|---|---|
| Jenis jaringan: VPC | Pilih VPC yang sama dengan instance ECS tempat aplikasi Anda berjalan. |
| Jenis jaringan: Internet | Konfigurasikan daftar putih alamat IP. Tentukan Blok CIDR dalam format <IP publik ECS>/32. Untuk informasi selengkapnya, lihat Konfigurasikan daftar putih alamat IP publik. |
| Wilayah | Jika Anda memilih VPC sebagai jenis jaringan, pilih wilayah yang sama dengan instance ECS tempat aplikasi Anda berjalan. |
| Bandwidth publik | Untuk mengakses instans MSE melalui Internet, atur bandwidth publik ke nilai lebih besar dari 0. Titik akhir publik hanya dibuat jika bandwidth publik tidak nol. |
Hubungkan ke registri Nacos
Semua contoh konfigurasi menggunakan titik akhir publik instans MSE Anda sebagai alamat server. Ganti mse-XX-p.nacos-ans.mse.aliyuncs.com dengan titik akhir aktual Anda.
Spring Cloud
Tambahkan konfigurasi berikut ke file application.properties Anda:
spring.application.name=service-provider
server.port=18081
# Ganti dengan titik akhir publik instans MSE Nacos Anda
spring.cloud.nacos.discovery.server-addr=mse-XX-p.nacos-ans.mse.aliyuncs.com:8848Untuk menggunakan namespace kustom, tambahkan:
spring.cloud.nacos.discovery.namespace=<your-namespace-id>Dubbo (XML)
<dubbo:application name="demo-provider"/>
<dubbo:protocol name="dubbo" port="28082" />
<dubbo:service interface="com.alibaba.dubbo.api.IHelloService" ref="helloService"/>
<bean id="helloService" class="com.alibaba.dubbo.service.impl.IHelloServiceImpl"/>
<!-- Ganti dengan titik akhir publik instans MSE Nacos Anda -->
<dubbo:registry address="nacos://mse-XX-p.nacos-ans.mse.aliyuncs.com:8848"/>Untuk menggunakan namespace kustom, perbarui alamat registri:
<dubbo:registry address="nacos://mse-XX-p.nacos-ans.mse.aliyuncs.com:8848?namespace=<your-namespace-id>"/>Dubbo (.properties)
dubbo.application.name=dubbo-consumer-demo
server.port=8080
# Ganti dengan titik akhir publik instans MSE Nacos Anda
dubbo.registry.address=nacos://mse-XX-p.nacos-ans.mse.aliyuncs.com:8848Untuk menggunakan namespace kustom, tambahkan:
dubbo.registry.parameters.namespace=<your-namespace-id>Untuk informasi selengkapnya tentang Nacos, lihat Nacos.
Hubungkan ke registri ZooKeeper
Spring Cloud
Tambahkan konfigurasi berikut ke file application.yml Anda:
spring:
application:
name: demo-provider
cloud:
zookeeper:
# Ganti dengan titik akhir publik instans MSE ZooKeeper Anda
connect-string: mse-XX-p.nacos-ans.mse.aliyuncs.com:2181
discovery:
enabled: trueDubbo (XML)
<!-- Ganti dengan titik akhir publik instans MSE ZooKeeper Anda -->
<dubbo:registry address="zookeeper://mse-XX-p.nacos-ans.mse.aliyuncs.com:2181" />Hubungkan ke registri Eureka
Spring Cloud
Tambahkan konfigurasi berikut ke file application.yml Anda:
server:
port: 8080
spring:
application:
name: demo-provider
eureka:
client:
serviceUrl:
# Ganti dengan titik akhir publik instans MSE Eureka Anda
defaultZone: http://mse-XXX-p.eureka.mse.aliyuncs.com:8761/eureka
instance:
prefer-ip-address: trueKonfigurasikan pusat konfigurasi
Untuk contoh kode pusat konfigurasi, lihat dokumentasi Nacos Java SDK.
Atasi masalah pada registri Nacos
Jika terjadi masalah saat menggunakan registri Nacos MSE, tinjau log klien Nacos dalam file naming.log di direktori berikut:
${user.home}/logs/nacos/naming.log