Nacos集群部署
为了保证Nacos的高可用,可就是配置中心和服务注册中心的高可用,Nacos需要集群的方式来部署:
在本机搭建,所以ip地址一样,如果在多个机器上搭建,IP地址不一样,但是一般端口一样(8848)
1、复制多份nacos作为多个节点
2、修改conf/cluster:
查看本机地址:cmd:
ipconfig
10.0.0.133:8858
10.0.0.133:8868
10.0.0.133:8878
3、修改另外每个节点的application.properties:
server.port=8858
4、运行
D:\nacos-server-2.0.3\nacos\bin>startup.cmd -p embedded
然后就可以通过
http://localhost:8858/nacos
http://localhost:8868/nacos
http://localhost:8878/nacos
访问同一个Nacos控制台,并且在控制台/集群管理/节点列表查看三个节点的情况
启动时使用
startup.cmd -p embedded
表示使用内置数据源,可以切换成mysql
- 在mysql中新建一个库
nacos_config
- 建表语句:conf\nacos-mysql.sql
- 修改application.properties:
三个节点都配置号,而且必须连接同一个数据库没这样就可以直接使用startup.cmd
启动了
此时对于应用而言,连接任意一个节点都可以,或者可以配置多个:
spring.cloud.nacos.discovery.server-addr=10.0.0.133:8858,10.0.0.133:8868,10.0.0.133:8878
这样某个节点就算挂了,对于应用而言也能从其他节点获取信息
不过在应用上指定多个ip地址,一旦ip地址发生变化,就要修改配置,可以在nacos集群上搭建一个nginx:
修改nginx的配置文件conf/nginx
:
添加upstream
upstream nacos-cluster {
server 10.0.0.133:8858;
server 10.0.0.133:8868;
server 10.0.0.133:8878;
}
添加location:
location /nacos {
proxy_pass http://nacos-cluster;
}
启动nginx后,访问http://localhost/nacos
就可以访问到nacos管理台了
应用中配置:
spring.cloud.nacos.discovery.server-addr=localhost:80/nacos
就可以进行服务注册与发现了