因为我安装的Linux系统给的内存不是很大,所以用Window系统给大家说明Nacos集群运行。在Linux操作跟Window修改的东西一模一样,具备Linux参考价值。
总共操作可以分为以下五大步
-
创建三个nacos
-
数据交由Mysql管理
-
修改端口
-
创建cluster.conf
-
由Nginx进行负载均衡
创建三个nacos
将nacos-server复制粘贴弄成3份,取名如下;
数据交由Mysql管理
-
在conf文件夹有一个可执行的sql脚本,用于集群下的数据表创建。
-
创建数据库名为
nacos
,然后执行sql脚本。
- 在
application.properties
中将Mysql持久化部分的设置开启。三个nacos都要修改别落下!
修改端口
在application.properties
文件中修改server.port,三个nacos都要修改别落下!
创建cluster.conf
在conf文件夹下创建文件cluster.conf
可以由cluster.conf.example来进行修改,此文件作用是用于集群之间的数据同步。三个nacos的cluster.conf都要一份别落下!
Nginx进行负载均衡
用stream来做,与http同级;
最终效果
觉得自己电脑内存有压力的话,可以在startup.md(Linux系统在startup.sh)文件中进行下面的值修改就可以了
依次启动这三台nacos,看到以下字样,说明启动成功了哟。
注意:这里有可能提示以下错误,如果存在启动第二台nacos时出现端口占用问题,看一下自己的nacos的版本,是否是2.x版本,因为官方在2.x版本后会多占用你所在的端口后的2个端口,例如:8848,官方会多占用9848、9849
2.x版本
出现上面这个情况的,所以我这里设置的端口号都没挨在一起,这样去启动就不会有问题;当然了如果你们在测试的时候 三台放在不同的服务器中
那就不用考虑这个问题。
最后启动nginx;
#验证以下三个地址 看一下是否都能正常访问
http://127.0.0.1:10086/nacos
http://127.0.0.1:10000/nacos
http://127.0.0.1:10010/nacos
SpringBoot项目中的nacos配置服务器地址就不要还是原先指向具体某一台的nacos端口了,要变成nginx的端口,这样由nginx统一分发
spring.application.name=服务名
spring.cloud.nacos.discovery.server-addr=127.0.0.1:10087
#spring.cloud.nacos.discovery.server-addr=nginx所在ip地址:端口