1、查看自己的springcloudalibaba的版本,找到对应的nacos版本

详情可查看:https://github.com/alibaba/spring-cloud-alibaba/wiki/%E7%89%88%E6%9C%AC%E8%AF%B4%E6%98%8E

 最好是找对应版本的nacos下载,比如我的springcloudalibaba版本是2021.0.4.0,那么我就去下载2.0.4版本的nacos

nacos官网 https://github.com/alibaba/nacos/tags

 

 

 

 

 

 

 找到所需要的nacos版本之后,下载压缩包并解压

2、启动nacos

可以在bin目录里双击startup.cmd启动

 

 

 

 第一次下载启动,可能启动会报错

(1)Unable to start embedded Tomcat

(检查一下有没有安装jdk,或者在环境变量中设值JAVA_HOME参数,没有则先装jdk)

修改nacos的conf目录下的cluster.conf.example文件,把文件名后缀.example去掉,剩下cluster.conf,然后修改文件里的内容,加上本机ip

 

(2)  [db-load-error]load jdbc.properties error   或者  db.num is null

 修改conf目录下的application.properties文件

 

一般新建一个nacos库(也可以用旧库,但配置文件里连接数据库的url得写对),然后执行conf目录下的nacos-mysql.sql文件的sql语句

 

 直接复制文件里的sql,然后在库中执行

 

 

最后再双击startup.cmd启动nacos

 

 浏览器中访问http://127.0.0.1:8848/nacos,账号密码都是nacos

 

 

3、在项目启动类里加上注解@EnableDiscoveryClient开启服务发现

 

 在application.yml文件中配置服务名和nacos服务中心地址

 

 运行项目可能会报错:

Caused by: com.alibaba.nacos.api.exception.NacosException: Nacos cluster is running with 1.X mode, can't accept gRPC request temporarily. Please check the server status or close Double write to force open 2.0 mode. Detail https://nacos.io/en-us/docs/2.0.0-upgrading.html.
at com.alibaba.nacos.client.naming.remote.gprc.NamingGrpcClientProxy.requestToServer(NamingGrpcClientProxy.java:282)
... 32 common frames omitted

 

 

Nacos2.0版本因为考虑1.x版本的升级用户。所以2.0版本启动时必须先以1.X模式启动。当集群中所有nacos client节点都达到可升级至2.0的状态时,才自动升级成2.0模式。 所以在成功升级2.0模式之前,用grpc注册的服务,在1.X模式下看不到

解决方案: 

        1、检查所有Nacos client 节点是否都已正常启动

        2、更换 Nacos2.1版本

Nacos 2.1版本默认关闭从1.x版本升级。

详情可以参考 https://blog.csdn.net/qzlijian/article/details/124586745

 

可以在bin目录下cmd命令窗口使用startup.cmd -m standalone命令单机启动来解决