SpringCloud学习笔记 - Nacos集群配置和配置持久化

1. 集群架构

要组成集群Nacos必须要有3个或以上的Nacos服务节点,官网推荐在生产服务中使用集群架构。
官网对Nacos集群架构的说明:https://nacos.io/zh-cn/docs/cluster-mode-quick-start.html
在这里插入图片描述

总体来说有三种方式可以实现Nacos集群部署:

  1. IP直连模式:机器挂则需要修改IP才可以使用。
  2. 挂载slb模式(Server Load Balancing 服务负载均衡):内网SLB,不可暴露到公网,以免带来安全风险,直连SLB即可,下面挂server真实IP,可读性不好。
  3. 域名 + SLB模式:可读性好,而且换IP方便,推荐模式

也就是说官网是推荐将所有服务列表放到一个vip下面,然后挂到一个域名下面:请求通过域名发出,并通过Nginx将请求分发到各个Nacos服务器,再由Nacos服务到数据库中获取配置信息。
在这里插入图片描述

2. 配置持久化

Nacos支持三种部署模式

  • 单机模式-用于测试和单机试用。
  • 集群模式-用于生产环境,确保高可用。
  • 多集群模式-用于多数据中心场景。

默认Nacos使用嵌入式数据库(Derby)实现数据的存储。所以,如果启动多个默认配置下的Nacos节点,数据存储是存在一致性问题的。为了解决这个问题,Nacos采用了集中式存储的方式来支持集群化部署,也就是将配置信息保存在同一个数据库中,目前只支持MySQL的存储。

2.1. Nacos切换mysql数据库

在0.7版本之前,在单机模式时nacos使用嵌入式数据库实现数据的存储,不方便观察数据存储的基本情况。0.7版本增加了支持mysql数据源能力,具体的操作步骤:

  1. 安装数据库,版本要求:5.6.5及以上

  2. 初始化mysq数据库,数据库初始化文件: nacos-mysql.sql(文件在Nacos的安装目录下的conf中)
    在这里插入图片描述

  3. 修改conf下的application.properties文件,增加支持mysql数据源配置(目前只支持mysql),添加mysql数据源的url、用户名和密码。(按需修改对应值)

spring.datasource.platform=mysql

db.num=1
db.url.0=jdbc:mysql://localhost:3306/nacos_config?characterEncoding=utf8&connectTimeout=1000&socketTimeout=3000&autoReconnect=true
db.user=root
db.password=123456

在这里插入图片描述

  1. 再以单机模式启动nacos,nacos所有嵌入式数据库的数据都写到了mysql。
    cmd startup.cmd或者双击startup.cmd文件

启动Nacos,可以看到是个全新的空记录界面,以前是记录进derby。
在这里插入图片描述

3. Linux版Nacos+mysql生产环境配置

  1. 下载Nacos的Linux版本
  2. 在Linux中安装mysql、Nacos、Nginx
  3. 修改Nacos的application.properties,增加mysql链接配置,将数据库从嵌入式数据库切换到外部高可用数据库
  4. 修改Nacos的startup文件,增加启动参数配置,支持传入port参数,让Nacos可以用不同端口启动多个服务
  5. 修改cluster.conf集群配置文件,将多个端口的Nacos服务绑定为集群
  6. 配置Nginx,增加端口拦截监听,并配置转发URL
  7. 注册微服务模块进入Nacos服务
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值