Nacos报错:NacosException: failed to req API:/nacos/v1/ns/instance after all servers([localhost:8848]

问题描述:

nacos既可以作为注册中心,也可以作为动态配置中心。使用nacos作为动态配置中心时,项目启动报错。当时我是把nacos的注册中心连接配置也交给了nacos管理。只在项目中写了bootstrap.yml,根据里面的配置去拉取下来再往nacos中注册。我在启动微服务项目的时候,报错:NacosException: failed to req API:/nacos/v1/ns/instance after all servers([localhost:8848]。

问题分析:

这个报错网上说是没有开启nacos的原因,服务发起注册的时候找不到nacos。但是,我肯定开启了nacos服务器的。下面开始排查问题,排查了好久,发现localhost:8848不简单啊。我的nacos服务器是有ip的,在远程服务器上,为什么我的微服务要去localhost:8848这个地址注册呢。想了好久,才想明白。我的微服务中没有导入nacos作为配置中心的依赖,虽然项目中有bootstrap.yml文件,也写了去哪里拉取其他配置,但是没有导入配置中心的依赖是不可能去拉取配置的,所以微服务只能向默认的nacos地址注册,也就是localhost:8848。这是一个很低级的错误,微服务中根本就没有导入nacos作为配置中心的依赖,只导入了作为注册中心的依赖。

解决方案:

添加nacos作为配置中心的依赖就好了,项目启动后,会根据bootstrap.yml文件中的拉取地址拉取配置。没有导入nacos配置中心的依赖是不可能去拉取配置的。下面附上nacos作为注册中心和配置中心的maven依赖

 		<!--引入nacos 注册中心依赖-->
        <dependency>
            <groupId>com.alibaba.cloud</groupId>
            <artifactId>spring-cloud-starter-alibaba-nacos-discovery</artifactId>
        </dependency>
        <!--引入nacos config配置依赖-->
        <dependency>
            <groupId>com.alibaba.cloud</groupId>
            <artifactId>spring-cloud-starter-alibaba-nacos-config</artifactId>
        </dependency>
  • 10
    点赞
  • 11
    收藏
    觉得还不错? 一键收藏
  • 3
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值