-
Notifications
You must be signed in to change notification settings - Fork 222
migrate cloud nacos 2 huaweicloud nacos
- 修改pom文件。移除Spring Cloud Alibaba和Nacos相关依赖,并替换为Spring Cloud Huawei相关依赖。
- 修改bootstrap.yml文件。将Spring Cloud Alibaba和Nacos相关配置, 修改为Spring Cloud Huawei相关配置。
-
其他修改
- yaml配置文件迁移
- 网关流控迁移
- 应用隔离和环境隔离
basic项目 提供了迁移后的应用示例,迁移过程中涉及到的POM文件修改、bootstrap.yml文件修改等内容,都可以参考这个项目。
- dependencyManagement
将
<dependencyManagement>
<dependencies>
<dependency>
<groupId>com.alibaba.cloud</groupId>
<artifactId>spring-cloud-alibaba-dependencies</artifactId>
<version>${spring-cloud-alibaba.version}</version>
<type>pom</type>
<scope>import</scope>
</dependency>
</dependencies>
</dependencyManagement>
修改为
<dependencyManagement>
<dependencies>
<!-- configure user spring cloud / spring boot versions -->
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-dependencies</artifactId>
<version>${spring-boot.version}</version>
<type>pom</type>
<scope>import</scope>
</dependency>
<dependency>
<groupId>org.springframework.cloud</groupId>
<artifactId>spring-cloud-dependencies</artifactId>
<version>${spring-cloud.version}</version>
<type>pom</type>
<scope>import</scope>
</dependency>
<!-- configure spring cloud huawei version -->
<dependency>
<groupId>com.huaweicloud</groupId>
<artifactId>spring-cloud-huawei-dependencies</artifactId>
<version>${spring-cloud-huawei.version}</version>
<type>pom</type>
<scope>import</scope>
</dependency>
</dependencies>
</dependencyManagement>
- dependencies
排除Spring Cloud Alibaba和Nacos相关依赖,并替换为Spring Cloud Huawei相关依赖。这了不详细描述删除那些配置。Spring Cloud Huawei 的配置比较简单, 只需要引入一个 starter 即可。 需要注意网关和微服务的 starter 不同。
微服务starter
<dependency>
<groupId>com.huaweicloud</groupId>
<artifactId>spring-cloud-starter-huawei-nacos</artifactId>
</dependency>
网关starter
<dependency>
<groupId>com.huaweicloud</groupId>
<artifactId>spring-cloud-starter-huawei-nacos-gateway</artifactId>
</dependency>
删除 Spring Cloud Alibaba和Nacos相关配置,并增加Spring Cloud Huawei相关配置。 这里不详细描述删除的内容, 增加的内容如下:
spring:
application:
name: basic-provider
cloud:
nacos:
discovery:
enabled: true
server-addr: http://127.0.0.1:8848
service: ${spring.application.name}
config:
enabled: true
server-addr: http://127.0.0.1:8848
service: ${spring.application.name}
注意:Nacos治理、路由能力适配版本大于等于1.11.0-2021.0.x/1.11.0-2022.0.x
在微服务存在多个版本、多个实例的情况下,需要管理服务之间的路由,达到无损升级、应用拨测等业务目的。常见的路由管理场景包括灰度发布、蓝绿发布等。 Spring Cloud Huawei要使用灰度发布、蓝绿发布的能力时,添加router依赖及下发配置即可。
<dependency>
<groupId>com.huaweicloud</groupId>
<artifactId>spring-cloud-huawei-router</artifactId>
</dependency>
Spring Cloud Alibaba集成Sentinel以后,通过注解实现限流、熔断、降级等治理能力。 Spring Cloud Huawei是通过配置无侵入式实现治理,原理参考基于动态配置的流量特征治理。
当项目需要使用Spring Cloud Huawei治理时,pom中添加governance依赖,删除原有的sentinel依赖,然后配置中心下发对应治理配置即可,依赖及配置参考如下:
<dependency>
<groupId>com.huaweicloud</groupId>
<artifactId>spring-cloud-huawei-governance</artifactId>
</dependency>
-
使用Spring Cloud Huawei功能
-
使用服务治理
-
生态集成
-
迁移改造问题
-
配置参考
-
优秀实践
-
常见问题