Nacos支持三种部署模式
    1.单机模式—用于测试和单机试用
    2.集群模式—用于生产环境,确保高可用
    3.多集群模式—用于多数据中心场景

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

    Nacos 的集群与持久化配置 - 图1

    单机版使用MySQL存储:

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

    1.安装数据库,版本要求:5.6.5+2.初始化mysql数据库,数据库初始化文件:nacos-mysql.sql,安装nacos目录下的conf目录中。3.修改conf/application.properties文件,增加支持mysql数据源配置(目前只支持mysql),添加mysql数据源的url、用户名和密码。spring.datasource.platform=mysqldb.num=1db.url.0=jdbc:mysql://11.162.196.16:3306/nacos_devtest?characterEncoding=utf8&connectTimeout=1000&socketTimeout=3000&autoReconnect=truedb.user=nacos_devtestdb.password=youdontknow

    再以单机模式启动nacos,nacos所有写嵌入式数据库的数据都写到了mysql。

    Nacos 的集群与持久化配置 - 图2

    Nacos 的集群与持久化配置 - 图3

    集群模式部署:

    采用1个nginx+3个nacos注册中心,1个mysql

    Nacos 的集群与持久化配置 - 图4

    在这里简化,只使用了,一台nginx,一台mysql。

    环境装备:

    64 bit OS Linux/Unix/Mac,推荐使用Linux系统;64 bit JDK 1.8+;Maven 3.2.x+;3个或3个以上Nacos节点才能构成集群。首先,下载Linux版本的nacos,地址:https://github.com/alibaba/nacos/releases,nacos-server-1.2.1.tar.gz,解压。

    然后安装mysql,可以按照这篇文章安装,https://www.cnblogs.com/ianduin/p/7679239.html

    安装完成,创建数据库:

    CREATE DATABASE IF NOT EXISTS nacos_config DEFAULT CHARSET utf8 COLLATE utf8_general_ci;

    导入sql脚本

    use nacos_config;source /usr/local/nacos/conf/nacos-mysql.sql;

    授权

    grant all privileges on . to ‘root’@’192.168.1.21’ identified by ‘root’;

    在nacos解压的目录中找到conf目录,在application.properties文件增加mysql的配置。添加如下配置:

    spring.datasource.platform=mysqldb.num=1db.url.0=jdbc:mysql://192.168.1.21:3306/nacos_config?characterEncoding=utf8&connectTimeout=1000&socketTimeout=3000&autoReconnect=truedb.user=rootdb.password=root

    编辑Nacos的启动脚本startup.sh,使他能够接受不同的启动端口,模拟Nacos的集群。

    平时单机版的启动,都是./startup.sh即可,但是集群启动,我们希望可以类似其他软件的Shell命令。传递不同的端口启动不同的nacos实例。

    命令: ./startup.sh -p 3333表示启动端口为3333的nacos服务器。

    nacos安装目录下的bin目录下有startup.sh。

    在此处添加:

    Nacos 的集群与持久化配置 - 图5点击修改后

    在此处添加

    Nacos 的集群与持久化配置 - 图6

    将conf目录下的cluster.conf.example copy一份并改为cluster.conf。并添加如下配置

    Nacos 的集群与持久化配置 - 图7

    这时可以使用./startup.sh -p 3333, ./startup.sh -p 3334,./startup.sh -p 3335启动三个实例。

    Nacos 的集群与持久化配置 - 图8

    安装Nginx,在这里不做详细的论述,之前写的文章也介绍nginx的安装和其他的内容,可以查看。

    修改nginx的conf配置文件

    Nacos 的集群与持久化配置 - 图9

    启动nginx,访问http://192.168.1.21:1111/nacos/

    Nacos 的集群与持久化配置 - 图10

    至此nacos的集群已搭建完成。