Nacos 集群与持久化配置(2.0.+ 版)

Nacos 单机版

一、基于 nacos 嵌入式数据库
1、Nacos 的下载地址:https://nacos.io/zh-cn/
2、官网开发手册说明:https://nacos.io/zh-cn/docs/deployment.html
3、Nacos Server 需要 Java 8 的运行环境。自行安装。(Linux环境下安装 JDK8
4、解压 Nacos 的安装包,直接运行 bin 目录下的 startup.cmd 或 linux 的 startup.sh。如果报错,也可以修改设置成独立模式(即单机版):修改 startup.cmd 的 set MODE = "standalone"
在这里插入图片描述

5、安装运行成功后直接访问:http://localhost:8848/nacos默认的账号密码都是:nacos。登录成功后页面如下:
在这里插入图片描述
二、Nacos 自带 derby 嵌入式数据库切换到 MySQL数据库(持久化)
1、默认 Nacos 使用嵌入式数据库(derby)实现的存储。所以,如果启动多个默认配置的Nacos节点,数据存储是存在一致性问题的。为了解决这个问题,Nacos 采用集中式存储的方式来支持集群化部署,目前只支持MySQL的存储。
2、derby 切换到 mysql 数据库步骤:
(1)首先创建 nacos_config 数据库:设置并指定 执行引擎Innodb字符编码UTF-8等。
(2)执行 sql 脚本:/nacos-server-2.0.3/nacos/conf/nacos-mysql.sql。
(3)进入 nacos 的 config 文件夹下找到 application.properties,并指定数据源配置。

# 数据源类型
spring.datasource.platform=mysql

# 数据源实例数
db.num=1
# 连接数据源信息
db.url.0=jdbc:mysql://127.0.0.1:3306/nacos_config?characterEncoding=utf8&connectTimeout=1000&socketTimeout=3000&autoReconnect=true&useUnicode=true&useSSL=false&serverTimezone=UTC
db.user=root
db.password=123456

Nacos 集群与持久化配置(重要)

一、官网开发手册说明及架构图:https://nacos.io/zh-cn/docs/deployment.html。图形解释说明如下:在这里插入图片描述

准备工作(推荐使用Linux系统)

1、64位 JDK 1.8+
2、Maven 3.2.x+
3、一个或多个高可用 Nginx:https://blog.csdn.net/qq_36763419/article/details/109534815
4、三个或以上 Nacos
5、一个或多个高可用(主从复制) MySQL

Nacos 集群配置步骤(重点)


!!!注意:nacos 按照步骤配置完成后复制两份并修改 application.properties 配置文件的 server.port 服务端口号。

1、Linux 服务器上 MySQL 数据库配置
(1)首先创建 nacos_config 数据库:设置并指定 执行引擎Innodb字符编码UTF-8等。
(2)执行 sql 脚本:/nacos-server-2.0.3/nacos/conf/nacos-mysql.sql。

2、application.properties 配置

#修改nacos 的启动端口号为8840作为集群的第一个节点
server.port=8840

# 数据源类型
spring.datasource.platform=mysql

# 数据源实例数
db.num=1
# 连接数据源信息
db.url.0=jdbc:mysql://127.0.0.1:3306/nacos_config?characterEncoding=utf8&connectTimeout=1000&socketTimeout=3000&autoReconnect=true&useUnicode=true&useSSL=false&serverTimezone=UTC
db.user=root
db.password=123456

3、Linux 服务器上 Nacos 的集群 cluster.conf

# 配置格式 ip:port ,注意:这个 ip 不能写127.0.0.1 或 localhost ,必须是 Linux 命令 hostname -i 能够识别的 IP,或通过 ifconfig 可以查到 ip。
192.168.253.130:8840
192.168.253.130:8850
192.168.253.130:8860

4、编辑 Nacos 的启动脚本 startup.sh,使它能够接受不同的启动端口
通常单机版的启动,都是 ./startup.sh 即可。但是,集群启动,我们希望可以类似其他软件的 shell 命令,可以传递不同的端口号启动不同的 nacos 实例。命令:./start.sh -p port 表示启动端口号,启动的端口号和 cluster,conf 中配置的一致。
(1)修改一:修改配置传入的参数,即 p 表示的是端口 port。
在这里插入图片描述
(2)修改二:配置安装传入的端口参数启动
在这里插入图片描述
(3)修改三:将集群模式下的堆内存与栈内存大小修改为128m。避免程序启动是,导致虚拟机无法分配内存的错误。
在这里插入图片描述
(4)启动 nacos 集群,分别进入 nacos8840、nacos8850、nacos8860 的 bin 目录下,通过指定端口启动

# ./starup.sh -p <port>
./startup.sh -p 8840
# 或
sh /.../nacos/bin/startup.sh -p <port>

# 验证三个节点,如果是 3 则表示三个 nacos 节点全部启动成功
ps -ef|grep nacos | grep -v grep|wc -l

5、Nginx 的配置,由它作为负载均衡器
(1)修改 Nginx 的配置文件:nginx.conf

http{
	# upstream 模块不能使用下划线命名,Nginx不能识别
	upstream nacosCluster{
        server 127.0.0.1:8840;
        server 127.0.0.1:8850;
        server 127.0.0.1:8860;
    }
    server {
        listen       8848;
        server_name  localhost;
        location / {
            proxy_pass http://nacosCluster;
        }
    }
}

(2)进入目录下,按照指定启动:

cd /usr/local/nginx/sbin
./nginx -c /usr/local/nginx/conf/nginx.conf

6、访问 nginx ,转发结果如下

在这里插入图片描述

7、启动我们的微服务并注册 nacos 集群

在这里插入图片描述

8、配置中心配置:在 nacos 配置管理界面中创建的配置,能够在 mysql 数据库中的 config_info 表中插入一条数据,即 nacos 集群配置中心成功。

在这里插入图片描述
在这里插入图片描述

评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

陌守

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值