一、结构图

二、实际操作
先准备虚拟机

出来混早晚要装虚拟机,还好以前就备好了。以下内容我先在本地做链接mysql调试,然后再上传到虚拟机上。
配置数据库
配置数据库需要把nacos 已经准备的号sql文件在数据库执行一遍,创建nacos需要的表,该下图的 nacos-mysql.sql 这个文件。

mysql8 和 nacos server不匹配解决方法,但在这里注意下,需要在主pom把test模块注释掉,否则构建会失败。
在 nacos server里的 application.properties 修改db配置,加上 serverTimezone=Asia/Shanghai 否则启动会报错
### If user MySQL as datasource:
spring.datasource.platform=mysql
### Count of DB:
db.num=1
### Connect URL of DB:
db.url.0=jdbc:mysql://ip:port/test?characterEncoding=utf8&connectTimeout=1000&socketTimeout=3000&autoReconnect=true&serverTimezone=Asia/Shanghai
db.user=user
db.password=password


接下来修改 Nacos Server 的配置文件
在conf目录下copy cluster.conf.example 文件新建 cluster.conf

cluster.conf 配置内容如下:
# ip:port
192.168.188.1:8848
192.168.15.129:8848
192.168.15.132:8848

之间 ping 完全没有问题,然后把之前打包的 nacos-server-1.2.0.tar.gz 上传到 两台linux机器上,并解压,并修改配置文件(db) 和 cluster.conf 文件
linux 启动Nacos服务
nacos启动命令
单机启动方法
sh startup.sh -m standalone
集群启动方法
sh startup.sh
如果有一下报错
[root@localhost bin]# sh startup.sh -m standalone
startup.sh: line 16: syntax error near unexpected token `$'in\r''
'tartup.sh: line 16: `case "`uname`" in
编辑 startup.sh 使用以下命令解决报错,然后保存,运行。

运行以后记得把端口开放,否则可能之间无法找到,且集群失败呢。
/sbin/iptables -I INPUT -p tcp --dport 8848 -j ACCEPT

没有什么问题那集群就算是搭建成功了。
VIP模式
简单的来说VIP模式是挂了一层nginx,所以我们只要加一个nginx 就完事。
域名模式
是推荐的一套做法,就是申请域名,映射到加了nginx的服务器,就行了。
网友评论