注册中心,在微服务中是核心基础组件,当然要保证服务高可用,避免单节点故障。
官方部署文档:nacos.io/zh-cn/docs/…
由于资源有限,在一台windows机器上,启动三个端口不同的节点测试。
解压安装后,复制出三个节点文件夹
Nacos 默认启动方式是 cluster(集群模式),端口号 8080,未配置数据库连接。
1. 修改服务端口
配置文件位置:
编辑切换为居中
添加图片注释,不超过 140 字(可选)
修改三个节点端口号分别为:4001、4003、4005
2. 修改数据库配置
spring.datasource.platform=mysql
db.num=1
db.url.0=jdbc:mysql://localhost:3306/nacos?characterEncoding=utf8&connectTimeout=10000&socketTimeout=30000&autoReconnect=true
db.user=root
db.password=root
3. 修改集群配置
只需要将cluster.conf.example这个文件复制一份为cluster.conf放在conf目录下,其中配置的内容如下:
10.2.189.41:4001
10.2.189.41:4003
10.2.189.41:4005
三个节点配置信息一样,复制即可。
4. 启动节点
关闭4003节点,查看状态
5. Nginx转发
搭建单机Nginx,修改nginx.conf配置文件
upstream nacos{
server 10.2.189.41:4001;
server 10.2.189.41:4003;
server 10.2.189.41:4005;
}
server {
listen 1234;
server_name localhost;
location / {
proxy_pass http://nacos;
}
}
启动Nginx服务端
访问:http://localhost:1234/nacos
6. 服务注册发现测试
修改项目中nacos的server-addr,有两种方式:
(1)直接配置节点地址
spring:
cloud:
nacos:
discovery:
server-addr: 10.2.189.41:4001,10.2.189.41:4003,10.2.189.41:4005
namespace: 7e98b650-0c03-4663-b747-b3d4848630aa
group: DEFAULT_GROUP
(2)配置Nginx转发地址
spring:
cloud:
nacos:
discovery:
server-addr: 10.2.189.41:1234
namespace: 7e98b650-0c03-4663-b747-b3d4848630aa
group: DEFAULT_GROUP
理想中的高可用场景