eureka更换为nacos

本文档详细记录了在Spring Boot项目中整合Nacos作为注册中心和配置中心的过程,包括版本选择、依赖引入、Eureka排除、配置文件设置等步骤,并针对遇到的创建配置服务错误及无法请求Nacos API的问题提供了解决方案。最终成功集成Nacos并启动项目。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

1.先安装好nacos
2.在项目中引入nacos配置文件
这里的0.2.1版本出现了一些问题,所以更改为了0.2.2版本

        <!-- https://mvnrepository.com/artifact/org.springframework.cloud/spring-cloud-alibaba-			nacos-discovery -->
        <dependency>
            <groupId>org.springframework.cloud</groupId>
            <artifactId>spring-cloud-alibaba-nacos-discovery</artifactId>
            <version>0.2.2.RELEASE</version>
        </dependency>

配置文件中配置nacos

spring.application.name=nacos-config
spring.cloud.nacos.username=nacos
spring.cloud.nacos.password=nacos123456
spring.cloud.nacos.discovery.server-addr=192.168.0.180:8848

在这里插入图片描述

3.删除eureka相关jar包
在这里插入图片描述

在这里插入图片描述

发现删不干净,于是在配置文件中进行设置排除eureka

eureka.client.register-with-eureka=false
eureka.client.fetchRegistry=false
eureka.client.server.waitTimeInMsWhenSyncEmpty=0
spring.autoconfigure.exclude: org.springframework.cloud.netflix.eureka.EurekaClientAutoConfiguration

在这里插入图片描述

4.相关问题
1)如果出现报错:create config service error!properties=NacosConfigProperties{serverAddr=‘null‘, encode=‘null‘
则需要把 Nacos Config配置的依赖去掉就可以了
在这里插入图片描述
2)
java.lang.IllegalStateException: failed to req API:/nacos/v1/ns/instance after all servers([192.168.0.180:8848]) tried在这里插入图片描述

网上寻找解决方案
解决方案1:原因是nacos服务器过载,到nacos文件夹下去删掉data文件夹再重启Nacos就可以了
但是这里我尝试了并没有解决问题

解决方案2:
在这里插入图片描述
因为我这里的版本就是0.2.1,所以这也不能解决我的问题

解决方案3:
打开nacos的配置文件
在这里插入图片描述

在这里插入图片描述
并没有解决问题
找了一圈无果,决定从版本开始入手
将spring-cloud-alibaba-nacos-discovery 版本的0.2.1更改为0.2.2结果问题解决了
在这里插入图片描述

完整版集成nacos做注册中心与配置中心
1.依赖(我这是spring boot是2.xx多版本的所以 引入的nacos是0.2.X版本 如果spingboot是1.x.x版本这里需要更改为0.1.2版本)

  <!-- SpringCloud Ailibaba Nacos -->
        <dependency>
            <groupId>org.springframework.cloud</groupId>-->
            <artifactId>spring-cloud-alibaba-nacos-discovery</artifactId>
            <version>0.2.2.RELEASE</version>-->
        </dependency>

        <!-- SpringCloud Ailibaba Nacos Config -->
        <dependency>
            <groupId>org.springframework.cloud</groupId>-->
            <artifactId>spring-cloud-alibaba-nacos-config</artifactId>
            <version>0.2.2.RELEASE</version>-->
        </dependency>

2.找到eureka的依赖spring-cloud-starter-netflix-eureka-client注释掉 或者在
bootstrap.properties中增加忽略eureka ,这两种方案选一种即可

eureka.client.register-with-eureka=false
eureka.client.fetchRegistry=false
eureka.client.server.waitTimeInMsWhenSyncEmpty=0
spring.autoconfigure.exclude: org.springframework.cloud.netflix.eureka.EurekaClientAutoConfiguration

在这里插入图片描述
在这里插入图片描述
3.bootstrap.properties中增加nacos配置
在这里插入图片描述
nacos中的配置文件为:practicaltrain-dev.properties
在这里插入图片描述

4.nacos上建的配置文件中去除eureka相关配置
在这里插入图片描述

在这里插入图片描述
在这里插入图片描述
然后启动成功

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值