Microservices Engine (MSE), Spring Cloud ve Dubbo uygulamaları için yönetilen Nacos, ZooKeeper ve Eureka kayıt defterleri sağlar. Bu konu, örnek oluşturma gereksinimlerini, her kayıt defteri türü için uygulama yapılandırmasını ve sorun giderme adımlarını açıklar.
Ön koşullar
Başlamadan önce aşağıdakilere sahip olduğunuzdan emin olun:
MSE etkinleştirilmiş bir Alibaba Cloud hesabı
Uygulamanızın çalıştığı bir Elastic Compute Service (ECS) örneği
ECS örneğinizin Virtual Private Cloud (VPC) ve bölge bilgileri
Örnek oluşturun
Bir MSE örneği oluştururken aşağıdaki ayarları yapılandırın:
| Ayar | Gereksinim |
|---|---|
| Ağ türü: VPC | Uygulamanızın çalıştığı ECS örneğiyle aynı VPC'yi seçin. |
| Ağ türü: İnternet | Bir IP adresi izin listesi yapılandırın. CIDR bloklarını <ECS public IP>/32 biçiminde belirtin. Daha fazla bilgi için bkz. Genel IP adresi izin listesini yapılandırma. |
| Bölge | Ağ türü olarak VPC seçerseniz uygulamanızın çalıştığı ECS örneğiyle aynı bölgeyi seçin. |
| Genel bant genişliği | MSE örneğine İnternet üzerinden erişmek için genel bant genişliğini 0'dan büyük bir değere ayarlayın. Genel uç nokta yalnızca genel bant genişliği sıfır olmayan durumda oluşturulur. |
Nacos kayıt defterine bağlanın
Tüm yapılandırma örneklerinde sunucu adresi olarak MSE örneğinizin genel uç noktası kullanılır. mse-XX-p.nacos-ans.mse.aliyuncs.com ifadesini gerçek uç noktanızla değiştirin.
Spring Cloud
Aşağıdaki yapılandırmayı application.properties dosyanıza ekleyin:
spring.application.name=service-provider
server.port=18081
# Replace with the public endpoint of your MSE Nacos instance
spring.cloud.nacos.discovery.server-addr=mse-XX-p.nacos-ans.mse.aliyuncs.com:8848
Özel bir ad alanı kullanmak için şunu ekleyin:
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"/>
<!-- Replace with the public endpoint of your MSE Nacos instance -->
<dubbo:registry address="nacos://mse-XX-p.nacos-ans.mse.aliyuncs.com:8848"/>
Özel bir ad alanı kullanmak için kayıt defteri adresini güncelleyin:
<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
# Replace with the public endpoint of your MSE Nacos instance
dubbo.registry.address=nacos://mse-XX-p.nacos-ans.mse.aliyuncs.com:8848
Özel bir ad alanı kullanmak için şunu ekleyin:
dubbo.registry.parameters.namespace=<your-namespace-id>
Nacos hakkında daha fazla bilgi için bkz. Nacos.
ZooKeeper kayıt defterine bağlanın
Spring Cloud
Aşağıdaki yapılandırmayı application.yml dosyanıza ekleyin:
spring:
application:
name: demo-provider
cloud:
zookeeper:
# Replace with the public endpoint of your MSE ZooKeeper instance
connect-string: mse-XX-p.nacos-ans.mse.aliyuncs.com:2181
discovery:
enabled: true
Dubbo (XML)
<!-- Replace with the public endpoint of your MSE ZooKeeper instance -->
<dubbo:registry address="zookeeper://mse-XX-p.nacos-ans.mse.aliyuncs.com:2181" />
Eureka kayıt defterine bağlanın
Spring Cloud
Aşağıdaki yapılandırmayı application.yml dosyanıza ekleyin:
server:
port: 8080
spring:
application:
name: demo-provider
eureka:
client:
serviceUrl:
# Replace with the public endpoint of your MSE Eureka instance
defaultZone: http://mse-XXX-p.eureka.mse.aliyuncs.com:8761/eureka
instance:
prefer-ip-address: true
Yapılandırma merkezini yapılandırın
Yapılandırma merkezi örnek kodu için bkz. Nacos Java SDK belgeleri.
Nacos kayıt defterlerindeki sorunları giderin
Bir MSE Nacos kayıt defteri kullanırken bir sorun oluşursa aşağıdaki dizindeki naming.log dosyasındaki Nacos istemci günlüklerini inceleyin:
${user.home}/logs/nacos/naming.log