SpringCloud之Nacos集群和持久化配置

2024-06-11 13:53

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

##### 官网说明

https://nacos.io/zh-cn/docs/cluster-mode-quick-start.html

官网架构图

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

官网说明

https://nacos.io/zh-cn/docs/deployment.html

#####  Nacos持久化配置解释

######  Nacos默认自带的是嵌入式数据库derby

https://github.com/alibaba/nacos/blob/develop/config/pom.xml

###### derby到mysql切换配置步骤

nacos-server-1.1.4\nacos\conf目录下找到application.properties

###### 启动Nacos,可以看到是个全新的空记录界面,以前是记录进derby

 

#####  Linux版Nacos+MySQL生产环境配置

至少1个Nginx+3个nacos注册中心+1个mysql

###### Nacos下载Linux版

https://github.com/alibaba/nacos/releases/tag/1.1.4

nacos-server-1.1.4.tar.gz

解压后安装

###### 集群配置步骤(重点)

Linux服务器上mysql数据库配置

​    SQL脚本在哪里

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
db.user=root
db.password=123456

Linux服务器上nacos的集群配置cluster.conf 

​     梳理出3台nacos集器的不同服务端口号

​    复制出cluster.conf


这个IP不能写127.0.0.1,必须是 Linux命令hostname -i能够识别的IP

编辑Nacos的启动脚本startup.sh,使它能够接受不同的启动端口

/mynacos/nacos/bin 目录下有startup.sh

平时单机版的启动,都是./startup.sh即可。

 

集群启动,我们希望可以类似其它软件的shell命令,传递不同的端口号启动不同的nacos实例。 命令:./startup.sh -p 3333 表示启动端口号为3333的nacos服务器实例,和上一步的cluster.conf配置的一致。

Nginx的配置,由它作为负载均衡器

修改nginx的配置文件

1个Nginx+3个nacos注册中心+1个mysql

测试通过nginx访问nacos

http://192.168.111.144:1111/nacos/#/login

新建一个配置测试

linux服务器的mysql插入一条记录

server:
  port: 9002

spring:
  application:
    name: nacos-payment-provider
  cloud:
    nacos:
      discovery:
        #配置Nacos地址
        #server-addr: localhost:8848
        # 换成nginx的1111端口,做集群
        server-addr: 192.168.111.144:1111


management:
  endpoints:
    web:
      exposure:
        include: '*'

 

相关新闻
热点
视频
投票
查看结果
Tags

站点地图 在线访客: 今日访问量: 昨日访问量: 总访问量:

© 2025 个人网站 版权所有

备案号:苏ICP备2024108837号

苏公网安备32011302322151号