Nacos服务下载地址:https://github.com/alibaba/nacos/releases
单例启动模式:
进入安装程序的bin目录:
Linux/Unix/Mac启动方式:
启动命令(standalone代表着单机模式运行,非集群模式):
sh startup.sh -m standalone
如果您使用的是ubuntu系统,或者运行脚本报错提示[[符号找不到,可尝试如下运行:
bash startup.sh -m standalone
Windows启动方式:
启动命令:
cmd startup.cmd
或者双击startup.cmd运行文件。
集群启动模式:
在所有nacos目录的conf目录下,有文件cluster.conf.example
,将其命名为cluster.conf
,并将每行配置成ip:port。(请配置3个或3个以上节点)
# ip:port
127.0.0.1:8848
127.0.0.1:8849
127.0.0.1:8850
同服修改端口,以防冲突,不同服务器可沿用8848,这是配置集群的ip地址。
然后于application.properties文件中,如果服务器有多个ip也要指定具体的ip地址,如:nacos.inetutils.ip-address=127.0.0.1
最后于bin目录中,启动项目即可,命令 ./startup.sh
登录Nacos的界面,点击集群管理-节点列表即可查看 http://192.xxx.83.129:8849/nacos/index.html#/login
客户端配置
所有客户端,分别指定nacos集群中的若干节点:
spring:
application:
name: xxxx
cloud:
nacos:
config:
server-addr: 127.0.0.1:8848,127.0.0.1:8849,127.0.0.1:8850
测试,使用快速上手的例子:
(1)关掉127.0.0.1:8848 nacos Leader实例,发现Leader被成功选举至127.0.0.1:8850
(2)紧接着重新启动Provider,这时马上请求consumer的/service出现错误,发现consumer与provider通信已经出现问题。但经过短暂的时间后,通信恢复。
通过测试,我们可以看到,通过以上的集群部署已经达到了高可用的效果。
生产环境部署建议
下图是官方推荐的集群方案,通过域名 + VIP模式的方式来实现。客户端配置的nacos,当Nacos集群迁移时,客户端配置无需修改。