Nacos集群搭建
Nacos集群的思想:一个Nacos请求通过Nginx的反向代理完成负载均衡获取Nacos集群节点,通过数据库集群完成Nacos数据同步
Nacos集群的结构:
Nacos集群搭建
搭建集群的基本步骤:
- 下载Nacos
- 搭建数据库,初始化数据库表结构
- 配置nacos
- 启动nacos集群
- nginx反向代理
下载并解压Nacos
nacos在GitHub上有下载地址:https://github.com/alibaba/nacos/tags,可以选择任意版本下载
初始化数据库
Nacos默认数据存储在内嵌数据库Derby中,不属于生产可用的数据库,官方推荐的最佳实践是使用带有主从的高可用数据库集群。
首先新建一个数据库,命名为nacos_cluster,而后导入SQL:
配置Nacos
进入nacos的conf目录,修改配置文件cluster.conf.example,重命名为cluster.conf
然后添加内容
127.0.0.1:8845 127.0.0.1:8846 127.0.0.1:8847
然后修改application.properties文件,添加数据库配置
### If use MySQL as datasource: spring.datasource.platform=mysql ### Count of DB: db.num=1 ### Connect URL of DB: db.url.0=jdbc:mysql://127.0.0.1:3306/nacos_cluster?characterEncoding=utf8&connectTimeout=1000&socketTimeout=3000&autoReconnect=true&useUnicode=true&useSSL=false&serverTimezone=UTC db.user.0=root db.password.0=root
nacos_cluster:持久化nacos的数据
启动
将nacos文件夹复制三份,分别命名为:nacos1、nacos2、nacos3
然后分别修改三个文件夹中的application.properties
nacos1:
server.port=8845
nacos2:
server.port=8846
nacos3:
server.port=8847
nacos1、2、3的文件夹中bin下,分别启动三个nacos节点(默认:集群启动):
startup.cmd
Nginx反向代理
下载地址:http://nginx.org/en/download.html
解压到任意非中文目录下
修改conf/nginx.conf文件,配置如下:
upstream nacos-cluster { //负责负载均衡处理 server 127.0.0.1:8845; server 127.0.0.1:8846; server 127.0.0.1:8847; } server { //反向代理 listen 80; server_name localhost; location /nacos { proxy_pass http://nacos-cluster; } }
找到nginx.exe,直接启动
nginx.exe
浏览器访问:http://localhost/nacos
项目中使用Nacos集群
bootstrap.yml 文件配置如下
spring: cloud: nacos: server-addr: localhost:80 # Nacos地址
注意:将nacos地址配置在spring.cloud.nacos的server-addr属性下,否则在启动微服务实例,就会出现以下错误:
【推荐】还在用 ECharts 开发大屏?试试这款永久免费的开源 BI 工具!
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步