Nacos集群部署
Nacos集群部署文章目录Nacos集群部署集群部署架构图预备环境单机部署集群生产部署集群前面已经学习了Nacos的注册中心功能以及分布式配置中心的各个功能。在前一节我们知道了如何实现Nacos的数据持久化(其实在安装的时候就有涉及到)。前面为了方便演示和测试,使用的都是单机版,而没有实现集群搭建。但是在分布式架构中,微服务解决方案里,都是要满足三大特性:高并发,高性能,高可用。所以,单机版本..
Nacos集群部署
☞ 博客导航
文章目录
前面已经学习了Nacos的注册中心功能以及分布式配置中心的各个功能。在前一节我们知道了如何实现Nacos的数据持久化(其实在安装的时候就有涉及到)。前面为了方便演示和测试,使用的都是单机版,而没有实现集群搭建。但是在分布式架构中,微服务解决方案里,都是要满足三大特性:高并发,高性能,高可用。所以,单机版本的Nacos(注册中心&配置中心)已经不够满足实际场景了,所以本节来搭建一个Nacos集群。
集群部署架构图
我们看看nacos官网的介绍:
因此开源的时候推荐用户把所有服务列表放到一个vip下面,然后挂到一个域名下面
http://ip1:port/openAPI 直连ip模式,机器挂则需要修改ip才可以使用。
http://VIP:port/openAPI 挂载VIP模式,直连vip即可,下面挂server真实ip,可读性不好。
http://nacos.com:port/openAPI 域名 + VIP模式,可读性好,而且换ip方便,推荐模式
预备环境
- 64 bit的 linux/unix/mac,推荐使用Linux。
- 64 bit的 JDK 1.8+。
- Maven 3.2.x+。
- 3个或3个以上Nacos节点才能构成集群。
单机部署集群
我们准备已经下载好的Nacos压缩包,并解压,配置好mysql数据连接(可参考前一节)。
在Nacos的conf
目录下有一个cluster.conf.example
, 可以直接把.example
去掉使用,也可以单独创建一个cluster.conf
文件,用于后续搭建集群的实例地址配置。
我们打开cluster.conf
, 删除默认配置,添加下述配置:
#it is ip
192.168.1.104:8085
192.168.1.104:8086
192.168.1.104:8087
需要保证部署3个或3个以上节点,这样才能搭建成集群。注意ip不可填写127.0.0.1,必须是内网ip,否则在nacos.log中会报
java.lang.IllegalStateException: unable to find local peer
修改完cluster.conf
之后,我们将bin/startup.sh
复制三份,分别命名为:
startup-8085.sh
startup-8086.sh
startup-8087.sh
然后分别打开这三个文件,进行修改,如下:
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-rgPsvu0N-1571992378970)(./images/Snipaste_2019-10-18_09-41-37.png)]
我们可以看到:
- 设置相应的启动端口。
- 如果内存不够,设置不同的内容。
8087就不展示了,分别启动
sh startup-8085.sh
sh startup-8086.sh
sh startup-8087.sh
然后选择其中一个端口进行登录,可以看到集群管理的节点列表中就有了节点信息,可以看到节点状态。如下图:
192.168.1.104:8087 为leader节点,192.168.1.104:8085/8086 为Follower节点。
生产部署集群
生产环境部署集群,无非就是将不同的节点部署到不同的服务器上,这样不会因为一台服务器宕机而导致整个Nacos集群不可用。
第一步:修改cluster.conf
文件,三个节点均需要配置
120.79.167.88:8848
119.23.104.130:8848
47.101.47.127:8848
第二步:修改application.properties
文件,配置数据源,三个节点均要
spring.datasource.platform = mysql
db.num = 1
db.url.0 = jdbc:mysql://120.79.167.xxx:3306/nacos_devtest?characterEncoding=utf8&connectTimeout=1000&socketTimeout=3000&autoReconnect=true
db.user=root
db.password=pwd
第三步:分别启动每个节点的startup.sh
sh startup.sh
注意:如果服务器内存不足,需要先修改startup.sh
.
结果如图:
依照上述的配置,如果没有部署成功,请看下一节【Nacos集群部署异常《unable to find local peer: 172.16.26.250:8848》 https://blog.csdn.net/ooyhao/article/details/102745641?utm_source=app&app_version=4.13.0】。我自己按照上述的生产部署也没有成功。
更多推荐
所有评论(0)