0
点赞
收藏
分享

微信扫一扫

nacos 集群部署


nacos 集群部署

1. 要求

需要 Nacos 节点对外暴露 8848 与 7848 端口。其中 8848 端口的作用是对外暴露 API 与集群间数据同步,而 7848 端口则用于节点选举来确定集群领袖(Leader)。同时 Nacos 在集群环境下需要持久化应用配置、用户权限、历史信息等内置数据,因此需要额外部署 MySQL 数据库提供统一存储。

2.环境准备。

Nacos 因为采用raft选举算法,由于它的特殊性,要求最少三个节点才能组成一个有效的集群。

3. 配置数据库

在MySQL下nacos库中执行以下sql语句

/data/nacos/conf/nacos-mysql.sql

表名称

解释说明

config_*

所有 config_ 开头的表都是 Nacos 配置中心使用时保存应用配置的表

users

系统用户表,在集群环境下用户信息保存在 users 表中,而非在配置文件中

roles

系统角色表,Nacos 的权限基于 RBAC(基于角色的访问控制)模型设计,此表保存角色数据

permissions

系统权限表,说明角色与系统使用权限的对应关系

4.配置nacos数据源

依次打开各个节点的 /data/nacos/conf/application.properties 这个文件

### Count of DB: 数据库总数

db.num=1

### Connect URL of DB: 数据库连接,根据你的实际情况调整

db.url.0=jdbc:mysql://10.17.20.14:3306/nacos?characterEncoding=utf8&connectTimeout=1000&socketTimeout=3000&autoReconnect=true&useUnicode=true&useSSL=false&serverTimezone=UTC

db.user=root

db.password=root

5. 配置Nacos 集群节点

在 /nacos/config 目录下提供了集群示例文件cluster.conf.example

user@user-PC:/data/nacos/conf$ cp cluster.conf.example  cluster.conf
user@user-PC:/data/nacos/conf$ vim cluster.conf
10.17.20.14:8848

10.17.20.148:8848

10.17.20.158:8848

6. 分别启动各个节点

user@user-PC:/data/nacos/bin$ sh

注意:集群模式下并不需要增加“-m”参数,默认就是以集群方式启动。

7. 查看日志

tail -1000f /data/nacos/logs/start.out
tail -1000f /data/nacos/logs/nacos.log

8. 验证所有节点是否启动成功

http://10.17.20.14:8848/nacos/#/clusterManagement?dataId=&group=&appName=&namespace=

UP 代表节点已就绪,DOWN 代表节点已离线,目前所有节点均已就绪。

9. spring cloud alibaba 接入

在 application.properties 配置 Nacos 集群的任意节点都可以完成接入工作,Nacos 内置的数据同步机制会保证各节点数据一致性。

# 配置 192.168.163.131/132/133 都可以接入 Nacos
spring.cloud.nacos.discovery.server-addr=10.17.20.14:8848,10.17.20.148:8848,10.17.20.158:8848


举报

相关推荐

0 条评论