【Nacos专题】Nacos 集群搭建

在前面介绍了 Nacos快速入门,本节将介绍 Nacos 服务端集群化配置与搭建。

在生产环境中,Nacos 服务端都是集群部署,不可能采用单机模式运行(单机就没法高可用...)。因此,在这里记录一下 Nacos 集群配置与搭建过程。

一、Nacos Server 实例

为了方便起见,在一台服务器上通过设置不同端口号来构建不同的 Nacos Server 实例。下面会启动3个 Naocs 实例,其端口号分别为 8847、8848、8849。

(1) 下载/解压

tar -zxvf nacos-server-1.4.0.tar.gz -C nacos_8847
tar -zxvf nacos-server-1.4.0.tar.gz -C nacos_8848
tar -zxvf nacos-server-1.4.0.tar.gz -C nacos_8849

(2) 修改 application.properties 配置

${NACOS_HOME}/conf 目录下包含如下文件:

  • application.properties:Nacos 主配置文件(参考 SpringBoot 工程的主配置文件)
  • application.properties.example:Nacos 主配置文件模板
  • cluster.conf.example:集群相关配置
  • nacos-logback.xml:日志相关配置
  • nacos-mysql.sql:MySQL 数据库初始化脚本(集群模式)
  • schema.sql:Derby 数据库初始化脚本(单机模式)

Nacos 默认ip为 127.0.0.1,默认 port 为 8848 (珠峰高度),因此,对于 nacos_8847 和 nacos_8849 实例需要修改其 ip 和 port,在 application.properties 修改配置如下:

# nacos_8847 实例
server.port=8847
nacos.inetutils.ip-address=192.168.33.10
# nacos_8848 实例
server.port=8848
nacos.inetutils.ip-address=192.168.33.10
# nacos_8849 实例
server.port=8849
nacos.inetutils.ip-address=192.168.33.10

二、集群配置

cluster.conf.example 文件拷贝一份,然后重命名为cluster.conf,在cluster.conf 中添加集群服务器的 ip 和 port,如下所示:

192.168.33.10:8847
192.168.33.10:8848
192.168.33.10:8849

上述配置在实例 nacos_8847、nacos_8848、nacos_8849 保持一致。

三、配置数据源

Nacos 默认采用嵌入式数据库 Derby 来进行数据的持久化,Derby 的优势是体积小,是轻量级的数据库。但是,Derby 支持的会话连接数较少,而且在集群模式下会存在数据一致性的问题。因此,在搭建 Nacos 集群环境时需要修改数据源为 MySQL (除了 Derby 外,目前,Nacos 只支持 MySQL,但是暂不支持8.0版本)。

(1) MySQL 初始化

  • 首先,创建数据库nacos_config
  • 然后,运行nacos-mysql.sql即可完成 MySQL 数据库的初始化

(2) 配置数据源

在 application.properties 中修改数据源如下所示:

db.num=1
db.url.0=jdbc:mysql://192.168.10.33:3306/nacos_config?characterEncoding=utf8&connectTimeout=1000&socketTimeout=3000&autoReconnect=true&useUnicode=true&useSSL=false&serverTimezone=UTC
db.user=nacos
db.password=naco

四、启动服务

进入nacos_${port}/bin 目录,分别执行sh startup.sh命令来启动 3 个 Nacos 服务。

sh startup.sh

登录 Nacos 后台,在 "集群管理" -> "节点列表" 中可以看到如下效果:

Nacos UI.png
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容