Spring Cloud Nacos 微服务的注册与发现

1. 前言

什么是 Nacos ?

之前有 Eureka,但是其 2.x 版本已经闭源,等于凉了。阿里开源了 Nacos 作为配置与注册中心,动态发现服务与动态配置。

具体的解释与作用见官方文档: https://nacos.io/zh-cn/docs/what-is-nacos.html

nacos_map

2. 适配版本

搭建整个微服务体系的前奏,是要设置好 Spring Cloud 与 Spring Boot 以及 Spring Cloud ALibaba 的版本保持兼容。

https://github.com/alibaba/spring-cloud-alibaba/wiki/版本

各版本对应

这里先取最新的版本,开始找 Alibaba 版本支持的 Nacos 版本

Nacos版本对应

根据我们的搜索,查询到需要安装 Nacos 的 1.4.2 版本。

tips: Nacos 的读音是钠科(噢)斯,别面试的时候不知道怎么读。

3. 安装 Naocs

下载:

1
wget https://github.com/alibaba/nacos/releases/download/1.4.2/nacos-server-1.4.2.zip

image-20220824091828357

解压:

1
unzip nacos-server-1.4.2.zip

删除安装包:

1
rm -rf nacos-server-1.4.2.zip

启动 Nacos:

1
2
cd nacos/bin
./startup.sh -m standalone

输出如下,证明启动成功

image-20220824092241382

使用浏览器打开网址:http://127.0.0.1:8848/nacos/#/login

image-20220824092522486

用户名与密码都是 nacos ,然后登录就能看到 Naocs 后台页面,如下。

image-20220824092639314

4. 配置持久化

为什么需要配置持久化?

使用 Nacos 内置数据库存储数据不方便观察,集成 MySQL 的,可以很方便的查阅数据,备份数据等。

4.1 初始化数据库

找到数据库的初始化文件

image-20220824095753069

Nacos 解压过后的根目录的 conf 文件夹下有两个 sql 文件

image-20220824095954495

使用 Navicat 或者其他工具新建一个 MySQL 数据库,数据库名字可以自定义,用你所想。

然后使用 Navicat 工具运行 sql 文件,把 nacos-mysql.sql 导入库中,导入后的状态如下

image-20220824100351260

4.2 修改配置文件

进入解压后的 nacos 文件夹,根目录中的 conf 目录下有一个名字为 application.properties 的文件

image-20220824101937816

启动的 Nacos 服务

1
2
3
4
5
# 先停止之前我们
# 先进入 nacos/bin 目录下
./shutdown.sh
# 启动
./startup.sh -m standalone

image-20220824102410002

4.3 测试 MySQL 持久化

打开 Nacos 管理界面,新建一个用户,查看数据库中是否存在

image-20220824102915940

Nacos 服务的数据持久化已接入 MySQL 数据库。


Spring Cloud Nacos 微服务的注册与发现
https://cuifuan.github.io/2023/05/01/back-end/spring-cloud/nacos-register-discover/
作者
cuifuan
发布于
2023年5月1日
许可协议