Spring Cloud Nacos 入门、持久化配置与集群
1、Nacos 是什么
Nacos 致力于帮助您发现、配置和管理微服务。Nacos 提供了一组简单易用的特性集,帮助您快速实现动态服务发现、服务配置、服务元数据及流量管理。
Nacos 帮助您更敏捷和容易地构建、交付和管理微服务平台。 Nacos 是构建以“服务”为中心的现代应用架构 (例如微服务范式、云原生范式) 的服务基础设施。
Nacos 特性:
1、服务发现与服务健康监测
2、动态配置服务
3、动态DNS服务
4、服务及其元数据管理
Nacos地图
Nacos生态图
2、快速开始
1、引入依赖
<!-- nacos 配置中心 -->
<dependency>
<groupId>com.alibaba.cloud</groupId>
<artifactId>spring-cloud-starter-alibaba-nacos-config</artifactId>
<version>${latest.version}</version>
</dependency>
<!-- nacos 注册中心 -->
<dependency>
<groupId>com.alibaba.cloud</groupId>
<artifactId>spring-cloud-starter-alibaba-nacos-discovery</artifactId>
<version>${latest.version}</version>
</dependency>
2、配置文件
bootstrap.properties
spring.application.name=order spring.cloud.nacos.config.server-addr=localhost:8848 spring.cloud.nacos.config.file-extension=yaml
3、声明配置变量
// 配置文件自定义的变量也能通过 @Value 注解正常注入
@RefreshScope
public class OrderController {
@Value("${id}")
private Integer orderId;
@GetMapping("/getOrderId")
public String getOrderId(){
return orderId.toString();
}
}
4、启动控制台,增加配置文件
5、大功告成!
配置中心
注册中心
Nacos自定义持久化存储
1、创建表
找到nacos安装目录下 /conf/nacos-mysql.sql 文件
新建一个数据库,名为nacos
执行 nacos-mysql.sql 文件
2、修改存储配置文件
找到安装目录下 conf/application.properties 文件
把注释打开配置成自己的数据库ip和端口号,注意数据库名称要一致
3、启动nacos
[root@iZwz91151k3ad6i3tz5g0oZ bin]# ./startup.sh
新建一个配置文件后查看表数据是否插入
Nacos集群
1、修改nacos启动模式
找到启动nacos的 startup.sh 配置文件,确认 MODE 模式为 cluster ,单机下MODE 为 standalone
export MODE="cluster"
2、修改集群配置文件
找到安装目录下 /conf/cluster.conf.example ,拷贝一份名为 cluster.conf
#2021-08-17T20:31:50.798 # 172.20.88.220:8848 # 配置nacos集群的ip地址与端口号 ip:port ip:port ip:port
3、修改nacos启动端口
找到安装目录下 /conf/application.properties 文件,每个nacos服务对应改成集群的端口号
4、大功告成
最后我们可以通过nginx做nacos的负载均衡,或者也可以在客户端指定所有nacos的地址
以逗号分割。后者不推荐!
spring.application.name=order spring.cloud.nacos.config.server-addr=localhost:8848,localhost:8849,localhost:8848 spring.cloud.nacos.config.file-extension=yaml
