环境
- 64 bit OS Linux/Unix/Mac,推荐使用Linux系统
- 64 bit JDK 1.8+
架构
- 一个nginx节点
- 三个nacos节点
- 一个MySQL数据库
实践
1,准备一个高可用MySQL数据库,新建nacos_config数据库,执行nacos\conf\nacos-mysql.sql文件,得到12张表,用于持久化配置中心的数据
2,修改nacos\conf\application.properties文件(nacos默认使用嵌入数据库持久化数据),在文件末尾新增之前准备的MySQL数据库信息
spring.datasource.platform=mysql
db.num=1
db.url.0=jdbc:mysql://ip:3306/nacos_config?characterEncoding=utf8&connectTimeout=1000&socketTimeout=3000&autoReconnect=true
db.user=root
db.password=ru6421B&u$@I%pVz
3,修改nacos\conf\cluster.conf文件,录入三个nacos节点的信息
cp cluster.conf.example cluster.conf
vim cluster.conf
# ip:port
39.106.xx.xx:8849
39.106.xx.xx:8850
39.106.xx.xx:8851
4,配置nginx
#编辑配置文件
vim /usr/local/nginx/conf/nginx.conf
#启动nginx
./nginx -c /usr/local/nginx/conf/nginx.conf
#修改内容如下
5,启动nacos三个节点
./bin/startup.sh -p 8849
./bin/startup.sh -p 8850
./bin/startup.sh -p 8851
测试
- 访问:ip:8848/nacos
- 新建配置文件
- 查看数据库
配置正确的话,访问nginx地址,会负载到nacos节点上,新增一个配置文件后,在数据库中就能看的刚刚新增的配置文件,说明数据已经持久化到自定义的数据库中
项目配置
server-addr配置nginx地址
spring:
application:
name: demo1-order
cloud:
nacos:
config:
namespace: bda311d1-4a07-4a2e-b15c-a92c5e5e8fc4
server-addr: ip:8848
prefix: order
file-extension: yml
补充
如果需要在同一个机器上将三个nacos启动在不同的端口上,可以修改下nacos启动脚本,新增一个port参数,启动的时候带上端口号
#编辑启动脚本
vim bin/startup.sh
#启动nacos
./startup.sh -p 8848
#修改内容如下
参考资料
https://nacos.io/zh-cn/docs/cluster-mode-quick-start.html
扩展阅读
nacos快速开始 https://blog.csdn.net/momo57l/article/details/104298206
nacos项目配置 https://blog.csdn.net/momo57l/article/details/104733319